Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Why using Zobrist keys for Pawn Hasing?

Author: Robert Hyatt

Date: 10:57:44 12/05/01

Go up one level in this thread


On December 05, 2001 at 12:45:54, Gerd Isenberg wrote:

>On December 05, 2001 at 10:30:38, Robert Hyatt wrote:
>
>>On December 05, 2001 at 08:22:40, Gerd Isenberg wrote:
>>
>>>About the pawn hash key discussions: Why using Zobrist keys for pawn hashing at
>>>all, at least in BitBoard programs? Isn't it smarter to use a unique 46 Bit
>>>(Rank2-7) Difference of two colored Pawn-BitBoards instead of zobrist keys for
>>>pawns? No key collisions and key and index (key mod nEntries) calculation on the
>>>fly.
>>>
>>>Gerd
>>
>>The problem is that you have 56 bits of information.  48 possible pawn
>>positions + 8 possible en passant target files.  Which N bits of that are
>>you going to use to produce the table index?  _that_ is the problem.
>>Because for hashing, _every_ pawn needs to influence the signature and
>>table address.  Using a real position, some pawns won't influence
>>anything unless you take the position, fold it in half, and so forth, and
>>then you discover that invites collisions like mad.
>
>Isn't it possible to choose a special prime number for nEntries to ensure that
>every pawn or most combinations of pawns change the remainder in a pseudo random
>way?

I don't see how when you are going to squash a 56 bit field into something
like 16-20 bits.  Most people also _hate_ integer division.  But in any
case, for good distributions where a single pawn moved perturbs the hash
signature signficantly, nothing beats Zobrist.



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.