[computer-go] How to improve Orego
Peter Drake
drake at lclark.edu
Mon Dec 4 08:17:11 PST 2006
It's not clear whether this is faster. Determining that a move is
illegal because the point is occupied is very fast; determining that
a move IS legal (i.e., not a suicide or ko violation) is the slow
part, and I avoid that by taking the first legal move I find. (Of
course, once all moves have been tried from a given move, UCT takes
over.)
In any case, my profiling data indicates that choosing the random
move per se is not the expensive part; playing the move is.
Thanks for the suggestion,
Peter Drake
Assistant Professor of Computer Science
Lewis & Clark College
http://www.lclark.edu/~drake/
On Dec 4, 2006, at 7:52 AM, Chrilly wrote:
> In the Orego paper the problem of selecting a move when the board
> is filled with stones is mentioned. Orego uses a sort of double-
> hashing scheme.
> But isn't it trivial to keep a list of empty intersections?
> Before the MC-run is started, one builds up this list. If a stone
> is placed now on the board, the entry is removed from the list and
> the last entry is copied into this slot. In this way the list is
> always dense. One can of course not run linearly trough the list to
> find the entry which should be removed. Instead one builds at the
> beginning another array which is indexed by the board-point and
> which contains the index of the point in the empy-point-list. This
> second array has to be changed too when the last entry is copied
> into the removed slot. With a few operations one gets the big
> advantage to sample all the time only the empty points.
> I think this solution is much simpler and more efficient than the
> double-hashing scheme of Orego.
>
> Chrilly
> _______________________________________________
> computer-go mailing list
> computer-go at computer-go.org
> http://www.computer-go.org/mailman/listinfo/computer-go/
More information about the computer-go
mailing list