Download presentation
Presentation is loading. Please wait.
1
EXAMPLE OF PARTIAL ORDER PLANNING
2
Action Recipes: Action: Stack(x,y) Prec: Clear(x) ^ Clear(y) ^ OnTable(x) Effect: ~Clear(y) ^ ~OnTable(x) ^ On(x,y) Action: Unstack(x,y) Prec: Clear(x) ^ On(x,y) Effect: Clear(y) ^ ~On(x,y) ^ OnTable(x) Initial State: Clear(A) ^ Clear(C) ^ OnTable(B) ^ OnTable(C) ^ On(A,B) Goal: OnTable(A) ^ On(C,A) B B A A A A C C C C
3
Initial State: Clear(A) ^ Clear(C) ^ OnTable(B) ^ OnTable(C) ^ On(A,B) Goal: OnTable(A) ^ On(C,A)
4
Finish Start OnTable(C) Clear(A) Clear(C) *On(C,A) New-order-constraints: Start < Finish STEP-1- OnTable(B) On(A,B) Clear(A) *OnTable(A) Order constraints: dashed lines Causal links: solid lines Protected preconditions: black, on causal link Open preconditions: red Effects: blue
5
Finish Start OnTable(C) Clear(A) Clear(C) *OnTable(A) New-order-constraints: Start < Stack(C,A) Stack(C,A) < Finish STEP-2 Stack(C,A) On(C,A) *Clear(C) *Clear(A) *OnTable(C) OnTable(B) On(A,B) Clear(A) ~Clear(A) others Order constraints: dashed lines Causal links: solid lines Protected preconditions: black, on causal link Open preconditions: red Effects: blue
6
Finish Start OnTable(C) Clear(A) Clear(C) *OnTable(A) STEP-3 Stack(C,A) On(C,A) OnTable(B) On(A,B) Clear(A) ~Clear(A) others Order constraints: dashed lines Causal links: solid lines Protected preconditions: black, on causal link Open preconditions: red Effects: blue
7
Finish Start OnTable(C) Clear(A) Clear(C) OnTable(A) STEP-4 Stack(C,A) On(C,A) OnTable(B) On(A,B) Clear(A) Unstack(A,B) *On(A,B) *Clear(A) New-order-constraints: Start < Unstack(A,B) Unstack(A,B) < Finish ~Clear(A) others
8
Finish Start OnTable(C) Clear(A) Clear(C) OnTable(A) STEP-5 Stack(C,A) On(C,A) OnTable(B) Unstack(A,B) On(A,B) Clear(A) ~Clear(A) others
9
Finish Start OnTable(C) Clear(A) Clear(C) OnTable(A) STEP-6 Stack(C,A) On(C,A) OnTable(B) Unstack(A,B) On(A,B) Clear(A) ~Clear(A) others CONFLICT between Stack(C,A) and causal link between Start and Unstack(A,B)
10
Finish Start OnTable(C) Clear(A) Clear(C) OnTable(A) STEP-7 Stack(C,A) On(C,A) OnTable(B) Unstack(A,B) On(A,B) Clear(A) ~Clear(A) others New-order-constraint: Unstack(A,B) < Stack(C,A)
11
ANOTHER EXAMPLE OF PARTIAL ORDER PLANNING
12
Action Recipes Action: Remove(Spare, Trunk) Prec: At(Spare, Trunk) Effect: ~At(Spare, Trunk) ^ At(Spare, Ground) Action: Remove(Flat, Axle) Prec: At(Flat, Axle) Effect: ~At(Flat, Axle) ^ At(Flat, Ground) Action: PutOn(Spare, Axle) Prec: At(Spare, Ground) ^ ~At(Flat, Axle) Effect: ~At(Spare, Ground) ^ At(Spare, Axle) Action: LeaveOvernight Prec: Effect: ~At(Spare, Ground) ^ ~At(Spare, Axle) ^ ~At(Spare, Trunk) ^ ~At(Flat, Ground) ^ ~At(Flat, Axle) Initial State: At(Spare, Trunk) ^ At(Flat, Axle) Goal: At(Spare, Axle)
13
Initial State: At(Spare, Trunk) ^ At(Flat, Axle) Goal: At(Spare, Axle)
14
Finish Start At(Spare,Trunk) At(Flat,Axle) *At(Spare,Axle) New-order-constraints: Start < Finish STEP-1- Order constraints: dashed lines Causal links: solid lines Protected preconditions: black, on causal link Open preconditions: red Effects: blue
15
PutOn(Spare,Axle) Finish Start At(Spare,Trunk) At(Flat,Axle) *At(Spare,Ground) At(Spare,Axle) *~At(Flat,Axle) New-order-constraints: Start < PutOn(Spare,Axle) PutOn(Spare,Axle) < Finish STEP-2 Order constraints: dashed lines Causal links: solid lines Protected preconditions: black, on causal link Open preconditions: red Effects: blue
16
Remove(Spare,Trunk)PutOn(Spare,Axle) Finish Start At(Spare,Ground) At(Spare,Axle) *~At(Flat,Axle) New-order-constraints: Start < Remove(Spare,Trunk) Remove(Spare,Trunk) < Finish Remove(Spare,Trunk) < PutOn(Spare,Axle) STEP-3 Order constraints: dashed lines Causal links: solid lines Protected preconditions: black, on causal link Open preconditions: red Effects: blue *At(Spare,Trunk) At(Spare,Trunk) At(Flat,Axle)
17
Remove(Spare,Trunk)PutOn(Spare,Axle) Finish Start At(Flat,Axle) At(Spare,Ground) At(Spare,Axle) *~At(Flat,Axle) New-order-constraints: Start < Remove(Spare,Trunk) Remove(Spare,Trunk) < Finish Remove(Spare,Trunk) < PutOn(Spare,Axle) STEP-4 Order constraints: dashed lines Causal links: solid lines Protected preconditions: black, on causal link Open preconditions: red Effects: blue At(Spare,Trunk)
18
LeaveOvernight Remove(Spare,Trunk)PutOn(Spare,Axle) Finish Start At(Flat,Axle) At(Spare,Trunk) At(Spare,Ground) At(Spare,Axle) ~At(Flat,Axle) ~At(Spare,Axle) ~At(Spare,Ground) ~At(Spare,Trunk) and others OPTION-1 STEP-5 New-order-constraints: Start < LeaveOvernight LeaveOvernight < PutOn(Spare,Axle) LeaveOvernight < Finish
19
Remove(Spare,Trunk)PutOn(Spare,Axle) Finish Start At(Flat,Axle) At(Spare,Trunk) At(Spare,Ground) At(Spare,Axle) ~At(Flat,Axle) Remove(Flat,Axle) *At(Flat,Axle) At(Flat,Ground) OPTION-2 STEP-5 New-order-constraints: Start < Remove(Flat, Axle) Remove(Flat,Axle) < PutOn(Spare,Axle) Remove(Flat,Axle) < Finish
20
LeaveOvernight Remove(Spare,Trunk)PutOn(Spare,Axle) Finish Start At(Flat,Axle) At(Spare,Trunk) At(Spare,Ground) At(Spare,Axle) ~At(Flat,Axle) ~At(Spare, Axle) ~At(Spare,Ground) ~At(Spare,Trunk) and others OPTION-1 STEP-5 New-order-constraints: Start < LeaveOvernight LeaveOvernight < PutOn(Spare,Axle) LeaveOvernight < Finish
21
LeaveOvernight Remove(Spare,Trunk)PutOn(Spare,Axle) Finish Start At(Flat,Axle) At(Spare,Trunk) At(Spare,Ground) At(Spare,Axle) ~At(Flat,Axle) ~At(Spare, Axle) ~At(Spare,Ground) ~At(Spare,Trunk) and others OPTION-1 STEP-5 AmAn Ak CONFLICT between Ak and causal link between Am and An
22
LeaveOvernight Remove(Spare,Trunk)PutOn(Spare,Axle) Finish Start At(Spare,Trunk) At(Flat,Axle) At(Spare,Trunk) At(Spare,Ground) At(Spare,Axle) ~At(Flat,Axle) ~At(Spare, Axle) ~At(Spare,Ground) ~At(Spare,Trunk) and others OPTION-1 STEP-5 AmAn Ak CONFLICT between Ak and causal link between Am and An Cannot put Ak after An since then we have a cycle So try putting Ak before Am
23
LeaveOvernight Remove(Spare,Trunk)PutOn(Spare,Axle) Finish Start At(Spare,Trunk) At(Flat,Axle) At(Spare,Trunk) At(Spare,Ground) At(Spare,Axle) ~At(Flat,Axle) ~At(Spare,Axle) ~At(Spare,Ground) ~At(Spare,Trunk) and others New-order-constraint: LeaveOvernight < Remove(Spare,Trunk) STEP-5a
24
LeaveOvernight Remove(Spare,Trunk)PutOn(Spare,Axle) Finish Start At(Spare,Trunk) At(Flat,Axle) At(Spare,Trunk) ##### At(Spare,Ground) At(Spare,Axle) ~At(Flat,Axle) ~At(Spare,Axle) ~At(Spare,Ground) ~At(Spare,Trunk) and others STUCK --- LeaveOvernight threatens the causal link at ##### Cannot put LeaveOvernight before Start Go back to alternative plan at STEP-5 STEP-5b
25
Remove(Spare,Trunk)PutOn(Spare,Axle) Finish Start At(Flat,Axle) At(Spare,Trunk) At(Spare,Ground) At(Spare,Axle) ~At(Flat,Axle) Remove(Flat,Axle) *At(Flat,Axle) At(Flat,Ground) OPTION-2 STEP-5 New-order-constraints: Start < Remove(Flat, Axle) Remove(Flat,Axle) < PutOn(Spare,Axle) Remove(Flat,Axle) < Finish
26
Remove(Spare,Trunk)PutOn(Spare,Axle) Finish Start At(Spare,Trunk) At(Spare,Ground) At(Spare,Axle) ~At(Flat,Axle) Remove(Flat,Axle) At(Flat,Axle) At(Flat,Ground) STEP-6
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.