Scheduling Online Algorithms. Tim Nieberg

Similar documents
Optimal on-line algorithms for single-machine scheduling

Lecture 4 Scheduling 1

Completion Time Scheduling and the WSRPT Algorithm

On-line Scheduling to Minimize Max Flow Time: An Optimal Preemptive Algorithm

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

CS 374: Algorithms & Models of Computation, Spring 2017 Greedy Algorithms Lecture 19 April 4, 2017 Chandra Chekuri (UIUC) CS374 1 Spring / 1

Scheduling Lecture 1: Scheduling on One Machine

A Framework for Scheduling with Online Availability

Combinatorial Algorithms for Minimizing the Weighted Sum of Completion Times on a Single Machine

A lower bound for scheduling of unit jobs with immediate decision on parallel machines

Scheduling problems in master-slave model

SPT is Optimally Competitive for Uniprocessor Flow

Combinatorial Structure of Single machine rescheduling problem

Non-Work-Conserving Non-Preemptive Scheduling: Motivations, Challenges, and Potential Solutions

hal , version 1-27 Mar 2014

CPU scheduling. CPU Scheduling

CMSC 451: Lecture 7 Greedy Algorithms for Scheduling Tuesday, Sep 19, 2017

CPU Scheduling. CPU Scheduler

Open Problems in Throughput Scheduling

Algorithm Design and Analysis

M/G/1 and Priority Queueing

Module 5: CPU Scheduling

CSE 421 Greedy Algorithms / Interval Scheduling

Recoverable Robustness in Scheduling Problems

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

Chapter 6: CPU Scheduling

A New Approach to Online Scheduling: Approximating the Optimal Competitive Ratio

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

Coin Changing: Give change using the least number of coins. Greedy Method (Chapter 10.1) Attempt to construct an optimal solution in stages.

Lecture 2: Paging and AdWords

Knapsack and Scheduling Problems. The Greedy Method

A note on semi-online machine covering

Outline / Reading. Greedy Method as a fundamental algorithm design technique

Single Machine Models

Single Machine Problems Polynomial Cases

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

RCPSP Single Machine Problems

SRPT Optimally Utilizes Faster Machines to Minimize Flow Time

Embedded Systems Development

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

Minimizing Mean Flowtime and Makespan on Master-Slave Systems

Non-clairvoyant Scheduling for Minimizing Mean Slowdown

Task Models and Scheduling

1 Markov decision processes

Single machine batch scheduling with release times

Greedy Homework Problems

Energy-Efficient Broadcast Scheduling. Speed-Controlled Transmission Channels

CS505: Distributed Systems

SCHEDULING UNRELATED MACHINES BY RANDOMIZED ROUNDING

Dynamic Programming( Weighted Interval Scheduling)

Algorithm Design Strategies V

Weighted flow time does not admit O(1)-competitive algorithms

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

Approximation Algorithms (Load Balancing)

Optimizing Energy Consumption under Flow and Stretch Constraints

NATCOR: Stochastic Modelling

Dynamic Programming. Cormen et. al. IV 15

arxiv: v2 [cs.dm] 2 Mar 2017

Semi-clairvoyant Scheduling

bound of (1 + p 37)=6 1: Finally, we present a randomized non-preemptive 8 -competitive algorithm for m = 2 7 machines and prove that this is op

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

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

Preemptive Online Scheduling: Optimal Algorithms for All Speeds

New Online Algorithms for Story Scheduling in Web Advertising

Scheduling Linear Deteriorating Jobs with an Availability Constraint on a Single Machine 1

tlb Department of Mathematics and Computing Sciences Memorandum COSOR On-line single server dial-a-ride problems E. Feuerstein, L.

Scheduling I. Today. Next Time. ! Introduction to scheduling! Classical algorithms. ! Advanced topics on scheduling

Stochastic Online Scheduling Revisited

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

Cloud Scheduling with Setup Cost

Price of Anarchy in Sequencing Situations and the Impossibility to Coordinate Herbert Hamers Flip Klijn Marco Slikker August 2013

2 Martin Skutella modeled by machine-dependent release dates r i 0 which denote the earliest point in time when ob may be processed on machine i. Toge

A BEST-COMPROMISE BICRITERIA SCHEDULING ALGORITHM FOR PARALLEL TASKS

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

THÈSE présentée par. Ming LIU GRADE DE DOCTEUR

ONLINE SCHEDULING OF MALLEABLE PARALLEL JOBS

CS 6783 (Applied Algorithms) Lecture 3

Basic Scheduling Problems with Raw Material Constraints

As Soon As Probable. O. Maler, J.-F. Kempf, M. Bozga. March 15, VERIMAG Grenoble, France

0.1 Motivating example: weighted majority algorithm

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

Lecture 8: Decision-making under total uncertainty: the multiplicative weight algorithm. Lecturer: Sanjeev Arora

Colored Bin Packing: Online Algorithms and Lower Bounds

Andrew Morton University of Waterloo Canada

Online Learning, Mistake Bounds, Perceptron Algorithm

STABILITY OF JOHNSON S SCHEDULE WITH LIMITED MACHINE AVAILABILITY

Multiprocessor jobs, preemptive schedules, and one-competitive online algorithms

Online Packet Buffering

HYBRID FLOW-SHOP WITH ADJUSTMENT

Machine Scheduling with Deliveries to Multiple Customer Locations

Online Dial-a-Ride Problems: Minimizing the Completion Time

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

S. ABERS Vohra [3] then gave an algorithm that is.986-competitive, for all m 70. Karger, Phillips and Torng [] generalized the algorithm and proved a

Online multi-server dial-a-ride problems

How much can lookahead help in online single machine scheduling

Polynomial Time Algorithms for Minimum Energy Scheduling

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

On Preemptive Scheduling on Uniform Machines to Minimize Mean Flow Time

Dynamic Scheduling with Genetic Programming

1 Ordinary Load Balancing

Transcription:

Scheduling Online Algorithms Tim Nieberg

General Introduction on-line scheduling can be seen as scheduling with incomplete information at certain points, decisions have to be made without knowing the complete instance depending on the way how new information becomes known, different on-line paradigms are possible

On-Line paradigms scheduling jobs one by one in this paradigm jobs are ordered in some list (sequence) jobs are presented one by one to the decision maker the moment the job is presented, its characteristics get available the scheduling decision for the job has to be taken before the next job is presented the scheduling decision is irreversible Remarks: scheduling jobs one by one is list scheduling! in Lecture 5, we have shown that list scheduling is a 2 1/m-approximation for P C max

On-Line paradigms (cont.) jobs arrive over time jobs become known at their release date the scheduling decision for a job may be delayed at any time all currently available jobs are at the disposal of the decision maker decisions of the past are irreversible Remark: we consider this paradigm

Performance measure quality of an on-line algorithm is mostly measured by evaluating its worst case performance as reference value the best off-line value is used has a game theoretic character: the on-line algorithm plays against an adversary the adversary makes a sequence of requests (jobs) to be served by the on-line algorithm the adversary also serves the request, but only after it knows all requests the adversary tries to get the costs of the on-line algorithm as high as possible compared to its own cost

Performance measure - competitive analysis an on-line algorithm is ρ-competitive if its objective value is no more than ρ times the optimal off-line value for all instances the competitive ratio is related to the approximation factor in off-line settings

Performance measure - competitive analysis an on-line algorithm is ρ-competitive if its objective value is no more than ρ times the optimal off-line value for all instances the competitive ratio is related to the approximation factor in off-line settings if randomization is allowed within the on-line algorithm (i.e. random choices are allowed) the expected objective value is used for the competitive analysis

Performance measure - lower bounds how much does one lose by not having complete information or how much is it worth to know the future?

Performance measure - lower bounds how much does one lose by not having complete information or how much is it worth to know the future? the competitive ratio of a specific on-line algorithm is not the answer to this problem a lower bound on the competitive ratio of every possible on-line algorithm answers the question! such lower bounds can be achieved by providing a specific set of instances on which no on-line algorithm can perform well

Problem 1 r j C j problem is NP-hard if all release dates are equal, the SPT-rule solves the problem in the general case, SPT (each time the machine gets idle, process an available job with smallest processing time) is an on-line algorithm Theorem: For problem 1 r j C j the SPT-algorithm has not a constant competitive ratio. (proof on board) Can we do better? How good can we do?

Problem 1 r j C j - lower bound Theorem: Any deterministic on-line algorithm for problem 1 r j C j has a competitive ratio of at least 2 (proof on the board) Remark: Proof of the theorem shows that any on-line algorithm which has a constant competitive ratio needs a waiting strategy

Problem 1 r j C j - algorithm Algorithm delayed SPT (DSPT): 1 IF machine gets idle THEN 2 calculate next time t at which a job is available; 3 let j be unscheduled available job with smallest processing tim 4 (if choice, select job with smallest release date); 5 IF p j t THEN 6 schedule job j at t 7 ELSE 8 wait until t = p j or until a next job becomes available;

Problem 1 r j C j - algorithm (cont.) Remarks on DSPT: algorithm would like to order jobs by increasing processing times, but does not know if in the future smaller jobs arrive and how long to wait to cope with this, the algorithm waits so long that if it makes a mistake and schedules a large job j, all smaller jobs coming after j have a release date p j this makes that the mistake can not contribute too much to the criterion

Problem 1 r j C j - algorithm (cont.) Theorem: Algorithm DSPT for problem 1 r j C j has competitive ratio 2 Proof (sketch): Notation: I : instance with a minimal number of jobs for which DSPT has largest performance ratio σ: schedule created by algorithm DSPT for instance I Observation: Schedule σ consist of a single block (i.e. all jobs are processed without idle time in between) Assumption: jobs are numbered according to their position in σ

Problem 1 r j C j - algorithm (cont.) Proof (cont.): partition of σ into subblocks B 1,..., B k : within B i jobs are ordered according to increasing processing times last job of B i is larger than first job of B i+1 B i consist of jobs b(i 1) + 1,..., b(i) (i.e. b(i) = min{j > b(i 1) p j > p j+1}) define m(i) such that p m(i) = max 0 j b(i) p j define pseudo schedule ψ by scheduling jobs in same order as in σ where job j from subblock B i+1 starts at S j (σ) p m(i)

Problem 1 r j C j - algorithm (cont.) Proof (cont.): in ψ job may overlap or start before their release date Notation: φ: optimal preemptive schedule for I Lemma 1: For all j I we have: C j (σ) C j (ψ) C j (φ). (Proof on the board) Lemma 2: C j (ψ) C j (φ) (Proof in the handouts)

Problem 1 r j C j - randomized algorithm algorithm is based on optimal preemptive solution of problem 1 r j, pmtn C j SRPT (at each point in time schedule an available job with shortest remaining processing time) solves problem 1 r j, pmtn C j SRPT is an on-line algorithm and, thus, an on-line algorithm for problem 1 r j C j may use the result of SRPT

Problem 1 r j C j - randomized algorithm algorithm α-scheduler: 1 L: list of jobs for which in the optimal preemptive schedule an α fraction has already been scheduled at the current time; initially: L = ; 2 proceed in time whereby the preemptive schedule is updated 3 IF α fraction of job j is finished in preemptive schedule THEN 4 add j at the end of L; 5 IF machine gets idle THEN 6 schedule first job of L or if L is empty, proceed in time;

Problem 1 r j C j - randomized algorithm for fixed α the α-scheduler is a deterministic algorithm for α = 1, the α-scheduler has a competitive ratio of 2 (proof by Phillips,Stein and Wein [1995]) other values of α lead to larger competitive ratios Theorem: The randomized on-line algorithm α-scheduler, where α is chosen according to probability density function f (α) = e α /(e 1), has competitive ratio e/(e 1) 1.582 (proof by Chekuri, Motwani, Natarajan and Stein [1997]) Theorem: Any randomized on-line algorithm for problem 1 r j C j has a competitive ratio of at least e/(e 1)