In message <[EMAIL PROTECTED]>, Mike Hill
<[EMAIL PROTECTED]> writes
Folks...
First, let me say how much pleasure my reading of this list has given
me. I love that folks are out there cranking on this problem. Truly,
it's one of the great problems.
I have a rather strange request. I am a statistical idiot, in both
senses of 'statistical'. After scrolling through a half-dozen stat
tutorials online, I find myself completely unable to grasp how I'd get
the effect I want even if I wanted to use floats, which I don't. As
you will soon be aware, I don't even have the language to figure out
how to describe my problem. Seeing as how there are so many MC
algorithm workers on the list, I thought I'd turn to you for some guidance.
The essence of my idea is that I want a psuedo-random algorithm which
takes as a parameter a 'degree-of-randomness' value. Something along
these lines:
int choose( int range, int degree-of-randomness)
Returns an integer in [0-range] distributed depending on the value of
degree-of-randomness. At degree-of-randomness 100, I want the
distribution to be uniform. At degree-of-randomness 0, I want the
distribution to be -- I don't even know what to call this --
half-of-a-normal-distribution with the steepness proportionately
related to degree-of-randomness.
Am I making *any* sense? If so, you may need some sort of psychiatric
help, or alternatively, you could do me the favor of explaining how to
ask for what I want or even how to actually get it. :)
So if you specify a range of 3 and a degree-of-randomness of 100, you
get a uniform distribution of the range 0..3. If you specify a range of
3 and a degree-of-randomness of 0, you want something with a maximum at
0, looking like the right half of a Gaussian, a zero steepness [?], and
an unspecified variance. Are you aware that, if it has any variance at
all, its tail will extend beyond 3?
I think the maths will be easy enough, once you have made it clear what
you want (or why you want it).
Maybe this would provide what you want:
take a random number in the range 0..1
raise it to the power (100/degree-of-randomness)
multiply the result by range
Nick
--
Nick Wedd [EMAIL PROTECTED]
_______________________________________________
computer-go mailing list
computer-go@computer-go.org
http://www.computer-go.org/mailman/listinfo/computer-go/