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

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

Lecture 2: Scheduling on Parallel Machines

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

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

APTAS for Bin Packing

MINIMIZING SCHEDULE LENGTH OR MAKESPAN CRITERIA FOR PARALLEL PROCESSOR SCHEDULING

CS521 CSE IITG 11/23/2012

Lecture 4 Scheduling 1

Single Machine Models

Single Machine Problems Polynomial Cases

RCPSP Single Machine Problems

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

More Approximation Algorithms

This means that we can assume each list ) is

1 Ordinary Load Balancing

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

A Framework for Scheduling with Online Availability

Scheduling Lecture 1: Scheduling on One Machine

Preemptive Scheduling of Independent Jobs on Identical Parallel Machines Subject to Migration Delays

CS 580: Algorithm Design and Analysis. Jeremiah Blocki Purdue University Spring 2018

Resource Management in Machine Scheduling Problems: A Survey

Algorithms Design & Analysis. Approximation Algorithm

COSC 341: Lecture 25 Coping with NP-hardness (2)

Recoverable Robustness in Scheduling Problems

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

Approximation Algorithms (Load Balancing)

Algorithms. Outline! Approximation Algorithms. The class APX. The intelligence behind the hardware. ! Based on

Deterministic Models: Preliminaries

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

Scheduling jobs on two uniform parallel machines to minimize the makespan

Scheduling on Unrelated Parallel Machines. Approximation Algorithms, V. V. Vazirani Book Chapter 17

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

4 Sequencing problem with heads and tails

Bin packing and scheduling

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

Approximation Schemes for Parallel Machine Scheduling Problems with Controllable Processing Times

Scheduling Lecture 1: Scheduling on One Machine

List Scheduling and LPT Oliver Braun (09/05/2017)

Energy-efficient scheduling

Computers and Intractability. The Bandersnatch problem. The Bandersnatch problem. The Bandersnatch problem. A Guide to the Theory of NP-Completeness

Computers and Intractability

Flow Shop and Job Shop Models

Multiprocessor Scheduling II: Global Scheduling. LS 12, TU Dortmund

Linear Programming. Scheduling problems

Divisible Load Scheduling

STABILITY OF JOHNSON S SCHEDULE WITH LIMITED MACHINE AVAILABILITY

HYBRID FLOW-SHOP WITH ADJUSTMENT

Dependency Graph Approach for Multiprocessor Real-Time Synchronization. TU Dortmund, Germany

Introduction to Computer Science and Programming for Astronomers

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

Shop problems in scheduling

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

Approximation Schemes for Job Shop Scheduling Problems with Controllable Processing Times

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

arxiv: v1 [cs.ds] 17 Feb 2016

Approximation and Randomized Algorithms (ARA) Lecture 2, September 1, 2010

Scheduling on Unrelated Machines under Tree-Like Precedence Constraints

Approximation Algorithms

Scheduling to Minimize Total Weighted Completion Time via Time-Indexed Linear Programming Relaxations

Exploring the Potential of Instruction-Level Parallelism of Exposed Datapath Architectures with Buffered Processing Units

Real-Time Systems. Event-Driven Scheduling

Computational Complexity

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

CMSC 441: Algorithms. NP Completeness

A polynomial-time approximation scheme for the two-machine flow shop scheduling problem with an availability constraint

5 Integer Linear Programming (ILP) E. Amaldi Foundations of Operations Research Politecnico di Milano 1

Minimizing Mean Flowtime and Makespan on Master-Slave Systems

arxiv: v1 [cs.cc] 28 Apr 2015

On the Complexity of Mapping Pipelined Filtering Services on Heterogeneous Platforms

Preemptive Online Scheduling: Optimal Algorithms for All Speeds

Real-Time k-bounded Preemptive Scheduling

Multiprocessor Scheduling I: Partitioned Scheduling. LS 12, TU Dortmund

Online algorithms for parallel job scheduling and strip packing Hurink, J.L.; Paulus, J.J.

Technische Universität Berlin

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

The Constrained Minimum Weighted Sum of Job Completion Times Problem 1

Single Machine Scheduling with Generalized Total Tardiness Objective Function

Scheduling preemptable tasks on parallel processors with limited availability

Planning and Scheduling of batch processes. Prof. Cesar de Prada ISA-UVA

UNRESTRICTED scheduling on parallel processors

CS 561, Lecture: Greedy Algorithms. Jared Saia University of New Mexico

Approximation Algorithms for scheduling

Embedded Systems 14. Overview of embedded systems design

Today s Outline. CS 561, Lecture 15. Greedy Algorithms. Activity Selection. Greedy Algorithm Intro Activity Selection Knapsack

NP-Completeness. NP-Completeness 1

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

arxiv: v2 [cs.dm] 2 Mar 2017

Online Scheduling of Parallel Jobs on Two Machines is 2-Competitive

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

On Machine Dependency in Shop Scheduling

A lower bound on deterministic online algorithms for scheduling on related machines without preemption

Logic-based Benders Decomposition

The Power of Preemption on Unrelated Machines and Applications to Scheduling Orders

CSE 4502/5717 Big Data Analytics Spring 2018; Homework 1 Solutions

NP-Complete Problems and Approximation Algorithms

Selfish Multi-User Task Scheduling

Minimizing the Number of Tardy Jobs

FH2(P 2,P2) hybrid flow shop scheduling with recirculation of jobs

CS 6901 (Applied Algorithms) Lecture 3

Minimizing the weighted completion time on a single machine with periodic maintenance

Transcription:

Multiple Machines Model Multiple Available resources people time slots queues networks of computers Now concerned with both allocation to a machine and ordering on that machine.

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

Approxmiation Algorithms Cannot come up with an optimal solution in polynomial time Will look at relative error : C max (our algorithm)/c max (OP T ) Challenges: Our algorithm s performance is different on different instances We can t compute C max (OP T )

Approxmiation Algorithms Cannot come up with an optimal solution in polynomial time Will look at relative error : C max (our algorithm)/c max (OP T ) Challenges: Our algorithm s performance is different on different instances We can t compute C max (OP T ) Solution: We will use a worst case measure on performance We will use a lower bound on C max (OP T )

Approximation Algorithms An algorithm A is a ρ approximation algorithm for a problem, if for all inputs. C max (A) C max (OP T ) ρ In addition, A must run in polynomial time. We can t compute C max (OP T ). Recipe: Instead, we compute a lower bound LB(OP T ), such that LB(OP T ) is easy to compute LB(OP T ) C max (OP T ). We then show that C max (A) ρlb(op T ). Combining the previous two steps, we have: which can be rewritten as C max (A) ρlb(op T ) ρc max (OP T ) C max (A) C max (OP T ) ρ

. Notes: Must come up with a good lower bound Can replace C max with any objective.

Lower Bounds for P C max Average load Longest job

Lower Bounds for P C max Average load p j /m Longest job p max = max j {p j }

List Scheduling Algorithm A Greedy Algorithm 1. Make a list of the jobs (in any order) 2. When a machine becomes available, schedule the next job on the list.

List Scheduling Algorithm A Greedy Algorithm 1. Make a list of the jobs (in any order) 2. When a machine becomes available, schedule the next job on the list.

List Scheduling Algorithm A Greedy Algorithm 1. Make a list of the jobs (in any order) 2. When a machine becomes available, schedule the next job on the list. Analysis Let t be the last time at which all machines are busy. t j p j /m C max t + p max j p j /m + p max. Put this together with our lower bound: C max t + p max j p j /m + p max 2LB 2OP T

Improved Algorithm Schedule length is average load plus last job. When last job is small, the schedule is shorter. Force last job to be small LPT (Longest Processing Time). LPT is a 4/3-approximation for P C max. Proof Outline If last job is small ( 1/3OP T ) then 4/3-approximation Otherwise, there are at most 2 jobs per machine and LPT is optimal. Even better algorithms are possible:. A polynomial-time approximation scheme (PTAS) is an algorithm that, given fixed ɛ > 0, returns at (1 + ɛ) -approximation in polynomial time. The running time can have a bad dependence on ɛ, such as n O(1/ɛ). P C max has a PTAS.

Precedence Constraints P prec C max is known as project scheduling. P prec C max has a 2-approximation. What are good lower bounds for P prec C max?

Precedence Constraints P prec C max is known as project scheduling. P prec C max has a 2-approximation. What are good lower bounds for P prec C max? Average load p max any path in the precedence graph the critial path is the longest path in the precedence graph.

Unit Processing Times P p j = 1, prec C max is NP-hard. Heuristics Critical Path (CP) rule The job at the head of the longest string of jobs in the constraint graph has the highest priority P p j = 1, tree C max is solved by CP. Largest Number of Successors First (LNS) The job with the largest total number of successors in the constraint graph has highest priority. For in-trees and chains, LNS is identical to CP LNS is also optimal for P p j = 1, outtree C max Generalization to arbitrary processing times is possible Fixed Number of Processors P 2 p j = 1, prec C max P 3 p j = 1, prec C max is solvable in polynomial time is a big open question.

Preemptions: P pmtn C max McNaughton s wrap-around rule is optimal. Example j p j A 7 B 10 C 1 D 4 E 9

LP for P pmtn C max Variables: x ij is the time that job j runs on machine i. C max is also a variable. Constraints Each job runs for p j units of time Each machine runs for at most C max time. C max is more than any processing time. min C max (1) s.t. (2) m i=1 x ij = p j j = 1... n (3) n j=1 x ij C max i = 1... m (4) m i=1 x ij C max j = 1... n (5) (6) Note that LP only assigns pieces of jobs to machines. Need to also assign jobs to times.

Machines with speeds Q pmtn C max Machines M 1,..., M m with speeds v 1,..., v m. Assume wlog that v 1 v 2 v m Assume wlog that p 1 p 2 p n If a job runs for one unit of time on machine M i, it uses up v i units of processing. If job j runs on machine M i, then it takes p j /v i time units to complete. Example j p j A 20 B 16 C 2 D 1 What are the lower bounds

Lower bounds for Q pmtn C max What is the analog of p max? What is the analog of average load? Are there others?

Lower bounds for Q pmtn C max What is the analog of p max? p 1 /v 1 What is the analog of average load? p j / v i Are there others? Yes General Lower Bound C max max p 1, p 1 + p 2,..., v 1 v 1 + v 2 m 1 j=1 p j m 1, i=1 v i n j=1 p j m i=1 v i

Lower Bound C max max p 1, p 1 + p 2,..., v 1 v 1 + v 2 m 1 j=1 p j m 1, i=1 v i n j=1 p j m i=1 v i What is the lower bound for our example? Can we achieve this lower bound?

LPRT-FM Longest Remaining Processing Time on Fastest Machines Example 1 j p j A 20 B 16 C 2 D 1 v = (4, 2, 1) Example 2 j p j A 20 B 16 C 2 D 1 Notes: LRPT-FM is optimal in continuous time LRPT-FM is near otimal in discrete time, for small time steps.