Professional Documents
Culture Documents
Finish
Classical Planning: Partial order planning 5
Example
Start
At(HWS) Sells(HWS,Drill)
Buy(Drill)
At(x)
Go(SM)
At(SM) Sells(SM,Milk)
Buy(Milk)
Finish
Classical Planning: Partial order planning 6
Example
Start
At(Home)
Go(HWS)
At(HWS) Sells(HWS,Drill)
Buy(Drill)
At(HWS)
Go(SM)
Buy(Milk) Buy(Ban.)
At(SM)
Go(Home)
Finish
Classical Planning: Partial order planning 7
Planning process
Operators on partial plans:
add a link from an existing action to an open condition
add a step to fulfill an open condition
order one step wrt another to remove possible conflicts
Gradually move from incomplete/vague plans to complete, correct plans
Backtrack if an open condition is unachievable or
if a conflict is unresolvable
procedure Resolve-Threats(plan)
c S in Links( plan) do
for each Sthreat that threatens a link Si −→ j
choose either
Demotion: Add Sthreat ≺ Si to Orderings( plan)
Promotion: Add Sj ≺ Sthreat to Orderings( plan)
if not Consistent( plan) then fail
end
DEMOTION
Go(Home)
At(Home)
At(Supermarket)
Buy(Milk) Promotion: put after Buy(M ilk)
PROMOTION
At(Home)
Finish
PutOn(x,y) PutOnTable(x)
C
START B A
A
On(A,B) On(B,C)
B
FINISH C
C
START B A
PutOn(B,C)
A
On(A,B) On(B,C)
B
FINISH C
C
START B A
PutOn(A,B)
clobbers Cl(B)
=> order after
PutOn(B,C)
A
On(A,B) On(B,C)
B
FINISH C
C
START B A
PutOn(A,B)
clobbers Cl(B)
=> order after
PutOn(B,C)
On(C,z) Cl(C)
PutOn(B,C)
PutOnTable(C) clobbers Cl(C)
=> order after
PutOnTable(C)
Cl(B) On(B,z) Cl(C)
Cl(A) On(A,z) Cl(B)
PutOn(B,C)
PutOn(A,B)
A
On(A,B) On(B,C)
B
FINISH C
M ovetotable(b, x):
Precond: On(b, x) ∧ Clear(b)
Effect: On(b, T able) ∧ Clear(x) ∧ ¬On(b, x)
and the following planning problem: the initial state is On(B, A)∧On(D, C)∧
Clear(B)∧Clear(D)∧On(A, T able)∧On(C, T able). The goal is On(A, B)∧
On(C, D)∧On(B, T able)∧On(C, T able). Solve this problem using partial
order planning; trace the search from the initial empty plan to a complete
solution, explaining every step.