Trends & Motivation

Complexity

For the better or the worse, games are getting more realistic... procedural environments, flexible graphics and accurate physics all contribute to the illusion. This is great for the gamer, but can be an interesting challenge for the AI designer. Gone are the days of simple cardinal movement in small Pacman mazes. Game agents in the near future will be involved in a complex dynamic environment, and presented with a constant stream of information. With a bit of work, rigid scripts can handle this type of situation but are not ideally equipped to do so. On the other hand, more elaborate learning algorithms thrive on huge quantities of data, without performance suffering all that much.

Behaviours

The Sims Behaviours

Image 2: The Sims, displaying varied behaviours within an interesting environment...

The extra complexity also implies that the range of behaviours possible by an agent will also increase. Combined with a much wider domain of potential situations, the number of different observable behaviours will also grow. Additionally, subjecting agents to physical constraints related to their body (fidelity of movement, accuracy...) as well as perceptual honesty will require additional internal state to deal with the ambiguity.

Both these factors combined seem to rule out rigid scripts, due to their inflexibility. But once again, a fair amount of hard work will get around that problem...

Development Times

The primary motivation for including Artificial Intelligence that learns into games is the reduction of development times. As an AI coder, bringing up this fact will get you a job with little effort ;) Consider having to hire 10 scripters to handle the behaviour of two dozen different creatures, each in their own part of the world. Then compare that with the development of one unique AI programmer, who develops a flexible learning framework. Not only can you get rid of the expensive real-time interpretation of scripts, but you can also optimise your AI library to shreds. Not to mention the potential for licensing it, or reusing it in the next game.

Additionally, the learning will work hand in hand with the designers during the development phase: Simply move an creature to a new environment, and see what happens, or likewise create a new animal and watch other creatures around it adapt to its presence. Once the behaviours have been learnt one day before submitting the beta to the publisher, you can then decide to turn off all the learning within the game. Performance will benefit slightly, at the cost of the AI not being able to adapt anymore.

The next page will look at ways of achieving this

Remember you can visit the Message Store to discuss this essay. Comments are always welcome!. There are already replies in the thread, why not join in?