[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [computer-go] Alpha-beta pruning vs transposition tables
From: Chris Fant <chrisfant@xxxxxxxxxxxxxxxxx>
Reply-To: Chris Fant <chrisfant@xxxxxxxxxxxxxxxxx>,computer-go
<computer-go@xxxxxxxxxxxxxxxxx>
To: computer-go <computer-go@xxxxxxxxxxxxxxxxx>
Subject: Re: [computer-go] Alpha-beta pruning vs transposition tables
Date: Tue, 8 Mar 2005 23:50:46 -0500
> I discovered something of which I hadn't been aware: alpha-beta
> pruning and transposition tables can interact in nasty ways. Perhaps
> everyone else already knew this.
>
> The problem is that, when a branch is pruned, the root of that branch
> is given an evaluation which may not be entirely accurate. It's enough
> to prove that the branch is irrelevant for this move, but storing this
> value in a transposition table can lead to an incorrect result when the
> position is encountered again.
>
> Clearly, not storing pruned values in the table would avoid this
> problem. Is it safe to store them as long as they aren't kept around
> for the next search?
Best to store the bound type (EXACT, LOWER, UPPER) and use that when you
retrieve the hash record. As well as the link already given, you might find
something of interest here (it's chess related but should translate easily
enough):
http://www.seanet.com/~brucemo/topics/hashing.htm
It is not immediately obvious and turns out nasty indeed.
It isn't that nasty once you get used to it.
Really nasty stuff can happen if you use path dependent information in your
evaluation function.
cheers,
Peter
This is why
I currently have my TT turned off -- because when I wrote it, I did
not understand this interaction. Look here, in the section called
"Result Caching":
http://www.andromeda.com/people/ddyer/go/search.html
_______________________________________________
computer-go mailing list
computer-go@xxxxxxxxxxxxxxxxx
http://www.computer-go.org/mailman/listinfo/computer-go/
_________________________________________________________________
Need more speed? Get Xtra JetStream @ http://xtra.co.nz/jetstream
_______________________________________________
computer-go mailing list
computer-go@xxxxxxxxxxxxxxxxx
http://www.computer-go.org/mailman/listinfo/computer-go/