Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Dr Hyatt : hash collisions and short keys

Author: Vincent Diepeveen

Date: 04:23:52 08/21/02

Go up one level in this thread


On August 20, 2002 at 18:51:41, David Hanley wrote:

The problem is not so much blitz where you get 7 to 8 ply.
The main problem is when you have a randomized tree that you can
already theoreticlaly proof that a program will play into a
random line. The insight in that proof is not so difficult
if you realize what a minimax search is trying to do.

It is trying to optimize the played move. So the deeper you search
the more branches will have randomness and the bigger the chance that
you play towards such a branch.

It is therefore that the error occured not when testing at a tactical
position at home, but during the game play.

I hope you realize that i do not clear hashtables. Logically the error
happened therefore only at the end of the game, when the hashtable
was full.

Please realize that i used about 32 + index - 3 to 4 bits, but i also store
the side to move.

Crafty is doing 2 probes versus i did 8.

That lost more bits for me.

If you clear 32 bits out of 64, then in total you have a billion or 4
entries left for being hashkey. That will be complete disaster of
course. Because the chance that 32 bits hashing goes wrong versus
54 bits, that's incomparable even.

A 32 bits hashkey will go wrong at any time of the game of course.

Selfplay is in general not a good idea, but in this case the odds
are so big that it is great idea of course. After 30 games you will
dislike already the result for the 32 bits key.

Why not do it in steps?

First use a 8 bits hashing, then a 16 bits, then 24, 32, 40, 48, 56
and write an article about it?

>Well, i understand what you are saying, and i agree with your aversion to
>randomness in a program.
>
>I am surprised by the checkers program missing a win due to a false positive
>hash.  It seems like the state of a checkers game can be represented in far
>fewer bits and should have less false matches.
>
>I tell you what, i have an idea that may tell us something.  What if we match
>two versions of crafty ( or some program ) against each other.  One will a
>totally normal version of crafty.  The other copy will have the high 32 bits of
>all its hash keys set to zero.  They could play 10,000 speed games.  I wonder if
>their scores would be significantly different.
>
>Maybe 10,000 is too much, it looks like that would take two months!
>
>As i say as a computer science person i understand you aversion to randomness.
>My asking is just because of a specific situation i am presented with, and is
>not urgent--i'm using 64 bits currently.
>
>dave



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.