Using Abstraction to Coordinate Multiple Robotic Spacecraft

19
Using Abstraction to Coordinate Multiple Robotic Spacecraft Brad Clement, Tony Barrett, Gregg Rabideau Artificial Intelligence Group Jet Propulsion Laboratory California Institute of Technology {clement, barrett, rabideau}@aig.jpl.nasa.gov Ed Durfee Artificial Intelligence Lab University of Michigan [email protected]

description

Using Abstraction to Coordinate Multiple Robotic Spacecraft. Ed Durfee Artificial Intelligence Lab University of Michigan [email protected]. Brad Clement, Tony Barrett, Gregg Rabideau Artificial Intelligence Group Jet Propulsion Laboratory California Institute of Technology - PowerPoint PPT Presentation

Transcript of Using Abstraction to Coordinate Multiple Robotic Spacecraft

Page 1: 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]

Page 2: Using Abstraction to Coordinate Multiple Robotic Spacecraft

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

Page 3: Using Abstraction to Coordinate Multiple Robotic Spacecraft

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

Page 4: Using Abstraction to Coordinate Multiple Robotic Spacecraft

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).

Page 5: Using Abstraction to Coordinate Multiple Robotic Spacecraft

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

Page 6: Using Abstraction to Coordinate Multiple Robotic Spacecraft

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

Page 7: Using Abstraction to Coordinate Multiple Robotic Spacecraft

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

Page 8: Using Abstraction to Coordinate Multiple Robotic Spacecraft

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] >

Page 9: Using Abstraction to Coordinate Multiple Robotic Spacecraft

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

Page 10: Using Abstraction to Coordinate Multiple Robotic Spacecraft

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

Page 11: Using Abstraction to Coordinate Multiple Robotic Spacecraft

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

Page 12: Using Abstraction to Coordinate Multiple Robotic Spacecraft

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

Page 13: Using Abstraction to Coordinate Multiple Robotic Spacecraft

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

Page 14: Using Abstraction to Coordinate Multiple Robotic Spacecraft

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

Page 15: Using Abstraction to Coordinate Multiple Robotic Spacecraft

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

Page 16: Using Abstraction to Coordinate Multiple Robotic Spacecraft

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

Page 17: Using Abstraction to Coordinate Multiple Robotic Spacecraft

• 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

Page 18: Using Abstraction to Coordinate Multiple Robotic Spacecraft

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

Page 19: Using Abstraction to Coordinate Multiple Robotic Spacecraft

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?