2015 Volume 23 Issue 1 Pages 9-19
Parallelization of the alpha-beta algorithm on distributed computing environments is a promising way of improving the playing strength of computer game programs. Search programs should predict and concentrate the effort on the subtrees that will not be pruned. Unlike in sequential search, when subtrees are explored in parallel, their results are obtained asynchronously. Using such information dynamically should allow better prediction of subtrees that are never pruned. We have implemented a parallel game tree search algorithm performing such dynamic updates on the prediction. Two kinds of game trees were used in performance evaluation: synthetic game trees and game trees generated by a state-of-the-art computer player of shogi (Japanese chess). On a computer cluster with 1, 536 cores, dynamic updates actually show significant performance improvements, which are more apparent in game trees generated by the shogi program for which the initial prediction is less accurate. The speedup nevertheless remains sublinear. A performance model built through analyses of the results reasonably explains the results.