Breakthrough

Basic AI implementation for the breakthrough game with different AI availables.

This project is a tool project to explore the different algorithms with minimax-family and Monte Carlo artificial intelligences.

Screenshot

Screenshot of a game against the negamax AI.

Available AI

Minimax

It can use a negamax AI with some optimizations, including Betamax pruning, the use of a transposition table, Quiescence_search.

The Principal Variation is shown on the logs.

Monte Carlo

A single-CPU implementation of the Monte Carlo algorithm is also available.

Installing

Requirements:

Installation:

run make negamax or make mc from the project root directory to create the executable with the desired AI.

Playing

The ncurse GUI will let you use the arrows of your keyboard to navigate, select a pawn to move with space and select a destination among the highlighted options and validate with space again.