Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Dealing with zobrist key collisions

Author: Alex Boby

Date: 10:43:50 05/08/01

Go up one level in this thread


On May 08, 2001 at 09:12:29, Robert Hyatt wrote:

>On May 08, 2001 at 01:58:00, Alex Boby wrote:
>
>>
>>This has probably been asked a thousand times in the past so sorry for asking
>>but I grep'd the archives and didn't find anything satisfying so here goes...
>>
>>How do most people deal with hash key collisions (2 positions, same key)? These
>>cause problems for me currently because of illegal moves. I figure that there
>>are 2 solutions...
>>
>>1) store the actual unique board position in the hash record for comparision.
>>2) check the moves stored in the hash table to see if they are valid before
>>using them.
>>
>>1 doesn't seem like a plausible solution (gigantic hash records) and 2 seems
>>like it would be slow unless I could find a trick to do it easily.
>>
>>Is there a standard solution to this problem?
>>
>>Alex
>
>1.  If you are not using 64 bit hash signatures, you must.  32 bits is not
>enough and will cause problems.
>
>2.  If your MakeMove() will corrupt the chess board when given an illegal move,
>then you must check it for legality as even with a 64 bit signature, there is
>_always_ a possibility of a collision and illegal move.
>
>3.  If you are using 64 bit signatures, your random numbers are either not so
>random, or something is broken in your hashing.

I am using 64 bit hash sigs but my random numbers are probably not good, I
haven't tested them yet. I was reading alot of posts on 'hamming distance' a
long while back and I think I'll look into that. But nonetheless, no matter how
good your numbers are you are still going to have this problem because of the
lossiness of the algorithm.

It seems that I must check the moves for legality because my makemove()
definately corrupts the board when it gets illegal moves.




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.