|
cp9876 wrote: seems to be never
Really? Gee I must be sleeptyping again.
Luc Pattyn [Forum Guidelines] [My Articles]
this weeks tips:
- make Visual display line numbers: Tools/Options/TextEditor/...
- show exceptions with ToString() to see all information
- before you ask a question here, search CodeProject, then Google
|
|
|
|
|
i want to make a schedule for distributing employees over a month ,using genetic algorithm & C#
can anyone tell me plz how to proceed ?
|
|
|
|
|
|
In excel there is function COMBIN(number,number_chosen)
COMBIN(7,6) WILL RETURN TOTAL 7 COMBINATION
COMBIN(20,6) WILL RETURN TOTAL 38760 COMBINATION
I need the total combintions generated the when the values are given in sql server stored procedure
|
|
|
|
|
You can calculate factorial with FACT function so calculation a combination shouldn't be a problem
|
|
|
|
|
COMBIN(x,y) is simply calculed as x!/(y!(x-y)!)
where x! = 1*2*3*4...*x
(this is simple to implement)
a faster way to solve x!/(y!(x-y)!) is (x*(x-1)*(x-2)*...(x-y+1))/y!
(in this way you have to do some * less)
Russell
|
|
|
|
|
Just discovered that there is Combin function in excel 2007
|
|
|
|
|
Hey Friends
I want to Draw Arc/Pie/Circle without using MFC methode...
I neeed proper algorithm to draw these object using SetPixel.
plz help me.//
|
|
|
|
|
This sounds like homework, did you try typing "circle drawing algorithm" into google before asking here?
Peter
"Until the invention of the computer, the machine gun was the device that enabled humans to make the most mistakes in the smallest amount of time."
|
|
|
|
|
No my dear friend "cp9876"
these methodes are not supported in WinCE and i want to Draw Arc/pie/circle in WinCE....
So i need that Algo.
|
|
|
|
|
I think WinCE Version 3 supports them, or do you have to be compatible with previous versions
http://msdn2.microsoft.com/en-us/library/ms902019.aspx[^]
If you google on "circle drawing algorithms c++" you seem to get lots of samples, but I guess you must have done that.
You also continually cross-post.
Peter
"Until the invention of the computer, the machine gun was the device that enabled humans to make the most mistakes in the smallest amount of time."
|
|
|
|
|
himuskanhere wrote: So i need that Algo.
sin() and cos()
_________________________
Asu no koto o ieba, tenjo de nezumi ga warau.
Talk about things of tomorrow and the mice in the ceiling laugh. (Japanese Proverb)
|
|
|
|
|
El Corazon wrote: sin() and cos()
that would be very expensive.
Bresenham draws lines and circles.
Luc Pattyn [Forum Guidelines] [My Articles]
this weeks tips:
- make Visual display line numbers: Tools/Options/TextEditor/...
- show exceptions with ToString() to see all information
- before you ask a question here, search CodeProject, then Google
|
|
|
|
|
Luc Pattyn wrote: Bresenham draws lines and circles.
Naturally, but I find Xiaolin Wu cancels out Breshenham, don't you?
Unless, the enemy has studied his EG reports[^], which I have. (all apologies to William Goldman)
he asked for an algorithm, I gave one. I could have given a dozen more.
_________________________
Asu no koto o ieba, tenjo de nezumi ga warau.
Talk about things of tomorrow and the mice in the ceiling laugh. (Japanese Proverb)
|
|
|
|
|
Bresenham[^] shows the way.
Luc Pattyn [Forum Guidelines] [My Articles]
this weeks tips:
- make Visual display line numbers: Tools/Options/TextEditor/...
- show exceptions with ToString() to see all information
- before you ask a question here, search CodeProject, then Google
|
|
|
|
|
|
Hello,
I have a problem in visualization my data. I have some values which I need to represent on the color scale. I wrote some code where I can visualize my datas but only on a range of one color (Red,Green or Blue). I am looking for some algorithm to display the data on a full color spectrum in RGB.
Thank you, TB
|
|
|
|
|
Hi,
you may want to have a look at this article.[^]
What you could do is work in HSL space, possibly set S and L at maximum and use
hue as the variable, resulting in a range of colors akin to a rainbow.
Luc Pattyn [Forum Guidelines] [My Articles]
this weeks tips:
- make Visual display line numbers: Tools/Options/TextEditor/...
- show exceptions with ToString() to see all information
- before you ask a question here, search CodeProject, then Google
|
|
|
|
|
Tomas(cz) wrote: I am looking for some algorithm to display the data on a full color spectrum in RGB.
color cube! HxWxD==RGB
I do a lot of color visualization recently for the RF spectrum, personally I find it is more important to start with what you need to get out of the display. This lets you adjust the visualization method to match the desired output to make sure you have success. Rendering the data isn't always the goal, often the goal is getting something out of the rendered image, if the choice in visualization hides what you are looking for, it is time to find a new rendering method.
_________________________
Asu no koto o ieba, tenjo de nezumi ga warau.
Talk about things of tomorrow and the mice in the ceiling laugh. (Japanese Proverb)
|
|
|
|
|
think also to the possibility to prepare a simple colormap (256 RGB values can be enough) and then plot your data in that domain.
Russell
|
|
|
|
|
Okay here's one you may not have heard of before:
I need an algorithm that selects a random number. But I want to make it so that the user can choose an approximate "Peak" that will increase the likelihood of numbers around that area to be chosen.
In other words, if the range is between 1 and 100, and the user selects 33, I want the probability of selecting numbers around 33 to be increased. I've been pondering this for a while now and I haven't come up with anything practical. I still want all numbers to be potentially hit, but I want the frequency of numbers around the target to be hit more.
Any suggestions? Please answer in pseudocode. It would help me out a lot.
"Go to, I’ll no more on’t; it hath made me mad." - Hamlet
|
|
|
|
|
It all depends on what sort of distribution you want.
You could easily generate a Gaussian random variable with mean M and standard deviation S, these would be clustered around M, and simply try again if the sample you generate lies outside the range 1:100. There usual way to generate a Gaussian RV from a uniform RV is to use the Box-Muller transform, see http://en.wikipedia.org/wiki/Box-Muller_transform[^]
Alternatively, you could generate a triangular type distribution, for example generate two RV's x and y, each uniformly spread in 1:50, then use x+y as your random variable. This will be spread over the range from 2:100 (you can fix it to go to 1), but there is a much higher chance of getting numbers around 50 than 2 or 100. You could simply rotate the result to put the peak wherever you want. e.g. to move the peak to 33, z = (x+y+83)%100
There are lots of other possibilities, it all depends on the probability distribution you want.
Peter
"Until the invention of the computer, the machine gun was the device that enabled humans to make the most mistakes in the smallest amount of time."
|
|
|
|
|
Here's one method I just thought of:
Plinko algorithm:
<code>
Private function SelRand(target as integer, _
lbound as integer, ubound as integer) as integer
dim n as integer
dim i as integer
dim x as integer
dim loops as integer
n = target
if abs(n-ubound) > abs(n-lbound) then
loops = abs(n-ubound)
else
loops = abs(n-lbound)
end if
for i = 0 to loops
x = int(rnd * 3)
Select Case x
Case 0: if n > lbound then n = n - 1
Case 1: if n < ubound then n = n + 1
case 2: ' drop down to same number
End Select
Next i
SelRand = n
End Function
</code>
So basically by the law of averages the target number and its neighbors will be hit more often, but there's still a possibility of all numbers being selected.
Can you think of any optimizations to this method? Any other ways to do this?
"Go to, I’ll no more on’t; it hath made me mad." - Hamlet
-- modified at 12:39 Thursday 30th August, 2007
|
|
|
|
|
I implemented this plinko algorithm and it works fine for what I need it to do. Thanks for your help, guys.
"Go to, I’ll no more on’t; it hath made me mad." - Hamlet
|
|
|
|
|
Hi,
if you want an integer number j in the range [min, max) where each possible
value j has a different probability, you could:
- define an array P[j] that holds the relative probability (we use integers,
i.e. the absolute probability multiplied by N, the sum of all P[j])
- use a random number generator to obtain a number k in the range [0, N)
- find the value of j for which SUM(P(j)<=k<sum(p(j+1))
where="" sum="" is="" taken="" over="" [min,="" j).
btw:="" the="" notation="" [a,b)="" means="" range="" from="" a="" up="" to="" b,="" including="" a,="" excluding="" b.
the="" final="" transformation="" k--="">j can be speeded up by:
- storing SUM(P(j)) for all j
- and even, if N is not too large, using an array of size N
Luc Pattyn [Forum Guidelines] [My Articles]
this weeks tips:
- make Visual display line numbers: Tools/Options/TextEditor/...
- show exceptions with ToString() to see all information
- before you ask a question here, search CodeProject, then Google
|
|
|
|