Author: Uri Blass
Date: 03:44:55 05/30/04
I have the following function to initialize my random numbers typedef unsigned __int64 BitBoard; BitBoard rand64() { __int64 r = rand(); r ^= (__int64)rand() << 15; r ^= (__int64)rand() << 30; r ^= (__int64)rand() << 45; r ^= (__int64)rand() << 60; return r; } void initializezobarray() { //starting zobrist keys char zobnum[128]; int fil,i,j; srand(0); for (fil=0;fil<6;fil++) for (i=0;i<2;i++) for (j=0;j<64;j++) zobrist[fil][i][j]=rand64(); } My first question is if I can be sure that I will get the same random numbers in every computer(I get the same in my computer but if I do not get the same in every computer than I may consider to rewrite it because I plan to use hash keys for my book and I do not want to have a problem that the program will not be able to use my book in another computer). I also see that Crafty is using a table of random numbers from a book and does not trust rand() My second question is if there is an advantage in doing it. Uri
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.