Game AI refers to techniques used in computer and video games to produce the illusion of intelligence in the behavior of non-player characters (NPCs). The techniques used typically draw upon existing methods from the academic field of Artificial Intelligence (AI). However, the term game AI is often used to refer to a broad set of algorithms that also includes techniques from control theory, robotics, computer graphics and computer science in general.
For example, some game programmers consider any technique that is used to help create the illusion of intelligence to be part of a game's AI. This view is controversial because it includes techniques that are also widely used outside of a game's AI engine. For example, information about potential future collisions is an important input to algorithms that help create characters that are clever enough to avoid bumping into things. But the same collision detection techniques are also commonly needed to implement a game's physics. Similarly, line of sight test results are usually important inputs to AI targeting decisions, but are also widely used inside the rendering engine. A final example is scripting, which can be a convenient tool for all aspects of game development, but is often closely associated with controlling NPC's behavior.
Game developer's increasing awareness of academic AI and a growing interest in computer games by the academic community is causing the definition of what counts as AI in a game to become less idiosyncratic. Nevertheless, significant differences between different application domains of AI mean that game AI can still be viewed as a distinct subfield of AI. In particular, the ability to legitimately solve some AI problems in games by cheating creates an important distinction. For example, inferring the position of an unseen object from past observations can be a difficult problem when AI is applied to robotics, but in a computer game an NPC can simply look up the position in the game's scene graph. Such cheating can lead to unrealistic behavior and so is not always desirable. But its possibility serves to distinguish game AI and leads to new problems to solve, such as when and how to use cheating.
Books
- Bourg; Seemann (2004). AI for Game Developers. O'Reilly & Associates. ISBN 0596005555.
- Buckland (2002). AI Techniques for Game Programming. Muska & Lipman. ISBN 193184108X.
- Funge (1999). AI for Animation and Games: A Cognitive Modeling Approach. A K Peters. ISBN 1568811039.
- Millington (2005). Artificial Intelligence for Games. Morgan Kaufman. ISBN 0124977820.
- Schwab (2004). AI Game Engine Programming. Charles River Media. ISBN 1584503440.