The Glaive Narrative Planner
The Glaive planner was developed for my dissertation work on automated narrative planning. In short, it is a multi-agent planner which allows agents to cooperate and compete with one another while still moving the story as a whole toward the author's intended outcomes.
Specifically, Glaive is a classical planner with extensions designed for narrative problems. It performs intentional planning, which was originally described by Mark O. Riedl and R. Michael Young as a way to ensure that characters only act in service of their individual goals. It also allows character plans to come into conflict with one another via a model that I described in earlier work. While the model may be based on POCL-style planners, the algorithm itself is a fast forward-chaining state space heuristic search in the tradition of planners like Fast Forward and Fast Downward. Glaive constructs graphs based on a planning problem's intentional structure which improves its heuristic and allows it to reason about intentionality and conflict.
You can download the Glaive planner, complete Java source, and test files here:
Previous Version: IFF
The first version of this planner, which was used in an initial study to explore the viability of this kind of algorithm, was called IFF for "Intentional Fast-Forward." Below is the code used for that evaluation. However, please be aware that this very preliminary version was not designed for release and may contain bugs.
The source code for IFF can be downloaded as an Eclipse project here.