Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Question about opening book+hash key?

Author: Pham Minh Tri

Date: 16:35:46 05/24/01

Go up one level in this thread


On May 24, 2001 at 09:01:52, José Carlos wrote:

>On May 24, 2001 at 08:57:43, Robert Hyatt wrote:
>
>>On May 24, 2001 at 08:55:15, Pham Minh Tri wrote:
>>
>>>On May 24, 2001 at 08:14:37, Gian-Carlo Pascutto wrote:
>>>
>>>>On May 24, 2001 at 07:50:32, Pham Minh Tri wrote:
>>>>
>>>>>Hi,
>>>>>I heard that the hash technique could apply to opening book. Could someone
>>>>>explain to me how to use and what is the benefit?
>>>>>Thank very much in advance,
>>>>>Pham
>>>>
>>>>Quite simple. Instead of storing positions or sequences you store
>>>>the hashes of the positions.
>>>>
>>>>The benefit is space. If you were storing sequences you will also
>>>>spot transpotions now.
>>>>
>>>
>>>Could you explain more detail? I still do not understand. The 64 bit hash key is
>>>always bigger than 16 bit of a move representation, and the random numbers may
>>>make the hash key after moving totally different from the old one, so how to
>>>save space?
>>>
>>>And another question: does this technique need more computing (to match and
>>>extract) than the normal technique (use other kind of database)?
>>>
>>>Thanks,
>>>
>>>>--
>>>>GCP
>>
>>To build the book, make the first move in the book line, say e4.  Store the
>>hash signature _after_ that move is made.  Then for other first moves (say d4)
>>do the same.
>>
>>When you want to use the book, generate all legal moves, make each one, one
>>at a time, and after making one, check to see if the current hash signature
>>matches a signature in the book file.  If so, this move is a "book move".
>
>  And (to Pham) do not forget to use _always_ the same random numbers to
>generate the hash keys :)
>  The biggest benefit of this technique is that it makes trivial to handle
>transpositions.
>
>  José C.

Thanks for suggestions. But I guess that:
1) Hash technique makes opening books 4 times bigger than the old one in which I
save only sequences of moves (because 64 bit hash key for a move is 4 times as
big as 16 (or 14) bit of a move).
2) It is slower than the old one because I have to generate all legal moves, do
them, then match, instead of matching only.

Do I miss something?




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.