ABSTRACT

This chapter discusses the theoretical underpinnings of modular artificial intelligence (AI) and aims to relate them to broadly accepted concepts from software engineering. It describes the Game AI Architecture (GAIA). Modular AI, and modular approaches in general, seek to raise the level of abstraction of development. Rather than focus on algorithms and code, a good modular solution leads to a focus on AI behaviors and how they fit together, abstracting away the implementation details. GAIA is a modular, extensible, reusable toolset for specifying procedural decision-making logic. GAIA emphasizes the role of the game designer in creating decision-making logic, while allowing the resulting behavior to be flexible and responsive to the moment-to-moment situation in the application. GAIA makes decisions by working its way down a tree of decision makers that is in many ways similar to Damian Isla’s original vision of a Behavior Tree.