Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: random book moves/ random generator

Author: Stefan Meyer-Kahlen

Date: 09:39:12 01/13/00

Go up one level in this thread


On January 13, 2000 at 11:29:25, Thorsten Greiner wrote:

>On January 13, 2000 at 11:22:20, Vincent Diepeveen wrote:
>
>>number = rand()%total;
>
>rand() is evil. It uses a linear congruency method like
>
>	new random number = (old random number * constant + constant) % constant
>
>Information in low bits of 'old random number' is lost in this formula. Since
>the number of seconds since 1970 is pretty much constant in lets say January
>2000, the random numbers produced will be quite similar...
>
>Also, never use modulo on the results of rand() - use something like
>
>	rand() / (RAND_MAX / total)
>
>since the low bits of rand() are not as random as the high bits. Or use a real
>random generator - here is a good one: http://www.agner.org/random
>
>Rgds
>	-Thorsten


Thorsten is really an expert as far as random numbers are concerned.
I am using his random number generator in Shredder for a couple of years now,
before that I also had similiar problems with rand().

Stefan



This page took 0.01 seconds to execute

Last modified: Thu, 15 Apr 21 08:11:13 -0700

Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.