O-Plan is an AI planner based on previous experience with the Nonlin planner and its derivatives. Nonlin and other similar planning systems had limited control architectures and were only partially successful at limiting their search spaces. O-Plan is a design and implementation of a more exible system aimed at supporting planning research and development, opening up new planning methods and supporting strong search control heuristics. O-Plan takes an engineering approach to the construction of an e cient domain independent planning system which includes a mixture of AI and numerical techniques from Operations Research. The main contributions of the work are centred around the control of search within the OPlan planning framework, and this paper outlines the search c o n trol heuristics employed within the planner. These involve the use of condition typing, time and resource constraints and domain constraints to allow k n o wledge about an application domain to be used to prune the search f o r a solution. The paper also describes aspects of the O-Plan user interface, domain description language (Task Formalism or tf) and the domains to which O-Plan has been applied. O-Plan was initially conceived as a project to provide an environment for speci cation, generation, interaction with, and execution of activity plans. There are three distinct components (see gure 1) the planner's workstation or user interface, the plan generator, and the execution monitoring system. The main e ort has been concentrated in the area of plan generation. Plan generation is di cult and it is a classic example of a search problem in AI. The main target of this research is therefore search space control. The outputs of this study are a better understanding of the requirements of planning methods, improved heuristics and techniques for search space control, and a demonstration system embodying these results in an appropriate framework and representational scheme. The story of O-Plan starts from a software engineering viewpoint, namely how to build an open architecture for an AI planning project with the aim of incrementally developing a system resilient to change. It was our aim at the start of the project to build a system where it was possible to experiment with and integrate developing ideas. Further, the \ nal" system was to betailorable to suit particular applications. Section 2 brie y describes the components of the system in which the overall controller and some of the internal \knowledge sources" can be customised or replaced
A similar architecture is used in O-Plan REF where the term "agent" is used to name each of the three modules of the system.
O-plan: the open planning architecture
Artificial Intelligence
Computer Science