Author: Gareth McCaughan
Date: 07:56:04 04/13/99
Go up one level in this thread
[James Swafford] >> My opening book relies on a random number generation to >> choose among book entries. Windows random( ) function >> leaves a lot to be desired, even when reseeded using the >> system timer before each call. ... [Bruce Moreland] > Don't re-seed using the system timer before each call. The resolution on the > system timer isn't that great, you can conceivably get the same seed several > times in a row, which will get you the same random number back. > > Maybe this is your problem. I think it's very likely to be. There are plenty of subtle problems computers' random number generators can have, but I really can't imagine any of them being serious enough to be a problem for the purpose of selecting book moves. With one possible exception: if you need a smallish random number, try to avoid taking just the low bits of the result of calling |rand| or whatever. Some RNGs have very non-random low bits. In particular, if you want a random number in [0,n) it's *not* a good idea to write |rand()%n|. Something more along the lines of |rand()/((RAND_MAX+n-1)/n)| is better. (Errrrm, be careful with that suggestion: think about signed integer overflow. You probably need some casts in there. Isn't C horrible?)
This page took 0 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.