A Chess Engine Was Trained on Millions of Human Games. The Result? Maia!

Building a human-like neural network chess engine

Iwuozor John
CARRE4
3 min readFeb 1, 2021

--

Image by woodpeace1 (pixabay.com)

Recently, a group of individuals from the University of Toronto set out to build a chess engine capable of playing human-like moves and making typical mistakes that humans are capable of. The goal of this project was to build a chess engine named “Maia” trained on chess games of human players and basically imitate their play. It is an ongoing project that uses chess as a case study to improve human-AI interactions.

Maia was trained on millions of online games from Lichess to be able to correctly predict human moves. Lichess is a popular and free chess platform where thousands of people all over the world come together to train, study and play chess.

9 versions of Maia were trained, each of them learned from a training set of12 million games and were within the rating range of 1100–1900. For example, Maia1 was only trained on games between 1100 rated players, while Maia9 was trained on games between 1900 rated players. One amazing thing about Maia is its move matching accuracy i.e the engine is able to predict correctly the moves that a 1100 player would make in a certain position. The engine can also predict typical blunders and mistakes by different sets of players.

A collection of chess engines that play like humans, from ELO 1100 to 1900. SF (Stockfish) and Leela are also popular chess engines: Image source

There are equally a number of chess engines such as “Stockfish” and “Leela” built for human play but these engines do not accurately predict human moves as well as Maia.

There are already a lot of chess apps and websites having the ‘Play with Computer’ feature but most times, we are discouraged and frustrated after losing a couple of games against a flawless computer so when I heard about the new bot, I rushed to try it out on Lichess and after playing a few games with Maia9, I could tell that the engine accurately played like a 1900 rated human player.

Maia9 on Lichess

It was pleasing and amazing to play with a human-like chess engine. Below is one of my games against Maia9, I was able to defeat Maia in this game after it miscalculated and missed a mate in 1.

If you are interested in trying out this engine, go to https://lichess.org/@/maia1 and challenge the bot for an interesting game!

To find more about the entire project, go to https://maiachess.com/ and the GitHub repository can be located here. You can also read the full research paper here and blog posts here.

--

--

Iwuozor John
CARRE4

Mathematician, Data Scientist. I enjoy playing chess and employing my analytical skills in solving complex problems.