Behavior Trees + Finite State Machines: A Hybrid Game AI Framework
Description
One of the core components of many video games is their artificial intelligence. Through AI, a game can tell stories, generate challenges, and create encounters for the player to overcome. Even though AI has continued to advance through the implementation of neural networks and machine learning, game AI tends to implement a series of states or decisions instead to give the illusion of intelligence. Despite this limitation, games can still generate a wide range of experiences for the player. The Hybrid Game AI Framework is an AI system that combines the benefits of two commonly used approaches to developing game AI: Behavior Trees and Finite State Machines. Developed in the Unity Game Engine and the C# programming language, this AI Framework represents the research that went into studying modern approaches to game AI and my own attempt at implementing the techniques learned. Object-oriented programming concepts such as inheritance, abstraction, and low coupling are utilized with the intent to create game AI that's easy to implement and expand upon. The final goal was to create a flexible yet structured AI data structure while also minimizing drawbacks by combining Behavior Trees and Finite State Machines.
Date Created
The date the item was original created (prior to any relationship with the ASU Digital Repositories.)
2018-05
Agent
- Author (aut): Ramirez Cordero, Erick Alberto
- Thesis director: Kobayashi, Yoshihiro
- Committee member: Nelson, Brian
- Contributor (ctb): Computer Science and Engineering Program
- Contributor (ctb): Computing and Informatics Program
- Contributor (ctb): Barrett, The Honors College