[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: computer-go: transpositions (less unclear?)
Anders Kierulf wrote:
> > [Mikael Thulin] The problem I tried to raise was how to create a
correct
> > hashcode for the positions i.e what properties do I have to include to
> > get a hashcode that are unique for positions with different evaluations
> > (under the super-ko rule).
> This is a good problem. Smart Go uses a solution that almost eliminates
the
> issue, but doesn't solve it completely.
> Smart Go modifies the hash code for all moves that capture stones. The
hash
> modification is based on:
> (a) the move number, and
> (b) the stones that got captured.
> This means that two sequences that lead to the same position will get the
> same hash code if exactly the same stones were captured at the same move
> numbers. (If no stones are captured in the sequence, the hash code is
> trivially the same.) If stones get captured at different move numbers or
in
> a different order, the positions would not have the same hash code.
> This almost eliminates hashing problems created because a move was legal
in
> one branch and illegal in another. Unfortunately, it also slightly
reduces
> the effectiveness of the hash table, as some changes in move order that
> would not affect subsequent play are no longer recognized as
transpositions.
This is exactly the type of ideas that I was looking for. It sounds
brilliant. You state
that it doesn't solve the problem completly. Can you in a few words explain
under
what conditions this idea will fail?
I will try it out at once. Thanks for sharing your idea?
Is there any other go-programs that solve this matter differently?
Regards,
Mikael Thulin