The goal of the project is to have a game engine that supports potentially any game with 1 to N players. The players can be:
- Human players: provided with a CLI interface that allows them to play
- BOTs: that play autonomously
To create game-agnostic BOTs we chose to implement Monte Carlo Tree Search: a search algorithm that performs a sparse visit of the state space by performing random playouts. The move that lead to the highest probability of winning is chosen as the best.
- it is context agnostic
- it does not require any heuristic
- it is an anytime method
- it is highly parallelizable
- it is not exact
To date, we only support Italian Draughts, a game very similar to checkers. We chose it because it is not trivial like Tick Tac Toe or Connect 4, but it has a reasonable branching factor compared to Chess or GO.
- Brunetta Giacomo Github: @giacomo-brunetta e-mail: [email protected]
- GitHub: @g7240