Probably the reason that it is so slow is that it's aiming for a
cryptographically random number sequence. These are usually derived
ultimately from kernel timings (often via /dev/random on linux
systems) and it can take a while to establish a degree of confidence
in the randomness of these bits.

If you want a sequence of numbers that is very unlikely to repeat but
that doesn't have to be cryptographically random, standard practice is
to initialise the random number generator with the current time
(usually a long expressed in milliseconds). This naturally fails if
you ever create more than one sequence per millisecond.

cheers
stuart


On 19/12/2007, Berk Ozbozkurt <[EMAIL PROTECTED]> wrote:
> Hi,
>
> I'm currently writing a UCT based go program in Clean to see if it is
> feasible to write one in a functional language. This is my first attempt
> at functional languages, and I'm having trouble with random numbers.
>
> A mersenne twister module is available for Clean. Once initialized it is
> reasonably fast to extract a new random number from the generator.
> However, it is about a hundred times slower to initialize it with a new
> random seed. Therefore my first attempt at generating random numbers by
> storing seeds at tree nodes and creating a new random list and a new
> seed each time random numbers are required for mc evaluation is very
> slow. The alternative seems to be passing around an index to a global
> random list, which is both ugly and complicated. Is there another way?
> _______________________________________________
> computer-go mailing list
> [email protected]
> http://www.computer-go.org/mailman/listinfo/computer-go/
>
_______________________________________________
computer-go mailing list
[email protected]
http://www.computer-go.org/mailman/listinfo/computer-go/

Reply via email to