Automated Planning 1. Course Introduction Jonas Kvarnström Automated Planning Group Department of Computer and Information Science Linköping University jonas.kvarnstrom@liu.se – 2015 Lecturer: Jonas Kvarnström (jonkv@ida.liu.se) Computer Science (C program) in Linköping 1992-1996 PhD, now assistant professor (universitetslektor) Leader of the Automated Planning group Lab Assistant: Mikael Nilsson (mikni) – Ph.D. student in planning Administration: Anna Grabska Eklund (annek) – LADOK, … 2 jonkv@ida About Us… Please interrupt! Questions and comments are welcome – start a dialog! 3 jonkv@ida About the Lectures… Prerequisites Basic knowledge and understanding of data structures and algorithms as well as logic and discrete mathematics. Knowledge and understanding of basic artificial intelligence techniques and concepts, including search, heuristics and the A* search algorithm. Essentially no planning knowledge required! We will introduce planning concepts Then we will quickly go much deeper 5 jonkv@ida Prerequisites vs. Contents Today's lecture: Introduction to the topic ▪ What is planning? ▪ Where can we use planning? Introduction to the course ▪ Contents ▪ Examination ▪ Timetables A ▪ ▪ ▪ closer look at automated planning Planning vs. reacting Domain-specific vs. domain-independent Classical planning 6 jonkv@ida Today's Lecture Planning and its Applications One way of defining planning: Using knowledge about the world, including possible actions and their results, to decide what to do and when in order to achieve an objective, before you actually start doing it More about this definition later… 9 Some applications are simple, well-structured, almost toy problems Simple structure General Knowledge Single agent acting Specific Knowledge There are pegs and disks Three pegs, 7 disks A disk can be on a peg All disks currently on peg 2, in order of increasing size One disk can be above another Actions: Move topmost disk from x to y, without placing larger disks on smaller disks Objective All disks on the third peg, in order of increasing size jonkv@ida Towers of Hanoi 10 Some are larger, still well-structured What you can do: Put package p in truck t Drive to location Deliver p from t Objective: Deliver 20,000 packages (efficiently!) Which packages in which truck, in which order? Which roads to use? jonkv@ida Logistics Classical robot example: Shakey (1969) Available actions: ▪ Moving to another location ▪ Turning light switches on and off ▪ Opening and closing doors ▪ Pushing movable objects around ▪ … Goals: ▪ Be in room 4 with objects A,B,C ▪ http://www.youtube.com/watch?v=qXdn6ynwpiI 11 jonkv@ida Shakey Tall buildings, multiple elevators How to serve people as efficiently as possible? Schindler Miconic 10 system Enter destination before you board A plan is generated, determining which elevator goes to which floor, and in which order Saves time! Planning 3 elevators could serve as much traffic as 5 elevators with earlier algorithms 12 jonkv@ida Miconic 10 Elevators Xerox: Experimental reconfigurable modular printers Prototype: 170 individually controlled modules, 4 print engines Objective: Finish each print job as quickly as possible 13 jonkv@ida Xerox Printers Bending sheet metal Initially: There is a flat sheet of metal Objective: The sheet should be in specific shape Constraints: The piece must not collide with anything when moved! An optimized plan for bending the sheet saves a lot of time = money! 14 jonkv@ida Bending Sheet Metal Competition: autonomous cars drive 212 km off-road Requires path planning Deciding how to get from one point to another, given: ▪ Speed limits ▪ Constraints on how you can move (turn radius, …) ▪ A map – that may not always be correct ▪ http://www.youtube.com/watch?v=M2AcMnfzpNg 2:00, 4:00 15 jonkv@ida DARPA Grand Challenge 2005 Competition: 96 km in an urban area (air force base) Must follow all traffic regulations, drive around obstacles, merge with other traffic, … 16 jonkv@ida DARPA Urban Challenge 2007 SIADEX Decision support system for designing forest fire fighting plans Needs to consider allocation of limited resources Plans must be developed in cooperation with humans – people may die! 17 jonkv@ida SIADEX ”Remote Agent” on Deep Space 1 spacecraft Controlled the spacecraft autonomously for 2 days Correctly handled simulated failures Rapid response to failures may be crucial to survival! 18 jonkv@ida NASA Remote Agent Earth Observing-1 Mission Satellite in low earth orbit ▪ Can only communicate 8 x 10 minutes/day ▪ Operates for long periods without supervision CASPER software: Continuous Activity Scheduling, Planning, Execution and Replanning Dramatically increases science returns ▪ Interesting events are analyzed (volcanic eruptions, …) ▪ Targets to view are planned depending on previous observations ▪ Plans downlink activities: Limited bandwidth http://ase.jpl.nasa.gov/ 19 jonkv@ida NASA Earth Observing-1 Mission 20 Rapid generation of activity plans for Mars Rovers Primary platform for creating daily activity plans for Spirit and Opportunity Mixed-initiative tool: Human in the loop jonkv@ida NASA Mapgen And why should computers create plans? Manual planning can be boring and inefficient Automated planning may create higher quality plans ▪ Software can systematically optimize, can investigate millions of alternatives Automated planning can be applied where the agent is ▪ Satellites cannot always communicate with ground operators ▪ Spacecraft or robots on other planets may be hours away by radio 21 jonkv@ida Why should Computers Plan? 23 Course Contents Theory How do we model and specify planning problems? How do planning algorithms work? How do they relate to and benefit from different plan structures? How can planners benefit from our own deeper domain knowledge? Practice Practical experience in modeling / solving planning problems using well-known planners Deeper understanding of abilities and limitations How can we handle uncertainty? Written Exam Demos, hand-ins jonkv@ida Course Contents Preliminary lecture order: Introduction Modeling classical planning domains A formal model for classical planning; forward-chaining search Forward-chaining heuristics: Intro, relaxations, delete relaxation, … Forward-chaining heuristics: hm, hadd, alternative search methods Forward-chaining heuristics: Landmarks, Pattern databases Domain-configurable planning: Planning with control formulas Domain-configurable planning: Hierarchical Task Networks Regression planning; planning graphs; extracting heuristics from PGs Partial-order planning Propositional satisfiability planning Path planning Markov Decision Processes for probabilistic planning (1; 2) 24 jonkv@ida Lectures Main course book Reading instructions are on the web 25 jonkv@ida Course Book Lectures vs. Course Book Some overlap, but… 26 Lectures: Overviews Intuitions Details suitable for slides Complementary: Use both! (The exam will…) Book: Different overviews, intuitions Additional content and details Larger examples Exercises, questions jonkv@ida Lectures vs. Course Book 27 Rapid progress in planning research! Six labs based on state of the art research prototypes Dozens of planners are available ▪ Some ”recommended”, others available as a bonus Sequential satisficing acoplan acoplan2 arvand brt cbp cbp2 cpt4 dae_yahsp fd-autotune-1 fd-autotune-2 fdss-1 fdss-2 forkuniform lama-2008 lama-2011 lamar lprpgp madagascar madagascar-p popf2 probe randward roamer satplanlm-c sharaabi yahsp2 yahsp2-mt Seq. sat. multi-core acoplan arvandherd ayalsoplan madagascar madagascar-p phsff roamer-p yahsp2-mt Seq. optimizing bjolp cpt4 fd-autotune fdss-1 fdss-2 forkinit gamer iforkinit lmcut lmfork merge-and-shrink selmax Temporal satisficing cpt4 dae_yahsp lmtd popf2 sharaabi tlp-gp yahsp2 yahsp2-mt Older planners IPP FF Specialized planners SHOP2 jonkv@ida Labs Classical planning 1. Construct a simple planning domain for emergency service assistance Investigate properties of several planners Classical planning 2. Extensions – learn more about modeling Use action costs to model plan quality Test optimal planners Planning for multiple agents 3. Using sequential planners – what happens? Using concurrent planners – what do you gain? How do you model? 28 jonkv@ida Lab Overview Hierarchical Task Networks 4. Defining tasks to perform instead of goals to achieve Very different modeling task! Planning with Control Formulas 5. Using our own domain knowledge to guide a search algorithm Motion Planning with OMPL 6. Test a variety of motion planning techniques using the Open Motion Planning Library 29 jonkv@ida Lab Overview (2) Work by yourselves or in pairs Working in pairs must work together! Register in WebReg – deadline Tuesday 2015-03-31 If you have a problem: First try to solve it yourselves Then ask us! Without feedback we can’t help you! Be at the scheduled labs Even though you can work at home! Work outside the scheduled labs 30 jonkv@ida Labs Intended schedule: 150401 – Finish lab 1 (Classical 1) Lab assistants are available: 150416 – Finish lab 2 (Classical 2) During scheduled lab hours 150424 – Finish lab 3 (Concurrent) By e-mail, 150430 – Finish lab 4 (HTN) 150512 – Finish lab 5 (TLPlan) 150521 – Finish lab 6 (OMPL) 150526 – Final lab session 31 Absolute deadlines: 1506xx – Bonus demo session in the re-exam period (date announced later) 150605 – Written exam until the demo session 1506xx (That's all!) jonkv@ida Schedule 32 General policy: You can always take an exam at least three times per year For this course, you can also take the exam: ▪ In the August 2015 re-exam period ▪ In the October 2015 re-exam period General policy: For all IDA courses having computer lab assignments there will be one deadline during or at the end of the course. If you fail to make the deadline, you must retake the possibly new lab course the next time the course is given. For this course, two bonus demo sessions: ▪ In the August 2015 re-exam period ▪ In the October 2015 re-exam period jonkv@ida Additional Opportunities 33 jonkv@ida Strict Deadlines! 34 Do you need money from CSN? Finish in time, study for the exam! You can not get points outside of the specified dates jonkv@ida Strict Deadlines! 2 35 Will you be leaving the country? Study for the exam! You can not take an exam without being here jonkv@ida Strict Deadlines! 3 TDDD48 Automated Planning Questions?