Using Abstraction to Coordinate Multiple Robotic Spacecraft
description
Transcript of Using Abstraction to Coordinate Multiple Robotic Spacecraft
Using Abstraction to Coordinate Multiple Robotic Spacecraft
Brad Clement, Tony Barrett, Gregg RabideauArtificial Intelligence Group
Jet Propulsion Laboratory
California Institute of Technology{clement, barrett, rabideau}@aig.jpl.nasa.gov
Ed DurfeeArtificial Intelligence Lab
University of [email protected]
Automated Planning/Scheduling
• Choose and order actions that take robot(s) from current state to goal state
• Decompose abstract tasks/goals into detailed actions
Current State Goal State
goal
subgoal subgoalgoal
Planning at Abstract Levels• Resolve conflicts at high level to minimize search
time and preserve decomposition choices
• Better solutions may exist at lower levels
planninglevels
crispercrispersolutionssolutionslowerlower
planningplanningcostcost
flexibilityflexibility
Motivation• Hierarchical refinement search can reduce the search space
exponentially when there is no need to backtrack up the hierarchy. (Korf ’87, Knoblock ’91)
• Planning problems often have interacting goals such that backtracking is necessary.
• By summarizing the state constraints of an abstract task’s refinement, an HTN style planner can reduce the search space exponentially. (Clement & Durfee 2000)
• Show that any planner or scheduler can reap the benefits of abstraction.
Apply this work to metric resources in an iterative repair planner (ASPEN).
Motivation
• Hierarchical plans also exploited by robust execution systems (PRS, RAPS, etc.)
• Reasoning about plans at multiple levels of abstraction is natural for situated planning systems– human interaction– continual planning– coordination across planners
Contributions• Algorithm summarizing metric resource usage for
abstract activities based on their decompositions• Complexity analyses showing that scheduling is
exponentially cheaper at higher levels of abstraction using summary information
• Experiments in a multi-rover domain that support the analyses
• Search techniques for directing the refinement of activities in an iterative repair planner that further improve performance
Summarizing Resource Usage
soak rays soak rays soak rays
low-4 -5 -6
-4 2 7 0
Battery power usage for three possible decompositions
morning activities
move(A, B)sunbathe
soak raysuse –4W20 min
soak raysuse –5W20 min
soak raysuse –6W20 min
low path
go(A,1)use 6W10 min
go(1,2)use 6W10 min
go(2,B)use 12W20 min
go(A,B)use 8W50 min
go(A,3)use 8W15 min
go(3,B)use 12W25 min
middle pathhigh path
6 6 12
2 1 6 -6
soak rays soak rays soak rays
medium-4 -5 -6
-4 0
8
4 3 2 -6
soak rays soak rays soak rays
high-4 -5 -6
-4 3 7 0
8 12
4 6 -6
summarized resource usage
< local_min_range, local_max_range, persist_range >
• Captures uncertainty of decomposition choices and temporal uncertainty of partially ordered actions
• Can be used to determine if a resource usage may, must, or must not cause a conflict
Summarizing Resource Usage
0
40
30
-7
-20
2010
< [-20, -7],[30, 40],[10, 20] >
Resource Summarization Algorithm
• Can be run offline for a domain model
• Run separately for each resource
• Recursive from leaves up hierarchy
• Summarizes parent from summarizations of immediate children
• Considers all legal orderings of children
• Considers all subintervals where upper and lower bounds of children’s resource usage may be reached
• Exponential with number of immediate children, so summarization is really constant for one resource and O(r) for r resources
Complexity Analyses• Iterative repair planners (such as ASPEN) heuristically pick conflicts and resolve them by
moving activities and choosing alternative decompositions of abstract activities.
• Moving an activity hierarchy to resolve a conflict is O(vnc2) for v state or resource variables, n hierarchies in the schedule, and c constraints in hierarchy per variable.
• Summarization can collapse the constraints per variable making c smaller.• In the worst case, where no constraints are collapsed because they are over different
variables, the complexity of moving activity hierarchies at different levels of expansion is the same.
. . .
level01
d1 2 n
branchingfactor b
c constraintsper hierarchy
vvariables
Complexity Analyses
• In the other extreme, where constraints are always collapsed when made for the same variable, the number of constraints c is the same as the number of activities and grows bi for b children per activity and depth level i. Thus, the complexity of scheduling operations grows O(vnb2i).
• Along another dimension, the number of temporal constraints that can cause conflicts during scheduling grows exponentially (O(bi)) with the number of activities as hierarchies are expanded.
• In addition, by using summary information to prune decomposition choices with greater numbers of conflicts, exponential computation is avoided.
• Thus, reasoning at abstract levels can resolve conflicts exponentially faster.
. . .
level01
d1 2 n
branchingfactor b
c constraintsper hierarchy
vvariables
Decomposition Strategies
• Level expansion– repair conflicts at current level of abstraction until
conflicts cannot be further resolved
– then decompose all activities to next level and begin repairing again
• Expand most threats first (EMTF)– instead of moving activity to resolve conflict,
decompose with some probability (decomposition rate)
– expands activities involved in greater numbers of conflicts (threats)
• Relative performance of two techniques depends decomposition rate selected for EMTF
Decomposition Strategies
• FTF (fewest-threats-first) heuristic tests each decomposition choice and picks those with fewer conflicts with greater probability.
rover_move
path1path1 path2 path3
10 conflicts10 conflicts 20 conflicts 15 conflicts
Multi-Rover Domain• 2 to 5 rovers
• Triangulated field of 9 to 105 waypoints
• 6 to 30 science locations assigned according to a multiple travelling salesman algorithm
• Rovers’ plans contain 3 shortest path choices to reach next science location
• Paths between waypoints have capacities for a certain number of rovers
• Rovers cannot be at same location at the same time
• Rovers cannot cannot cross a path in opposite directions at the same time
• Rovers communicate with the lander over a shared channel for telemetry--different paths require more bandwidth than others
Experiments using ASPEN for a Multi-Rover Domain
Performance improves greatly when activities share a common resource.
0
1000
2000
3000
4000
5000
6000
0 1000 2000 3000 4000 5000 6000
Summary Information + Aggregation CPU Seconds
Ag
gre
gat
ion
CP
U s
eco
nd
s
0
1000
2000
3000
4000
5000
6000
0 1000 2000 3000 4000 5000 6000
Summary Information + Aggregation CPU seconds
Ag
gre
gat
ion
CP
U s
eco
nd
s
0
1000
2000
3000
4000
5000
6000
0 1000 2000 3000 4000 5000 6000
Summary Information + Aggregation CPU seconds
Ag
gre
gat
ion
CP
U s
eco
nd
s
Rarely shared resources (only path variables) Mix of rarely shared (paths) and often shared(channel) resources
Often shared (channel) resource only
Experiments using ASPEN for a Multi-Rover Domain
CPU time required increases dramatically for solutions found at increasing depth levels.
0
1000
2000
3000
4000
5000
6000
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5
Average Depth of Hierarchies in Solution
Su
mm
ary
Info
rmat
ion
+ A
gg
reg
atio
n
CP
U s
eco
nd
s
• Picking branches that result in fewer conflicts (FTF) greatly improves performance.
• Expanding activities involved in greater numbers of conflictsis better than level-by-level expansion when choosing a proper rate of decomposition
0
1000
2000
3000
4000
5000
6000
0 1000 2000 3000 4000 5000 6000
Summary Information + FTF CPU Seconds
Su
mm
ary
Info
rmat
ion
C
PU
Sec
on
ds
0
200
400
600
800
1000
1200
0 5 10 15 20 25 30 35
EMTF Decomposition Rate
CP
U s
eco
nd
s
A
A level-decomp
B
B level decomp
C
C level decomp
Experiments in ASPEN for a Multi-Rover Domain
Summary
• Algorithm summarizing metric resource usage for abstract activities based on their decompositions
• Complexity analyses showing that scheduling operations are exponentially cheaper at higher levels of abstraction when summarizing activities collapses state/resource constraints and temporal constraints
• Experiments in multi-rover domain support analyses• Reasoning at abstract levels is wasteful when hierarchies
must be fully expanded and OR branch selection is not important
• Search techniques for directing the refinement of activities further improve performance
Future Work
• How does abstract reasoning affect plan quality when using iterative repair?
• How should complex resources be abstracted?– resource usage functions– window variables– geometrical constraints– volatile objects (file system)
• What is the effect of abstracting over resource classes?• What are efficient protocols for coordinating a group
of agents’ plans continually?