aboutsummaryrefslogtreecommitdiff

Imago

An AI player of the game of Go.

The project

Imago is a Go AI developed as a TFG (Final Degree Project) for the Bachelor of Software Engineering of the University of Oviedo.

Implementation

Imago is written in Python and the source code is inside the imago folder. The implementation includes core game logic and a GTP engine able to play using either Monte Carlo Tree Search or a neural network trained on human matches.

A game of go with no AI can be played by running the go.py script. This is useful to test the core game logic. The GTP engine can be started by the imagocli.py script. Following the GTP specification, known commands can be listed by entering list_commands on the GTP engine's interface.

Tests are stored in the tests folder. The tests can be run with the test.sh script which uses the Python package coverage to get coverage statistics.

Documentation

The source code for the documentation is laid out inside the doc folder, including a Makefile to compile it. The documentation compiling process depends on xelatex, biber, plantuml and some LaTeX packages.