Project Overview

For our Comps project, we created an evolutionary AI that plays Catan. Recently, AI methodologies have been increasingly tested against a wide variety of challenges. While not the most common of those methodologies, genetic programming is one which we thought might have interesting potential. In this project, we tested the application of genetic programming to the eurogame Settlers of Catan using the existing JSettlers implementation. We extended the built-in AIs logic to use genetic programming to better inform its decisions. Our results showed that while there are limits to genetic programming's power, it can create reasonably competent players which are competitive with or somewhat better than the preexisting heuristic bots of the JSettlers program.

Evolutionary AI
In Action

Here we see one of our best evolutionary Catan AIs (bottom right) playing 3 JSettlers opponents that are using the "smart" heuristic. Prior to this game the evolutionary AI was trained for tens of thousands of games against smart JSettlers robots in order to evolve an effective algorithm for predicting the WinGameETA (the predicted number of turns until a certain player wins the game) for itself and its opponents. The evolutionary AI then uses this WinGameETA prediction to determine its next move. Will the evolutionary AI win? Click the image to see for yourself!

Meet The Team

Bat-Orgil
Batjargal

Alvin
Bierley

Andrew
Fitch

Daniel
Kleber