Title: Incremental Contingency Planning Richard Dearden, Nicolas Meuleau, Sailesh Ramakrishnan, David E' Sm
1Incremental Contingency Planning Richard
Dearden, Nicolas Meuleau, Sailesh Ramakrishnan,
David E. Smith, Rich Washington
?
2Why Contingency Planning ??
Limited onboard processing CPU, memory,
time Safety sequence checking Anticipation setup
steps
3The Planning Problem
Given start time pose energy available actions
with uncertain durations resource usage Possible
science objectives images samples
Compress
Visual servo (.2, -.15)
Dig(5)
Drive(-1)
NIR
Drive(2)
Warmup NIR
Maximize (Expected) Scientific Return
4Technical Challenges
Continuous time ( resources) Continuous
outcomes Time ( resource) constraints Concurren
cy Goal selection optimization g1, g2, g3, g4
5Just in Case (JIC) Scheduling
1. Seed schedule 2. Identify most likely
failure 3. Generate a contingency
branch 4. Integrate the branch
.4
.2
.1
Advantages Tractability Simple plans Anytime
6Just in Case (JIC) Planning
1. Seed plan 2. Identify most likely
failure 3. Generate a contingency
branch 4. Integrate the branch
.4
.2
.1
7Limits of JIC Scheduling Heuristics
t ? 900, 1430 ? 5s ? 1s
? most probable failures most
interesting branch point
Most probable failure points may not be the best
branch-points It is often too late to attempt
other goals when the plan is about to fail.
V 10
HiRes
t ? 1000, 1400 ? 600s ? 60s
? 300s ? 5s
? 120s ? 60s
? 1000s ? 500s
?
?
?
V 100
Dig(60)
Visual servo (.2, -.15)
Drive (-2)
NIR
t ? 900, 1600 ? 5s ? 1s
t ? 1000, 1350 ? 600s ? 60s
? 120s ? 20s
V 50
Lo res
Rock finder
LIB
V 5
Warmup LIB
True for all initial states in the grey box.
? 1200s ? 20s
8Just in Case (JIC) Planning
?
?
?
?
1. Seed plan 2. Identify best branch
point 3. Generate a contingency branch 5.
Evaluate Integrate the branch
Construct plangraph Back-propagate value
tables Compute gain Select branch condition
goals
Vm
Vb
r
9Construct Plangraph
g1
g2
g3
g4
10Value Tables
V1
g1
r
V2
g2
r
V3
g3
r
V4
g4
r
11Example
q
g
A
B
(10, 15)
(10, 15)
p
C
r
(3, 3)
E
g
(2, 2)
D
s
t
(1, 5)
12Simple Propagation
q
g
A
B
(10, 15)
(10, 15)
p
C
r
(3, 3)
E
g
(2, 2)
D
s
t
(1, 5)
13Simple Propagation
q
g
A
B
(10, 15)
(10, 15)
p
C
r
(3, 3)
E
g
(2, 2)
D
s
t
(1, 5)
14Simple Propagation
q
g
A
B
(10, 15)
(10, 15)
p
C
r
(3, 3)
E
g
(2, 2)
D
s
t
(1, 5)
15Conjunctions
q
g
A
B
(10, 15)
(10, 15)
p
t
1
C
r
2
(3, 3)
E
g
(2, 2)
D
s
t
(1, 5)
16Propagation
q
g
A
B
(10, 15)
(10, 15)
p
t
1
C
r
2
(3, 3)
E
g
(2, 2)
D
s
t
(1, 5)
17Propagation
q
g
A
B
(10, 15)
(10, 15)
p
C
r
(3, 3)
E
g
(2, 2)
D
s
t
(1, 5)
18Combining Tables
q
g
A
B
(10, 15)
(10, 15)
p
C
r
(3, 3)
E
g
(2, 2)
D
s
t
(1, 5)
19Discharging Assumptions
q
g
A
B
(10, 15)
(10, 15)
p
C
r
(3, 3)
E
g
(2, 2)
D
s
t
(1, 5)
20Propagation
q
g
A
B
(10, 15)
(10, 15)
p
C
r
(3, 3)
E
g
(2, 2)
D
s
t
(1, 5)
21Combining Tables
q
g
A
B
(10, 15)
(10, 15)
p
1
C
r
5
(3, 3)
E
g
(2, 2)
D
s
t
(1, 5)
22Combining Tables
q
g
A
B
5
(10, 15)
(10, 15)
p
25
8
1
C
r
5
(3, 3)
E
g
(2, 2)
D
s
t
(1, 5)
23Ordering
q
g
A
B
AB
5
(10, 15)
CDE
(10, 15)
p
25
8
1
C
r
5
(3, 3)
E
g
(2, 2)
D
s
t
DCE
(1, 5)
24Achieving Multiple Goals
gg
g
5
g
25
15
30
q
g
A
B
5
(10, 15)
(10, 15)
p
25
8
1
C
r
5
(3, 3)
E
g
(2, 2)
D
s
t
(1, 5)
25Achieving Multiple Goals
q
g
A
B
(10, 15)
(10, 15)
p
1
C
r
5
(3, 3)
E
g
(2, 2)
D
s
t
(1, 5)
26Goal Annotation
g
g
q
g
A
B
(10, 15)
(10, 15)
p
g
1
C
r
5
g
(3, 3)
E
g
(2, 2)
D
s
t
g
g
(1, 5)
g
27Just in Case (JIC) Planning
?
?
?
?
1. Seed plan 2. Identify best branch
point 3. Generate a contingency branch 5.
Evaluate Integrate the branch
Construct plangraph Back-propagate value
tables Compute gain Select branch condition
goals
Vm
Vb
r
28Estimating Branch Value
V1
V
r
Max
V2
V
r
V3
V
r
V4
29Plan Statistics
resource probability
plan value function
P
Vm
r
r
V1
V2
V3
V4
30Expected Branch Gain
P
r
V1
V2
V3
V4
31Selecting the Branch Condition
branch condition
branch condition
P
r
V1
V2
V3
V4
32Selecting Branch Goals
branch goals
g1
P
g3
r
r
V1
g1
V2
g3
V3
V4
33Evaluating the Branch
?
?
?
?
1. Seed plan 2. Identify best branch
point 3. Generate a contingency
branch 4. Evaluate integrate the branch
Compute value function Compute actual gain
34Actual Branch Gain
P
actual branch condition
Vm
Vb
r
r
Branch value function
35Remarks Single Plangraph
?
?
?
?
1. Seed plan 2. Identify best branch
point 3. Generate a contingency branch 5.
Evaluate Integrate the branch
Construct plangraph Back-propagate value
tables Compute gain Select branch condition
goals
Vm
Vb
r
36Plan Graph
V1
g1
r
V2
g2
r
V3
g3
r
V4
g4
r
37Branch Initial Conditions
p
v
r
q,r
v
r
v
r
p,r
v
v
r
r
38Single Plangraph
Construct single plangraph Back-propagate value
tables
1. Seed plan 2. Identify best branch
point 3. Generate a contingency
branch 4. Evaluate integrate the branch
?
?
?
?
Discharge conditions Compute gain Select branch
condition goals
39Issues
Sensor costs Setup steps Utility updates Floating
contingencies
40The End.