Quoting Erik van der Werf <[email protected]>:

On Thu, Sep 9, 2010 at 9:33 AM,  <[email protected]> wrote:
When it plays a random move many moves are pruned and a new random
move is generated until an acceptable move is found.

Funny, that is roughly the strategy I used 3 years ago in the first
version of Steenvreter (which then won the Olympiad). At some point I
made it more like the Mogo playouts, because that was faster and at
the time seemed to perform a bit better. Nevertheless, Steenvreter's
current performance is still quite similar on the low end (also
breaking even with gnugo on 9x9 at about 100 playouts), though I think
I get most of that from good priors in the tree. Maybe I should dust
off my old policy some time...

I am also using the playout policy as priors in the tree. This means every change I do to the playouts also affect tree priors. As you say this is also very important. Playouts can be noisy but tree priors also is an absolute necessity for effective selective search.

Another thing one can do rather than simply prune moves is to propose an alternative local move that dominates the pruned move. I do this in Valkyria too. This way one gets better moves without repeating the Get Random Move/Check For Pruning cycle, and also forces the programmer to make sure the pruned move is really bad.

Some pruning is essential. If one want the playouts to handle seki some checks must be done. If one solves seki in the tree then full board search will be inefficient everytime a seki is present on the board. it might work well for 9x9 but not for 19x19 where many tactical situations may be present that has to be independently handled in the playouts.

Magnus


Erik
_______________________________________________
Computer-go mailing list
[email protected]
http://dvandva.org/cgi-bin/mailman/listinfo/computer-go



_______________________________________________
Computer-go mailing list
[email protected]
http://dvandva.org/cgi-bin/mailman/listinfo/computer-go

Reply via email to