Happy Spring Break!. Integrating Planning & Scheduling Subbarao Kambhampati Scheduling: The State of the Art.

Slides:



Advertisements
Similar presentations
ECE 667 Synthesis and Verification of Digital Circuits
Advertisements

1 Constraint Satisfaction Problems A Quick Overview (based on AIMA book slides)
Leena Suhl University of Paderborn, Germany
1 Finite Constraint Domains. 2 u Constraint satisfaction problems (CSP) u A backtracking solver u Node and arc consistency u Bounds consistency u Generalized.
Evaluating Heuristics for the Fixed-Predecessor Subproblem of Pm | prec, p j = 1 | C max.
CALTECH CS137 Winter DeHon CS137: Electronic Design Automation Day 14: March 3, 2004 Scheduling Heuristics and Approximation.
1 EE5900 Advanced Embedded System For Smart Infrastructure Static Scheduling.
ISE480 Sequencing and Scheduling Izmir University of Economics ISE Fall Semestre.
Computational Methods for Management and Economics Carla Gomes Module 8b The transportation simplex method.
Lecture 10: Integer Programming & Branch-and-Bound
All Hands Meeting, 2006 Title: Grid Workflow Scheduling in WOSE (Workflow Optimisation Services for e- Science Applications) Authors: Yash Patel, Andrew.
1 Stochastic Event Capture Using Mobile Sensors Subject to a Quality Metric Nabhendra Bisnik, Alhussein A. Abouzeid, and Volkan Isler Rensselaer Polytechnic.
1 Logic-Based Benders Methods for Planning and Scheduling John Hooker Carnegie Mellon University August 2003.
PlanSIG, Dec, Temporal Plans and Resource Management Pieter Buzing & Cees Witteveen Delft University of Technology.
System design-related Optimization problems Michela Milano Joint work DEIS Università di Bologna Dip. Ingegneria Università di Ferrara STI Università di.
Chapter 2: Model of scheduling problem Components of any model: Decision variables –What we can change to optimize the system, i.e., model output Parameters.
Integrating Planning & Scheduling Subbarao Kambhampati Scheduling: The State of the Art.
Solving the Protein Threading Problem in Parallel Nocola Yanev, Rumen Andonov Indrajit Bhattacharya CMSC 838T Presentation.
EDA (CS286.5b) Day 11 Scheduling (List, Force, Approximation) N.B. no class Thursday (FPGA) …
Integrating Planning & Scheduling Subbarao Kambhampati Scheduling: The State of the Art.
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.
Integer Programming Difference from linear programming –Variables x i must take on integral values, not real values Lots of interesting problems can be.
Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the United States Department of Energy under contract.
© J. Christopher Beck Lecture 11: Constraint Programming 1.
BNAIC, Oct, Temporal Plans and Resource Management Pieter Buzing & Cees Witteveen TU Delft.
Maximum Network lifetime in Wireless Sensor Networks with Adjustable Sensing Ranges Mihaela Cardei, Jie Wu, Mingming Lu, and Mohammad O. Pervaiz Department.
Review of Reservoir Problem OR753 October 29, 2014 Remote Sensing and GISc, IST.
1 Planning and Scheduling to Minimize Tardiness John Hooker Carnegie Mellon University September 2005.
1 IOE/MFG 543 Chapter 7: Job shops Sections 7.1 and 7.2 (skip section 7.3)
Distributed Scheduling. What is Distributed Scheduling? Scheduling: –A resource allocation problem –Often very complex set of constraints –Tied directly.
10/31/02CSE Greedy Algorithms CSE Algorithms Greedy Algorithms.
Iterative Flattening in Cumulative Scheduling. Cumulative Scheduling Problem Set of Jobs Each job consists of a sequence of activities Each activity has.
Job Shop Reformulation of Vehicle Routing Evgeny Selensky University of Glasgow
10/31/02CSE Greedy Algorithms CSE Algorithms Greedy Algorithms.
1 Outline:  Outline of the algorithm  MILP formulation  Experimental Results  Conclusions and Remarks Advances in solving scheduling problems with.
Introduction to Job Shop Scheduling Problem Qianjun Xu Oct. 30, 2001.
Jobshop scheduling. We have a set of resources a set of jobs a job is a sequence of operations/activities sequence the activities on the resources.
CALTECH CS137 Winter DeHon CS137: Electronic Design Automation Day 12: February 13, 2002 Scheduling Heuristics and Approximation.
Constraint Satisfaction Problems (CSPs) CPSC 322 – CSP 1 Poole & Mackworth textbook: Sections § Lecturer: Alan Mackworth September 28, 2012.
SOFTWARE / HARDWARE PARTITIONING TECHNIQUES SHaPES: A New Approach.
CP Summer School Modelling for Constraint Programming Barbara Smith 2. Implied Constraints, Optimization, Dominance Rules.
Decision Diagrams for Sequencing and Scheduling Andre Augusto Cire Joint work with David Bergman, Willem-Jan van Hoeve, and John Hooker Tepper School of.
An Efficient Algorithm for Scheduling Instructions with Deadline Constraints on ILP Machines Wu Hui Joxan Jaffar School of Computing National University.
Chapter 1. Formulations 1. Integer Programming  Mixed Integer Optimization Problem (or (Linear) Mixed Integer Program, MIP) min c’x + d’y Ax +
1 Short Term Scheduling. 2  Planning horizon is short  Multiple unique jobs (tasks) with varying processing times and due dates  Multiple unique jobs.
CSE 589 Part VI. Reading Skiena, Sections 5.5 and 6.8 CLR, chapter 37.
1 Outline:  Optimization of Timed Systems  TA-Modeling of Scheduling Tasks  Transformation of TA into Mixed-Integer Programs  Tree Search for TA using.
CONSTRAINT-BASED SCHEDULING AND PLANNING Speaker: Olufikayo Adetunji CSCE 921 4/08/2013Olufikayo Adetunji 1 Authors: Philippe Baptiste, Philippe Laborie,
Chapter 2) CSP solving-An overview Overview of CSP solving techniques: problem reduction, search and solution synthesis Analyses of the characteristics.
Operational Research & ManagementOperations Scheduling Economic Lot Scheduling 1.Summary Machine Scheduling 2.ELSP (one item, multiple items) 3.Arbitrary.
Implicit Hitting Set Problems Richard M. Karp Erick Moreno Centeno DIMACS 20 th Anniversary.
Product A Product B Product C A1A1 A2A2 A3A3 B1B1 B2B2 B3B3 B4B4 C1C1 C3C3 C4C4 Turret lathes Vertical mills Center lathes Drills From “Fundamentals of.
Roman Barták (Charles University in Prague, Czech Republic) ACAT 2010.
1 Chapter 5 Branch-and-bound Framework and Its Applications.
Jobshop scheduling.
Scheduling with Constraint Programming
TÆMS-based Execution Architectures
CHAPTER 8 Operations Scheduling
Lecture 11: Tree Search © J. Christopher Beck 2008.
Chapter 6. Large Scale Optimization
Integer Programming (정수계획법)
Introduction to Scheduling Chapter 1
Integer Programming (정수계획법)
Constraint satisfaction problems
Topic 15 Job Shop Scheduling.
Chapter 1. Formulations.
Constraint Satisfaction Problems
Constraint satisfaction problems
Chapter 6. Large Scale Optimization
Presentation transcript:

Happy Spring Break!

Integrating Planning & Scheduling Subbarao Kambhampati Scheduling: The State of the Art

Integrating Planning & Scheduling Subbarao Kambhampati Planning –Initial state & a set of Goals, –A library of actions »Preconditions/effects l Discrete/Continuous »Resource requirements Synthesize a sequence of actions capable of satisfying goals I = initial state G = goal state O i (prec)(effects) [ I ] O i O j O k O m [ G ] Planning vs. Scheduling Scheduling –Set of jobs (may have of tasks in some (partial) order) –Temporal constraints on jobs »EST, LFT, Duration –Contention constraints »Each task can be done on a subset of machines Find start times for jobs that are optimal (wrt make-spans, resource consumption etc) A Continuum --Research into planning and scheduling methods has largely been de-coupled Resource Reasoning Causal Reasoning **Important: ACTION prec/Effect models not needed

Integrating Planning & Scheduling Subbarao Kambhampati Why separate scheduling from planning? G Clearly, Scheduling can be seen as a sub-problem of temporal planning (unlike scheduling, planning also contains action selection). So, why separate it? –Reasons from automated planning point of view »If multiple agents make their plans and execute them on central resources, separating resource scheduling from individual agent planning makes sense »Certain resource constraints may not be available at planning time and so the planner has to postpone them to a separate scheduling phase »Even if a single agent is doing planning, it may be worth separating causal reasoning and resource reasoning l Such “de-coupling” improves efficiency, but at the expense of global optimality guarantees –Reasons from “real world practice” point of view »Historically, in many domains, action selection and automated causal reasoning was out of question (either because it couldn’t be modeled and solved or because the humans didn’t want to delegate it to automated methods »So, the only computer support for planning activity was given for resource scheduling (humans make plans, and schedulers do resource allocation)

Integrating Planning & Scheduling Subbarao Kambhampati Simple job-shop Scheduling: Brief Overview Jobshop scheduling –Set of jobs »Each job consists of tasks in some (partial) order –Temporal constraints on jobs »Sequencing constraints »Release times, deadlines, durations l EST, LFT, Duration –Contention/capacity constraints »Each task can be done on a subset of machines CSP Models –Time point model »Tasks as variables, Time points as values »EST, LFT, Machine contention as constraints –Inter-task precedences as variables (PCP model) CSP Techniques –Customized consistency enforcement techniques »ARC-B consistency »Edge-finding –Customized variable/value ordering heuristics »Contention-based »Slack-based –MaxCSP; B&B searches T2 M EST LFT P1,P2 st2 st1

Integrating Planning & Scheduling Subbarao Kambhampati Connections… G Scheduling seems to be “bounded length planning” where actions are already given to you! –The CSP encoding for scheduling will be a special case of the CSP encoding for bounded length planning! »The main difference is that in planning “steps” can correspond to one of many different actions, while in scheduling each step corresponds to a single action l “disjunctive scheduling” allows disjunction of jobs –Schedule optimality criteria are similar to “temporal plan” optimality criteria (makespan, tardiness, slack etc based) »The action cost doesn’t enter the picture since we don’t have any action choice.. G Scheduling (at least in the unary capacity resource case) is equivalent to solving disjunctive temporal networks!

Integrating Planning & Scheduling Subbarao Kambhampati The Choice Spectrum planning job-shop scheduling

Integrating Planning & Scheduling Subbarao Kambhampati The Choice Spectrum planning job-shop scheduling Job1 task1 < task2 < task3 < … Job2 Job3 … R3R7R1 Ordering choices only

Integrating Planning & Scheduling Subbarao Kambhampati The Choice Spectrum cascading levels of choice planning job-shop scheduling … ………… ……

Integrating Planning & Scheduling Subbarao Kambhampati The Choice Spectrum job-shop scheduling planning resource choices (RCSP) umfagoggin clavitracle fernambulator 5 11 Task1 Task2 Task3 Task4 Task5 Task6 Task8 Task7 [8,17] Ordering choices Resource choices

Integrating Planning & Scheduling Subbarao Kambhampati The Choice Spectrum job-shop scheduling planning resource choices (RCSP) alternative processes process3process7 process8 Task1 Task2 Task3 Task4 Task5 Task6 Task8 Task7 Ordering choices Resource choices Process choices

Integrating Planning & Scheduling Subbarao Kambhampati The Choice Spectrum planning ambitious spacecraft job-shop scheduling resource choices (RCSP) alternative processes Observation choices Instrument choices Calibration target choices Ordering choices Communication choices Instrument status choices

Integrating Planning & Scheduling Subbarao Kambhampati The Choice Spectrum planning Subset Selection ambitious spacecraft observation scheduling process planning job-shop scheduling resource choices (RCSP) alternative processes

Integrating Planning & Scheduling Subbarao Kambhampati Scheduling vs. HTN Planning G You can think of each job as an HTN non-primitive task, and the specific taks for doing that job as it reduction G Simple scheduling assumes that –[Unique Reduction] Each non-primitive task has a single reduction schema –[One-level Reduction] Each reduction schema contains only primitive tasks G Disjunctive scheduling relaxes “Unique” reduction— a task may have multiple reductions (all of which still leading directly to primitive tasks)

Integrating Planning & Scheduling Subbarao Kambhampati Scheduling vs. Bounded Length Planning G The way planning graphs are converted into CSP encodings have

Integrating Planning & Scheduling Subbarao Kambhampati Job Shop Scheduling as a CSP Precedence Constraints Capacity Constraints Variables: Start time st i l Domain: [est i l ….lst i l ] Precedence constraints: st i l + p i l  st j l Release times/deadlines: R  st i 1 ; st i 1 + p i 1  D Capacity Constraints : st i l + p i l  st j l  st j l + p j l  st i l Start Point Representation PCP Representation Variables: Ordering(i,j) for each task i and j Domain: {i-before-j, j-before-I,*} * means don’t care Dependent Var: Sti Constraints: Sequencing constraints: O(i,j)=i-bef-j Capacity constraints: O(i,j)=i-bef-j OR O(I,j,R)=j-bef-I {So, * is not a possibility} Release times, deadlines: R  sti1 ; sti1 +dui1  D Inter-variable constraints: O(i,j)=i-bef-j => sti +pi <= stj Disjunction typically comes through capacity constraints Making the problem harder: --Multi-capacity resources >> a machine that can handle 4 jobs at a time --Disjunctive activities >>schedule at least one of the following tasks --Setup constraints >>if you schedule task1, you need to schedule 3 and 4 Solution of PCP scheduling is an STP

Integrating Planning & Scheduling Subbarao Kambhampati Start point vs. PCP (not all that unlike State-space vs. PO) G Solution to the Start point encoding is a single feasible schedule G Handling of multi-capacity resources easy.. G Solution to the PCP encoding is a simple temporal network, all of whose dispatches are feasible schedules –Sort of like PO planning— which gives a PO plan, all of whose linearizations are valid plans G Conventional wisdom is that PCP does not scale well to multi-capacity resource scenarios

Integrating Planning & Scheduling Subbarao Kambhampati Contention-based Ordering Heuristics time demand Individual Demand of O1 for Rj time demand Aggregate Demand (of all O) for Rj time Individual Demand of O2 for Rj demand Most critical region Operation O1 Start Time Distribution probability Start time 03 6 Contention: Aggregated curves found for each resource Critical Region: Where a resource is contended the most Most Critical Unassigned Operation: Contributes the largest area in critical region Variable Ordering Heuristic: Choose the most critical unassigned operation [Sadeh, 1991]

Integrating Planning & Scheduling Subbarao Kambhampati Other Constraint Propagation Ideas Through Resource constraints Arc-Bounds Edge-Finding Many other ideas: --Energy-based propagation --Time-table propagation etc. See Laborie, AIJ 2002 Arc-bounds is related to 2-consistency While edge-finding is related to k-consistency

Integrating Planning & Scheduling Subbarao Kambhampati Constraint Propagation 1.Pick ordering decision with the overall minimum slack min{slack[(u->v ); slack(v->u)] {Most constrained variable} 2. Assign that ordering decision the value for which the slack is higher. {Least constraining value}  B-slack = slack/sqrt(S) S is the ratio of min and max slacks of a given ordering. to normalize for the variation [20, 3] vs. [4, 3] PCP SCHEDULING

Integrating Planning & Scheduling Subbarao Kambhampati Minimizing Schedule “Makespan” G Approach: –Establish lower and upper bounds on overall schedule end. –Repeatedly apply PCP to find the best solution within these bounds. G Details: –Generate schedule ignoring resource constraints to provide determine lower bound. –Apply one or more dispatch scheduling procedures to provide upper bound. –Apply PCP k times with “common deadlines” evenly distributed between these bounds.

Integrating Planning & Scheduling Subbarao Kambhampati Current State of Scheduling as CSP G Constraint-based scheduling techniques are an integral part of the scheduling suites by ILOG/I2 –Optimization results comparable to best approximation algorithms currently known on standard benchmark problems. –Best known solutions to more idiosyncratic, “multi- product hoist scheduling” application (PCB electroplating). G Better in most large-scale problems than IP formulations