ICAPS ‘08
Angelic Hierarchical Planning:
Optimal and Online Algorithms
Bhaskara Marthi
MIT/Willow Garage
bhaskara@csail.mit.edu
Stuart Russell
UC Berkeley
russell@cs.berkeley.edu
1
Jason Wolfe
UC Berkeley
jawolfe@cs.berkeley.edu
Angelic Hierarchical Planning: Optimal and Online Algorithms - - PowerPoint PPT Presentation
Angelic Hierarchical Planning: Optimal and Online Algorithms Bhaskara Marthi Stuart Russell Jason Wolfe MIT/Willow Garage UC Berkeley UC Berkeley bhaskara@csail.mit.edu russell@cs.berkeley.edu jawolfe@cs.berkeley.edu ICAPS 08 1
ICAPS ‘08
MIT/Willow Garage
bhaskara@csail.mit.edu
UC Berkeley
russell@cs.berkeley.edu
1
UC Berkeley
jawolfe@cs.berkeley.edu
[Go(work)] [GetIn(car), Drive(work), GetOut(car)] [Walk(stop), Bus(work)]
2
if ¬Raining
Kc3 Rxa1 Qa4 c2 c2 Kxa1
3
Kc3 Rxa1 Qa4 c2 c2 Kxa1
3
3
L R L R L R
3
L R L R L R
≈ 20,000,000,000,000 primitive actions
3
L R L R L R
≈ 20,000,000,000,000 primitive actions
3
is provably optimal
L R L R L R
≈ 20,000,000,000,000 primitive actions
3
looks like a good start
L R L R L R
Melbourne
≈ 20,000,000,000,000 primitive actions
3
looks like a good start
L R L R L R
Melbourne
≈ 20,000,000,000,000 primitive actions
3
looks like a good start
L R L R L R
Melbourne
≈ 20,000,000,000,000 primitive actions
3
looks like a good start
L R L R L R
Melbourne
≈ 20,000,000,000,000 primitive actions
s0
State space
4
s0
State space
4
s0
State space
4
s0
State space
4
s0
State space
4
s0
State space
4
s0
State space
4
s0
State space
4
s0
State space
4
G
s0
State space
4
G
s0
State space
4
G
s0
State space
4
G
s0
State space
4
G
5
Downward Refinement Property (DRP) automatically satisfied
5
6
Melbourne
7
S
7
S
s0 G
7
S
s0 G
7
S
s0 G
7
Transitions & costs for action a1
4 ∞ 8 3 ∞
8
8
8
L, D, GetR, U, Turn, D, PutL, R, R, D, GetL, L, PutL, U, L, GetL, U, Turn, R, D, D, PutR
8
L, D, GetR, U, Turn, D, PutL, R, R, D, GetL, L, PutL, U, L, GetL, U, Turn, R, D, D, PutR
8
L, D, GetR, U, Turn, D, PutL, R, R, D, GetL, L, PutL, U, L, GetL, U, Turn, R, D, D, PutR
8
L, D, GetR, U, Turn, D, PutL, R, R, D, GetL, L, PutL, U, L, GetL, U, Turn, R, D, D, PutR
8
L, D, GetR, U, Turn, D, PutL, R, R, D, GetL, L, PutL, U, L, GetL, U, Turn, R, D, D, PutR
8
L, D, GetR, U, Turn, D, PutL, R, R, D, GetL, L, PutL, U, L, GetL, U, Turn, R, D, D, PutR
8
L, D, GetR, U, Turn, D, PutL, R, R, D, GetL, L, PutL, U, L, GetL, U, Turn, R, D, D, PutR
8
L, D, GetR, U, Turn, D, PutL, R, R, D, GetL, L, PutL, U, L, GetL, U, Turn, R, D, D, PutR
8
L, D, GetR, U, Turn, D, PutL, R, R, D, GetL, L, PutL, U, L, GetL, U, Turn, R, D, D, PutR
8
L, D, GetR, U, Turn, D, PutL, R, R, D, GetL, L, PutL, U, L, GetL, U, Turn, R, D, D, PutR
8
L, D, GetR, U, Turn, D, PutL, R, R, D, GetL, L, PutL, U, L, GetL, U, Turn, R, D, D, PutR
8
L, D, GetR, U, Turn, D, PutL, R, R, D, GetL, L, PutL, U, L, GetL, U, Turn, R, D, D, PutR
8
L, D, GetR, U, Turn, D, PutL, R, R, D, GetL, L, PutL, U, L, GetL, U, Turn, R, D, D, PutR
8
L, D, GetR, U, Turn, D, PutL, R, R, D, GetL, L, PutL, U, L, GetL, U, Turn, R, D, D, PutR
8
L, D, GetR, U, Turn, D, PutL, R, R, D, GetL, L, PutL, U, L, GetL, U, Turn, R, D, D, PutR
8
L, D, GetR, U, Turn, D, PutL, R, R, D, GetL, L, PutL, U, L, GetL, U, Turn, R, D, D, PutR
8
L, D, GetR, U, Turn, D, PutL, R, R, D, GetL, L, PutL, U, L, GetL, U, Turn, R, D, D, PutR
8
L, D, GetR, U, Turn, D, PutL, R, R, D, GetL, L, PutL, U, L, GetL, U, Turn, R, D, D, PutR
8
L, D, GetR, U, Turn, D, PutL, R, R, D, GetL, L, PutL, U, L, GetL, U, Turn, R, D, D, PutR
8
L, D, GetR, U, Turn, D, PutL, R, R, D, GetL, L, PutL, U, L, GetL, U, Turn, R, D, D, PutR
8
L, D, GetR, U, Turn, D, PutL, R, R, D, GetL, L, PutL, U, L, GetL, U, Turn, R, D, D, PutR
8
L, D, GetR, U, Turn, D, PutL, R, R, D, GetL, L, PutL, U, L, GetL, U, Turn, R, D, D, PutR
8
L, D, GetR, U, Turn, D, PutL, R, R, D, GetL, L, PutL, U, L, GetL, U, Turn, R, D, D, PutR
9
9
9
9
9
refinements of special HLA Act
10
refinements of special HLA Act
refinements into action sequences
10
iff at G
refinements of special HLA Act
refinements into action sequences
10
iff at G
refinements of special HLA Act
refinements into action sequences
10
iff at G
11
11
Act
11
Act
11
Act
11
Act Move(C,A) Act
11
Act Move(C,A) Act Act Move(A,C)
11
Act Move(C,A) Act Act Move(A,C)
11
Act Move(C,A) Act Act Move(A,C)
11
Act Move(C,A) Act Act Move(A,C) Move(B,C) Act
11
Act Move(C,A) Act Act Move(A,C) Move(B,C) Act Act Move(C,B)
11
Act Move(C,A) Act Act Move(A,C) Move(B,C) Act Act Move(C,B)
11
Act Move(C,A) Act Act Move(A,C) Move(B,C) Act Act Move(C,B)
11
Act Move(C,A) Act Act Move(A,C) Move(B,C) Act Act Move(C,B) Nav(xC-1,yC) . . . Act M
e ( B , C )
11
Act Move(C,A) Act Act Move(A,C) Move(B,C) Act Act Move(C,B) Nav(xC-1,yC) . . . Act M
e ( B , C )
8/∞ 0/0 2/4 4/8 5/7 7/9 9/∞ 3/∞ 3/3 1/1 6/6 8/8
12
NavT(0,1)
12
NavT(0,1)
6 8 7 5 10 ... ...
12
NavT(0,1)
6
5
12
NavT(0,1)
6
12
NavT(0,1)
6
Exact
13
Exact
13
Exact
13
Optimistic
Exact
13
Optimistic
Pessimistic
14
14
14
NavT(xt,yt) (Pre: At(xs,ys))
14
NavT(xt,yt) (Pre: At(xs,ys)) Opt: -At(xs,ys), +At(xt,yt), -FaceR, +FaceR cost ≥ |xs - xt| + |ys- yt|
s t
~ ~
14
NavT(xt,yt) (Pre: At(xs,ys)) Opt: -At(xs,ys), +At(xt,yt), -FaceR, +FaceR cost ≥ |xs - xt| + |ys- yt| Pess: IF Free(xt,yt) ∧ ∀x Free(x,ymax) :
cost ≤ |xs - xt| + 2 ymax - yt - ys + 1
s t
~ ~
s t
~ ~
14
NavT(xt,yt) (Pre: At(xs,ys)) Opt: -At(xs,ys), +At(xt,yt), -FaceR, +FaceR cost ≥ |xs - xt| + |ys- yt| Pess: IF Free(xt,yt) ∧ ∀x Free(x,ymax) :
cost ≤ |xs - xt| + 2 ymax - yt - ys + 1 ELSE: nil
s t x s t
~ ~
s t
~ ~
through an NCSTRIPS description to produce next valuation
14
NavT(xt,yt) (Pre: At(xs,ys)) Opt: -At(xs,ys), +At(xt,yt), -FaceR, +FaceR cost ≥ |xs - xt| + |ys- yt| Pess: IF Free(xt,yt) ∧ ∀x Free(x,ymax) :
cost ≤ |xs - xt| + 2 ymax - yt - ys + 1 ELSE: nil
s t x s t
~ ~
s t
~ ~
15
16
17
18
19
20
21
22
23
23
24
warehouse world Solution Length A* AHA* 7 0.9 0.6 16 10 4.7 25 40 11 37 550 30 44 > 10000 68
25
26
instances
27