Efficient Selectivity and Backup Operators in Monte-Carlo Tree Search

by Rémi Coulom.


Monte-Carlo evaluation consists in estimating a position by averaging the outcome of several random continuations, and can serve as an evaluation function at the leaves of a min-max tree. This paper presents a new framework to combine tree search with Monte-Carlo evaluation, that does not separate between a min-max phase and a Monte-Carlo phase. Instead of backing-up the min-max value close to the root, and the average value at some depth, a more general back-up operator is defined that progressively changes from averaging to min-max as the number of simulations grows. This approach provides a fine-grained control of the tree growth, at the level of individual simulations, and allows efficient selectivity methods. This algorithm was implemented in a 9x9 Go-playing program, Crazy Stone, that won the 10th KGS computer-Go tournament.




I have made a lot of improvements to my algorithm since that paper. You can find a description of some interesting new developments on this message to the computer-go mailing list. Also, this newer paper explains how to improve playing strength a lot thanks to pattern knowledge.