Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Pawn Hashkey Size

Author: David Rasmussen

Date: 04:08:43 12/03/01

Go up one level in this thread


On December 03, 2001 at 03:26:02, Severi Salminen wrote:

>>Many people use 32-bit pawn hashkeys. But I've found that 32 bits is not enough
>>to avoid collisions. 64-bit seems to be enough, and maybe less could do the job.
>>Why do people use 32-bit keys, when it screws up evaluation this way?
>
>32-bit keys are still a lot (well, a little maybe) faster to use and as far as I
>know they don't screw the evaluation up. I implemented pawn hashtable yesterday
>and using 32-bit keys I still get very high hit rates and no inconsistencies -
>the 65536 element table hardly fills up. But I will maybe test about collisions.

If you have collisions, you _will_ fuck up evaluation.

>How did you test it?
>

Simple. Instead of not evaluation pawns in the case of a hit, I evaluate it
anyway and check if the calculated data match the data in the hashtable. If yes,
there might still be a collision in the sense that the two pawn positions might
now be the same, but at least they have the same score (it is far more likely
that the pawn positions in this case are just the same). If no, we definately
have a collision. I get that after 5 seconds of search from the initial
position. I have even checked the first pawn position that this happens to, and
print out all the positions that have this pawn hashkey. It shows that the first
4 or 5 times the table is queried for this position, there is a match, but the
next time (the one that fails), it is indeed a completely different position and
pawn position altogether. This will obviously screw up evaluation, as a wrong
score would have been returned for the pawn evaluation.

/David



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.