Parallel Monte Carlo Tree Search from Multi-core to Many-core Processors

被引:5
作者
Mirsoleimani, S. Ali [1 ,2 ]
Plaat, Aske [1 ]
van den Herik, Jaap [1 ]
Vermaseren, Jos [2 ]
机构
[1] Leiden Univ, Leiden Ctr Data Sci, Niels Bohrweg 1, NL-2333 CA Leiden, Netherlands
[2] Nikhef, Nikhef Theory Grp, NL-1098 XG Amsterdam, Netherlands
来源
2015 IEEE TRUSTCOM/BIGDATASE/ISPA, VOL 3 | 2015年
关键词
D O I
10.1109/Trustcom.2015.615
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
In recent years there has been much interest in the MCTS algorithm, a new, adaptive, randomized optimization algorithm. In fields as diverse as Artificial Intelligence, Operations Research, and High Energy Physics, research has established that MCTS can find good solutions without domain dependent heuristics. However, practice shows that reaching high performance on large parallel machines is not so successful as expected. So far, the reasons are not well understood. This paper investigates the scalability of two popular parallelization approaches (tree parallelization and root parallelization) of the MCTS algorithm, using the Intel Xeon Phi highly multi-threaded shared-memory system. Moreover, we compare the results on a Xeon CPU and a Xeon Phi to understand the scalability of the parallel MCTS algorithms, and to understand their absolute performance. We find that tree parallelization can achieve near perfect speedup for up to 16 threads on the Xeon CPU and up to 64 threads on the Xeon Phi. For root parallelization we find that the effect of locks is small. Moreover, we establish the overall parallel speedup of the two parallelization methods of the MCTS algorithm is fundamentally limited on the Xeon Phi for games such as Hex or Go. The limiting factor is not, as might be expected, the parallel algorithm, or its implementation, but the high level of sequential calculations in each thread, for which no vectorization method is known.
引用
收藏
页码:77 / 83
页数:7
相关论文
共 22 条
[1]  
[Anonymous], 2013, Intel Xeon Phi coprocessor architecture and tools: the guide for application developers
[2]   Monte Carlo Tree Search in Hex [J].
Arneson, Broderick ;
Hayward, Ryan B. ;
Henderson, Philip .
IEEE TRANSACTIONS ON COMPUTATIONAL INTELLIGENCE AND AI IN GAMES, 2010, 2 (04) :251-258
[3]  
Baudry P, 2011, SCI SOC-FRANCE, P13
[4]   A Survey of Monte Carlo Tree Search Methods [J].
Browne, Cameron B. ;
Powley, Edward ;
Whitehouse, Daniel ;
Lucas, Simon M. ;
Cowling, Peter I. ;
Rohlfshagen, Philipp ;
Tavener, Stephen ;
Perez, Diego ;
Samothrakis, Spyridon ;
Colton, Simon .
IEEE TRANSACTIONS ON COMPUTATIONAL INTELLIGENCE AND AI IN GAMES, 2012, 4 (01) :1-43
[5]   Parallel Monte-Carlo Tree Search [J].
Chaslot, Guillaume M. J. -B. ;
Winands, Mark H. M. ;
van den Herik, H. Jaap .
COMPUTERS AND GAMES, 2008, 5131 :60-+
[6]   PROGRESSIVE STRATEGIES FOR MONTE-CARLO TREE SEARCH [J].
Chaslot, Guillaume M. J-B. ;
Winands, Mark H. M. ;
Van den Herik, H. Jaap ;
Uiterwijk, Jos W. H. M. ;
Bouzy, Bruno .
NEW MATHEMATICS AND NATURAL COMPUTATION, 2008, 4 (03) :343-357
[7]  
Coulom R, 2007, LECT NOTES COMPUT SC, V4630, P72
[8]  
Enzenberger M, 2010, LECT NOTES COMPUT SC, V6048, P14
[9]  
GALIL Z, 1991, COMPUT SURV, V23, P319, DOI 10.1145/116873.116878
[10]  
Heinz E. A., 2001, Computers and Games. Second International Conference, CG 2000. Revised Papers (Lecture Notes in Computer Science Vol.2063), P262