How do I test the quality of the Zobrist keys?

Discussion of chess software programming and technical issues.

Moderators: hgm, Rebel, chrisw

jesper_nielsen

Re: How do I test the quality of the Zobrist keys?

Post by jesper_nielsen »

bob wrote:
Gerd Isenberg wrote:a blast from the past...

from rec.games.chess 1994

Tony Warnock
The following paper descibes a method of generating the numbers for a hash table. By using error correcting codes, we ensure that positions that are close on the board are not close in the hash space. Some experiments showed that we got an improvement in collision rate compared to using a random set of numbers.

MacWilliams and Sloane's book on error correcting codes has
the gory details about the theory and programming.

Tony Warnock & Burton Wendroff:
"Search Tables in Computer Chess"
ICCA Journal (March 1988), pp. 10-13.
Jonathan Schaeffer
... I can speak from experience here. In the early versions of my chess program Phoenix, I generated my Zobrist hash numbers using my student id number as a seed, naively thinking the radom numbers generated by this seed would be good enough. A few years later I put code in to detect when my 32-bit hash key matched the wrong position. To my surprise, there were *lots* of errors. I changed my seed to another number and the error rate dropped dramatically. With this better seed, it became very, very rare to see a hash error.

All randomly generated numbers are not the same!
I had already cited the warnock paper somewhere in this thread. :)

It was interesting back then, still applies today, although if you try to start a discussion on this topic, the discussion goes off into the twilight zone rather than staying on topic...
Do any of you have a link for this paper, so I can read it?

Googling it did not turn up any usable hits.

Kind regards,
Jesper
Gerd Isenberg
Posts: 2250
Joined: Wed Mar 08, 2006 8:47 pm
Location: Hattingen, Germany

Re: How do I test the quality of the Zobrist keys?

Post by Gerd Isenberg »

jesper_nielsen wrote: Do any of you have a link for this paper, so I can read it?

Googling it did not turn up any usable hits.

Kind regards,
Jesper
Hi Jesper,

the paper seems not available in the net.
ICGA offers back issues:
http://www.cs.unimaas.nl/icga/journal/backissu.php

Cheers,
Gerd