Title: 74.419 Artificial Intelligence 2005/06
174.419 Artificial Intelligence 2005/06
Partial Order Planning
2Socks Shoes
Total Order Plans
Partial Order Plan
Left Sock on
Right Sock on
Left Shoe on
Right Shoe on
3Partially Ordered Plans
Partially Ordered Plans - or "How Do You Put
Your Shoes On?"
- Partially Ordered Plans
- no strict sequence
- partly parallel
- observe threats
4Resource Constraints in Planning
- Resources
- physical quantities, e.g. money, fluids etc.
- time
- Integrate Measures into Action Description and
Planning - representation of physical quantities and
reasoning / calculation, e.g. for buy-action
effect cash cash price (x) - time system / time logic, e.g. go-to-action
effect time time 30 (Minutes) - Backtracking on Constraint Violation
5Least Commitment Strategy Partially Instantiated
Plans
Least Commitment Strategy In general, make as
little concrete as possible, i.e. leave things
undetermined until you have to determine them and
become concrete. Partially Instantiated
Plans During planning, variables have not
necessarily to be instantiated immediately.
Instantiation can wait, until binding becomes
necessary
6Partial Order Planning 1
- Start with a rough plan and refine iteratively.
- First plan consists only of start and finish
actions - start - T as precondition, initial world state as
effect - finish - goal as precondition, NIL as effect
- Select actions to achieve sub-goals separately,
quasi in parallel ? partial-order plan - Fulfill open preconditions (sub-goals), until no
more unsatisfied preconditions are left (last one
is T of start)
7Partial Order Planning - Causal Links
- Add causal links to connect effects from actions
to matching preconditions for plan, e.g. - move(A,B,x) has effect clear(B)
- clear(B) is precondition for move(B,y,z)
- Causal links specify a partial order.
8effect of move (A,y,B) is on(A,B) is precondition
for finish (goal state)
causal link
9Partial Order Planning - Threats
- Recognize threats - the effect of an action A
destroys the precondition of another action B,
e.g. - move(A,x,B) destroys clear(B) (in DELETE-list)
- clear(B) is precondition for move(B,y,z)
- thus, move(B,Fl,C) has to be done before move
(A,Fl,B) - Add threats as partial order to plan blta (do b
before a).
10effect of a move(A,Fl,B) includes DEL Clear(B)
precond of c move(B,Fl,C) includes Clear(B)
threat! clta
a
c
threat bltc
b
11Partial Order Planning - Threats
partial order plan set of action strings
(partial plans) Problem Detect and resolve
threats, i.e. conflicts between actions where
the precondition of one action is deleted by
another action by choosing an adequate ordering
of actions if action b is a threat to action a,
then altb, i.e. a has to occur before b. (see
also Russell/Norvig textbook, The POP Planner)
12Partial Order Planning - Overall
- Use plan transformation operators to refine the
partial plan and construct a complete plan - add an action (operator),
- reorder actions (operators),
- instantiate actions (operators).
- A partial order plan consists of a set of action
sequences (partial plans action strings) which
together achieve the complete set of goal
literals. - Threats induce an additional partial order of
these action sequences.
13Additional References
- Nils J. Nilsson Artificial Intelligence A New
Synthesis. Morgan Kaufmann, San Francisco, 1998. - Konolidge, K. and K. Myers The Saphira
Architecture for Autonomous Mobile Robots (Robot
Soccer Class Project) - Guzzoni, D. et al. Many Robots Make Short Work.
(AAAI96 Robot Competition - Meeting Scheduling) - Martina Veloso, MIT (RoboCup)