RCPSP Single Machine Problems

Similar documents
Single Machine Problems Polynomial Cases

Single Machine Models

Resource Constrained Project Scheduling Linear and Integer Programming (1)

Outline. Outline. Outline DMP204 SCHEDULING, TIMETABLING AND ROUTING. 1. Scheduling CPM/PERT Resource Constrained Project Scheduling Model

Flow Shop and Job Shop Models

Scheduling Lecture 1: Scheduling on One Machine

Algorithm Design. Scheduling Algorithms. Part 2. Parallel machines. Open-shop Scheduling. Job-shop Scheduling.

P C max. NP-complete from partition. Example j p j What is the makespan on 2 machines? 3 machines? 4 machines?

IE652 - Chapter 10. Assumptions. Single Machine Scheduling

Deterministic Models: Preliminaries

Embedded Systems 14. Overview of embedded systems design

Scheduling Lecture 1: Scheduling on One Machine

Dynamic Scheduling with Genetic Programming

Lecture 2: Scheduling on Parallel Machines

Lecture 4 Scheduling 1

Recoverable Robustness in Scheduling Problems

Multi-Objective Scheduling Using Rule Based Approach

Real-Time Systems. Event-Driven Scheduling

Embedded Systems 15. REVIEW: Aperiodic scheduling. C i J i 0 a i s i f i d i

SINGLE MACHINE SEQUENCING Part 2. ISE480 Sequencing and Scheduling Fall semestre

CHAPTER 16: SCHEDULING

EECS 571 Principles of Real-Time Embedded Systems. Lecture Note #7: More on Uniprocessor Scheduling

Metode şi Algoritmi de Planificare (MAP) Curs 2 Introducere în problematica planificării

Task Models and Scheduling

Outline. Relaxation. Outline DMP204 SCHEDULING, TIMETABLING AND ROUTING. 1. Lagrangian Relaxation. Lecture 12 Single Machine Models, Column Generation

Simple Dispatch Rules

Bi-criteria Scheduling Problems on Parallel Machines

Real-time operating systems course. 6 Definitions Non real-time scheduling algorithms Real-time scheduling algorithm

Contents college 5 and 6 Branch and Bound; Beam Search (Chapter , book)! general introduction

Lecture 13. Real-Time Scheduling. Daniel Kästner AbsInt GmbH 2013

Real-Time Systems. Event-Driven Scheduling

Deterministic Scheduling. Dr inż. Krzysztof Giaro Gdańsk University of Technology

CSE101: Design and Analysis of Algorithms. Ragesh Jaiswal, CSE, UCSD

Networked Embedded Systems WS 2016/17

Approximation Algorithms for scheduling

Online Appendix for Coordination of Outsourced Operations at a Third-Party Facility Subject to Booking, Overtime, and Tardiness Costs

CIS 4930/6930: Principles of Cyber-Physical Systems

Integer Linear Programming Modeling

3. Scheduling issues. Common approaches 3. Common approaches 1. Preemption vs. non preemption. Common approaches 2. Further definitions

Partition is reducible to P2 C max. c. P2 Pj = 1, prec Cmax is solvable in polynomial time. P Pj = 1, prec Cmax is NP-hard

Integrated Network Design and Scheduling Problems with Parallel Identical Machines: Complexity Results and Dispatching Rules

Single Machine Scheduling: Comparison of MIP Formulations and Heuristics for. Interfering Job Sets. Ketan Khowala

Clock-driven scheduling

On Machine Dependency in Shop Scheduling

CS521 CSE IITG 11/23/2012

LPT rule: Whenever a machine becomes free for assignment, assign that job whose. processing time is the largest among those jobs not yet assigned.

Real-Time Systems. Lecture 4. Scheduling basics. Task scheduling - basic taxonomy Basic scheduling techniques Static cyclic scheduling

Sub-Optimal Scheduling of a Flexible Batch Manufacturing System using an Integer Programming Solution

CSE 380 Computer Operating Systems

Non-Preemptive and Limited Preemptive Scheduling. LS 12, TU Dortmund

Scheduling with Constraint Programming. Job Shop Cumulative Job Shop

No-Idle, No-Wait: When Shop Scheduling Meets Dominoes, Eulerian and Hamiltonian Paths

Embedded Systems Development

Batch delivery scheduling with simple linear deterioration on a single machine 1

An on-line approach to hybrid flow shop scheduling with jobs arriving over time

How to deal with uncertainties and dynamicity?

Scheduling Online Algorithms. Tim Nieberg

Real-time Scheduling of Periodic Tasks (1) Advanced Operating Systems Lecture 2

A comparison of sequencing formulations in a constraint generation procedure for avionics scheduling

Scheduling Periodic Real-Time Tasks on Uniprocessor Systems. LS 12, TU Dortmund

CMSC 722, AI Planning. Planning and Scheduling

Lecture 6. Real-Time Systems. Dynamic Priority Scheduling

Resource Management in Machine Scheduling Problems: A Survey

Chapter 6: CPU Scheduling

Single Machine Scheduling with Generalized Total Tardiness Objective Function

MINIMIZING SCHEDULE LENGTH OR MAKESPAN CRITERIA FOR PARALLEL PROCESSOR SCHEDULING

Operations Research Lecture 6: Integer Programming

Supplement of Improvement of Real-Time Multi-Core Schedulability with Forced Non- Preemption

Priority-driven Scheduling of Periodic Tasks (1) Advanced Operating Systems (M) Lecture 4

Single Machine Scheduling with a Non-renewable Financial Resource

Heuristics Algorithms For Job Sequencing Problems

arxiv: v2 [cs.ds] 27 Nov 2014

Real-time Scheduling of Periodic Tasks (2) Advanced Operating Systems Lecture 3

Real-Time Scheduling

APTAS for Bin Packing

An improved approximation algorithm for two-machine flow shop scheduling with an availability constraint

University of Twente. Faculty of Mathematical Sciences. Scheduling split-jobs on parallel machines. University for Technical and Social Sciences

Completion Time Scheduling and the WSRPT Algorithm

Combinatorial Structure of Single machine rescheduling problem

A Dynamic Programming algorithm for minimizing total cost of duplication in scheduling an outtree with communication delays and duplication

Average-Case Performance Analysis of Online Non-clairvoyant Scheduling of Parallel Tasks with Precedence Constraints

NATCOR: Stochastic Modelling

Module 5: CPU Scheduling

Energy-efficient Mapping of Big Data Workflows under Deadline Constraints

Extended Job Shop Scheduling by Object-Oriented. Optimization Technology

TDDI04, K. Arvidsson, IDA, Linköpings universitet CPU Scheduling. Overview: CPU Scheduling. [SGG7] Chapter 5. Basic Concepts.

Bounds for the Permutation Flowshop Scheduling Problem with Exact Time Lags while Minimizing the Total Earliness and Tardiness

Aperiodic Task Scheduling

Assigning operators in a flow shop environment

HYBRID FLOW-SHOP WITH ADJUSTMENT

Operations Research as Empirical Modeling

Real-Time and Embedded Systems (M) Lecture 5

1 Ordinary Load Balancing

End-to-End Scheduling to Meet Deadlines in Distributed Systems

CPU SCHEDULING RONG ZHENG

Using column generation to solve parallel machine scheduling problems with minmax objective functions

CPU Scheduling. CPU Scheduler

arxiv: v2 [cs.dm] 2 Mar 2017

Chapter 11. Approximation Algorithms. Slides by Kevin Wayne Pearson-Addison Wesley. All rights reserved.

Simulation. Stochastic scheduling example: Can we get the work done in time?

Transcription:

DM204 Spring 2011 Scheduling, Timetabling and Routing Lecture 3 Single Machine Problems Marco Chiarandini Department of Mathematics & Computer Science University of Southern Denmark

Outline 1. Resource Constrained Project Scheduling Model 2. 3. 2

Outline 1. Resource Constrained Project Scheduling Model 2. 3. 3

Resource Constrained Project Scheduling Model Given: activities (jobs) j = 1,..., n renewable resources i = 1,..., m amount of resources available R i processing times p j amount of resource used r ij precedence constraints j k Further generalizations Time dependent resource profile R i (t) given by (t µ i, R µ i ) where 0 = ti 1 < ti 2 <... < t m i i = T Disjunctive resource, if R k (t) = {0, 1}; cumulative resource, otherwise Multiple modes for an activity j processing time and use of resource depends on its mode m: p jm, r jkm. 4

An Example 5

Multi-processor Task Scheduling Equivalent to a with r = m and R k = 1 for k = 1..m 6

Modeling Assignment 1 A contractor has to complete n activities. The duration of activity j is p j each activity requires a crew of size W j. The activities are not subject to precedence constraints. The contractor has W workers at his disposal his objective is to complete all n activities in minimum time. 7

Assignment 2 Exams in a college may have different duration. The exams have to be held in a gym with W seats. The enrollment in course j is W j and all W j students have to take the exam at the same time. The goal is to develop a timetable that schedules all n exams in minimum time. Consider both the cases in which each student has to attend a single exam as well as the situation in which a student can attend more than one exam. 8

Assignment 3 In a basic high-school timetabling problem we are given m classes c 1,..., c m, h teachers a 1,..., a h and T teaching periods t 1,..., t T. Furthermore, we have lectures i = l 1,..., l n. Associated with each lecture is a unique teacher and a unique class. A teacher a j may be available only in certain teaching periods. The corresponding timetabling problem is to assign the lectures to the teaching periods such that each class has at most one lecture in any time period each teacher has at most one lecture in any time period, each teacher has only to teach in time periods where he is available. 9

Assignment 4 A set of jobs J 1,..., J g are to be processed by auditors A 1,..., A m. Job J l consists of n l tasks (l = 1,..., g). There are precedence constraints i 1 i 2 between tasks i 1, i 2 of the same job. Each job J l has a release time r l, a due date d l and a weight w l. Each task must be processed by exactly one auditor. If task i is processed by auditor A k, then its processing time is p ik. Auditor A k is available during disjoint time intervals [sk ν, l k ν ] ( ν = 1,..., m) with lk ν < sν k for ν = 1,..., m k 1. Furthermore, the total working time of A k is bounded from below by H and from k above by H + k with H k H+ (k = 1,..., m). k We have to find an assignment α(i) for each task i = 1,..., n := g l=1 n l to an auditor A α(i) such that each task is processed without preemption in a time window of the assigned auditor the total workload of A k is bounded by H k and Hk k for k = 1,..., m. the precedence constraints are satisfied, all tasks of J l do not start before time r l, and the total weighted tardiness g l=1 w l T l is minimized. 10

Course Overview Scheduling Classification Complexity issues Single Machine Parallel Machine and Flow Shop Models Job Shop Resource Constrained Project Scheduling Model Timetabling Sport Timetabling Reservations and Education University Timetabling Crew Scheduling Public Transports Vechicle Routing Capacited Models Time Windows models Rich Models 11

Outline 1. Resource Constrained Project Scheduling Model 2. 3. 12

Dispatching rules Distinguish static and dynamic rules. Service in random order (SIRO) Earliest release date first (ERD=FIFO) tends to min variations in waiting time Earliest due date (EDD) Minimal slack first (MS) j = arg min j {max(d j p j t, 0)}. tends to min due date objectives (T,L) 13

(Weighted) shortest processing time first (WSPT) j = arg max j {w j /pj}. tends to min w j C j and max work in progress and Longest processing time first (LPT) balance work load over parallel machines Shortest setup time first (SST) tends to min C max and max throughput Least flexible job first (LFJ) eligibility constraints 14

Critical path (CP) first job in the CP tends to min C max Largest number of successors (LNS) Shortest queue at the next operation (SQNO) tends to min idleness of machines 15

in Scheduling RULE DATA OBJECTIVES Rules Dependent ERD r j Variance in Throughput Times on Release Dates EDD d j Maximum Lateness and Due Dates MS d j Maximum Lateness LPT p j Load Balancing over Parallel Machines Rules Dependent SPT p j Sum of Completion Times, WIP on Processing WSPT p j, w j Weighted Sum of Completion Times, WIP Times CP p j, prec Makespan LNS p j, prec Makespan SIRO - Ease of Implementation Miscellaneous SST s jk Makespan and Throughput LFJ M j Makespan and Throughput SQNO - Machine Idleness 16

When dispatching rules are optimal? 17

Composite dispatching rules Why composite rules? Example: 1 w j T j : WSPT, optimal if due dates are zero EDD, optimal if due dates are loose MS, tends to minimize T The efficacy of the rules depends on instance factors 18

Instance characterization Job attributes: {weight, processing time, due date, release date} Machine attributes: {speed, num. of jobs waiting, num. of jobs eligible} Possible instance factors: 1 w j T j θ 1 = 1 d C max θ 2 = dmax d min C max (due date tightness) (due date range) 1 s jk w j T j n (θ 1, θ 2 with estimated Ĉ max = p j + n s) j=1 θ 3 = s p (set up time severity) 19

1 w j T j, dynamic apparent tardiness cost (ATC) I j (t) = w ( j exp max(d ) j p j t, 0) p j K p 1 s jk w j T j, dynamic apparent tardiness cost with setups (ATCS) I j (t, l) = w ( j exp max(d ) ( ) j p j t, 0) sjk exp p j K 1 p K 2 s after job l has finished. 20

Outline 1. Resource Constrained Project Scheduling Model 2. 3. 23

Outlook 1 w j C j : weighted shortest processing time first is optimal 1 j U j : Moore s algorithm 1 prec L max : Lawler s algorithm, backward dynamic programming in O(n 2 ) [Lawler, 1973] 1 h j (C j ) : dynamic programming in O(2 n ) 1 w j T j : local search and dynasearch 1 r j, (prec) L max : branch and bound 1 s jk C max : in the special case, Gilmore and Gomory algorithm optimal in O(n 2 ) 1 w j T j : column generation approaches 24

Summary : C max is sequence independent if r j = 0 and h j is monotone non decreasing in C j then optimal schedule is nondelay and has no preemption. 25

1 w j C j [Total weighted completion time] Theorem The weighted shortest processing time first (WSPT) rule is optimal. Extensions to 1 prec w j C j in the general case strongly NP-hard chain precedences: process first chain with highest ρ-factor up to, and included, job with highest ρ-factor. polytime algorithm also for tree and sp-graph precedences 26

Extensions to 1 r j, prmp w j C j in the general case strongly NP-hard preemptive version of the WSPT if equal weights however, 1 r j w j C j is strongly NP-hard 27

1 j U j [Number of tardy jobs] [Moore, 1968] algorithm in O(n log n) Add jobs in increasing order of due dates If inclusion of job j results in this job being completed late discard the scheduled job k with the longest processing time 1 j w ju j is a knapsack problem hence NP-hard 28

Dynamic programming Procedure based on divide and conquer Principle of optimality the completion of an optimal sequence of decisions must be optimal Break down the problem into stages at which the decisions take place Find a recurrence relation that takes us backward (forward) from one stage to the previous (next) Typical technique: labelling with dominance criteria (In scheduling, backward procedure feasible only if the makespan is schedule independent, eg, single machine problems without setups, multiple machines problems with identical processing times.) 29

1 prec h max h max = max{h 1 (C 1 ), h 2 (C 2 ),..., h n (C n )}, h j regular special case: 1 prec L max [maximum lateness] solved by backward dynamic programming in O(n 2 ) [Lawler, 1978] J set of jobs already scheduled; J c set of jobs still to schedule; J J c set of schedulable jobs Step 1: Set J =, J c = {1,..., n} and J the set of all jobs with no successor Step 2: Select j such that j = arg min j J {h j ( k J c p k) }; add j to J; remove j from J c ; update J. Step 3: If J c is empty then stop, otherwise go to Step 2. For 1 L max Earliest Due Date first 1 r j L max is instead strongly NP-hard 30

Summary 1 w j C j : weighted shortest processing time first is optimal 1 j U j : Moore s algorithm 1 prec L max : Lawler s algorithm, backward dynamic programming in O(n 2 ) [Lawler, 1973] 1 h j (C j ) : dynamic programming in O(2 n ) 1 r j, (prec) L max : branch and bound 1 w j T j : local search and dynasearch 1 w j T j : IP formulations, column generation approaches 1 s jk C max : in the special case, Gilmore and Gomory algorithm optimal in O(n 2 ) Multicriteria 31