aboutsummaryrefslogtreecommitdiff
path: root/README.md
blob: 3e6a01d0c2d1ba4853ddcbb956662982f0a95657 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# 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.