Game Programming AI
This document discusses behavior trees, an approach to game AI architecture. Behavior trees split AI decision logic from actions and organize them into a directed tree structure. The root node executes logic which reports back as success, running, or failure. This passes control to child nodes. Key nodes include sequences which run children in order until failure, and selectors which run the first successful child. Behavior trees are modular, reusable, and can be data-driven to design AI visually without code. They have been successfully used in many games due to their flexibility and performance.