Development and Application of a Monte Carlo Tree Search Algorithm for Simulating Da Vinci Code Game Strategies
This research addresses optimization challenges for game strategy algorithms on parallel architectures, but it is incremental as it focuses on a specific domain issue.
The study tackled the problem of Monte Carlo Tree Search (MCTS) performance degradation due to branch divergence in the Da Vinci Code board game, finding that CPU implementation showed linear improvement while GPU implementation had non-linear patterns and performance troughs.
In this study, we explore the efficiency of the Monte Carlo Tree Search (MCTS), a prominent decision-making algorithm renowned for its effectiveness in complex decision environments, contingent upon the volume of simulations conducted. Notwithstanding its broad applicability, the algorithm's performance can be adversely impacted in certain scenarios, particularly within the domain of game strategy development. This research posits that the inherent branch divergence within the Da Vinci Code board game significantly impedes parallelism when executed on Graphics Processing Units (GPUs). To investigate this hypothesis, we implemented and meticulously evaluated two variants of the MCTS algorithm, specifically designed to assess the impact of branch divergence on computational performance. Our comparative analysis reveals a linear improvement in performance with the CPU-based implementation, in stark contrast to the GPU implementation, which exhibits a non-linear enhancement pattern and discernible performance troughs. These findings contribute to a deeper understanding of the MCTS algorithm's behavior in divergent branch scenarios, highlighting critical considerations for optimizing game strategy algorithms on parallel computing architectures.