A tree there the nodes represent game states and the links represent moves. The tree does only
store the root game state and reconstruct the nodes based on the moves. It does store an
evaluation for each node though. The evaluation is updated during each playout.
Use an Upper Confidence Bound to select the next node to expand. In addition to the use of the
“classic” upper confidence bound, this evaluation also features variants for states such as
Draw and Win. This allows the tree search to proof the outcome of a game and turn into a
weak solver. “Weak” in this context means that the solver would know if a move is a win, loss or
draw, but not how many moves it takes to reach that outcome.
Controls what information is stored for each board remembered in the nodes of the tree, how
to change it during backpropagation and what criteria to use to select the next node to expand.
A game there players take alternating turns until it ends either a win for one of the players or
a draw. Implement this trait for your game in order to use monte carlo tree search to find a
strong move.