Honours Project

For my Honours project I have made an investigation into the use of genetic algorithms to improve the AI of computer controlled players in Real-Time Strategy games. The project is a game in Unity where a rule based AI and a learning genetic algorithm AI battle it out to find the victor.

An AI following a fixed rule set plays a game of a specially made RTS game against another AI that uses the results of a genetic algorithm to decide its actions. The top player is the fixed rule set AI and the bottom is the AI using the genetic algorithm.

Each player starts at one end of the map with a headquarters that they must defend. They can train troops, moving green blocks are melee units, while blue blocks are ranged units that can damage the opponent from further away. Typical RTS mechanics such as gathering resources, constructing buildings and taking expansions are also mechanics though not immediately visible in the video.

This video only consists of one game being played for demonstration purposes. However, during the actual running of the project 10 games would be played before evaluating results to decide the actions of the genetic algorithm in the next series of games. After 100 sets of 10 games had been played results were produced as seen below. An iteration in this instance is 10 games.

Honours Project Results

For a more detailed write up of my work please see my proposal, my dissertation and a link to the github where I have stored my honours project.

Proposal

Dissertation

https://github.com/FinlayMcGrath/Honours