860 likes | 881 Views
Explore different planning methodologies such as classical planning, HTN planning, MDP & POMDP planning, and planning under uncertainty. Learn about advances in performance and resources allocation in planning processes.
E N D
The Prospects for Real Planning David E. Smith desmith@arc.nasa.gov
Planning Find: program of actions that achieves the objective
Planning Find: program of actions that achieves the objective goals partially-ordered set
Factions Classical planning (STRIPS, operator-based, first-principles) ? HTN planning “practical” planning MDP & POMDP planning planning under uncertainty
Problems w/ Classical Planning Classical planning performance time resources HTN planning MDP & POMDP planning
Outline Background Performance advances Resources Time Relevance to DX
pre1 eff1 pre2 eff2 pre3 The Classical Representation Inits: P1 P2 P3 P4 Operators: Op Goal1 Goal2 Goal3 Goals:
Simple Spacecraft Problem Observation-1 target instruments Observation-2 Observation-3 Observation-4 … pointing calibrated
py ¬px c px Example Init Actions Goal pC c pC IA C Ty px Ix Im
c pA pC C c IA S Im F pA pC TA ¬pC POCL Planning(SNLP, UCPOP) IA F 1. Select an open condition 2. Choose an op that can achieve it Link to an existing instance Add a new instance 3. Resolve threats IA Im F pC C c IA Im F pA pC C c IA S Im F pA pC C c IA Im F S pA pC TA ¬pC
Outline Background Performance advances Resources Time Relevance to DX
Fully Automated Logistics Time Comparison System R FF 1000 HSP2 STAN Seconds 10 GRT 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 Mips 0.1
STRIPS Miconic 10 Time Comparison System R 10000 TokenPlan 100 STAN Seconds 1 2 4 6 8 AltAlt 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40 42 44 46 48 50 52 54 56 58 60 GRT 0.01
Performance Advances Reachability & Mutex reasoning (Graphplan) Distance-based heuristics (HSP)
level 0 level 1 level 2 level 3 level 0 level 1 level 2 … … … The Plan Graph
Expand plan graph • Derive mutex relationships • If goals are present & consistent • search for a solution Graphplan
py ¬px c px Example Init Actions Goal pC c pC IA C Ty px Ix Im
Level 0 0 1 2 3 pC …
Level 1 0 1 2 3 c pC ¬pc pA … C pC … TA
Mutual Exclusion • Two actions are mutex if • one clobbers the other’s effects or preconditions • they have mutex preconditions • Two propositions are mutex if • all ways of achieving them are mutex
Mutex for Level 1 0 1 2 3 c pC ¬pc pA … C pC … TA
Level 2 0 1 2 3 c pC ¬pc pA … c pC ¬pc pA … C C pC … TA TA
Mutex for Level 2 0 1 2 3 c pC ¬pc pA … c pC ¬pc pA … C C pC … TA TA
Level 3 0 1 2 3 c pC ¬pc pA … c pC ¬pc pA … c pC ¬pc pA IA … C C C pC … TA TA TA IA
Mutex for Level 3 0 1 2 3 c pC ¬pc pA … c pC ¬pc pA … c pC ¬pc pA IA … C C C pC … TA TA TA IA
Expand plan graph • Derive mutex relationships • If goals are present & consistent • search for a solution Finding a Solution 0 1 2 3 c pC ¬pc pA … c pC ¬pc pA … c pC ¬pc pA IA … C C C pC … TA TA TA IA √ √
Finding a Solution – Level 3 0 1 2 3 c pC ¬pc pA … c pC ¬pc pA … c pC ¬pc pA IA … C C C pC … TA TA TA IA
Finding a Solution – Level 2 0 1 2 3 c pC ¬pc pA … c pC ¬pc pA … c pC ¬pc pA IA … C C C pC … TA TA TA IA
Finding a Solution – Level 2 0 1 2 3 c pC ¬pc pA … c pC ¬pc pA … c pC ¬pc pA IA … C C C pC … TA TA TA IA Fails
Finding a Solution – Level 2 0 1 2 3 c pC ¬pc pA … c pC ¬pc pA … c pC ¬pc pA IA … C C C pC … TA TA TA IA Fails
Finding a Solution – Level 2 0 1 2 3 c pC ¬pc pA … c pC ¬pc pA … c pC ¬pc pA IA … C C C pC … TA TA TA IA
Finding a Solution – Level 2 0 1 2 3 c pC ¬pc pA … c pC ¬pc pA … c pC ¬pc pA IA … C C C pC … TA TA TA IA
Finding a Solution – Level 1 0 1 2 3 c pC ¬pc pA … c pC ¬pc pA … c pC ¬pc pA IA … C C C pC … TA TA TA IA
Advantages of Graphplan Expansion & mutex are polynomial Search over fixed structure Mutex prunes branches early
AIPS-98 Competition BlackBox Graphplan SATplan IPP Graphplan SGP Graphplan STAN Graphplan HSP Forward State Space / Distance Heuristic
Performance Advances √ Reachability & Mutex reasoning (Graphplan) Distance-based heuristics (HSP)
Distance-based Heuristics IA ? I2A I1A c1 pA c2 pA … … ? Inits
c1 pA Computing Distance D(c1) cIm1 Im1 IA D(pa) D(a) = ca + ppre(a)D(p)
Im1 Im2 Computing Distance D(Im1) IA min D(Im2) D(p) = minapD(a)
c2 c1 C2 C1 ¬o1 o1 o2 pA o2 pC pC ¬pc pC TA pC c1 c2 pA pA IA IA Im1 Im2 2-Camera Problem Actions ¬o1 o1 W1 Init
0 1 2 3 4 W1 W1 W1 W1 C1 C1 C1 C2 C2 C2 C2 TA TA TA TA I2A I2A 2-Instrument Plan Graph ¬o1 o2 pC … ¬o1 o1 o2 c2 pC ¬pc pA … ¬o1 o1 c1 o2 c2 pC ¬pc pA … ¬o1 o1 c1 o2 c2 pC ¬pc pA IA … ¬o1 o1 c1 o2 c2 pC ¬pc pA IA … I1A
0 1 2 3 4 W1 W1 W1 W1 C1 C1 C1 C2 C2 C2 C2 TA TA TA TA I2A I2A I1A Distances – Level 0 0 ¬o1 o2 pC … ¬o1 o1 o2 c2 pC ¬pc pA … ¬o1 o1 c1 o2 c2 pC ¬pc pA … ¬o1 o1 c1 o2 c2 pC ¬pc pA IA … ¬o1 o1 c1 o2 c2 pC ¬pc pA IA … 0 0
0 1 2 3 4 W1 W1 W1 W1 C1 C1 C1 C2 C2 C2 C2 TA TA TA TA I2A I2A I1A Distances– Level 1 0 0 ¬o1 o2 pC … ¬o1 o1 o2 c2 pC ¬pc pA … ¬o1 o1 c1 o2 c2 pC ¬pc pA … ¬o1 o1 c1 o2 c2 pC ¬pc pA IA … ¬o1 o1 c1 o2 c2 pC ¬pc pA IA … 1 1 0 0 1 1 0 0 1 1 1
0 1 2 3 4 W1 W1 W1 W1 C1 C1 C1 C2 C2 C2 C2 TA TA TA TA I2A I2A I1A Distances– Level 2 0 0 0 ¬o1 o2 pC … ¬o1 o1 o2 c2 pC ¬pc pA … ¬o1 o1 c1 o2 c2 pC ¬pc pA … ¬o1 o1 c1 o2 c2 pC ¬pc pA IA … ¬o1 o1 c1 o2 c2 pC ¬pc pA IA … 1 1 1 1 2 2 0 0 0 1 1 1 1 0 0 0 1 1 1 1 1 1
0 1 2 3 4 W1 W1 W1 W1 C1 C1 C1 C2 C2 C2 C2 TA TA TA TA I2A I2A I1A Distances– Level 3 0 0 0 0 ¬o1 o2 pC … ¬o1 o1 o2 c2 pC ¬pc pA … ¬o1 o1 c1 o2 c2 pC ¬pc pA … ¬o1 o1 c1 o2 c2 pC ¬pc pA IA … ¬o1 o1 c1 o2 c2 pC ¬pc pA IA … 1 1 1 1 1 1 2 2 2 2 0 0 0 0 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1 1 1 1 3 3
0 1 2 3 4 W1 W1 W1 W1 C1 C1 C1 C2 C2 C2 C2 TA TA TA TA I2A I2A I1A Distances– Level 4 0 0 0 0 0 ¬o1 o2 pC … ¬o1 o1 o2 c2 pC ¬pc pA … ¬o1 o1 c1 o2 c2 pC ¬pc pA … ¬o1 o1 c1 o2 c2 pC ¬pc pA IA … ¬o1 o1 c1 o2 c2 pC ¬pc pA IA … 1 1 1 1 1 1 1 1 2 2 2 2 2 2 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 3 3 3 3 4
I2A I1A Using Distances IA Regression + A* 4 3 c1 pA c2 pA 1 1
1 1 c2 pA 1 1 c2 pA A Remarks Admissible? underestimates – conflicts overestimates – shared subplans Refinements Applicability? Regression Graphplan Forward state space POCL
AIPS-2000 Competition AltAlt Regression + Distance FF Forward-SS + Distance GRT Forward-SS + Distance HSP2 Regression + Distance STAN (Forward-SS + Distance) + Graphplan Reachability & Mutex reasoning Distance-based heuristics
The Lesson It’s the heuristic, stupid!