State Space Planning
Planning as Search
Outline: State-space Planning
Forward Search
Forward Search
take c3
move r1
take c2
…
…
Forward Search Properties
Forward Search: Pruning
Forward Search Pruning Strategy
Deterministic Implementation
Deterministic Implementation
Branching Factor of Forward Search
a3
a1
…
a1
a2
a50
a3
initial state
goal
a2
Backward Search
Backward Search Algorithm
Backward Search Algorithm
Initial State
Goal
At first iteration choose
Backward Search Algorithm
At second iteration choose
Backward Search Algorithm
Satisfies
Efficiency of Backward Search
b1
…
b1
b2
b50
b3
initial state
goal
Lifted Backward Search
holding(b1)
. . .
ontable(b1)
on(b1,b1)
on(b1,b2)
on(b1,b50)
pickup(b1)
unstack(b1,b1)
unstack(b1,b2)
unstack(b1,b50)
holding(b1)
ontable(b1)
on(b1,y)
pickup(b1)
unstack(b1,y)
Lifted Backward Search
The Search Space is Still Large
c
b
a
goal
a
b
b
a
b
a
a
c
b
c
c
b
d
d
d
d
d
d
s0
STRIPS
G
Efficient but Incomplete
Sussman Anomaly
Two relevant operators at top level: “put A onto B” and “put B onto C”
Sussman Anomaly (Case: put A onto B)
Length 5 plan
Sussman Anomaly (Case: put B onto C)
Length 7 plan
Sussman Anomaly
Sussman Anomaly
STRIPS Does not always find the best solution
Sussman Anomaly
Sussman Anomaly
Shortest plan for achieving on(c1,c2)
Shortest plan for achieving on(c2,c3)
Interleaved plan