Automatic Game Design

Julian Togelius

Automatic Game Design is the name used by Julian Togelius for the combination of procedural generation techniques with evolutionary computation. The evolutionary algorithms are used as global optimizers to optimize the procedurally represented content according to a fitness function based on a model of player satisfaction.

In a first experiment, Togelius et al. evolved racing tracks for a simple racing game. The tracks were represented as b-splines, and the fitness function for a track was based on measuring the driving behaviour of a neural network-controlled car when it was driving on the track. More details can be found in the blog post or the paper.

In another experiment, Togelius and Schmidhuber evolved complete rulesets for games. The game engine was capable of representing simple Pacman-style games, and the rulesets described what objects were in the game, how they moved, interacted (with each other or with the agent), scoring and timing. The fitness function was not based on how any particular player/algorithm played the game, but instead on how fast another evolutionary algorithm could learn to play the game. The idea behind this fitness function is that fun is dependent on learning, and that a good game is not winnable without learning it, but can be learnt quickly. More details can be found in the blog post or the paper.


Some more recent takes on automatic game design were performed by Michael Cook and can be found at Cook uses a variety of techniques including Google Milking, using Metaphor Magnet to get interesting connections between concepts and co-evolution of game rules and controllers that play the games. His software Angelina is also able to create simple 3D games in Unity. With one of those games, Angelina was the first computer program to enter a Game Jam. Angelina entered Ludum Dare, with a game called To That Sect (a not very well done metaphor on "To that effect").

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License