[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: computer-go: transpositions
> >Well, I take my chance and start with a implementation question:
> >
> >Implementing the transposition table for my tsumego solver shows
> >to be a bit trickier than it have been in programs for other games.
> >The presence of the ko rule gives that I have to include information
> >about illegal points into the hash code for all positions. It also
> >gives that I have to play/try all moves and see if they are legal
> >before I can search for a position in the transposition table. One
> >way to exclude the check for legal moves is to never store/use
> >transpositions after a capture move. This works well unless you
> >want to use the super-ko rule. With the super-ko rule illegal points
> >can occur even without a previous capture. However in a tsumego
> >solver the super-ko rule is preferable as it also prevent the search
> >from running into useless eternal loops.
> >
> >Is there any other simple way prevent these loops?
In Gnu GO (http://www.gnu.org/software/gnugo/gnugo.html) there is an
implementation of a transposition table using Zorbrist hashing. It is
written by yours truly, and you can find it in the engine
subdirectory. The name of the files are hash.h and hash.c
-Inge Wallin
Member of the Gnu GO team