Planning has been a core topic in artificial intelligence research since its earliest days. It can be thought of as searching for a set of actions that can be executed to achieve a goal.
Types of planners
Planning systems and problems are sometimes divided into the two categories of planning and scheduling. Dean and Kambhampati describe the distinction as follows: “To distinguish between planning and scheduling we note that scheduling is primarily concerned with figuring out when to carry out actions while planning is concerned with what actions need to be carried out.” Roughly speaking, planners tend to focus on choosing and properly sequencing actions such that they achieve a goal without interacting in detrimental ways, while schedulers focus more on resource constraints, including timing.
A different sort of distinction can be made between the process of constructing plans and executing plans. Some problems seem straightforward if they are viewed at a high enough level of abstraction: what could be simpler than going to the store to buy groceries? But executing a plan to do this may encounter difficulties not foreseen during the planning process: the store may be closed (information not available during planning), the car may break down (an unexpected occurrence outside the control of the planner), the lines at the store may be so long to make shopping impractical (the passage of time may not have been considered earlier), and so forth.
Yet another way to think about planning is given by Weld, who identifies the dimensions of construction strategy and component size. On one end of the first dimension we find refinement, “the process of gradually adding actions and constraints; retraction eliminates previously added components from a plan.” On the other end of this dimension we find transformation, which “interleaves refinement and retraction activities.” As for component size, we see a distinction between generative planning, in which plans are built directly from primitive actions, and case-based planning, in which plans are synthesized from existing plans and partial plans recorded in a library.
Of course, there are lots of systems that fall on neither or both sides of these various dichotomies.
Some Planners
This is a list of AI planners and where they were developed, or where implementations are currently accessible. It includes representative examples of the latest research directions, including Graphplan-oriented work and planning under uncertainty, as well as pointers to planners of historical interest.
- ABSTRIPS (Abstraction STRIPS) at Brown University
- ABTWEAK (Abstraction TWEAK) at Brown University
- APS? and MVP? (Adaptive Problem Solver and Multimission VICAR? Planner) cached link 2004 at Jet Propulsion Laboratory
- blackbox (Unified SAT-based and graph-based planning) at University of Rochester
- CAPlan? (Computer Assisted Planning) cached link 2006 at University of Kaiserslautern
- COLLAGE? (Action-decomposition and action-based constraint forms) cached link 2001 at Goddard Space Flight Center
- COLLAGEN (Shared discourse planning) at Mitsubishi Electric Research Laboratories (MERL)
- CPR (Core Plan Representation) at Teknowledge
- DPPLAN? (A Graphplan-based system that relies on the Davis-Putnam principle) cached link 2005 at University of Perugia
- DRIPS (Decision-theoretic Refinement Planning System) at University of Wisconsin-Milwaukee
- Decision machines at University of Michigan
- Fast Forward at Institute for Computer Science, Albert Ludwigs University
- GRT at University of Macedonia, Greece
- Graphplan at Carnegie Mellon University
- HSP, etc. (Heuristic Search Planner and others) at Universidad Simon Bolivar
- HTN planning (Hierarchical Task Network planning) at University of Maryland
- IPP (Interference Progression Planner) at Institute for Computer Science, Albert Ludwigs University
- Longbow/DPOCL (Discourse planning) at North Carolina State University
- MESS? (Multiple-Event Stream Simulator) cached link 2006 at University of Massachusetts
- MIPER? (Mixed-Initiative Plan Evaluation and Repair) cached link 2006 at University of Massachusetts
- Model checking at Trentino di Cultura-Centro per la Ricerca Scientifica e Tecnologica (ITC-IRST)
- O-Plan (Open Planning Architecture) at University of Edinburgh
- Older planners (FABIAN, abstract actions; PYRRHUS, value-directed; ZENO, temporal planning; deadline goals and continuous change; BURIDAN, probabilistic planning; CBURIDAN, sensing actions and contingent execution; XII, sensing actions to handle incomplete information) at University of Washington
- PEST (Planning and Execution System Testbed) at Brown University
- PRODIGY (Architecture for planning and learning) at Carnegie Mellon University
- PRS (Procedural Reasoning System) at SRI International
- Phoenix (The Yellowstone fire-fighting simulation) cached link 2006 at University of Massachusetts
- RAPs (Reactive Action Packages) at University of Chicago
- RESUN (Resolving Sources of Uncertainty) at University of Massachusetts
- simple-POP and simple-GP at North Carolina State University
- SGP (Sensory Graphplan) at University of Washington
- SHOP (Simple Hierarchical Ordered Planner) at University of Maryland
- SIPE (System for Interactive Planning and Execution) at SRI International
- STAN (STate ANalysis Planner) at University of Strathclyde
- STRIPS (Stanford Research Institute Problem Solver) at Brown University
- Shakey (The "first electronic person") at SRI International
- TGP (Temporal Graphplan) at University of Washington
- TIM (An automatic planning domain analysis tool) at University of Strathclyde
- TRAINS (Mixed-initiative planning) at University of Rochester
- TRIPS (The Rochester Interactive Planning System) at University of Rochester
- Tileworld (Planning testbed) at University of Michigan
- TransSim? (Transportation Simulation) cached link 2006 at University of Massachusetts
- UCPOP (Partial Order Planner with Universal quantification and Conditional effects) at University of Washington
- UM Nonlin (Common Lisp version of early system) at University of Maryland
- UM-PRS (Real Time Planning and Control Procedural Reasoning System) at University of Michigan
- UMCP (Universal Method Composition Planner) at University of Maryland
Resources for Research on Planning
Rao Kambhampati maintains the Planning List Digest, a moderated mailing list for planning, scheduling, and related topics.
One effort that has helped drive planning research forward is the International Planning Competitions, which rely on The Planning Domain Definition Language (PDDL).
Discussion
Some (such as Pat Langley) say that GamePlaying, as it is usually executed (with lots of LookAhead?), is pretty much a kind of planning (it generates conditional plans). I agree. – BayleShanks
CategoryPlanning?