hal , version 1-27 Mar 2014

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

Scheduling Parallel Jobs with Linear Speedup

Scheduling Online Algorithms. Tim Nieberg

On-line Bin-Stretching. Yossi Azar y Oded Regev z. Abstract. We are given a sequence of items that can be packed into m unit size bins.

arxiv: v1 [cs.ds] 11 Dec 2013

Optimal on-line algorithms for single-machine scheduling

Rate-monotonic scheduling on uniform multiprocessors

This means that we can assume each list ) is


Applications of Discrete Mathematics to the Analysis of Algorithms

Techniques for Proving Approximation Ratios in Scheduling

Margin Maximizing Loss Functions

F O R SOCI AL WORK RESE ARCH

Complexity analysis of job-shop scheduling with deteriorating jobs

A Language for Task Orchestration and its Semantic Properties

Single Machine Scheduling with Job-Dependent Machine Deterioration

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

Common-Deadline Lazy Bureaucrat Scheduling Problems

Parallel machine scheduling with batch delivery costs

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.

Complexity and Algorithms for Two-Stage Flexible Flowshop Scheduling with Availability Constraints

A Probabilistic Algorithm for -SAT Based on Limited Local Search and Restart

Narrowing confidence interval width of PAC learning risk function by algorithmic inference

Single machine scheduling with forbidden start times

Machine scheduling with resource dependent processing times

Combinatorial Structure of Single machine rescheduling problem

Multiprocessor Scheduling of Age Constraint Processes

Machine Minimization for Scheduling Jobs with Interval Constraints

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

An Example file... log.txt

Lecture 2: Scheduling on Parallel Machines

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

Polynomial Time Algorithms for Minimum Energy Scheduling

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

Lecture 16: Modern Classification (I) - Separating Hyperplanes

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

Approximation Algorithms (Load Balancing)

Equitable and semi-equitable coloring of cubic graphs and its application in batch scheduling

A BEST-COMPROMISE BICRITERIA SCHEDULING ALGORITHM FOR PARALLEL TASKS

Energy-efficient scheduling

NP-Completeness. f(n) \ n n sec sec sec. n sec 24.3 sec 5.2 mins. 2 n sec 17.9 mins 35.

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

Algorithms. NP -Complete Problems. Dong Kyue Kim Hanyang University

Single Machine Scheduling with a Non-renewable Financial Resource

Single processor scheduling with time restrictions

LA PRISE DE CALAIS. çoys, çoys, har - dis. çoys, dis. tons, mantz, tons, Gas. c est. à ce. C est à ce. coup, c est à ce

Throughput Optimization in Single and Dual-Gripper Robotic Cells

An Introduction to Optimal Control Applied to Disease Models

MINIMIZING SCHEDULE LENGTH OR MAKESPAN CRITERIA FOR PARALLEL PROCESSOR SCHEDULING

Planning for Reactive Behaviors in Hide and Seek

Citation Osaka Journal of Mathematics. 43(2)

Chapter 4. Greedy Algorithms. Slides by Kevin Wayne. Copyright 2005 Pearson-Addison Wesley. All rights reserved.

Minimizing Mean Flowtime and Makespan on Master-Slave Systems

On Two Class-Constrained Versions of the Multiple Knapsack Problem

Scheduling Lecture 1: Scheduling on One Machine

1 Ordinary Load Balancing

Scheduling Coflows in Datacenter Networks: Improved Bound for Total Weighted Completion Time

T i t l e o f t h e w o r k : L a M a r e a Y o k o h a m a. A r t i s t : M a r i a n o P e n s o t t i ( P l a y w r i g h t, D i r e c t o r )

Ideal preemptive schedules on two processors

Single processor scheduling with time restrictions

Real-time scheduling of sporadic task systems when the number of distinct task types is small

ONLINE SCHEDULING OF MALLEABLE PARALLEL JOBS

The minimum G c cut problem

Scheduling Lecture 1: Scheduling on One Machine

Research Article Batch Scheduling on Two-Machine Flowshop with Machine-Dependent Setup Times

Scheduling chains of operations on a batching machine with disjoint sets of operation compatibility

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

An Improved Quantum Fourier Transform Algorithm and Applications

Santa Claus Schedules Jobs on Unrelated Machines

The Constrained Minimum Weighted Sum of Job Completion Times Problem 1

On the Robust Single Machine Scheduling Problem

Benders' Method Paul A Jensen

Randomized Simultaneous Messages: Solution of a Problem of Yao in Communication Complexity

Computational complexity theory

June 19, Abstract. We give a simple proof that, for any instance of a very general class of scheduling

Differentiating Functions & Expressions - Edexcel Past Exam Questions

Module 5: CPU Scheduling

Embedded Systems Development

Chapter 6: CPU Scheduling

On-line Scheduling of Two Parallel Machines. with a Single Server

I N F S Y S R E S E A R C H R E P O R T PROBABILISTIC LOGIC UNDER COHERENCE: COMPLEXITY AND ALGORITHMS INSTITUT FÜR INFORMATIONSSYSTEME

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

CS264: Beyond Worst-Case Analysis Lecture #18: Smoothed Complexity and Pseudopolynomial-Time Algorithms

Real-Time Systems. Event-Driven Scheduling

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

Multi-agent scheduling on a single machine to minimize total weighted number of tardy jobs

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

CS264: Beyond Worst-Case Analysis Lecture #15: Smoothed Complexity and Pseudopolynomial-Time Algorithms

arxiv:cs/ v1 [cs.ds] 18 Oct 2004

More Approximation Algorithms

Approximation Schemes for Scheduling on Parallel Machines

Bin packing and scheduling

On Stateless Multicounter Machines

Polynomially solvable and NP-hard special cases for scheduling with heads and tails

Non-preemptive Fixed Priority Scheduling of Hard Real-Time Periodic Tasks

Multi-Operation Multi-Machine Scheduling

Centre d Economie de la Sorbonne UMR 8174

Non-preemptive Scheduling of Distance Constrained Tasks Subject to Minimizing Processor Load

HYBRID FLOW-SHOP WITH ADJUSTMENT

Transcription:

Author manuscript, published in "2nd Multidisciplinary International Conference on Scheduling : Theory and Applications (MISTA 2005), New York, NY. : United States (2005)"

2 More formally, we denote by the ordered collection Ð Ð Ò µ and we assume that the indexing is chosen so that Ð Ð Ð Ò. Our scheduling instance Á is completely defined by the system µ, where is the number of (identical) processors. Let be a collection of processing times defined by Ð Ò Ð Ò Ð Ò, Ð Ò Ð Ò,, Ð Ò µ Ð, where Ò. The collection is called the th rank of tasks with respect to µ. Consider a schedule obtained by scheduling the tasks rank-by-rank in the order and such that no two tasks of the same rank are scheduled on the same processor. Notice that any permutation of the tasks of the same rank assures the optimality of the schedule with respect to the sum of completion times criterion. This is the family of schedules that we call SPT schedules in the sequel. We are interested to know whether among the SPT schedules, which are the optimal schedules for the sum of completion times criterion, it is possible to obtain good solutions for the following optimality criteria: - the maximum sum of completion times per machine: Ü. Ì È This measure captures the wish of distributing as much as possible the total sum of completion times among the machines of the system. - the global fairness [4]: For two vectors Î Áµ, we write if for all. The global approximation ratio of, denoted by Ð µ, is the smallest «such that «for all Î Áµ. Informally Ð µ is the smallest «for which is an «-approximation, in the coordinate-wise sense, to every vector Î Áµ. The best global approximation ratio achievable on the instance Á is then defined as Ð Áµ Ò Ð µ Î Áµ - the individual fairness: The individual happiness factor compares the completion time of a task with the smallest possible completion time of the same task in any feasible schedule. More formally, we define Ò µ to be the smallest «such that «for all Î Áµ. The best approximation ratio achievable on the instance Á is then defined as Ò Áµ Ò Ò µ Î Áµ Our approach is in the same vein as the one of Bruno et al. [3] who considered the following question: among all optimal schedules for the sum of

How good are SPT schedules for fair optimality criteria 3 P1 1 1 3 P1 P 2 7 P 2 1 1 1 1 5 5 6 5 max. sum of completion times = 7 (total) sum of completion times = 10 max. sum of completion times = 6 (total) sum of completion times = 11 È Ò Figure 1. Instance for which the optimal solutions to the problems Minimize and ÅÒ ÅÜ ËÌ are different. completion times, is it possible to compute one that minimizes the makespan? (They proved that the problem is Æ È-hard.) For a related problem, see also [6]. Organization of the paper and our contribution In Section 2, we consider the problem of minimizing the maximum completion time per machine (ÅÒ ÅÜ ËÌ). We first show that contrarily to the sum of completion times, the problem ÅÒ ÅÜ ËÌ is Æ È-hard. Furthermore, we show that an SPT schedule is a µ-approximation algorithm for the ÅÒ ÅÜ ËÌ problem and that there are instances for which any SPT schedule cannot achieve an approximation guarantee better than. In Section 3, we consider the global approximation ratio and we prove that SPT schedules have an approximation ratio of (and that no algorithm can have a better approximation ratio if ). Philips et al. [5] presented a 3-approximation for the same problem when release dates are taken into account. For the individual happiness factor however the performance ratio cannot be bounded by any constant but we prove that a SPT schedule obtains the best possible performance guarantee. Finally, we focus on a more restricted version of the individual happiness factor where the obtained solutions are compared with respect to the family of SPT schedules and we prove a 2-approximation bound. 2. The ÅÒ ÅÜ ËÌ problem We first remark that the problem of minimizing the sum of completion times and the ÅÒ ÅÜ ËÌ problem are different. To see that consider the following instance: three tasks of length and a task of length on two identical processors (see Figure 1). The optimal solution for the problem of minimizing the sum of completion times consists in putting two tasks of length on a processor, and the other two tasks on the other processors (total sum of completion times ¼, maximum sum of completion times per processor ). The optimal solution of ÅÒ ÅÜ ËÌ consists in putting the three tasks of length on a processor, and the task of length on the other processor (total sum of completion times, maximum sum of completion time per processor ).

4 2.1 Hardness We prove in this section that the ÅÒ ÅÜ ËÌ problem is Æ È-hard. ÌÓÖ º ÅÒ ÅÜ ËÌ is Æ È-hard. Proof: Consider the decision version of the ÅÒ ÅÜ ËÌ problem: ÅÒ ÅÜ ËÌ problem: Given a system µ, and a number. Does there exist a schedule such that its maximum sum of completion times is smaller than or equal to? We will show that the ÔÖØØÓÒ problem which is known to be Æ È-hard [2] can be phrased in terms of problem ÅÒ ÅÜ ËÌ. ÈÖØØÓÒ problem: Given a collection Ü Ü Ü Ò of integers. Does there exist a partition µ of, i.e. and, such that È Ü Ü È Ü Ü? Given an instance of ÔÖØØÓÒ with a collection Ü Ü Ü Ò of non decreasing integers Ü Ü Ü Ò, we define a system µ and a limit such that the ÅÒ ÅÜ ËÌ instance admits a solution ifè and only the instance of ÔÖØØÓÒ admits a solution. Let ÈÒ Ü Ò Ü µ Ò. We now define the system µ: we have Ò tasks Ì Ì Ì Ò to schedule on processors È and È. Let Ð denote the execution time of task Ì. Let the execution È È Ü times Ð Ð Ð Ò be such that Ð Ò and Ü Ð, for Ò. Ò For example, (if Ò ), Ð ¼ Ð Ü Ò Ð Ü Ò Ð Ü Ò Ü Ò Ð Ü Ò Ü Ò Ð Ü Ò Ü Ò Ü Ò Ð Ò Ü Ò Ü Ò ÜÒ Ð Ò Ü Ò Ü Ò ÜÒ Ü Ò Let us now show that there is a solution of the ÅÒ ÅÜ ËÌ problem if and only if there is a solution of ÔÖØØÓÒ. È Ò If a partition µ exists for then there is a solution of the ÅÒ ÅÜ ËÌ problem: we can obtain for our system µ a schedule whose maximum sum of completion times is ÈÒ Ü Ü µ Ò. This schedule can be obtained by assigning tasks Ì and Ì at rank : assign task Ì to È and Ì to È if Ü, otherwise assign Ì to È and Ì to È. Indeed, the execution time of a task added at the Ø rank will be counted Ò times in the sum of the completion times of its processor. For example, the execution time of the last task of a processor will be counted only

How good are SPT schedules for fair optimality criteria 5 once, whereas the execution time of the first task of a processor will be counted Ò times (because there are Ò tasks on each processor). Thus the contribution to the sum of completion times per processor of the task Ì (resp. Ì ), assigned at the Ø rank, is Ò µ Ð (resp. Ò µ Ð Ò µ Ð Ü Ò µ). The difference between these two contributions is then Ü : if Ü (i.e. Ì is assigned to È ) then the contribution of the Ø task of È is equal to the contribution of the Ø task of È, plus Ü. Likewise, if Ü (i.e. Ì is assigned to È ) then the contribution of the Ø task of È is equal to the contribution of the Ø task of È, plus Ü. Thus, the sum of the completion times of the tasks of È is È Ò Ì ÈÜ Ü, and the sum of the completion times of the tasks of È is È Ò Ì È ÈÜ Ü Ò. Moreover Ì Ò È µ Ü Ò Ò µ Ü ÜÒ Ò Ü Ü Ü Ò Ü Ò Ü Ü Ò Ò È Ò Ü Ò Ü. So the sum of the completion times of the tasks of È È is ÈÒ Ü Ò Ü Ò µ ÈÜ Ü, and the sum of the completion times of the tasks of È is ÈÒ È Ò Ü Ü Ò µ ÈÜ Ü. È È È Ò If there is partition of (i.e. Ü Ü Ü ) then the maximum È sum of completion times per processor is equal to ÈÒ Ü Ò Ü È Ò µ Ò Ü È ÈÒ Ü Ò Ü µ Ò. Thus, if there is a solution of ÔÖØØÓÒ, there is a solution of the ÅÒ ÅÜ ËÌ problem. Let us now show that if there is a solution of the ÅÒ ÅÜ ËÌ problem, then there is also a solution of ÔÖØØÓÒ. If the maximum sum of Èthe completion times per processor is smaller than or equal to ÈÒ Ü Ò µ then we have a SPT schedule. Indeed, the total sum of the completion times of a SPT schedule is Ë ÈÒ Ü µ È Ò Ü Ò Ü Ò,, as we saw it above, and a schedule has a minimum total sum of completion times if and only if it is a SPT schedule [3]. Since the total sum of completion times cannot be greater than twice the maximum sum of completion times per processor, a schedule which is a solution of the ÅÒ ÅÜ ËÌ problem is a SPT schedule. In any SPT schedule, the tasks of length Ð and Ð are at the Ø rank, because Ð Ð Ð Ð Ð Ð Ð Ð Ò. So, in any SPT È schedule, the sum of completion times of È minus the one of È is equal to Ì È Ü ÈÌ È Ü. If there is a solution of the ÅÒ ÅÜ ËÌ È problem with ÈÒ Ü Ò Ü µ Ò then the sum of the completion times of È is equal to the sum of the completion times of È (otherwise the sum of completion È times of all the tasks would be smaller than Ë), and then ÈÌ È Ü Ì È Ü : there is a partition of and we can construct this partition µ by placing Ü in if Ì is assigned to È and Ü in if Ì

6 is assigned to È. 2.2 Approximation In this section, we show that an optimal algorithm for the sum of completion times criterion gives a 3-approximate solution for the ÅÒ ÅÜ ËÌ problem. Consider the following algorithm, denoted by SPT greedy : Order tasks by non decreasing execution times. At each step, for Ò, schedule the current task on the processor which has the smallest completion time. This algorithm gives an optimal solution for the problem of minimizing the sum of completion times of the tasks. Let us show that this algorithm is a µ-approximation algorithm for ÅÒ ÅÜ ËÌ. In order to let SPT greedy be deterministic when several processors have the smallest execution time, we will refer in the proofs to the following algorithm, which is a greedy SPT algorithm (Proposition 2.1 shows that we add at each step a task on a processor which has the smallest completion time): Order tasks by non decreasing execution times. At each step, for Ò, schedule the current task on the processor È Ó. ÈÖÓÔÓ ØÓÒ º a) At the beginning of step of SPT greedy, the processor È Ó is the processor which has the smallest completion time and the smallest sum of completion times. b) At the end of step of SPT greedy, the processor È Ó is the processor which has the largest sum of completion times. Proof: a) We are at the beginning of step. Let be the processor È Ó, and let Ô denote its completion time. Let us show that has the smallest completion time: For each Ó, processor È has a completion time greater than or equal to Ô. Indeed È has the same number of tasks as and, for each such that number of tasks on, the -th task of È is greater than or equal to the -th task of, by construction.

How good are SPT schedules for fair optimality criteria 7 For each Ó, processor È has a completion time greater than or equal to Ô. Indeed the number of tasks on È is equal to the number of tasks on plus one, and, for each such that (number of tasks on ), the µ-th task of È is greater than or equal to the -th task of, by construction. We use the same reasoning to show that has the smallest sum of completion times. b) We are at the end of step. Let be the processor È Ó, and let Ô denote its sum of completion times at this step. Let us show that has the largest sum of completion times: For each Ó, processor È has a sum of completion times smaller than or equal to Ô. Indeed È has one task less than and, for each such that number of tasks on, the -th task of È is smaller than or equal to the µ-th task of, by construction. For each Ó, processor È has a sum of completion times smaller or equal to Ô. Indeed È has the same number of tasks as and, for each such that number of tasks on, the -th task of È is smaller than or equal to the -th task of, by construction. ÈÖÓÔÓ ØÓÒ º Let ÇÈ Ì be the maximum sum of completion times of a solution of ÅÒ ÅÜ ËÌ. We have: Min ÈÒ ÇÈ Ì µ where Min ÈÒ µ is the optimal value for the problem of minimizing the sum of completion times. Proof: We will prove this proposition by contradiction. Let us suppose that we Min ÈÒ have ÇÈ Ì µ. By definition each processor has a sum of completion times smaller than or equal È to OPT: È ÈÌ È ÇÈ Ì È Ò Ò So, ÈÌ È ÇÈ Ì, and ÇÈ Ì Min ÈÒ µ a contradiction.

8 ÌÓÖ º The algorithm SPT greedy achieves an approximation guarantee of µ for ÅÒ ÅÜ ËÌ. Proof: Before we add the last task Ì Ò, the processor È Ü on which Ì Ò will be scheduled has the smallest sum of completion times, denoted by Ô, and the smallest completion time, denoted by (Proposition 2.1 a). Let Ð Ò denote the execution time of task Ì Ò. The processor on which the last task is scheduled has the largest sum of completion times (Proposition 2.1 b), so: Ü ÈÌ È È Ì È Ü Ô Ð Ò È Ò Ð Ò Since SPT greedy gives an optimal solution of the minimum sum of completion times problem, and since the completion time of Ì Ò in SPT greedy is Ð Ò, we have: Ü ÈÌ Min ÈÒ È µ Ð Òµ Ð Ò MinÈ Ò µ Ð Òµ Since ÐÒ ÇÈ Ì (because is the minimum completion time at step Ò ), and Ð Ò ÇÈ Ì, we have: Moreover, since MinÈ Ò Ð Ò ÐÒ µçè Ì µçè Ì µ ÐÒ ÇÈ Ì (Proposition 2.2), we have: Ü ÈÌ È ÇÈ Ì µ µçè Ì µçè Ì Lower bound for SPT greedy. We now show that SPT greedy does not achieve an approximation guarantee better than. Consider the following instance: È processors, µ tasks of length and a task of length µ. SPT greedy will schedule tasks of length on each processor, and the task of length will be the last task of the first processor (see Figure 2). The

How good are SPT schedules for fair optimality criteria 9 P 1 1 1 1 P 1 P 2 1 1 1 P 2 P3 6 P3 1 1 1 1 1 1 6 max. sum of completion times = 6 max. sum of completion times = 11 Figure 2. SPT greedy does not achieve an approximation guarantee better than ( example with m=3 ): È maximum sum of completion times is then µ, which is equal to È µ. An optimal solution for ÅÒ ÅÜ ËÌ would be the following one: schedule tasks of length on each of the µ first processors, and the task of length on the last È processor. The maximum sum of completion times in this solution is then. So the ratio between the maximum sum of completion times of these two È schedules is µ È, which is equal to µ, which tends towards when gets large. 3. Fairness measures In this section we will consider fairness measures in order to compare a schedule given by the greedy SPT algorithm, SPT greedy, to any other schedule. 3.1 Global fairness measure We will first use the fairness measure introduced in [4], namely the global approximation ratio. We prove that SPT greedy has a global approximation ratio of for the problem that we consider (and which is denoted by P all ), and that no algorithm can achieve a better global approximation ratio if. ÌÓÖ º One has Ð Áµ for all instances Á of scheduling on identical parallel machines (P all), for any. Moreover the completion times vector of a schedule returned by SPT greedy verifies Ð µ. Proof: Let us consider an instance Á of tasks Ì ( Ò) ordered by increasing lengths. Let MR be the maximal ratio between a schedule ËÈ Ì returned by SPT greedy and any schedule : MR Ü ËÈ Ì, where

10 means Ü. So we have Î Áµ ËÈ Ì MR, and then ËÈ Ì MR. So MR Ð ËÈ Ì µ. We will show that MR cannot be greater than. Let us consider that this ratio is the th coordinate of ËÈ Ì, divided by the th coordinate of ( Ò). The worst ratio can be achieved if the completion time of the th task is as large as possible in the SPT greedy schedule. By construction, in a schedule returned by SPT greedy, the th completion time is the completion time of the task Ì, and Ì is started after the tasks from Ì to Ì, and before the tasks from Ì to Ì Ò. Since SPT greedy is a greedy algorithm, the worst completion time of the th task is achieved when the µ first tasks are completed when the th task start to be executed: in this case, the completion time of Ì is È È Ð Ð Ð. So the worst completion time of Ì in an SPT greedy schedule is Ð. Let us now find the minimal value which can be taken by the th coordinate of, an ordered completion time vector of a schedule of Á. Note that this value cannot be smaller than Ð : indeed is the th completion time and is then greater or equal to µ other completion times, and Ð is the length of the th smallest task. Note also that È Ð cannot be smaller than : indeed this is the minimum completion time of the smallest tasks (when no processor is idle). Therefore, we have: È Ð Ð MR Ü È Ð Ð È Ð Let denote. We now consider the two possible cases: Suppose that Ð, we have: MR Suppose that Ð, we have: MR Ð µ È Ð Ð Ð È Ð Ð È Ð Ð Ð Ð Ð Ð Ð In both cases, we have MR. Since MR Ð ËÈ Ì µ, and since ËÈ Ì is the completion time vector of the SPT greedy schedule of Á, we proved that a schedule returned by SPT greedy verifies Ð µ, and so that Ð Áµ.

How good are SPT schedules for fair optimality criteria 11 P 1 P 2 P 1 1 1 1 2 P2 1 2 completion times vector: X1=(1, 2, 2) completion times vector: X2=(1, 1,3) Figure 3. Example where we have Ð Áµ. Let us now show that it is not possible to have Ð Áµ for all instances Á of (P all). Indeed, if, it is not possible to have always ÐÓ Áµ : ÌÓÖ º It is not possible to have Ð Áµ for all instances Á of scheduling on two identical parallel machines. Proof: let us consider a system with two processors, È and È. Let us consider the following instance Á : a task Ì of length, Ì of length, and Ì of length. Consider the two completion times vector µ (obtained by putting Ì and Ì on È and Ì on È : see Figure 3) and µ (obtained by putting Ì and Ì on È and Ì on È ). We have: Ð µ, and Ð µ. For each vector Î Áµ, we have or. So for each vector Î Áµ, we have Ð µ, and so Ð Áµ. 3.2 Individual fairness measure In this section, we will compare the completion time of each task in a solution given by SPT greedy to the best completion time this task could have in another schedule. ÌÓÖ º Ò Áµ Ò for all instances Á of scheduling on identical parallel machines (P Ò ÐÐ), for any. Moreover the completion times vector of a schedule returned by SPT greedy verifies Ò µ Ò. Proof: Let us consider an instance Á of tasks Ì ( Ò) ordered by non decreasing lengths. It is easy to see that Ò ËÈ Ì µ is the maximal ratio between a schedule ËÈ Ì returned by SPT greedy and any schedule. We will show that Ò ËÈ Ì µ cannot be greater than Ò. Let us consider that this ratio is the th coordinate of ËÈ Ì, divided by the th coordinate of ( Ò). The worst ratio can be reached if the completion time of Ì is as large as possible in the SPT greedy schedule. Since SPT greedy is a greedy algorithm, this

12 is achieved when the executed: in this case, the completion time of Ì is È Ð µ first tasks are completed when Ì start to be Ð. So the maximal È Ð value which can be taken by the th coordinate of ËÈ Ì is Ð. The minimal value which can be taken by the th coordinate of is Ð : this is achieved in a schedule in which Ì is in the first position. We have: Ò ËÈ Ì µ È Ð Ð Ð È Ð Ð µ Ð Ð Since Ò ËÈ Ì µ Ò Ò, we have Ò Áµ. Ò ÌÓÖ º It is not possible to have Ò Áµ Ò for all instances Á of scheduling on identical parallel machines (P Ò ÐÐ). Proof: Let us consider a system with processors and the following instance Á : tasks of length. We have Ò Áµ because at least one of the tasks will have a completion time of. Since Ò Áµ Ò, it is not possible to have Ò Áµ Ò for all instances Á. 3.3 Individual fairness measure among SPT schedules In this section, we will compare the completion time of each task in an SPT greedy schedule to the best completion time this task could have in another SPT schedule. In addition to the notations introduced in the last sections, we define Î ËÈ Ì as the set of all completion times vectors that are induced by some SPT solutions of the instance. We also define ËÈ Ì µ to be the smallest «such that «for all Î ËÈ Ì Áµ. This can be informally viewed as the global approximation ratio of : it is the smallest «for which is an «- approximation to every vector Î ËÈ Ì Áµ. The best approximation ratio achievable on the instance Á is then defined as ËÈ Ì Áµ Ò ËÈ Ì µ Î ËÈ Ì Áµ ÌÓÖ º ËÈ Ì Áµ for all instances Á of scheduling on identical parallel machines (P Ò ÐÐ ËÈ Ì ). Moreover any SPT schedule verifies ËÈ Ì µ. Proof: Let us consider an instance Á of tasks Ì ( Ò) ordered by increasing lengths.

How good are SPT schedules for fair optimality criteria 13 T1 P 1 P 2 1 T3 1 P 1 P 2 T1 T4 1 T2 T4 T2 T3 completion times vector: µ completion times vector: µ 1 Figure 4. Example where ËÈ Ì Áµ tends towards when tends towards 0. It is easy to see that ËÈ Ì µ is the maximal ratio between a SPT schedule and any SPT schedule. We will show that ËÈ Ì µ cannot be greater than. Let us consider that this ratio is the th coordinate of, divided by the th coordinate of ( Ò). Let È (resp. È ) be the processor on which Ì is scheduled in the solution (resp ), and let Ö denote the rank on which the task Ì is scheduled. The worst ratio is reached if the completion time of Ì is as large as possible in the schedule. This is achieved when the tasks before Ì on È are as large as possible: each largest task on each rank smaller than Ö is on È in the solution. Let denote the execution time of these tasks. is the execution time of the tasks on the processor È in an SPT greedy schedule. In the same way, the worst ratio is reached if the completion time of Ì is as small as possible in the schedule : each smallest task on each rank smaller than Ö is on È in the solution. Let denote the execution time of these tasks. is the execution time of the tasks on the processor È in an SPT greedy schedule. So the difference between the completion time of Ì in and in is equal to Æ. This number is smaller than or equal to the length of each task in the rank Ö, and then is smaller than or equal to Ð, the length of Ì (this property is a direct consequence of Proposition 2.1). We have: ËÈ Ì µ Ð Ð Æ Ð Ð For any SPT schedule of an instance Á, we have: ËÈ Ì µ, and so Áµ. ËÈ Ì Let us now show that this bound is the best possible. ÌÓÖ º Let be any small number such that ¼. It is not possible to have ËÈ Ì Áµ for all instances Á of scheduling on identical parallel machines (P Ò ÐÐ ËÈ Ì ). Proof: For the ease of presentation we give a proof for a system with two processors. Let us consider the following instance Á : a task Ì of length, Ì of

14 length, and two tasks Ì and Ì of length. Assume that. The completion times vectors corresponding to the two possible SPT schedules are µ and µ (see Figure 4). We have: ËÈ Ì Áµ ËÈ Ì µ ËÈ Ì µ, which tends towards when tends towards ¼. If, the proof is the same except that we add tasks of length and tasks of length 1 to the instance described for the case where. References [1] R.W. Conway, W.L. Maxwell, and L.W. Miller, Theory of scheduling. Addison-Wesley (1967). [2] M. Garey and D. Johnson, Computers and Intractability: A Guide to the Theory of NP- Completeness. W H Freeman & Co. [3] J. Bruno, E.G. Coffman Jr., and R. Sethi, Algorithms for minimizing mean flow time. Proceedings of IFIP Congress 74, 504-510, Stockholm, Sweden, August 5-10, 1974, North- Holland, (1974). [4] A. Kumar and J. Kleinberg, Fairness Measures for Resource Allocation. Proceedings of 41st IEEE Symposium on Foundations of Computer Science, 75-85 (2000). [5] C. Phillips, C. Stein and J. Wein, Scheduling jobs that arrive over time. Proceedings of the Fourth Workshop on Algorithms and Data Structures, LNCS 955, Springer, 86-97 (1995). [6] C. Stein and J. Wein, On the existence of schedules that are near-optimal for both makespan and total weighted completion time. Operations Research Letters 21 (3), 115-122 (1997).