170 likes | 191 Views
Artificial Intelligence Planning for Autonomous Systems: where are we struggling ?. Daniele Magazzeni King’s College London https://nms.kcl.ac.uk/daniele.magazzeni/. Artificial Intelligence Planning Group at King’s. We have a rich portfolio of planning for real
E N D
Artificial Intelligence Planning for Autonomous Systems: where are we struggling ? Daniele Magazzeni King’s College Londonhttps://nms.kcl.ac.uk/daniele.magazzeni/
Artificial Intelligence Planning Groupat King’s We have a rich portfolio of planning for real applications, with companies and organisations: • Autonomous Underwater Vehicles • Energy Technology • Autonomous Drones and UAVs • Ocean Liners • Multiple Battery System Management • Hybrid Vehicles • Smart Buildings • Air Traffic Control and Plane Taxiing • Urban Traffic Control Efficient Macroscopic Urban Traffic Models for Reducing Congestion: A PDDL+ Planning Approach. AAAI 2016. Plan-based Policies for Efficient Multiple Battery Load Management. JAIR 2012 Solving Realistic Unit Commitment Problems Using Temporal Planning: Challenges and Solutions. ICAPS 2016
Planning with Robots Planning for Persistent Underwater Autonomy Policy Learning for Autonomous Feature Tracking Autonomous maintenance of submerged oil & gas infrastructuresEU Project PANDORA EU Project SQUIRREL Robot interacting with children in a toy cleaning scenario Policy Learning for Autonomous Feature Tracking. Autonomous Robots (2015) Toward Persistent Autonomous Intervention in a Subsea Panel. Autonomous Robots. (2016) Opportunistic Planning in Autonomous Underwater Missions. IEEE Transactions on Automation Science and Engineering. (2017)
AI Planning Given • An initial state: a set of propositions and assignments to numeric variables • A goal: a desired set of propositions/assignments • A set of actions each with: • Preconditions on execution • Effects that describe how the world changes upon their execution Find • A sequence of actions (a plan) that when applied in the initial state leads to a state that satisfies the goal condition How • Use heuristics to prune the state space and guide the search • Standard Description Language (PDDL) • Domain-Independent Solvers (:action navigate :parameters (?r – rover ?x ?y - waypoint) :precondition (and (available ?r) (at ?r ?x) (visible ?x ?y) (>= (energy ?r) 8)) :effect (and (decrease (energy ?r) 8) (not (at ?r ?x )) (at ?r ?y)))
AI Planning • Autonomous Underwater Vehicles • Energy Technology • Autonomous Drones and UAVs • Ocean Liners • Multiple Battery System Management • Hybrid Vehicles • Smart Buildings • Air Traffic Control and Plane Taxiing • Urban Traffic Control • Oil and Gas Industry • All modelled using PDDL+ and differential • equations • Classical planning: a plan to get to a desirable state that satisfies some goals. • Optimisation: minimize/maximise a cost function. • Temporal planning: actions have a duration. Concurrency, synchronisation, time dependent effects. • Planning with preferences: hard and soft goals. • Conditional planning: actions can perform observations, and the plan contains branches. • Planning for Hybrid Systems (PDDL+) • Hybrid Automata semantics • Discrete actions • Processes modelling continuous change
Focus of Our Research • Rich planning models • PDDL+ modelling • Planners • Based on discretisation (UPMurphi) • Based on SMT (SMTPlan+) • Policy learning framework • Planning with external solvers • Validation • Plan validation (VAL) • Plan robustness evaluation • Domain validation • Explainable Planning • Planning with Robots • Persistent Autonomy • ROSPlan UPMurphi: A Tool for Universal Planning on PDDL+ Problems. ICAPS 2010 Heuristic Planning for PDDL+ Domains.IJCAI 2016 PDDL+ Planning via Constraint Answer Set Programming.COPLAS 2016
A Compilation of the Full PDDL+ Language into SMT. ICAPS 2016 • Planner for Hybrid Systems based on SMT • Free and open source: http://kcl-planning.github.io/SMTPlan/
ROSPlan: Planning in the Robot Operating System. ICAPS 2015 Task Planning with • Agnostic about the planning system • Modular • Open source and free http://kcl-planning.github.io/ROSPlan/
Dagstuhl Workshop on Planning and Robotics 16-20 January 2017 Organisers: Malik Ghallab Nick Hawes Daniele Magazzeni Brian Williams Coordinator: Andrea Orlandini Transparency in Autonomy Symbiotic AutonomySafety in Industrial RoboticsLong-Term Autonomy Task-Motion Planning Goal-Directed Autonomy
To model, or not to model, that is the question
Domain/Plan Correctness/Robustness I believe we are often too optimistic about the assumptions we can make. Q1: what are reasonable assumptions we can make when writing our models? (relocation, precise sensing, actuator precision) Plans are correct-by-construction, modulo the correctness of the model. Q2: can we do model validation, and what does it mean in robotics domain? In persistent autonomy, plan validity is affected by temporal uncertainty due to uncertain and dynamic environment. Q3: how can we evaluate plan temporal robustness? Planning community is making great progress in handling very rich planning models (PDDL+, external solver, semantic attachments) Q4: how can we leverage rich domain modelling to model robot dynamics? Do robotics people think it's important to model dynamics in the planning model?
What should I plan for ? We often (always?) assume to have goals. I'd like the robot to collaborate in deciding upon its own goals. Based on: -HRI -Curiosity and exploration -Motivations -Need for recovering. Problem awareness -Improving its own domain model. (I'll get back in one hour and I want to see a more concrete domain file). Q5: are there other factors the robot should check for deciding goals? Q6: how are we doing (really) with this issue?
Human-Robot Interaction(not the standard one…) In many cases, policies request humans to approve plans before execution:Q7: how can we make plans clear to humans? (not PDDL.. , non domain-specific approach, instruction graphs) If the operator cannot approve the plan, perhaps he/she could approve a slightly different plan. Q8: how can we effectively handle plan execution with human interaction? Humans can decide to take less/more risk (e.g., for getting less/more reward) Q9: should we be generating sets of plans, rather than a single plan?
Integration Good progress so far, but still a lot to do. Q10: where should we focus? When planning for long-horizon missions, scalability is a huge issue. Q11: is it possible to create a model/planning solution that is detailed, but becomes gradually abstract further into the future? Can such a solution be integrated, and handled at execution time? Q12: can we share benchmarks and data sets? First First Tutorial on planning and Robotics at ICRA-17 Workshop on Planning and Robotics at ICRA-17
Daniele Magazzeni Thank you! BTW: we are hiring!
(non-exhaustive) list… Q1: what are reasonable assumptions we can make when writing our models? Q2: can we do model validation, and what does it mean in robotics domain? Q3: how can we evaluate plan temporal robustness? Q4: how can we leverage rich domain modelling to model robot dynamics? Do robotics people think it's important to model dynamics in the planning model? Q5: are there other factors the robot should check for deciding goals? Q6: how are we doing (really) with this issue? Q7: how can we make plans clear to humans? (not PDDL.. , non domain-specific approach, instruction graphs) Q8: how can we effectively handle plan execution with human interaction? Q9: should we be generating sets of plans, rather than a single plan? Q10: where should we focus? Q11: is it possible to create a model/planning solution that is detailed, but becomes gradually abstract further into the future? Can such a solution be integrated, and handled at execution time? Q12: can we share benchmarks and data sets?