Tuesday 18 November 2008

Notes from the paper "Behavioural Modeling in Commercial Games" by David E. Diller et al

Introduction

The computer games indusrty is now more and more concerened with developing sophisticated in-game characters.

 

Computer games developers aren’t the only people looking to create immersive simulated worlds, training application developers (such as the military) also have a great interest in this area.

 

Developers are wanting very realistic and robust behaviours that they can apply to their game agents. “As advanced high resolution graphics become commonplace, game developers are increasingly relying on “game AI” (i.e., behaviours of synthetic entities) to distinguish their game from competitors”.

 

The developers are very interested in creating entities that are more adaptive to new and unusual situations, not as predictable and therefore harder to play against.

 

Game developers are mostly interested in the “illusion of intelligence” and not actually making truly intelligent agents. i.e. the behaviours only have to appear to make their agent intelligent. Paul Tozour, AI programmer for Deus Ex 2 says regarding games:

            “The whole point is to entertain the audience, so no matter what you do, you need to make sure the AI makes the game more fun. If a game’s AI doesn’t make the game a better experience, any notions of “intelligence” are irrelevant.”

 

Behaviour Generation – Components of behaviour in games

Although the game universe that the agents operate in is obviously much simpler than real life, the agents have to be able to successfully display capabilities such as: sensing immediate surrounds (or the entire universe), reasoning with spatial layouts, planning then executing appropriate actions as well as being able to communicate with other in-game agents or players. To do all this the agents will need to be able to perform a very wide ranging set of functions.

 

Sensation and Perception

Sensory mechanisms that give game agents “sight” and/or “hearing” can range from simple to extremely complex. There is a huge difference when we compare the game universe that the player sees to that of the game agents. The game agents world is rather impoverished. The universe is normally stripped down and abstracted so navigation purposes. Collisions are detected by radiating some sort of check out from the agents current position. The sensory mechanisms normally only take into consideration objects that can actually affect the agent.

 

In the game Halo, an NPC’s ability to see the player is constrained. The NPC can only see the player if, the player can see the NPC. The reason for this was that the players often felt cheated if they were killed by enemies that they can’t see.

 

 

 

 

Decision Making

The most common representations for modelling decision making in game agents is through the use of FSM’s. The behaviours that agents have are modelled as a set of states that are finite. The transitions between each state are directed by a graph. The character can only be in a single state at a time. The transitions are driven by actions that happen in the game. FSM’s are cheap to utilise, simple to use and easy to understand. There are several extensions available to improve simple FSM’s, these are; FuFSM’s, Hierarchical FSMs and Probabilistic FSMs.

 

Smart terrains/ environments are also seeing a good deal of use in games. The objects within the smart terrain contain all the information needed for an agent to decide what to do with the object.

 

Several games have recently developed goal directed reasoning techniques for character behaviour. The characters using this technique have a set of goals given to them, and they must choose themselves which goal to go after. (how they do it in this case is usually hard coded into the game).

 

Smart Environments/Terrains

Models for agent behaviour are usually constructed from the point of view of the agent living in an environment with inactive objects. Some games do this the other way around and have very simple agents living in a complex world with smart environments to produce interesting behaviours.

 

An agents current primary goal is visible to the player. The player can then use this information to predict what the agent is likely to do next.

 

Conclusions

Games companies are increasing developing and making use of intelligent, virtual agents to help distinguish their game from the rest. Therefore we are going to continue to see vast improvements in game AI. There is already a movement away from the traditional simple FSM and scripting techniques to the more interesting and robust techniques that employ less predictable behaviour.

No comments: