Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Difficulties with 3-fold repetition when using hashing.

Author: Bruce Moreland

Date: 09:05:28 06/23/00

Go up one level in this thread


On June 23, 2000 at 05:36:36, Adrien Regimbald wrote:

>Hi,
>
>I have recently noticed a problem with Faile while performing play testing
>before releasing the current version -
>
>It is properly detecting 3-fold repetition, but sometimes it misses it in the
>following case:
>A position has been seen before, and is searched to depth x.
>The position comes up again.  If Faile plays the same move, it allows the
>opponent to play a move which makes it a draw by 3-fold repetition.
>Faile's search to depth x goes immediately due to hash table matches.  It begins
>to search depth x+1, and suddenly realizes that its intended move will result in
>a draw, because it has finally had to actually search now.  Faile runs out of
>allocated time after searching the PV move.  Faile will then play the move
>(since this is the move suggested at previous depths and there is no time to
>search other root moves), and the opponent, of course, plays the repeat and
>draws the game.
>
>This is very frustrating, and seems to be the only significant problem with
>Faile's play so far in testing (other than some problems with book coverage,
>which should be fixed when I take some time to create a nice book - the current
>book is only being used so it has _SOME_ book ;P).
>
>I have been trying to figure out how to solve this problem, and I've realized
>that I have to somehow "age" the hash table entries .. but I'm not sure as to
>when I should do this in order to get it working both to full effect in
>benefiting the search, but also not causing these problems with 3-fold
>repetition.  Looking at other sources has so far been fairly futile - some of
>them don't do anything to combat this issue, some use much more complex hashing
>schemes than I do, and I can't seem to find a clear answer to this problem.
>
>Does anyone have any suggestions for me?  I am using a single table, with
>replacements done if the current depth is greater than the depth in the hash
>table.

Don't allow hash cutoffs so close to the root of the tree.

bruce



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.