340 likes | 488 Views
Qualifying Exam Research Presentation. Presented by: Robert T. Effinger. January 25, 2005. “Enabling Fast Flexible Planning through Incremental Temporal Reasoning with Conflict Extraction”. I’shiang Shu, Robert Effinger, Prof. Brian Williams Model-Based Embedded and Robotic Systems Group.
E N D
Qualifying Exam Research Presentation Presented by: Robert T. Effinger January 25, 2005
“Enabling Fast Flexible Planning through Incremental Temporal Reasoning with Conflict Extraction” I’shiang Shu, Robert Effinger, Prof. Brian Williams Model-Based Embedded and Robotic Systems Group 2005 International Conference on Automated Planning and Scheduling
Presentation Summary • Importance of Automated Planning Research • Three Main Types of Automated Planners • A Simple Example • Generative Planner • Path Planner • Task Network Planner • Research Objectives of the Kirk Planner • Fast and Flexible Planning • Key Ideas and Concepts of the Kirk Planner • Simple Temporal Network (STN) • Incremental Update Algorithm (ITC) • Experimental Data • Key Assumptions and Limitations • Conclusions
Importance of Automated Planning • Airline Timetables • Assembly Lines • Radio Frequency Planning • Military Convoys • ISS Life Support Rations • MER Rover Planning • NASA’s Deep Space Probes
Three Main Types of Automated Planners • Generative Planners • Path Planners • Task Network Planners
A Simple Planning Example G 10 20 Football Game: Goal: Touchdown Start Condition: 20 yardline Library of Actions: Center (C):- Hike- Block Reciever (R): - Run to Endzone - Run Slant - Catch Football QuarterBack (QB) - Pass to Endzone- Slant Pass- QB Sneak C R QB
Generative Planner G Path Planner 10 20 Football Game: Goal: Touchdown Start Condition: 20 yardline Library of Actions: Center (C):- Hike- Block Reciever (QB): - Run to Endzone- Run Slant - Catch Football QuarterBack (QB) - Pass to Endzone- Slant Pass- QB Sneak C R QB Generative Planning Advantage: Very Expressive Generative Planning Disadvantage: Often Intractable (exponential growth) Can Generate Infeasible Plans Activity Times are not Flexible Generate Forward until Goal Condition Found: (Graphplan, FF) Generate Backward until Start Condition Found: (PoP) Start Condition: Goal: (R) Run to Endzone 20 yardline (C) Hike (R) Catch Football (QB) Pass to Endzone Touchdown !
Task Network Planner Goal: Touchdown Start Condition: 20 yardline Library of Actions: Center (C):- Hike- Block Reciever (QB): - Run to Endzone- Run Slant - Catch Football QuarterBack (QB) - Pass to Endzone- Slant Pass- QB Sneak G 10 20 C R QB Football Game:
Task Network Planning Goal: Touchdown Start Condition: 20 yardline Activity Plans: Library of Actions: Center (C):- Hike- Block Reciever (QB): - Run to Endzone- Run Slant - Catch Football QuarterBack (QB) - Pass to Endzone- Slant Pass- QB Sneak G G G Hail Mary 10 10 10 20 20 20 Slant Pass Hail Mary Activity Plan: C C C R R R (R) Run to Endzone (R) Catch Football (C) Hike 20 yardline QB QB QB QB Sneak (QB) Pass to Endzone Touchdown !
Task Network Planning Goal: Touchdown Start Condition: 20 yardline Library of Actions: Center (C):- Hike- Block Reciever (QB): - Run to Endzone- Run Slant - Catch Football QuarterBack (QB) - Pass to Endzone- Slant Pass- QB Sneak G G G Hail Mary 10 10 10 20 20 20 Slant Pass C C C R R R QB QB QB QB Sneak Activity Plans: Task Network Advantages: Tractable in real-time Activity times can be flexible Task Network Disadvantage: Less expressive
Research Objectives of the Kirk Planner Kirk’s Main Research Objective: “To Enable Fast and Temporally Flexible Planning” Translates into two technical research objectives: • 1.) Allow flexible instead of fixed execution times on activities • 2.) When replanning, try to reuse previous planning computations
Two Key Ideas Kirk’s Main Research Objective: “To Enable Fast and Temporally Flexible Planning” Translates into two technical research objectives: • 1.) Allow flexible instead of fixed execution times on activities • - Kirk supports a lower and upper time-bound on each activity • 2.) When replanning, try to reuse previous planning computations • - an incremental update algorithm (ITC) that utilizes previous computations
1st Key Idea: Flexible Execution Times Another Representation of the Hail Mary Activity Plan: G (QB) Pass to Endzone Hail Mary: 20 yardline (C) Hike (R) Catch Football (R) Run to Endzone Touchdown ! 10 20 (QB) Pass to Endzone [5,8] (C) Hike [0,5] (R) Catch Football [0,2] C R QB (R) Run to Endzone [7,9] ( Touchdown ! ) A Simple Temporal Network (STN): Kirk supports flexible lower and upper time-bounds on activities
Determining Temporal Consistency (QB) Pass to Endzone [5,8] (R) Catch Football [0,2] (R) Run to Endzone [7,9] ( Touchdown ! ) 8 0 0 5 2 -5 -0 -0 0 0 9 -0 -0 -0 -0 -7 (C) Hike [0,5] To determine temporal consistency, an STN is converted into a distance graph STN: (20 yardline) Distance Graph: Then the FIFO Label Correcting Algorithm is run on the new distance graph. There are two possible outcomes: 1.) If the algorithm terminates, then the STN is temporally consistent 2.) If the algorithm enters an infinite loop, then the STN is temporally inconsistent - an infinite loop is detected as soon as a nodes cost drops below zero - the infinite loop will contain the timing constraints in conflict.
Determining Temporal Consistency FIFO Label - Correcting Algorithm ( ) Graph G Î {01} for all s V(G) {02} d(s) = ∞ Initialize {03a} d(s ) = 0 start {03b} insert(S ) start Check for {04a} while !Q.empty() Violating Arcs {04b} u = Q.pop() Î Update {05a} for v Succ(u) {05b} dval = Update(u,v) 8 {06} if(dval) < 0 {07} return false; 0 0 5 {08} return true; 2 -5 0 0 0 0 0 value Update (p,x) 9 0 0 {09} if (d(x) > d(p) + c(p,x)) 0 0 {10} d(x) := d(p) + c(p,x); -7 {11} Q.Insert(x, d(x)); {12} return d(x); (QB) Pass to Endzone [5,8] (C) Hike [0,5] (R) Catch Football [0,2] (20 yardline) (R) Run to Endzone [7,9] ( Touchdown ! ) Run FIFO Label-Correcting Algorithm: 5 13 5 15 13 5 13 14 Terminates, so STN is consistent!! Original STN:
Detecting a Conflict FIFO Label - Correcting Algorithm ( ) Graph G Î {01} for all s V(G) {02} d(s) = ∞ Initialize {03a} d(s ) = 0 start {03b} insert(S ) start Check for {04a} while !Q.empty() Violating Arcs {04b} u = Q.pop() Î Update {05a} for v Succ(u) {05b} dval = Update(u,v) 8 {06} if(dval) < 0 {07} return false; 0 0 5 {08} return true; 2 -5 0 0 0 0 0 value Update (p,x) 9 0 0 {09} if (d(x) > d(p) + c(p,x)) 0 0 {10} d(x) := d(p) + c(p,x); -7 {11} Q.Insert(x, d(x)); {12} return d(x); (C) Hike [0,5] Run FIFO Label-Correcting Algorithm: 9 1 5 13 1 9 5 13 15 13 5 20 -3 9 1 -12 Node cost dropped below zero! STN is Inconsistent !! Following the backpointers reveals conflict! Modified STN: (QB) Pass to Endzone [5,8] (R) Catch Football [0,2] (R) Walk to Endzone [12,15] (20 yardline) (R) Run to Endzone [7,9] ( Touchdown ! )
2nd Key Idea: Incremental Update Algorithm (ITC) 8 0 0 5 2 -5 0 0 0 0 0 9 0 0 0 0 -7 (QB) Pass to Endzone [5,8] Hail Mary STN: (C) Hike [0,5] (R) Catch Football [0,2] (20 yardline) (R) Run to Endzone [7,9] ( Touchdown ! ) Three Arc Update Rules: 1.) Arc Change With No Effect to Shortest-Path 2.) Arc Change Improves Shortest-Path 3.) Arc ChangeInvalidates Shortest-Path Use an Incremental Update Algorithm (ITC) to retain previous computations Hail Mary Distance Graph: 5 13 5 15 13 5 13 14
1.) Arc Change Without Effect to Shortest-Path 8 0 0 5 2 -5 0 0 0 0 0 9 0 0 0 0 -7 11 (QB) Pass to Endzone [5,8] Hail Mary STN: (C) Hike [0,5] (R) Catch Football [0,2] (20 yardline) (R) Run to Endzone [7,9] ( Touchdown ! ) Rule 1: If an arc change doesn’t affect the shortest-path, then no update is needed. Hail Mary Distance Graph: 5 13 5 15 13 5 13 14 (R) Run to Endzone [7,11]
2.) Shortest-Path Improvement 8 0 0 5 2 -5 0 0 0 0 0 9 0 0 0 0 -7 7 (QB) Pass to Endzone [5,8] Hail Mary STN: (C) Hike [0,5] (R) Catch Football [0,2] (20 yardline) (R) Run to Endzone [7,9] ( Touchdown ! ) Rule 2: If an arc change improves shortest-path, then just propagate the improved costs Hail Mary Distance Graph: 5 13 12 12 14 5 15 13 12 5 13 14 (QB) Pass to Endzone [5,7]
3.) Invalidation of Shortest-Path 8 0 0 5 2 -5 0 0 0 0 0 9 0 0 0 0 -7 9 (QB) Pass to Endzone [5,8] Hail Mary STN: (C) Hike [0,5] (R) Catch Football [0,2] (20 yardline) (R) Run to Endzone [7,9] ( Touchdown ! ) Rule 3: If an arc change invalidates shortest-path: First, reset all invalidated nodes to infinity, and then propagate improved costs from the changed arc’s head node. Hail Mary Distance Graph: 5 14 13 14 16 5 15 13 14 5 13 14 (QB) Pass to Endzone [5,9]
Glass Box Behavior of ITC Rule 1: No effect to shortest path Rule 2: Shortest path improvement Rule 3: Invalidation of shortest path END START
Experimental Results Legend: Seeker UAV WaterB2 NFZ2 Water UAV No-Fly Zone NFZ1 WaterB1 Fire UAV Base Fire2 Water UAV Base WaterA1 WaterA2 Fire1 Plan Goal: Extinguish All Fires Vehicles: Two Seeker UAVs One Water UAV Resources: Fuel & Water The Incremental Update Algorithm (ITC) was tested on: - UAV Scenarios - Randomly Generated STNs
Key Assumptions and Limitations • Kirk’s pre-defined operators are sufficiently expressive- Desired plan is expressible with Kirk’s pre-defined operators • Activities are controllable - dispatcher can pick any specific time between the lower bound and upper bound of an activity (e.g. Hike [0,5] ) • There is no innovative problem solving or logical deduction when planning fails
Conclusions • Automated Planning is Important to Aerospace Engineering • Kirk allows flexibility in planning through flexible time-bounds • With Incremental Update Rules, Kirk can utilize previous computations • Experimental Data shows an order of magnitude improvement
Origins of Kirk • Deep Space 1 mission • NASA’s first fully autonomous spacecraft demonstration • Used the HSTS planner • Used flexible time (Temporal Constraint Graph) • Developed into Europa and then Kirk
Another Key Idea: Reducing Complexity G Hail Mary: 10 Touchdown ! 20 Another Representation of the Hail Mary Activity Plan: • Hail Mary: • ( sequence • ( C: hike ) • ( parallel • ( R: Run to Endzone ) • ( QB: Throw to Endzone ) • ) • ( R: Catch Football ) • ) (QB) Pass to Endzone 20 yardline (C) Hike (R) Catch Football (R) Run to Endzone C R QB Kirk restricts activity plans to predefined operators.
Using Conflicts to Guide the Search • A Simple Temporal Network formed from the pre-defined operators can be transformed into a Conditional CSP. • Then, Conflict-Directed Search Algorithms from the CSP literature such as Dynamic Backtracking and Conflict- Directed A* can be used to guide the search. • Sometimes the conflicts returned by ITC aren’t focused enough:
ITC Pseudo-code Figure 6 ITC Pseudo-Code
ITC Arc Update Rules (Pseudocode) Three Arc Update Rules: 1.) Arc Change With No Effect to Shortest-Path 2.) Arc Change Improves Shortest-Path 3.) Arc ChangeInvalidates Shortest-Path
References • R. Ahuja, T. Magnanti, J. Orlin. Network Flows: Theory, Algorithms, and Applications. Prentice Hall, 1993. • R. Bellman. On a Routing Problem. Quaterly of Applied Mathematics, vol. 16, pp. 87 90, 1958. • N. Chandrachoodan, S. Bhattachryya, and K.J. Liu. Adaptive Negative Cycle Detection in Dynamic Graphs. In Proc. of the International Symposium on Circuits and Systems, May 2001. • R. Dechter, I. Meiri, J. Pearl. Temporal Constraint Networks. Artificial Intelligence, 49:61-95, May 1991. • T. Estlin, G. Rabideau, D. Mutz, S. Chien. Using Continuous Planning Techniques to Coordinate Multiple Rovers. Electronic Transactions on Artificial Inttligence, 4:45-57, 2000. • P. Kim, B. Williams, and M. Abrahmson. Executing Reactive, Model-based Programs through Graph-based Temporal Planning. In Proceedings of IJCAI-2001, Seattle, WA, 2001. • S. Koenig and M. Likhachev. Incremental A*. In Adv. in Neural Information Processing Systems 14, 2001. • D. McAllester. Truth Maintenance. In Proceedings of AAAI-90, 1990, 1109-1116. • G. Rabideau, R. Knight, S. Chien, A. Fukunaga, A. Govindjee. Iterative Repair Planning for Spacecraft Operations in the ASPEN System. ISAIRAS, Noordwijk, The Netherlands, June 1999. • Tsmardinos, N. Muscettola, and P.Morris. Fast transformation of temporal plans for efficient execution. In AAAI-98, 1998. • B.C. Williams and R.J. Ragno. Conflict-directed A* and its role in model-based embedded systems. Journal of Discrete Applied Math, • A. Stentz. Optimal and efficient path planning for partially known environments. In Proceedings of IEEE ICRA, May 1994. • N. Muscettola, P. Morris, B. Pell, and B. Smith. Issues in temporal reasoning for autonomous control systems. In Autonomous Agents, 1998. • G. Verfaillie and T. Schiex. Dynamic backtracking for dynamic constraint satisfaction problems. In Proceedings of the ECAI'94 Workshop on Constraint Satisfaction Issues Raised by Practical Applications, Amsterdam, The Netherlands, pages 1-8, 1994. • Matthew L. Ginsberg and David A. McAllester. Gsat and dynamic backtracking. In Principles of Knowledge Representation and Reasoning: Proceedings of the Fourth International Conference (KR `94), 1994. • P. Prosser, Hybrid algorithms for the constraint satisfaction problem, Computational Intelligence 3 (1993) 268—299.