Search and Inference in AI Planning

Similar documents
Introduction Classical planning Neoclassical planning Heuristics Planning in the real world. Automated Planning. PLG Group

New Admissible Heuristics for Domain-Independent Planning

Clustering and scheduling maintenance tasks over time

Optimal Planning with ACO

A Constraint-Based Method for Project Scheduling with Time Windows

Introduction. Real World Planning. Planning with Time. Time 15/11/2012. COMP219: Artificial Intelligence. COMP219: Artificial Intelligence

6.852: Distributed Algorithms Fall, Class 2

Factored Planning: How, When, and When Not

Plan-Space Search. Searching for a Solution Plan in a Graph of Partial Plans

Y. Xiang, Constraint Satisfaction Problems

CONSISTENCY METHODS FOR TEMPORAL REASONING. Lin Xu A THESIS. Presented to the Faculty of. The Graduate College at the University of Nebraska

Introduction to Planning

Integrating Benders decomposition within Constraint Programming

Scheduling Home Health Care with Separating Benders Cuts in Decision Diagrams

Scheduling Shop Scheduling. Tim Nieberg

POMPDs Make Better Hackers: Accounting for Uncertainty in Penetration Testing. By: Chris Abbott

Approximation Algorithms

Heuristics for Dynamically Adapting Constraint Propagation in Constraint Programming

Measuring the Performance of an Agent

Optimising Measurement Processes Using Automated Planning

Classification - Examples

Criticality of Schedule Constraints Classification and Identification Qui T. Nguyen 1 and David K. H. Chua 2

Disjunction of Non-Binary and Numeric Constraint Satisfaction Problems

Complexity Theory. IE 661: Scheduling Theory Fall 2003 Satyaki Ghosh Dastidar

npsolver A SAT Based Solver for Optimization Problems

A Slot Representation of the Resource-Centric Models for Scheduling Problems

On-line Planning and Scheduling in a High-speed Manufacturing Domain

Load Balancing. Load Balancing 1 / 24

Scenario: Optimization of Conference Schedule.

Compression algorithm for Bayesian network modeling of binary systems

Abstract Title: Planned Preemption for Flexible Resource Constrained Project Scheduling

On-line Planning and Scheduling for High-speed Manufacturing

High-Mix Low-Volume Flow Shop Manufacturing System Scheduling

SEARCHING AND KNOWLEDGE REPRESENTATION. Angel Garrido

Ordered Landmarks in Planning

From Workflow Design Patterns to Logical Specifications

Part-Based Recognition

Integration of ACO in a Constraint Programming Language

Random vs. Structure-Based Testing of Answer-Set Programs: An Experimental Comparison

Testing LTL Formula Translation into Büchi Automata

The Constraint Satisfaction Problem and Reformulation Techniques

A Visual Programming Tool for Designing Planning Problems for. Semantic Web Service Composition

Optimal Planning of Closed Loop Supply Chains: A Discrete versus a Continuous-time formulation

5 INTEGER LINEAR PROGRAMMING (ILP) E. Amaldi Fondamenti di R.O. Politecnico di Milano 1

Software Engineering. What is a system?

Bayesian Networks. Mausam (Slides by UW-AI faculty)

virtual class local mappings semantically equivalent local classes ... Schema Integration

Relational model. Relational model - practice. Relational Database Definitions 9/27/11. Relational model. Relational Database: Terminology

Satisfiability Checking

A Logic Approach for LTL System Modification

Sudoku puzzles and how to solve them

Monitoring and Determining Action Failure in a Multi-Agent Plan

P 3 C: A New Algorithm for the Simple Temporal Problem

Compact Representations and Approximations for Compuation in Games

The University of Jordan

AI: A Modern Approach, Chpts. 3-4 Russell and Norvig

CS Introduction to Data Mining Instructor: Abdullah Mueen

Semantic Web Service Composition Planning with OWLS-Xplan

Quantum Computing Lecture 7. Quantum Factoring. Anuj Dawar

Discuss the size of the instance for the minimum spanning tree problem.

Optimizing Description Logic Subsumption

Applied Algorithm Design Lecture 5

Master s Program in Information Systems

A Hybrid Heuristic Rule for Constrained Resource Allocation in PERT Type Networks

NP-complete? NP-hard? Some Foundations of Complexity. Prof. Sven Hartmann Clausthal University of Technology Department of Informatics

A Learning Based Method for Super-Resolution of Low Resolution Images

MIP-Based Approaches for Solving Scheduling Problems with Batch Processing Machines

Single-Link Failure Detection in All-Optical Networks Using Monitoring Cycles and Paths

Coverability for Parallel Programs

On some Potential Research Contributions to the Multi-Core Enterprise

"LET S MIGRATE OUR ENTERPRISE APPLICATION TO BIG DATA TECHNOLOGY IN THE CLOUD" - WHAT DOES THAT MEAN IN PRACTICE?

Updating Action Domain Descriptions

Automata-based Verification - I

Arithmetic Coding: Introduction

A STRATEGIC PLANNER FOR ROBOT EXCAVATION' by Humberto Romero-Lois, Research Assistant, Department of Civil Engineering

Binary Encodings of Non-binary Constraint Satisfaction Problems: Algorithms and Experimental Results

1 Representation of Games. Kerschbamer: Commitment and Information in Games

A PKI For IDR Public Key Infrastructure and Number Resource Certification

SYSM 6304: Risk and Decision Analysis Lecture 5: Methods of Risk Analysis

Improving SAT-Based Weighted MaxSAT Solvers CP 2012 (Quebec)

Fairness in Routing and Load Balancing

A Beam Search Heuristic for Multi-Mode Single Resource Constrained Project Scheduling

HYBRID GENETIC ALGORITHM PARAMETER EFFECTS FOR OPTIMIZATION OF CONSTRUCTION RESOURCE ALLOCATION PROBLEM. Jin-Lee KIM 1, M. ASCE

Rover. ats gotorock getrock gotos. same time compatibility. Rock. withrover 8-39 TIME

Dynamic programming formulation

University of Potsdam Faculty of Computer Science. Clause Learning in SAT Seminar Automatic Problem Solving WS 2005/06

Statistical Machine Translation: IBM Models 1 and 2

Seminar. Path planning using Voronoi diagrams and B-Splines. Stefano Martina

The Analysis Method about Change Domain of Business Process Model Based on the Behavior Profile of Petri Net

Dimensioning an inbound call center using constraint programming

Outline. NP-completeness. When is a problem easy? When is a problem hard? Today. Euler Circuits

Policy Analysis for Administrative Role Based Access Control without Separate Administration

Concurrency Control. Chapter 17. Comp 521 Files and Databases Fall

ACL Based Dynamic Network Reachability in Cross Domain

KNOWLEDGE FACTORING USING NORMALIZATION THEORY

A Bayesian Approach for on-line max auditing of Dynamic Statistical Databases

Diagnosis of Simple Temporal Networks

Constraint-Based Scheduling: A Tutorial

INTERNATIONAL JOURNAL OF COMPUTER ENGINEERING & TECHNOLOGY (IJCET)

Testing mobile computing applications: toward a scenario language and tools

Transcription:

Search and Inference in AI Planning Héctor Geffner ICREA & Universitat Pompeu Fabra Barcelona, Spain Joint work with V. Vidal, B. Bonet, P. Haslum, H. Palacios,... H. Geffner, Search and Inference in AI Planning, CP-05, 10/2005 1

AI Planning Planning is a form of general problem solving Problem = Language = Planner = Solution Idea: problems described at high-level and solved automatically Goal: facilitate modeling, maintain performance H. Geffner, Search and Inference in AI Planning, CP-05, 10/2005 2

Planning and General Problem Solving: How general? For which class of problems a planner should work? Classical planning focuses on problems that map into state models state space S initial state s 0 S goal states S G S actions A(s) applicable in each state s transition function s = f(a, s), a A(s) action costs c(a, s) > 0 A solution of this class of models is a sequence of applicable actions mapping the inital state s 0 into a goal state S G It is optimal if it minimizes sum of action costs Other models for planning with uncertainty (conformant, contingent, Markov Decision Processes, etc), temporal planning, etc. H. Geffner, Search and Inference in AI Planning, CP-05, 10/2005 3

Planning Languages specification: concise model description computation: reveal useful heuristic info A problem in Strips is a tuple A, O, I, G : A stands for set of all atoms (boolean vars) O stands for set of all operators (actions) I A stands for initial situation G A stands for goal situation Operators o O represented by three lists -- the Add list Add(o) A -- the Delete list Del(o) A -- the Precondition list P re(o) A H. Geffner, Search and Inference in AI Planning, CP-05, 10/2005 4

Strips: From Language to Models Strips problem P = A, O, I, G determines state model S(P ) where the states s S are collections of atoms the initial state s 0 is I the goal states s are such that G s the actions a in A(s) are s.t. P rec(a) s the next state is s = s Del(a) + Add(a) action costs c(a, s) are all 1 The (optimal) solution of problem P is the (optimal) solution of State Model S(P ) H. Geffner, Search and Inference in AI Planning, CP-05, 10/2005 5

The Talk Focus on approaches for optimal sequential/parallel/temporal domainindependent planning (SAT, Graphplan, Heuristic Search, CP) Significant progress in last decade as a result of empirical methodology and novel ideas Three messages: 1. It is all (or mostly) branching and pruning 2. Yet novel and powerful techniques developed in planning context 3. Some of these techniques potentially applicable in other contexts H. Geffner, Search and Inference in AI Planning, CP-05, 10/2005 6

Planning as SAT Theory with horizon n for Strips problem P = A, O, I, G : 1. Init: p 0 for p I, q 0 for q I 2. Goal: p n for p G 3. Actions: For i = 0, 1,..., n 1 (including NO-OPs) a i p i for p P rec(a) (Preconds) a i p i+1 for each p Add(a) (Adds) a i p i+1 for each p Del(a) (Deletes) 4. Frame: a:p Add(a) a i p i+1 5. Concurrency: If a and a incompatible, (a i a i ) In practice, however, SAT and CSP planner build theory from Graphplan's planning graph that encodes useful lower bounds H. Geffner, Search and Inference in AI Planning, CP-05, 10/2005 7

Planning Graphs and Lower Bounds Build layered graph P 0, A 0, P 1, A 1,..................... P0 A0 P1 A1 P 0 = {p Init} A i = {a O P rec(a) P i } P i+1 = {p Add(a) a A i } Heuristic h 1 (G) defined as time where G becomes reachable is a lower bound on number of time steps to actually achieve G: h 1 (G) def = min i s.t. G P i H. Geffner, Search and Inference in AI Planning, CP-05, 10/2005 8

The Planning Graph and Variable Elimination Graphplan actually builds more complex layered graph by keeping track of atom and action pairs that cannnot be reached simultaneously (mutexes) Resulting heuristic h 2 is more informed than h 1 ; i.e., 0 h 1 h 2 h Graphplan builds graph forward in first phase, then extracts plan backwards by backtracking This is analogous to bounded variable elimination (Dechter et al): In VE, variables eliminated in one order (inducing constraints of size up to n) and solved backtrack-free in reverse order In Bounded VE, var elimation phase yields constraints of bounded size m, followed by backtrack search in reverse H. Geffner, Search and Inference in AI Planning, CP-05, 10/2005 9

The planning Graph and Variable Elimination (cont'd) Graphplan does actually a precise form of Bounded-m Block Elimination where whole layers are eliminated in one step inducing constraints of size m over next layer While Bounded-m Block Elimination is exponential in the size of the blocks/layers in the worst case; Graphplan does it in polynomial time exploiting simple stratified structure of Strips theories [Geffner KR-04] H. Geffner, Search and Inference in AI Planning, CP-05, 10/2005 10

Two reconstructions of Graphplan Graphplan can thus be understood fully as either a CSP planner that does Bounded-2 Layer Elimination followed by Backtrack search, or an Heuristic Search Planner that first computes an admissible heuristic and then uses it to drive an IDA* search from the goal It is interesting that both approaches yield equivalent account in this setting H. Geffner, Search and Inference in AI Planning, CP-05, 10/2005 11

Temporal Planning: the Challenge We can extract lower bounds h automatically from problems, and get a reasonable optimal sequential planner by using an heuristic search algorithm like IDA* We can translate the planning graph into SAT, and get a reasonable optimal parallel planner using a state-of-the-art SAT solver Neither approach, however, extends naturally to temporal planning: in HS approaches, the branching scheme is not suitable in SAT approaches, the representation is not suitable These limitations were the motivation for CPT, a CP-based temporal planner that minimizes makespan, and is competitive with SAT planners when durations are uniform H. Geffner, Search and Inference in AI Planning, CP-05, 10/2005 12

Semantics of Temporal Plans A temporal (Strips) plan is a set of actions a Steps with their start times T (a) such that: 1 Truth Every precondition p of a is true at T (a) 2 Mutex: Interfering actions in the plan do not overlap in time Assuming 'dummy' actions Start and End in plan, 1 decomposed as 1.1 Precond: Every precond p of a Steps is supported in the plan by an earlier action a 1.2 Causal Link: If a supports precond p of a in plan, then all actions a in plan that delete p must come before a or after a H. Geffner, Search and Inference in AI Planning, CP-05, 10/2005 13

Partial Order Causal Link (POCL) Branching POCL planners (temporal and non-temporal alike), start with a partial plan with Start and End and then loop: adding actions, supports, and precedences to enforce 1.1 (fix open supports) adding precedences to enforce 1.2 and 2 (fix threats) backtracking when resulting precedences in the plan form an inconsistent Simple Temporal Network (STP) [Meiri et al], or no other fix H. Geffner, Search and Inference in AI Planning, CP-05, 10/2005 14

The problem with POCL Planning (and Dynamic CSP!) POCL branching yields a simple and elegant algorithm for temporal planning; the problem is that it is just... branching! Pruning partial plans whose STP network is not consistent does not suffice to match performance of modern planners For this, it is crucial to predict failures earlier; the question is how to do it. The key part is to be able to reason with all possible actions, and not only those in current partial plan. This is indeed what Graphplan and SAT approaches do in non-temporal setting (Similar problem in Dynamic CSPs; need to reason about all possible vars, not only those in 'current' CSP) H. Geffner, Search and Inference in AI Planning, CP-05, 10/2005 15

CPT: A CP-based POCL Planner Key novelty in CPT are the strong mechanisms for reasoning about all actions in the domain (start times, precedences, supports, etc), and not only those in current plan. This involves novel constraint-based representation and propagation rules, as in particular, an action can occur 0, 1, 2, or many times in the plan! CPT provides effective solution to the underlying Dynamic CSP H. Geffner, Search and Inference in AI Planning, CP-05, 10/2005 16

CPT: Formulation Variables Preprocessing Constraints Branching H. Geffner, Search and Inference in AI Planning, CP-05, 10/2005 17

Variables For all actions in the domain a O and preconditions p P re(a): T (a) :: [0, ] = starting time of a S(p, a) :: {a O p Add(a )} = support of p for a T (p, a) :: [0, ] = starting time of support S(p, a) InP lan(a) :: [0, 1] = presence of a in the plan H. Geffner, Search and Inference in AI Planning, CP-05, 10/2005 18

Preprocessing Initial lower bounds: T min (a) = h 2 T (a) Structural mutexes: pairs of atoms p, q for which h 2 T ({p, q}) = e-deleters: extended deletes computed from structural mutexes Distances: dist(a, a ) = h 1 T (a ) with I = I a dist(start, a) = h 2 T (a) dist(a, End): shortest-path algorithm on a `relevance graph' E-deleters and Distances used to make constraints tighter; δ(a, a) def = duration(a ) + dist(a, a) H. Geffner, Search and Inference in AI Planning, CP-05, 10/2005 19

Constraints Bounds: for all a O T (Start) + dist(start, a) T (a) T (a) + dist(a, End) T (End) Preconditions: supporter a of precondition p of a must precede a: T (a) min a [D(S(p,a)] [T (a ) + δ(a, a)] T (a ) + δ(a, a) > T (a) S(p, a) a Causal Link Constraints: for all a O, p pre(a) and a that e-deletes p, a precedes S(p, a) or follows a: T (a )+dur(a )+ min a D[S(p,a)] dist(a, a ) T (p, a) T (a)+δ(a, a ) T (a ) H. Geffner, Search and Inference in AI Planning, CP-05, 10/2005 20

Constraints (cont'd) Mutex Constraints: for effect-interfering a and a T (a) + δ(a, a ) T (a ) T (a ) + δ(a, a) T (a) Support Constraints: T (p, a) and S(p, a) related by S(p, a) = a T (p, a) = T (a ) min T a D[S(p,a)] (a ) T (p, a) max T a D[S(p,a)] (a ) T (p, a) T (a ) S(p, a) a H. Geffner, Search and Inference in AI Planning, CP-05, 10/2005 21

Branching A Support Threat a, S(p, a) generates the split [T (a ) + dur(a ) + min a D[S(p,a)] dist(a, a ) T (p, a); T (a) + δ(a, a ) T (a )] An Open Condition S(p, a) generates the split [S(p, a) = a ; S(p, a) a ] A Mutex Threat a, a generates the split [T (a) + δ(a, a ) T (a ); T (a ) + δ(a, a) T (a)] H. Geffner, Search and Inference in AI Planning, CP-05, 10/2005 22

Two subtle issues and their solutions in CPT 1. Conditional variables: variables associated with actions not yet included or excluded from current plan propagate into those variables but never from them domains meaningful under assumption that action eventually in plan 2. Action Types vs. Tokens: dealing with unknown number of tokens? Variables associated with both action types and action tokens Action tokens generated dynamically from action types by cloning Action types summarize all tokens of same type not yet in plan -- 1 relevant for Dynamic CSP: need to reason about all potential vars and not only those in 'current' CSP -- 2 relevant for certain Symmetries; e.g., hammers in box 'symmetrical' til one picked H. Geffner, Search and Inference in AI Planning, CP-05, 10/2005 23

Current Status of CPT 1. It currently appears as the best optimal temporal planner 2. Competitive with SAT parallel planners in the special case when action durations are uniform 3. Recent extension solves wide range of benchmark domains backtrackfree! (Blocks, Logistics, Satellite, Gripper, Miconic, Rovers, etc). 4. In such a case, optimality is not enforced (see Vincent presentation later today for details) H. Geffner, Search and Inference in AI Planning, CP-05, 10/2005 24

Summary Optimal planners (Graphplan, SAT, Heuristic Search) can all be understood as branching and pruning Big performance jump in last decade is the result of pruning; til Graphplan search was basically blind, although useful branching schemes Planning theories have stratified structure which is exploited in construction of planning graph and used by SAT approaches Temporal planning particularly suited for CP; CPT combines POCL branching, lower bounds obtained at preprocessing, and pruning based on CP formulation that reasons about all actions in the domain Some ideas in CPT potentially relevant for dealing with Dynamic CSPs and certain classes of symmetries H. Geffner, Search and Inference in AI Planning, CP-05, 10/2005 25