Evolutionary Super Mario

Letting humans guide the evolution of a Super Mario AI.

Role Programmer
Date Fall 2015
Collaborators Patrikk Dyrberg Sørensen & Sebastian Risi
Category AI

The report for this project, was published as a full paper at CIG'16 (Computational Intelligence & Games) and as a poster paper at GECCO'16 (Genetic and Evolutionary Computation Conference)

In this project we evolve AIs for playing super mario using NeuroEvolution, but instead of using a static fitness function we let ordinary people do the evalutation, and thereby letting them guide the evolution. With the proposed interface seen above, the user is presented with nine different but somewhat related behaviors, and the user can then select the preferred behavior, that will then be used to produce the offspring for the next generation of AIs.

Our results show that human evalutation can improve on the AI compared to a static fitness function, and even overcome problems that are very hard for a static fitness function to solve.

Further details can be found in papers linked above and a demonstration can be found in the video below.

The input that the AI receives of the game world.
The eight squares surrounding Mario and the angle and distance to the nearest enemies

Watch examples of the human guided evolution This project was made as part of an AI course at the IT-university of Copenhagen 2015.