This code is implemented in Python and requires the random and NumPy packages.
The game of checkers was implemented using a 6x6 NumPy array which represents the playing board. The rules of the game are enforced through variables and functions in the Board.py file.
This implementation of the Monte Carlo Tree Search (MCTS) algorithm uses the upper confidence bound, or UCB1, formula given by,
where
After testing the MCTS agent against all other agents (Alpha-Beta and Minimax), the MCTS agent emerged victorious 100% of the time.