You are here





Students were divided in groups of 2. Each group had to hand in one AI agent for the contest. Every technique was allowed as long as it was fair (e.g., they could not use CPU time while the opponent was playing). Each player got a time credit of 20 minutes per match.

We received 30 submissions that we divided randomly into 2 pools of 8 agents and 2 pools of 7 agents. All agents inside one pool played twice against all other agents in the same pool. For each match, the winner got 3 points. A draw game gave 1 point to the two opponents. In each pool, the four agents having the highest number of points were qualified. In case of ties, the slowest agent was eliminated (we summed the time the agent took to return each action).

The 16 qualified agents participated to a best-of-three playoff. For each match, the winner was the agent winning two out of the three matches. A draw game was won by the faster agent. The winning agent of pool A played against the fourth agent of pool B, the second of pool A against the third of pool B, the third against the second and the fourth against the first. The same for pools C and D. For each match, the winner went to the next level. A third place playoff was also played to determine the third place between the losers of the semi-final.


Position Students Agent name
1 Anthony Popolo Cagnisi and Romain Van Vooren popolo-vanvooren
2 François Aubry and Nicolas Sanchez bot2
3 Adrien Bibal and Claire Poncelet bibal-poncelet
4 Thibault Merle and Grégory Van Herck merle-vanherck

Anthony and Romain receiving their prizes kindly sponsored by Case Départ

Match against a human

Like last year, Vincent Sélenne (from Art of Games) accepted to play a match against the winning AI. It was a very exciting game. Unlike last year, the AI agent has won the game.


Here is a screencast of the game. Vincent played with blue and red. The computer played with yellow and green. Note that the video has been sped up by a factor 8 and we miss the first two steps. The full trace to be replayed with the provided code can be downloaded at the end of this page.

The code

The code of the game has a GPLv2 license and is downloadable at the bottom of the page. Python 3.x is required.

To play against one of the provided AIs, use one of the following commands:

python3 AGENT human
python3 human AGENT

Replace AGENT by the name of an agent. You can get a list with python3 -l. Note that many agents were designed to run with a time limit of 20 minutes and may be broken otherwise. Use the -t 1200 option to enforce such time limit. Human players are not affected by the limit.

There are also many other options. See python3 -h for an exhaustive list. Each agent can also be launched as a small XML-RPC server with python3 -m agents.AGENT -p PORT. This was used to make the agents play against each other in separate processes and without sharing source code.

arlecchino.zip99.72 KB
arlecchino_vincent.trace1.13 KB