Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Hashing

Author: Robert Hyatt

Date: 19:53:54 04/05/03

Go up one level in this thread


On April 05, 2003 at 13:05:35, Ian Osgood wrote:

>On April 04, 2003 at 22:14:02, Robert Hyatt wrote:
>
>>On April 04, 2003 at 15:06:37, Russell Reagan wrote:
>>
>>>On April 04, 2003 at 14:57:50, Keith Evans wrote:
>>>
>>>>What do you think you will gain by excluding certain elements?
>>>
>>>I have heard people discuss the drawbacks of including the fifty move counter in
>>>the past. I'm not sure of the details though.
>>>
>>>As far as an example, try this:
>>>
>>>[D] rnbqkbnr/pppppppp/8/8/4P3/8/PPPP1PPP/RNBQKBNR b KQkq e3 0 1
>>>
>>>The en passant square is e3.
>>
>>You should not have an EP target there.  There is _no_ EP possibility.
>>Setting e3 is bad, because if you move a knight out and back, then in your
>>scheme _that_ position won't have an ep square, and the hash won't match.
>>
>>You should only set an ep target if a pawn advances two squares _and_ there
>>is an enemy pawn on the right squares on either side of it, otherwise no
>>ep status should be kept.
>
>In the EPD standard, is that also the only time one should show the EP target
>square?  That is, is the above EPD board description illegal?

The EPD standard is broken.  It wants the EP target whenever a pawn has advanced
two squares, even if there is no pawn on an adjacent file that can capture it.


>
>I also have a quick question about EP square hashing:
>
>I've seen implementations which devote an entire board of random values for the
>EP square to XOR into the Zobrist hash value.  Isn't it sufficient to have a
>single
>rank of random values?  EP squares can only be on ranks 3 or 6, and which rank
>is determined by the side to move, which is already XORed into the hash
>value.
>
>Ian

Yep.  There can only be 8 possible EP targets for one side.




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.