Reviving Integer Programming Approaches for AI Planning: A Branch-and-Cut Framework Thomas Vossen Leeds School of Business University of Colorado at Boulder.

Slides:



Advertisements
Similar presentations
Slides of the Invited Talk at the CAEPIA Workshop on Planning, Scheduling and Temporal Reasoning (Held on November 11, 2003 by Alexander Nareyek) Note.
Advertisements

Linear Programming Problem
Solving IPs – Cutting Plane Algorithm General Idea: Begin by solving the LP relaxation of the IP problem. If the LP relaxation results in an integer solution,
Dana Nau: Lecture slides for Automated Planning Licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License:
An LP-Based Heuristic for Optimal Planning Menkes van den Briel Department of Industrial Engineering Arizona State University
1 Presenter: Chien-Chih Chen. 2 Dynamic Scheduler for Multi-core Systems Analysis of The Linux 2.6 Kernel Scheduler Optimal Task Scheduler for Multi-core.
1 Cutting Plane Technique for Solving Integer Programs.
Effective Approaches for Partial Satisfaction (Over-subscription) Planning Romeo Sanchez * Menkes van den Briel ** Subbarao Kambhampati * * Department.
Linear Programming Models: Graphical Methods
Progress in Linear Programming Based Branch-and-Bound Algorithms
Shuai Li and Cheng-Kok Koh School of Electrical and Computer Engineering, Purdue University West Lafayette, IN, Mixed Integer Programming Models.
Fluent Merging: A General Technique to Improve Reachability Heuristics and Factored Planning Menkes van den Briel Department of Industrial Engineering.
EMIS 8373: Integer Programming Valid Inequalities updated 4April 2011.
1 Integer Programming Approaches for Automated Planning Menkes van den Briel Department of Industrial Engineering Arizona State University
Extending Graphplan to handle Resources Presenter: Pham Van Cuong Department of Computer Science New Mexico State University.
CSE 5731 Lecture 21 State-Space Search vs. Constraint- Based Planning CSE 573 Artificial Intelligence I Henry Kautz Fall 2001.
Finding Admissible Bounds for Over- subscribed Planning Problems J. Benton Menkes van den BrielSubbarao Kambhampati Arizona State University.
Stanford University CS243 Winter 2006 Wei Li 1 Data Dependences and Parallelization.
Rule-based Price Discovery Methods in Transportation Procurement Auctions Jiongjiong Song Amelia Regan Institute of Transportation Studies University of.
A Hybrid Linear Programming and Relaxed Plan Heuristic for Partial Satisfaction Planning Problems J. Benton Menkes van den BrielSubbarao Kambhampati Arizona.
Solving the Protein Threading Problem in Parallel Nocola Yanev, Rumen Andonov Indrajit Bhattacharya CMSC 838T Presentation.
Minh Do - PARC Planning with Goal Utility Dependencies J. Benton Department of Computer Science Arizona State University Tempe, AZ Subbarao.
Job Scheduling Lecture 19: March 19. Job Scheduling: Unrelated Multiple Machines There are n jobs, each job has: a processing time p(i,j) (the time to.
Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the United States Department of Energy under contract.
Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the United States Department of Energy under contract.
Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the United States Department of Energy under contract.
ECE669 L10: Graph Applications March 2, 2004 ECE 669 Parallel Computer Architecture Lecture 10 Graph Applications.
A Comparative Analysis of PDDL-Based Planning Using Multiple AI Planners Rifat Sabbir Mansur ( ) Md. Arif Hasnat ( ), Md. Rafatul Amin ( )
1 Combinatorial Problems in Cooperative Control: Complexity and Scalability Carla Gomes and Bart Selman Cornell University Muri Meeting March 2002.
Lift-and-Project cuts: an efficient solution method for mixed-integer programs Sebastian Ceria Graduate School of Business and Computational Optimization.
Linear Programming.
1 Lecture 4 Maximal Flow Problems Set Covering Problems.
1 Outline:  Outline of the algorithm  MILP formulation  Experimental Results  Conclusions and Remarks Advances in solving scheduling problems with.
STDM - Linear Programming 1 By Isuru Manawadu B.Sc in Accounting Sp. (USJP), ACA, AFM
MILP algorithms: branch-and-bound and branch-and-cut
Embedding Constraint Satisfaction using Parallel Soft-Core Processors on FPGAs Prasad Subramanian, Brandon Eames, Department of Electrical Engineering,
TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A A A A A A A Image:
Resource Mapping and Scheduling for Heterogeneous Network Processor Systems Liang Yang, Tushar Gohad, Pavel Ghosh, Devesh Sinha, Arunabha Sen and Andrea.
“LOGISTICS MODELS” Andrés Weintraub P
Solving Problems by searching Well defined problems A probem is well defined if it is easy to automatically asses the validity (utility) of any proposed.
Branch-and-Cut Valid inequality: an inequality satisfied by all feasible solutions Cut: a valid inequality that is not part of the current formulation.
OPTIMIZING DSP SCHEDULING VIA ADDRESS ASSIGNMENT WITH ARRAY AND LOOP TRANSFORMATION Chun Xue, Zili Shao, Ying Chen, Edwin H.-M. Sha Department of Computer.
Chapter 2. Optimal Trees and Paths Combinatorial Optimization
8/14/04 J. Bard and J. W. Barnes Operations Research Models and Methods Copyright All rights reserved Lecture 6 – Integer Programming Models Topics.
Robust Planning using Constraint Satisfaction Techniques Daniel Buettner and Berthe Y. Choueiry Constraint Systems Laboratory Department of Computer Science.
Efficient Automated Planning with New Formulations Ruoyun Huang Washington University in St. Louis.
Lecture 6 – Integer Programming Models Topics General model Logic constraint Defining decision variables Continuous vs. integral solution Applications:
AAAI of 20 Deconstructing Planning as Satisfiability Henry Kautz University of Rochester in collaboration with Bart Selman and Jöerg Hoffmann.
Efficient Automated Planning with New Formulations Ruoyun Huang Advisors: Dr. Yixin Chen and Dr. Weixiong Zhang Washington University in St. Louis.
Linear Programming Chapter 1 Introduction.
C&O 355 Lecture 19 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A A A A A A A A A A.
1.3 Modeling with exponentially many constr. Integer Programming
Constraint Programming for the Diameter Constrained Minimum Spanning Tree Problem Thiago F. Noronha Celso C. Ribeiro Andréa C. Santos.
Chapter 6 Optimization Models with Integer Variables.
The integrated dial-a-ride problem with timetabled fixed route service Marcus Posada, Henrik Andersson and Carl Henrik Häll.
1 Chapter 6 Reformulation-Linearization Technique and Applications.
Discrete Optimization MA2827 Fondements de l’optimisation discrète Material from P. Van Hentenryck’s course.
1 2 Linear Programming Chapter 3 3 Chapter Objectives –Requirements for a linear programming model. –Graphical representation of linear models. –Linear.
A Formal Analysis of Required Cooperation in Multi-agent Planning Yu Zhang, Sarath Sreedharan and Subbarao Kambhampati Department of Computer Science Arizona.
Decision Support Systems
Graphical Analysis – the Feasible Region
1.3 Modeling with exponentially many constr.
Chapter 6. Large Scale Optimization
Integer Programming (정수계획법)
3-3 Optimization with Linear Programming
Integer Programming (정수계획법)
Linear Programming Problem
Graphical solution A Graphical Solution Procedure (LPs with 2 decision variables can be solved/viewed this way.) 1. Plot each constraint as an equation.
Branch-and-Bound Algorithm for Integer Program
Chapter 6. Large Scale Optimization
Presentation transcript:

Reviving Integer Programming Approaches for AI Planning: A Branch-and-Cut Framework Thomas Vossen Leeds School of Business University of Colorado at Boulder Boulder, CO Subbarao Kambhampati Department of Computer Science Arizona State University Tempe, AZ Menkes van den Briel Department of Industrial Engineering Arizona State University Tempe, AZ

Compilation approaches for AI planning Integer Programming (IP) Propositional Satisfiability (SAT) Constraint Satisfaction (CSP) Planning Very little focus on IP There were no IP-based planners in IPCs 1998, 2000, 2002

Background Why should we pursue integer programming? –Support for optimality –Support for numeric constraints –IP has shown to be a great success in solving large scale optimization problems

Reviving integer programming 1.State variables are modeled by an appropriately defined network –The resulting IP formulation can be interpreted as a network flow problem with additional side constraints 2.The common notion of parallelism based on planning graphs is generalized –This reduces the plan length of the solution plan 3.Action ordering constraints are dynamically generated when needed by a branch-and-cut algorithm –Branch-and-cut has been extremely successful for a large number of optimization problems

Example: State change flow network LOC1LOC2

Example: State change flow network I I G AT_LOC1 AT_LOC2 IN_TRUCK1 AT_LOC1 AT_LOC2 t = 1t = 2t = 3 LOC1LOC Package1 Truck1

Example: State change flow network I I G AT_LOC1 AT_LOC2 IN_TRUCK1 AT_LOC1 AT_LOC2 t = 1t = 2t = 3 LOC1LOC Package1 Truck1

Action effects STRIPS (binary-valued) SAS+ (multi-valued) LOAD(Package1,Loc1) PRE: Package1_AT_LOC1, Truck1_AT_LOC1 DEL: Package1_AT_LOC1 ADD: Package1_IN_TRUCK1 LOAD(Package1,Loc1) State change effects Package1: AT_LOC1  IN_TRUCK1 Prevail conditions Truck1: AT_LOC1  AT_LOC1 LOC1 Prevail condition State change effect

Example: state change flow network I I G AT_LOC1 AT_LOC2 IN_TRUCK1 AT_LOC1 AT_LOC2 t = 1t = 2t = 3 LOC1LOC2 Action effects link multiple networks together Package1 Truck1 LOAD(Package1)  DRIVE(Truck1,Loc1,Loc2)  UNLOAD(Package1)

Single state change (1SC) formulation Constraints –State changes (network flow), for all c  C  g  C y c f,g,t = 1{f  I}for f  D c  h  C y c g,h,t+1 =  f  C y c g,h,t for f  D c, 1  t < T  f  C y c f,g,T = 1for g  G –Effect implications, for all c  C, 1  t  T  a  A:(f,g)  SCa x a,t = y c f,g,t for f, g  D c, f  g x a,t  y c f,f,t for a  A, (f,f)  PRa

Reviving integer programming 1.State variables are modeled by an appropriately defined network –The resulting IP formulation can be interpreted as a network flow problem with additional side constraints 2.The common notion of parallelism based on planning graphs is generalized –This reduces the plan length of the solution plan 3.Action ordering constraints are dynamically generated when needed by a branch-and-cut algorithm –Branch-and-cut has been extremely successful for a large number of optimization problems

Generalized parallelism Common notion of parallelism (Graphplan) –Actions can be executed in the same plan step as long as they do not interfere with each other (no action deletes the precondition or add effect of another action) –In an actual plan it is possible to arrange independent parallel actions in any order with exactly the same outcome Alternative concept of parallelism –Allow actions to be executed in the same plan step as long as there exists a feasible ordering of the actions such that: All the actions preconditions are met Within each state variable and for each plan step, the value is changed at most once

Generalized parallelism Increase in parallelism requires “generalized” state changes Graphplan parallelismAlternative parallelism

Example: Generalized parallelism AT_LOC1 AT_LOC2 IN_TRUCK1 AT_LOC1 AT_LOC2 Package1 Truck1 Action effect implications LOAD(Package1,Truck1) Increase in parallelism requires “generalized” state changes LOAD(Package1,Truck1) DRIVE(Truck1,Loc1,Loc2)

Implied precedences A1,A2 A3 A4 A1 A2 A3A4 Implied precedence graph

Implied precedences Cycle elimination constraints need to ensure feasible orderings A1,A2 A3 A4 A1 A2 A3A4 Implied precedence graph

Generalized single state change (G1SC) formulation Constraints –State changes (network flow), for all c  C  g  C y c f,g,t = 1{f  I}for f  D c  h  C y c g,h,t+1 =  f  C y c g,h,t for f  D c, 1  t  T  f  C y c f,g,T = 1for g  G  D c –Effect implications, for all c  C, 1  t  T  a  A:(f,f)  SCa x a,t = y c f,g,t for f, g  D c, f  g, x a,t  y c f,f,t +  g  Dc:f≠g (y c g,f,t + y c f,g,t ) for a  A, (f,f)  PRa –Ordering (Cycle elimination) constraints  a  V(  ) x a,t  |V(  )| – 1for all cycles  G, 1  t  T

Reviving integer programming 1.State variables are modeled by an appropriately defined network –The resulting IP formulation can be interpreted as a network flow problem with additional side constraints 2.The common notion of parallelism based on planning graphs is generalized –This reduces the plan length of the solution plan 3.Action ordering constraints are dynamically generated when needed by a branch-and-cut algorithm –Branch-and-cut has been extremely successful for a large number of optimization problems

Branch-and-cut algorithm Branch-and-cut (row generation with branch-and- bound) –Classes of valid inequalities are left out of the LP relaxation because there are too many constraints to handle efficiently, and most of them will not be binding in an optimal solution anyway –Branching occurs when no violated inequalities in a class are found and the LP solution does not satisfy the integrality constraints

Reviving integer programming 1.State variables are modeled by an appropriately defined network –The resulting IP formulation can be interpreted as a network flow problem with additional side constraints 2.The common notion of parallelism based on planning graphs is generalized –This reduces the plan length of the solution plan 3.Action ordering constraints are dynamically generated when needed by a branch-and-cut algorithm –Branch-and-cut has been extremely successful for a large number of optimization problems

Further generalizations Allow actions to be executed in the same plan step as long as there exists a feasible ordering of the actions such that –All the actions preconditions are met –For each state variable, more than one state change is allowed, e.g. “state change paths” I I G AT_LOC1 AT_LOC2 IN_TRUCK1 AT_LOC1 AT_LOC2 t = 1t = 2 00’11’ Package1 Truck1

Further generalizations There exists a feasible ordering of the actions such that –All the actions preconditions are met –For each state variable, more than one state change is allowed, e.g. “state change paths” I G I AT_LOC1 AT_LOC2 IN_TRUCK1 AT_LOC1 AT_LOC2 t = 1 00’ Package1 Truck1 LOAD(Package1)  DRIVE(Truck1,Loc1,Loc2)  UNLOAD(Package1)

State change path (kSC) formulation Constraints –State changes (network flow), for all c  C  g  C,f  g y c g,f,1 + 1 {f  I} = y c f,f,1 y c f,f,1 =  g  C,f  g y c f,g,1 + z c f,1 for f  C  g  C,f  g y c g,f,1 + z c f,t-1 = y c f,f,t y c f,f,t =  g  C,f  g y c f,g,t + z c f,t for f  C, 1  t  T – 1  g  C,f  g y c g,f,T + z c f,T-1 = y c f,f,T y c f,f,T =  g  C,f  g y c f,g,T + z c f,T for f  C –Effect implications, for all c  C, 1  t  T  a  A:(f,f)  SCa x a,t = y c f,g,t for f, g  D c, f  g, x a,t  y c f,f,t +  g  Dc:f≠g (y c g,f,t + y c f,g,t ) for a  A, (f,f)  PRa –Ordering (Cycle elimination) constraints  a  V(  ) x a,t  |V(  )| – 1for all cycles  G, 1  t  T

Experimental Setup Four domains from the International Planning Competition –Blocks-world, Logistics, Driverlog, Zenotravel –Used Fast Downward preprocessor (translates PDDL to multi-valued state variables) Compared results of 1SC, G1SC, and kSC to SATPLAN04 (SAT4) –State-of-the art SAT-based planner –First prize in the IPC-2004 Resources –2.67GHz Linux machine, 1Gb memory –ILOG CPLEX 8.1 –30 minute maximum for each problem

Performance Quality

BlocksLogisticsDriverlogZenotravel Results: plan length

Summary and conclusions First integer programming formulation that is competitive with state-of-the art SAT-based planner: –Uses multi valued states and represent state changes as flows in an appropriately defined network –Uses generalized notion of parallelism in a branch-and-cut algorithm Future work –Optimal planning (minimum number of actions, minimum cost plans, minimum resource usage, minimum makespan) –Expand the scope of planning problems, apply integer programming techniques to planning with resources and temporal planning