Skip to main content

Decision Trees for Computer Go Features

  • Conference paper
  • First Online:
  • 626 Accesses

Part of the book series: Communications in Computer and Information Science ((CCIS,volume 408))

Abstract

Monte-Carlo Tree Search (MCTS) is currently the dominant algorithm in Computer Go. MCTS is an asymmetric tree search technique employing stochastic simulations to evaluate leaves and guide the search. Using features to further guide MCTS is a powerful approach to improving performance. In Computer Go, these features are typically comprised of a number of hand-crafted heuristics and a collection of patterns, with weights for these features usually trained using data from high-level Go games. This paper investigates the feasibility of using decision trees to generate features for Computer Go. Our experiments show that while this approach exhibits potential, our initial prototype is not as powerful as using traditional pattern features.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Notes

  1. 1.

    This graph representation was chosen in the view that it may improve the opening of Oakfoam, the MCTS implementation being extended [14].

  2. 2.

    A variation of pseudo-liberties [15] (where chains in atari have their number of pseudo-liberties set to one) was used to simplify implementation.

  3. 3.

    This parameter can be any combination of black, white and side, such as: black or side.

  4. 4.

    [x|y] means either x or y.

  5. 5.

    This is designed to deal with NEW queries that have more than two children.

  6. 6.

    However, we later discovered that the MM tool was unable to deal with large training data sets for our tests.

  7. 7.

    Note that this violates the conceptual view that the decision tree partitions the input space, since one position may ultimately correspond to multiple leaf nodes.

References

  1. Browne, C., Powley, E., Whitehouse, D., Lucas, S., Cowling, P.I., Rohlfshagen, P., Tavener, S., Perez, D., Samothrakis, S., Colton, S.: A survey of Monte Carlo tree search methods. IEEE Trans. Comput. Intell. Al Games 4(1), 1–49 (2012)

    Article  Google Scholar 

  2. Rimmel, A., Teytaud, O., Lee, C.-S., Yen, S.-J., Wang, M.-H., Tsai, S.-R.: Current frontiers in computer go. In: IEEE Symposium on Computational Intelligence and Al in Games, vol. 2, no. 4, pp. 229–238 (2010)

    Google Scholar 

  3. Gelly, S., Silver, D.: Combining online and offline knowledge in UCT. In: 24th International Conference on Machine Learning, pp. 273–280. ACM Press (2007)

    Google Scholar 

  4. Chaslot, G.M.J.-B., Chatriot, L., Fiter, C., Gelly, S., Perez, J., Rimmel, A., Teytaud, O.: Combining expert, offline, transient and online knowledge in Monte-Carlo exploration. IEEE Trans. Comput. Intell. Al Games (2008)

    Google Scholar 

  5. Coulom, R.: Computing elo ratings of move patterns in the game of go. ICGA J. 30, 198–208 (2007)

    Google Scholar 

  6. Baker, K.: The Way to Go. American Go Foundation (1986)

    Google Scholar 

  7. de Groot, F.: Moyo Go Studio. http://www.moyogo.com (2004)

  8. Wistuba, M., Schaefers, L., Platzner, M.: Comparison of Bayesian move prediction systems for computer go. In: IEEE Conference on Computational Intelligence and Games, pp. 91–99, September 2012

    Google Scholar 

  9. Lew, L.: Modeling go game as a large decomposable decision process. Ph.D. thesis, Warsaw University (2011)

    Google Scholar 

  10. Huang, S.-C., Coulom, R., Lin, S.-S.: Monte-Carlo simulation balancing in practice. In: van den Herik, H., Iida, H., Plaat, A. (eds.) CG 2010. LNCS, vol. 6515, pp. 81–92. Springer, Heidelberg (2011)

    Google Scholar 

  11. Ralaivola, L., Wu, L., Baldi, P.: SVM and pattern-enriched common fate graphs for the game of go. In: European Symposium on Artificial, Neural Networks, pp. 485–490 (2005)

    Google Scholar 

  12. Russell, S., Norvig, P.: Artificial Intelligence: A Modern Approach, 3rd edn. Pearson, Englewood Cliffs (2010)

    Google Scholar 

  13. Breiman, L.: Random forests. Mach. Learn. 45(1), 5–32 (2001)

    Article  MATH  Google Scholar 

  14. Oakfoam. http://oakfoam.com

  15. House, J.: Groups, liberties, and such. http://go.computer.free.fr/go-computer/msg08075.html (2005)

  16. Game records in SGF format. http://www.u-go.net/gamerecords/

  17. GNU Go. http://www.gnu.org/software/gnugo/

Download references

Acknowledgments

The first author would like to thank the MIH Media Lab at Stellenbosch University for the use of their facilities and support of the work presented here.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Francois van Niekerk .

Editor information

Editors and Affiliations

Appendices

Multiple Decision Tree Descent Paths

It is possible that a NEW decision tree query may not be able to identify a unique node from the ASG to add to the discovered graph. In this situation, a sequence of conditions are considered, in an attempt to enforce uniqueness. Each condition will select the node(s) that best satisfy the condition and eliminate the others. These conditions are designed to enforce invariance to changes in rotation and reflection as far as possible. If the conditions are not able to identify a unique node, then each of the possibilities is considered.Footnote 7 The sequence of conditions used in this work is as follows:

  • Select node(s) closest to the candidate move.

  • Select black over white over side nodes.

  • Select node(s) closest to nodes already in the discovered graph, in reverse order of discovery.

  • Select node(s) with the most stones in its respective chain.

  • Select node(s) with the most liberties around its respective chain.

Even though these conditions are not always able to find a unique node, empirical results showed that a single leaf node is reached in about 85 % of tree descents. It was therefore decided to only return one of these nodes, namely the left-most node in the tree. Investigation showed that this option made negligible difference to move prediction accuracy, while providing a large reduction in training time and an increase in the size of training data set that could be handled. This is due to the leaf nodes of each decision tree becoming mutually exclusive, allowing decision trees to be treated as single features.

Reproducibility

All source code used in this work is available in the codebase of Oakfoam, an open-source MCTS-based Computer Go player [14]. Version 0.1.3 was used for the work in this paper and is tagged in the code repository. Default parameters were used unless specified otherwise.

The MM tool of Rémi Coulom was used to train feature weights. This tool is available at: http://remi.coulom.free.fr/Amsterdam2007/.

Rights and permissions

Reprints and permissions

Copyright information

© 2014 Springer International Publishing Switzerland

About this paper

Cite this paper

van Niekerk, F., Kroon, S. (2014). Decision Trees for Computer Go Features. In: Cazenave, T., Winands, M., Iida, H. (eds) Computer Games. CGW 2013. Communications in Computer and Information Science, vol 408. Springer, Cham. https://doi.org/10.1007/978-3-319-05428-5_4

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-05428-5_4

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-05427-8

  • Online ISBN: 978-3-319-05428-5

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics