Most situations in commercial games have very large problem spaces, so it would take a long time to list all the possible AI behaviors… In order for planners to solve such problems in real-time, they must effectively discard as many useless options as possible.
Generally speaking, you can approach the implementation of such planners using a […]
Essays
Heuristic vs. Hierarchy: Domain Knowledge for Planners
January 18th, 2008 | Alex J. Champandard
Problem Representation for Planning Algorithms 101
January 10th, 2008 | Gabriel Ware
This article was contributed by Gabriel Ware, who works at Pam Development (2K Paris) as a PS3 programmer.
Planners are among the most popular algorithms used in the video game industry, as they solve a broad range of problems ranging from path-finding to action planning. Even though they have their pitfalls, developers regularly use a […]
Understanding Behavioral Exceptions and How to Deal with Them
December 23rd, 2007 | Alex J. Champandard
A few months ago, in the early days of this blog, I noted the importance of understanding the different possible types of failures of actions, and all other tasks for that matter. This article looks into ways for your AI logic, in particular your scripts or behavior trees, to deal with these problems more […]
Memento, Temporal Coherence and Debugging Planners
December 9th, 2007 | Alex J. Champandard
Planners have a reputation for being hard to debug. Even once you have your core algorithm fully tested, it’s often time-consuming to figure out exactly how new situations cause the planner to generate a particular solution. It’s often like the protagonist in Memento, never being able to make new memories and having to replan from scratch every few seconds.
Event-Handling Strategies for Juggling Purposeful Behaviors
November 11th, 2007 | Alex J. Champandard
Assume you have a long-term AI behavior controlling a character in a game. It could be implemented as a script, a behavior tree, or any other sequence of actions to follow. How do you deal with events happening in the world in a way that’s coherent with this active behavior?
The AI logic needs […]

