Planning
In industry in general, the term planning has been
used to describe a wide variety of problems, including
problems referred to by the artificial intelligence
community as scheduling or bin packing.
In AI, the term planning is used
to describe the construction of a sequence of
formally-described world-states, as follows: A
planning domain consists of a set of operators
or action types. Each operator may be
executed only in some particular set of world states
(its preconditions), and has some particular set of
effects on its world state (its effects).
A planning problem consists of a planning domain together
with an initial state of the world, and a desired
goal state (or set of goal states) of the world. A
planner solves a planning problem by producing a
sequence of actions (operator instances), each of
which is legal in its starting world state, which takes the
initial state to a goal state.
In AI planning systems, world states are
often described in terms of boolean state variables
(fluents). The best-known version of this is STRIPS
planning, in which operator effects are defined by an add
list of fluents which become true when the operator is
executed, and a delete list of fluents which become
false when the operator is executed. In the original STRIPS
system, world states and operator preconditions and effects
were described using first-order logic, which makes planning
difficult for tractability reasons. More common these days
are predicate STRIPS, in which all formulae are
quantifier-free, and propositional STRIPS, in which all
formulae are ground.
An often cited example of a planning domain is the infamous
blocks world, a model of stacks of blocks on an
infinite table. In a typical predicate
STRIPS formulation, the fluents are predicates over a domain
of blocks:
- clear(B)
- There is no block on block B
- on-table(B)
- Block B is on the table.
- on(B1,B2)
- Block B2 is on block B2.
The operators move a clear block onto another clear block
(or the table).
- move-bb(B1,B2,B3) (move B1 from atop
B2 to atop B3)
-
- preconditions
-
- clear(B1)
- clear(B3)
- on(B1,B2)
- adds
-
- deletes
-
- move-tb(B1,B3) (move B1 from the table
to atop B3)
-
- preconditions
-
- clear(B1)
- clear(B3)
- on-table(B1)
- adds
-
- deletes
-
- move-bt(B1,B2) (move B1 from atop B2
to the table)
-
- preconditions
-
- adds
-
- deletes
-
A famous planning problem in the blocks world domain is the
Sussman anomaly. This problem has this initial state:
![[c] on [a] on table, [b] on table](sussman1.png)
and this final state:
![[a] on [b] on [c] on table](sussman2.png)
A shortest sequence of move operators that solves this problem is
- move-bt(c,a)
- move-tb(b,c)
- move-tb(a,b)
Note that the shortest plan for achieving the goal cannot
begin with the shortest plan for achieving either of the
obvious subgoals
on(a,b) and on(b,c):
this is what is ``anomalous'' about the problem.
Current open issues in planning concern efficient planning
and efficient and expressive domain representations, using
such techniques as hierarchy and probabilistic methods.
CIRL
Different approaches to planning have been developed by researchers at
CIRL. Work has been centered on hierarchical planners, tractable
planning using a multi-valued logic, planning as satisfiability, and
fundamental planning issues such as directionality.
Pointers
Unsolved Problems in Planning as Constraint Satisfaction
This paper describes the problems that are encountered when
encoding planning as constraint satisfaction. Written by Tania
Bedrax-Weiss, Ari Jónsson, and Matt Ginsberg. Compressed
postscript document.
A New Algorithm for Generative Planning
This paper describes a new algorithm for generative planning that
solves subgoals in isolation and then appeals to a separate
NP-complete scheduling test to determine whether the actions that have
been selected can be combined in a useful way. Written by Matt
Ginsberg and appeared in Proc. KR in 1996. Compressed
postscript document.
Approximate Planning
This paper describes approximate planning. Written by Matt
Ginsberg and appeared in Artificial Intelligence.
Compressed postscript document.
Parent areas:
General Purpose Tools
Application Programs:
O-Plan
References
Blackbox
is a planning system that works by converting problems specified in
STRIPS notation into Boolean satisfiability problems and using
state-of-the-art satisfiability engines to find solutions to the problem.
Austin Tate, Brian Drabble and Richard Kirby, "O-Plan2: An Open
Architecture for Command, Planning and Control", in Intelligent
Scheduling, (eds. Monte Zweben, Mark Fox), Morgan Kaufmann Publishers,
San Francisco, 1994.
Back to the CIRL Overview Page.