30
Accepted Manuscript Fast Approximation Algorithms for Bi-criteria Scheduling with Machine As- signment Costs Kangbok Lee, Joseph Y-T. Leung, Zhao-hong Jia, Wenhua Li, Michael L. Pinedo, Bertrand M.T. Lin PII: S0377-2217(14)00255-0 DOI: http://dx.doi.org/10.1016/j.ejor.2014.03.026 Reference: EOR 12228 To appear in: European Journal of Operational Research Received Date: 28 May 2013 Accepted Date: 17 March 2014 Please cite this article as: Lee, K., Leung, J.Y-T., Jia, Z-h., Li, W., Pinedo, M.L., Lin, B.M.T., Fast Approximation Algorithms for Bi-criteria Scheduling with Machine Assignment Costs, European Journal of Operational Research (2014), doi: http://dx.doi.org/10.1016/j.ejor.2014.03.026 This is a PDF file of an unedited manuscript that has been accepted for publication. As a service to our customers we are providing this early version of the manuscript. The manuscript will undergo copyediting, typesetting, and review of the resulting proof before it is published in its final form. Please note that during the production process errors may be discovered which could affect the content, and all legal disclaimers that apply to the journal pertain.

Fast approximation algorithms for bi-criteria scheduling with machine assignment costs

Embed Size (px)

Citation preview

Page 1: Fast approximation algorithms for bi-criteria scheduling with machine assignment costs

Accepted Manuscript

Fast Approximation Algorithms for Bi-criteria Scheduling with Machine As-

signment Costs

Kangbok Lee, Joseph Y-T. Leung, Zhao-hong Jia, Wenhua Li, Michael L.

Pinedo, Bertrand M.T. Lin

PII: S0377-2217(14)00255-0

DOI: http://dx.doi.org/10.1016/j.ejor.2014.03.026

Reference: EOR 12228

To appear in: European Journal of Operational Research

Received Date: 28 May 2013

Accepted Date: 17 March 2014

Please cite this article as: Lee, K., Leung, J.Y-T., Jia, Z-h., Li, W., Pinedo, M.L., Lin, B.M.T., Fast Approximation

Algorithms for Bi-criteria Scheduling with Machine Assignment Costs, European Journal of Operational

Research (2014), doi: http://dx.doi.org/10.1016/j.ejor.2014.03.026

This is a PDF file of an unedited manuscript that has been accepted for publication. As a service to our customers

we are providing this early version of the manuscript. The manuscript will undergo copyediting, typesetting, and

review of the resulting proof before it is published in its final form. Please note that during the production process

errors may be discovered which could affect the content, and all legal disclaimers that apply to the journal pertain.

Page 2: Fast approximation algorithms for bi-criteria scheduling with machine assignment costs

Fast Approximation Algorithms for Bi-criteria

Scheduling with Machine Assignment Costs

Kangbok Lee

Department of Business & Economics,

York College, The City University of New York,

94-20 Guy R. Brewer Blvd, Jamaica, NY 11451, USA

Joseph Y-T. Leung 1

Department of Computer Science,

New Jersey Institute of Technology,

Newark, NJ 07102, USA

Zhao-hong Jia 2

Key Lab of Intelligent Computing & Signal Processing of Ministry of Education,

Anhui University,

Hefei, Anhui 230039, P. R. China

Wenhua Li 3

School of Mathematics and Statistics,

Zhengzhou University,

Zhengzhou, Henan 450001, P. R. China

Michael L. Pinedo ∗,4

Department of Information, Operations & Management Sciences,

Stern School of Business, New York University,

44 West 4th Street, New York, NY 10012-1126, USA

Bertrand M. T. Lin 5

Department of Information & Finance Management.

National Chiao Tung University,

Taiwan

Preprint submitted to Elsevier 10 February 2014

Page 3: Fast approximation algorithms for bi-criteria scheduling with machine assignment costs

Abstract

We consider parallel machine scheduling problems where the processing of the jobs

on the machines involves two types of objectives. The first type is one of two classical

objective functions in scheduling theory: either the total completion time or the

makespan. The second type involves an actual cost associated with the processing of

a specific job on a given machine; each job-machine combination may have a different

cost. Two bi-criteria scheduling problems are considered: (1) minimize the maximum

machine cost subject to the total completion time being at its minimum, and (2)

minimize the total machine cost subject to the makespan being at its minimum.

Since both problems are strongly NP-hard, we propose fast heuristics and establish

their worst-case performance bounds.

Keywords : Bi-criteria scheduling, Parallel machines; Maximum machine cost; Total

machine cost; Makespan; Total completion time; NP-hard; Heuristics.

1 Introduction

In traditional scheduling theory, most problems are concerned with the min-imization of certain functions of the completion times of the jobs. This typeof objectives relate in certain ways to customer satisfaction since they tend toresult in schedules that have either early completion times or on-time comple-tions of the jobs. In reality, there are other important aspects in the evalua-tion of schedules, namely, aspects that are related to the machines themselves.When a job is assigned to a machine, the assignment results in a cost (or profit)that depends on the job as well as on the machine. The machines’ objective

∗ Corresponding author.Email addresses: [email protected] (Kangbok Lee), [email protected]

(Joseph Y-T. Leung), [email protected] (Zhao-hong Jia),[email protected] (Wenhua Li), [email protected] (Michael L.Pinedo), [email protected] (Bertrand M. T. Lin).1 Work supported in part by the NSF Grant CMMI-0969830.2 Work supported in part by the Science Foundation of Anhui UniversityGrant 33050044, NSFC Grant 71171184, and China Scholarship Council Grant201206505002.3 Work supported in part by the NSFC Grant 11171313.4 Work supported in part by the NSF Grant CMMI-0969755.5 Work supported in part by the National Science Council of Taiwan Grant NCS-101-2918-I-009-008.

2

Page 4: Fast approximation algorithms for bi-criteria scheduling with machine assignment costs

may be the minimization of the total cost incurred by all the machines or themaximum cost incurred by any machine.

This type of multi-criteria scheduling problem occurs nowadays quite often inmanufacturing as well as in services industries. Consider, for example, a manu-facturing company with multiple plants in different locations. The productioncost of a customer order at one plant may be completely different from theproduction cost at another plant. The company has to worry about the timingof the production (in order to provide good customer service) as well as theproduction cost (in order for the company to remain profitable).

In the services industries also, such multi-criteria scheduling problems havebecome more and more important in recent years. Consider, for example,an organization that provides professional services and has, say, m serviceproviders (e.g., medical doctors, teams of consultants, lawyers, etc.) and ntasks (e.g., patients, projects, legal cases, etc.). Each task has to be handledby one of the service providers. A service provider could be regarded as a“machine” and a task may be regarded as a “job”. The service providersin such an environment are typically not identical, i.e., different providershave different skill sets and different experience levels and charge thereforedifferently. The tasks may also be different in such a way that each mayrequire a provider with a specific skill set. From the organization’s point ofview (e.g., a clinic, a consulting company, a legal firm, etc.), the objective isto minimize the total completion time of the tasks or to minimize the latestcompletion time so as to increase the clients’ satisfaction levels, while at thesame time minimize the total service providers’ cost in order to maximize theorganization’s profit or minimize the maximum profit of any service providerin order to balance the profits over the service providers. Balancing the profitsof the service providers is an important goal in maintaining the morale of theemployees in the company.

Clearly, the framework considered in this paper applies to any organizationthat has to assign a resource to a specific task or project while taking intoaccount objectives related to customer satisfaction levels as well as objectivesrelated to the costs of utilization of resources.

In this paper we consider such bi-criteria scheduling problems with the secondobjective (either maximum machine cost or total machine cost) to be mini-mized subject to the constraint that the first objective (either makespan ortotal completion time) is at its minimum.

Many papers have dealt with bi- or multi-objective scheduling problems andthere are several survey papers in this area. T’kindt and Billaut (2001) andT’kindt and Billaut (2006) presented a review on scheduling problems withvarious different machine environments including single machine, parallel ma-

3

Page 5: Fast approximation algorithms for bi-criteria scheduling with machine assignment costs

chines, and flowshop environments. Hoogeveen (2005) paid more attention todue-date related objectives and scheduling with controllable processing times.Lei (2009) provided a more recent review. Nonetheless, most research initia-tives focused on two or more scheduling objectives that are all related to thecustomers’ perspectives. Thus, all the objectives are typically functions of thecompletion times.

Typical examples are papers that focus on minimizing two traditional schedul-ing objectives. Smith (1956) considered a single machine scheduling problemto minimize the total completion time subject to the constraint that all jobsshould be completed at their due dates or before. Leung and Young (1989)studied a parallel machine scheduling problem to minimize the makespan sub-ject to the constraint that the total completion time is at its minimum. Leungand Pinedo (2003) considered a parallel machine scheduling problem to min-imize the total completion time subject to the constraint that the makespanis at its minimum.

Multi-objective scheduling can be found in many different settings. There arestudies on agent scheduling problems that focus on multiple objectives whichagents selfishly optimize; see, for example, Agnetis et al. (2004), Agnetis et al.(2007), Lee et al. (2009) and Leung et al. (2010). Distributed scheduling canalso lead to multi-objective scheduling problems in which each job’s objectiveas well as the overall objective function are optimized at the same time. Severalother papers focus on coordination mechanisms; see, for example, Lee et al.(2011) and Lee et al. (2012).

In the scheduling literature, there are two streams of research that deal withservice providers’ objectives. The first and most popular stream involves amachine activation cost. The number of machines used is a variable and theoverall objective is to minimize the sum of a traditional scheduling objective(e.g., makespan) and the cost of activating machines; see, for example, Imrehand Noga (1999) and Dosa and He (2004).

Another approach assumes a machine assignment cost. When a job is sched-uled on a machine, a machine assignment cost is incurred. In most cases,the objective is either the sum of a scheduling objective and the total ma-chine assignment cost or a prioritization of the two objectives; see, for exam-ple, Shmoys and Tardos (1993), Vignier et al. (1999), T’kindt et al. (2001),Khuller et al. (2010), and Leung et al. (2012). Khuller et al. (2010) considereda problem with machine activation cost as well as machine assignment cost.Shmoys and Tardos (1993) formulated a general bi-objective scheduling prob-lem with machine assignment costs as a generalized assignment problem. Theyconsidered a prioritization of the two objectives and provided an approxima-tion approach by combining a linear programming algorithm with a roundingtechnique. Leung et al. (2012) described a bi-objective scheduling problem to

4

Page 6: Fast approximation algorithms for bi-criteria scheduling with machine assignment costs

minimize the scheduling objective and the total machine assignment cost atthe same time. The makespan and the total completion time were consideredas scheduling objectives and both non-preemptive and preemptive versionswere dealt with. They considered weighted combinations of the two objectivesas well as prioritizations of the two objectives. They restricted themselves toan analysis of the problems in terms of their time complexity under differentassumptions; they proved NP-hardness for some cases and presented polyno-mial time algorithms for other cases.

In this paper, we will follow in our problem formulations the framework pre-sented in Leung et al. (2012). However, we consider several aspects that aredifferent. Unlike Leung et al. (2012), we only focus on a prioritization of ob-jectives, which implies that we try to optimize one objective first and then tryto optimize the second one with the first one being at its minimum. Also, wedevelop approximation algorithms with their worst-case performance analyses.

In Section 2, we formally describe the problem and introduce notations. Weprovide in Section 3 approximation algorithms for the problem in which thetotal completion time and maximum machine cost have to be minimized. Wepresent in Section 4 approximation algorithms for minimizing the makespanand the total machine cost. We conclude the paper in the last section with adiscussion on future research directions.

2 Problem Description

We consider the problem of scheduling n jobs on m identical machines tominimize at the same time a customers’ objective and a service providers’objective. The processing time of job j is pj. Let Cj denote the completion timeof job j. The customers’ objective is to minimize either the total completiontime (

∑Cj) or the last completion time, commonly referred to as the makespan

(Cmax). In addition, a cost cij is incurred when job j, 1 ≤ j ≤ n, is processed onmachine i, 1 ≤ i ≤ m. Let xij = 1 if job j is processed on machine i and xij = 0otherwise. Thus, the total machine cost, for short TMC, is

∑mi=1

∑nj=1 cijxij,

and the maximum machine cost, for short MMC, is maxmi=1{∑n

j=1 cijxij}. Theservice providers’ objective is to minimize either TMC or MMC. The goalis to find a schedule that minimizes either the total completion time or themakespan in addition to the total machine cost or the maximum machinecost. We consider in what follows only nonpreemptive scheduling models. LetM = {1, 2, ...,m} denote the set of m machines and J = {J1, J2, ..., Jn} denotethe set of n jobs.

We consider three types of cost functions:

(i) cij = cj,

5

Page 7: Fast approximation algorithms for bi-criteria scheduling with machine assignment costs

(ii) cij = ai + cj, and

(iii) cij = ai × cj,

where ai is a non-negative integer parameter belonging to machine i and cj isa non-negative integer parameter belonging to job j. The first cost function (i)is the case of identical costs; i.e., the processing cost of a job is independent ofthe machine the job is assigned to. The second cost function (ii) plays a rolewhen the assignment of a job to a machine involves an additional setup cost(ai) that is machine dependent. The third cost function (iii) plays a role whenone machine operates in a more cost efficient manner than another machine;i.e., the efficiency factor of machine i is captured by the factor ai. For cases (ii)and (iii), we can assume, without loss of generality, that a1 ≤ a2 ≤ . . . ≤ am.Obviously, (i) is a special case of (ii) when ai = 0 for all i ∈ M and (i) is aspecial case of (iii) when ai = 1 for all i ∈ M . Throughout the paper, we alsoassume that, for case (ii) a1 = 0 and for case (iii) a1 = 1.

Basically, the bi-criteria problems we study can be referred to as LEX(γ1, γ2).In LEX(γ1, γ2), the γ1 represents the primary objective and the γ2 representsthe secondary objective; i.e., the problem is to minimize objective γ2 subjectto the constraint that objective γ1 is at its minimum.

Since we consider either∑

Cj or Cmax as the customers’ objective, and considereither TMC or MMC as the service providers’ (machines’) objective, we havefour possible combinations: (

∑Cj,MMC), (

∑Cj, TMC), (Cmax,MMC) and

(Cmax, TMC). Leung et al. (2012) already showed that LEX(∑

Cj, TMC) canbe solved optimally in polynomial time. The problem LEX(Cmax, MMC) isnot completely investigated, but a special case of this problem was consideredby Lee et al. (2013). In this paper we will focus on the following two problems:

(1) LEX(∑

Cj, MMC); i.e., minimize the maximum machine cost subject tothe constraint that

∑Cj is minimized.

(2) LEX(Cmax, TMC); i.e., minimize the total machine cost subject to theconstraint that Cmax is minimized.

The two scheduling problems above can be shown to be unary NP-hard via asimple reduction from the 3-Partition problem (Garey and Johson, 1979). ForLEX(Cmax, TMC), the primary objective can be reduced from the 3-Partitionproblem. For LEX(

∑Cj,MMC), the secondary objective can be reduced from

3-Partition.

Because of the computational complexity of the problems, we are interested infast heuristics. We say that heuristic A is an (α, β)-approximation for problemLEX(γ1, γ2) ifA produces a schedule where γ1(A) ≤ α×γ∗

1 and γ2(A) ≤ β×γ∗2 .

Here, γ∗1 is the optimal value for the first objective, and γ∗

2 is the optimal valuefor the second objective provided that the schedule attains the optimal value

6

Page 8: Fast approximation algorithms for bi-criteria scheduling with machine assignment costs

(γ∗1) for the first objective. For example, if A is a (3

2, 2)-approximation for

LEX(Cmax, TMC), then Cmax(A) ≤ 32× C∗

max and TMC(A) ≤ 2 × TMC∗,where TMC∗ is the optimal value for the total machine cost provided thatthe makespan of the schedule is C∗

max.

Shmoys and Tardos (1993) consider a bi-objective scheduling problem that ismore general than those we consider; they assume processing times pij (i.e., theprocessing time depends on the job as well as on the machine), and assignmentcosts cij (i.e., the assignment costs depend also on the job as well as on themachine). They do develop a polynomial time approximation algorithm forthis framework; however, their algorithm has a higher time complexity thanours. Moreover their algorithm seems to be hard to implement, since it dependson the solution of a Linear Program, followed by the solution of a matchingproblem. We will compare our results with their results in the conclusionsection.

The following notation will be used throughout this paper. Let

pmax = max(p1, . . . , pn)

and

cmax = max(c1, . . . , cn).

For a given set of jobs J ′, let P (J ′) =∑

j∈J ′ pj and V (J ′) =∑

j∈J ′ cj. LetC∗

max and∑

C∗j be the optimal objective values of the makespan and the total

completion time, respectively. Let TMC∗ andMMC∗ be the optimal objectivevalues of TMC and MMC, respectively, when the primary objective is at itsminimum.

3 Total Completion Time and Maximum Machine Cost

In this section we consider the problem LEX(∑

Cj, MMC). It is well-knownthat the Shortest-Processing-Time first (SPT) rule yields an optimal schedulefor

∑Cj; see Pinedo (2012). The SPT rule, in its most general form, operates

as follows: Let integer k be such that n = (k − 1)m + � for some integer �,1 ≤ � ≤ m. Sort the jobs in ascending order of their processing times, i.e., p1 ≤p2 ≤ . . . ≤ pn. We refer to the lastm jobs (i.e., jobs n−m+1, n−m+2, . . . , n,)as the rank-k jobs, the second last m jobs (i.e., jobs n− 2m+1, . . . , n−m) asthe rank-(k−1) jobs, and so on; the first � jobs (i.e., jobs 1, . . . , �) are the rank-1 jobs. The rank-1 jobs are assigned first, one job per machine, followed bythe rank-2 jobs, again one job per machine. This process is repeated until jobsin the last rank (rank-k) are assigned. Clearly, there may be many differentschedules that can be generated according to this SPT rule and all theseschedules have a minimum

∑Cj. A schedule generated by the SPT rule is

7

Page 9: Fast approximation algorithms for bi-criteria scheduling with machine assignment costs

referred to as an SPT schedule. While limiting ourselves to SPT schedules,we try to find for the problem LEX(

∑Cj, MMC) a (1, β)-approximation

algorithm with the smallest possible β.

In order to guarantee a minimum∑

Cj, we will only consider SPT schedules.The following procedure to setup ranks will be used as a subroutine in thealgorithms proposed.

Setup Ranks

(1) Sort the jobs in ascending order of their processing time; i.e., p1 ≤ p2 ≤... ≤ pn. Let n = (k − 1)m+ �, where 1 ≤ � ≤ m.

(2) Assign the last m jobs to set Rk, the second last m jobs to set Rk−1, andso on. Assign the first � jobs to set R1.

(3) Return 〈R1, R2, . . . , Rk〉

Note that the Setup Ranks procedure returns a possible rank compositionand there may be a different rank composition for SPT schedules when thereare jobs with equal processing times.

3.1 The special case cij = cj

We first consider the cost function cij = cj for all 1 ≤ i ≤ m. We consider aheuristic, H1, that schedules jobs according to SPT, but jobs in each rank arejudiciously assigned to the machine so as to minimize the maximum machinecost. For each 1 ≤ i ≤ m, we let Bi denote the set of jobs assigned to machinei. Below is a description of H1.

Heuristic H1(J,M)

(1) Call Setup Ranks(2) Bi := ∅ for each 1 ≤ i ≤ m.(3) For r from 1 to k do

(a) Sort the machines in ascending order of their costs; i.e., V (Bl1) ≤V (Bl2) ≤ ... ≤ V (Blm).

(b) Let {Ji1 , Ji2 , ..., Jiy} be all the jobs in Rr (i.e., Rr has y jobs) wherethe jobs are sorted in descending order of their costs; i.e., ci1 ≥ ci2 ≥... ≥ ciy .

(c) For each j from 1 to y do(i) Blj := Blj ∪ {Jij}.

The analysis of the performance bound for heuristic H1 is similar to theanalysis of a list scheduling algorithm for the classical P || Cmax problem.

8

Page 10: Fast approximation algorithms for bi-criteria scheduling with machine assignment costs

Before we prove the bound for heuristic H1, we need to prove the followinglemma.

Lemma 1. Let V (i, r) denote the total cost of jobs assigned to machine iafter assigning the jobs in rank r by heuristic H1. Then, we have

0 ≤ | V (i, r)− V (h, r) | ≤ cmax for 1 ≤ i, h ≤ m.

Proof: We will prove the lemma by induction on r. The base case, r = 1,is obvious. This is because each of Bi and Bh has at most one job and thus0 ≤ V (i, 1) ≤ cmax and 0 ≤ V (h, 1) ≤ cmax. Thus, we have

0 ≤| V (i, 1)− V (h, 1) |≤ cmax.

Assume the lemma is true for all ranks up to r − 1. We want to show thatthe lemma is true for rank-r. If V (i, r− 1) = V (h, r− 1), then it immediatelyholds that | V (i, r) − V (h, r) | ≤ cmax. Otherwise, by symmetry, we mayassume that V (i, r − 1) > V (h, r − 1). Then, from the induction hypothesis,we have

0 < V (i, r − 1)− V (h, r − 1) ≤ cmax.

By heuristic H1, the job assigned to machine h has a cost that is at least aslarge as the cost of the job assigned to machine i. Since the cost of the jobassigned to machine h is simply V (h, r)− V (h, r − 1) and the cost of the jobassigned to machine i is simply V (i, r)− V (i, r − 1), we have

V (h, r)− V (h, r − 1) ≥ V (i, r)− V (i, r − 1),

and hence

V (i, r)− V (h, r) ≤ V (i, r − 1)− V (h, r − 1) ≤ cmax.

Moreover,

V (i, r)− V (h, r)≥V (i, r − 1)− V (h, r) ≥ V (i, r − 1)− (V (h, r − 1) + cmax)

≥ (V (i, r − 1)− V (h, r − 1))− cmax ≥ −cmax,

where the last inequality is due to the fact that V (i, r − 1) > V (h, r − 1).Therefore, we have

| V (i, r)− V (h, r) | ≤ cmax.

By induction, the lemma holds for all r. �

Theorem 1. Heuristic H1 is a (1, 2 − 1/m)-approximation for the problemLEX(

∑Cj, MMC) when cij = cj for all 1 ≤ i ≤ m. Moreover, the bound is

tight.

9

Page 11: Fast approximation algorithms for bi-criteria scheduling with machine assignment costs

Proof: Since heuristic H1 schedules jobs according to the SPT rule, it gen-erates an optimal solution for the

∑Cj objective. Consider now the MMC

objective. By Lemma 1, we have

maxi∈M

{V (i, k)} −mini∈M

{V (i, k)} ≤ cmax ≤ MMC∗.

There are two cases to consider.

Case 1: mini∈M{V (i, k)} ≤ m−1m

MMC∗.

In this case, we have

maxi∈M

{V (i, k)}≤mini∈M

{V (i, k)}+ cmax ≤ m− 1

mMMC∗ +MMC∗

= (2− 1

m)MMC∗.

Case 2: mini∈M{V (i, k)} > m−1m

MMC∗.

A lower bound for the total cost on all the machines is maxi∈M{V (i, k)} +(m−1)×mini∈M{V (i, k)}; i.e., one machine has the maximum cost and m−1machines have the minimum cost. Thus, we have

maxi∈M

{V (i, k)}+ (m− 1)×mini∈M

{V (i, k)} ≤m∑i=1

V (i, k) ≤ m×MMC∗,

and hence,

maxi∈M

{V (i, k)}≤m×MMC∗ − (m− 1)×mini∈M

{V (i, k)}

<

{m− (m− 1)2

m

}MMC∗ = (2− 1

m)MMC∗.

To show that the bound is tight, consider 3m jobs, where the rank-1 jobs allhave a processing time of 1 unit, the rank-2 jobs all have a processing timeof 2 units, and the rank-3 jobs all have a processing time of 3 units. Thecosts of the rank-1 and rank-2 jobs are 0, 1, 2, . . . ,m− 1, while the cost of therank-3 jobs are zero except one job that has a cost of m. Heuristic H1 willproduce a schedule with MMC(H1) = 2m − 1, while the optimal schedulehas MMC∗ = m. Therefore, the ratio is 2− 1/m. �

10

Page 12: Fast approximation algorithms for bi-criteria scheduling with machine assignment costs

3.2 The special case cij = ai + cj

We now consider the cost function cij = ai+ cj. We propose a different heuris-tic, H2, which is slightly more complicated.

First, the Setup Ranks routine is called to obtain a possible rank compositionfor the minimum total completion time objective. In a SPT schedule with kranks such that n = k(m − 1) + �, � machines have k jobs each and (m − �)machines have (k− 1) jobs each. Thus, the cost at machine i is |Bi|ai+V (Bi)where |Bi| = k or (k − 1). The basic idea of heuristic H2 is to construct twoschedules - the first one for jobs in rank 1 and the second one for jobs in ranks2, . . . , k - and combine these to create a final schedule.

For the first schedule, the jobs in R1 are sorted in descending order of theircosts; i.e., cj1 ≥ cj2 ≥ ... ≥ cj� . Then, for each 1 ≤ i ≤ �, job Jji is assigned tomachine i and Ai is set to be k× ai + cji . For each �+ 1 ≤ i ≤ m, Ai is set tobe (k − 1)× ai. Then, the machines are sorted in descending order of Ai; i.e.,the machines l1, l2, ..., lm are such that

Al1 ≥ Al2 ≥ ... ≥ Alm .

Now, heuristic H1 is then called to generate the second schedule with the setof jobs R2 ∪R3 ∪ ...∪Rk. When heuristic H1 returns, let Bi be the set of jobsassigned to machine i. Then, the Bi’s are sorted in an ascending order of thetotal cost of the jobs in Bi; i.e.,

V (Bi1) ≤ V (Bi2) ≤ ... ≤ V (Bim).

Finally, for the minimum maximum cost, for each 1 ≤ h ≤ m, the jobs in Bih

are assigned to machine lh. The cost of machine lh is Alh + V (Bih). Shownbelow is a description of heuristic H2.

Heuristic H2 (J,M)

(1) Call Setup Ranks(2) Let {Jj1 , Jj2 , ..., Jj�} be the jobs in R1, sorted in descending order of their

costs; i.e., cj1 ≥ cj2 ≥ ... ≥ cj� .(3) Sort the machines in ascending order of ai; i.e., a1 ≤ a2 ≤ ... ≤ am.(4) For i from 1 to �, assign job Jji to machine i and let Ai = k × ai + cji .(5) For i from �+ 1 to m, let Ai = (k − 1)× ai.(6) Sort Ai values such that Al1 ≥ Al2 ≥ .. ≥ Alm .(7) Call heuristicH1(R2∪R3∪...∪Rk,M) to schedule jobs in R2∪R3∪...∪Rk

on m identical machines. When heuristic H1 returns, let Bi be the set ofjobs assigned to machine i in the schedule produced by heuristic H1.

11

Page 13: Fast approximation algorithms for bi-criteria scheduling with machine assignment costs

(8) Sort the Bi in ascending order of V (Bi); such that V (Bi1) ≤ V (Bi2) ≤... ≤ V (Bim).

(9) For each 1 ≤ h ≤ m, assign the jobs in Bih to machine lh and let the costof machine lh be Alh + V (Bih).

Theorem 2. Heuristic H2 is a (1, 2 − 1/m)-approximation for the problemLEX(

∑Cj, MMC) when cij = ai+ cj for all 1 ≤ i ≤ m. Moreover, the bound

is tight.

Proof: For each 1 ≤ i ≤ m, let Vi be V (Bi) for simplicity. Recall that Bi isthe set of jobs scheduled on machine i from R2 ∪R3 ∪ ...∪Rk. Thus, the costof machine i is Ai + Vi.

We claim that maxi∈M{Ai} ≤ MMC∗ by the following reason. We consideranother set of jobs J ′ where all costs of jobs in rank 1 is the same as theoriginal problem instance and all costs of jobs in ranks 2, . . . , k become zero.Then, maxi∈M{Ai} is the optimal MMC value for J ′. Obviously, the optimalMMC value for J is greater than or equal to the optimal MMC value for J ′.Therefore, maxi∈M{Ai} ≤ MMC∗.

Thus, | Ai−Ah |≤ MMC∗ for 1 ≤ i, h ≤ m. By Lemma 1, we have | Vi−Vh |≤MMC∗ for 1 ≤ i, h ≤ m.

Without loss of generality, we may assume that Ai ≥ Ah. Thus, 0 ≤ Ai−Ah ≤MMC∗. Since Ai ≥ Ah, we have Vi ≤ Vh, by the nature of heuristic H2. Thus,we have

(Ai + Vi)− (Ah + Vh) ≤ Ai − Ah ≤ MMC∗,

and

(Ai + Vi)− (Ah + Vh) ≥ Vi − Vh ≥ −MMC∗.

Therefore, we have | (Ai+Vi)− (Ah+Vh) | ≤ MMC∗. We now consider twocases. Let Ai + Vi = maxl∈M{Al + Vl} and Ah + Vh = minl∈M{Al + Vl}

Case 1: Ah + Vh ≤ m−1m

MMC∗.

In this case, we have

Ai + Vi ≤ Ah + Vh +MMC∗ ≤ m− 1

mMMC∗ +MMC∗ = (2− 1

m)MMC∗.

Case 2: Ah + Vh > m−1m

MMC∗.

In this case, we have

Ai + Vi + (m− 1)(Ah + Vh) ≤∑l∈M

(Al + Vl) ≤ m×MMC∗.

12

Page 14: Fast approximation algorithms for bi-criteria scheduling with machine assignment costs

Therefore, we have

Ai + Vi ≤m×MMC∗ − (m− 1)(Ah + Vh)

<

{m− (m− 1)2

m

}MMC∗ = (2− 1

m)MMC∗.

The set of jobs achieving a tight bound in Theorem 1 can be used to show thetight bound for this theorem as well. Simply let ai = 0 for all i. �

3.3 The special case cij = ai × cj

We now consider the cost function cij = ai × cj. Recall that we assume thata1 = 1 and ai ≤ ai+1 for i = 1, . . . ,m − 1. We can assume that n = km;otherwise without changing the problem structure we can add n/m�m − ndummy jobs with zero processing times and zero costs.

We consider the third heuristic, H3, which is similar to heuristic H1. Again,jobs are ordered according to the SPT rule, rank by rank. Jobs within the samerank are assigned to machines as follows: Jobs are considered in descendingorder of their cost cj. When job j is being assigned, we consider all the eligiblemachines and assign job j to that machine i that results in the smallest totalcost on machine i. After job j is assigned to machine i, machine i becomesineligible until we deal with the jobs in the next rank. The heuristic is describedas follows.

Heuristic H3(J,M)

(1) Call Setup Ranks(2) Bi := ∅ for each 1 ≤ i ≤ m.(3) For r from 1 to k do

(a) Let M ′ = {1, 2, ...,m} be the eligible machines.(b) Let Ri = {Ji1 , Ji2 , ..., Jim}, sorted in descending order of their cost;

i.e., ci1 ≥ ci2 ≥ ... ≥ cim .(c) For each j from 1 to m do

(i) l := argminf∈M ′{V (Bf )+af×cij}, with ties broken by choosingthe machine with a larger af .

(ii) Bl := Bl ∪ {Jij}.(iii) M ′ := M ′ \ {l}.

Even though heuristicH3 looks reasonable, its theoretical bound may be poor.We can derive a lower bound of the ratio from the literature. Cho and Sahni(1980) considered a list scheduling algorithm for a uniform parallel machine

13

Page 15: Fast approximation algorithms for bi-criteria scheduling with machine assignment costs

scheduling problem to minimize the makespan. They showed that the worstcase performance ratio of the list scheduling algorithm is at least O(logm) bypresenting a problem instance. We can construct a problem instance from theprohlem instance in Cho and Sahni (1980) and show that the approximationratio of heuristic H3, for problem LEX(

∑Cj, MMC) when cij = ai × cj for

all 1 ≤ i ≤ m, is at least (1, O(logm)). However, we will prove an unboundedapproximation ratio of heuristic H3 in the following theorem.

Theorem 3. The approximation ratio of heuristicH3, for problem LEX(∑

Cj,MMC) when cij = ai × cj for all 1 ≤ i ≤ m, is at least (1, O(am)).

Proof: Since heuristic H3 schedules jobs according to SPT, it generates anoptimal solution for the

∑Cj objective. Thus, we will prove the lower bound

of MMC(H3)/MMC∗ by providing an example.

Consider two machines and four jobs. The four jobs have identical processingtimes, say 1 unit. Their costs are: c1 = c2 = 1, c3 = c4 = a, where a >> 1. Formachine 1, a1 = 1 and for machine 2, a2 = a.

Suppose the algorithm puts jobs 1 and 2 in the first rank, and jobs 3 and4 in the second rank, then V (B1) = V (B2) = a + 1. In this case, we haveMMC(H3) = a(a+ 1).

On the other hand, the optimal solution puts jobs 1 and 3 in the first rank,and jobs 2 and 4 in the second rank. Then we assign the job with the smallestcost in each rank to machine 2. In this case, we have jobs 1 and 2 in machine2, and jobs 3 and 4 in machine 1. We have MMC∗ = 2a.

The approximation ratio is a(a+1)/(2a) = (a+1)/2, which approaches infinitywhen a gets large. This completes the proof. �

Since heuristic H3 does not have a constant approximation ratio, we considera special case of LEX(

∑Cj, MMC) where cij = ai × cj, a1 = . . . = am−1 = 1

and am ≥ 1. This setting implies that there is only one inefficient machine.For this special case, we present an approximation algorithm with a constantratio.

The basic idea is that we consider two cases for the am value separately. Whenam is not so large, we just use heuristic H1 and modify the schedule. Whenam is large, we need to assign jobs with small costs to machine m withinthe structure of SPT schedules. However, if we fix ranks by Setup Rankslike heuristics H1, H2 and H3, it might be impossible to assign jobs withsmall costs to machine m. Therefore, we first consider a procedure to assign ajob from each rank to machine m to minimize the total cost of jobs assignedto machine m among all possible rank compositions. The algorithm can bedescribed as follows:

14

Page 16: Fast approximation algorithms for bi-criteria scheduling with machine assignment costs

Minimum Cost for Machine m

(1) Call Setup Ranks(2) Construct a weighted bipartite graph G = (U1 ∪ U2, E;w) where

(a) U1 = {j|Jj ∈ J}, U2 = {1, . . . , k + 1}(b) E1 = {(μ, ν)|min

j∈Rν

{pj} ≤ pμ ≤ maxj∈Rν

{pj} for μ ∈ U1, ν ∈ U2 \{k+1}},E2 = {(μ, k + 1)|μ ∈ U1} andE = E1 ∪ E2.

(c) wμ,ν = cμ for μ ∈ U1, ν ∈ U2 \ {k + 1}.(3) Solve the following transportation problem on G and obtain an optimal

solution y∗μ,ν .

minimize∑

(μ,ν)∈E1

wμ,νyμ,ν

subject to∑

ν:(μ,ν)∈Eyμ,ν = 1 for μ ∈ U1

∑μ:(μ,ν)∈E1

yμ,ν = 1 for ν ∈ U2 \ {k + 1}∑

μ:(μ,k+1)∈E2

yμ,k+1 = n− k

yμ,ν ∈ {0, 1} for (μ, ν) ∈ E

(4) Job Jμ is scheduled on rank ν of machine m if and only if y∗μ,ν = 1 for(μ, ν) ∈ E1.

Instead of solving the mathematical program described above through a trans-portation algorithm, we will solve it by an alternative procedure that will sig-nificantly reduce the running time. This alternative procedure is described inthe Appendix. Its running time is O(n log n).

Note that V (Bi) is the sum of cj values of the jobs assigned to machine i. Thecost of machine i is V (Bi) for i = 1, . . . ,m− 1 and is amV (Bm) for i = m andthus

MMC = max {max{V (Bi) | i ∈ {1, . . . ,m− 1}}, amV (Bm)} .Now, we are ready to present an algorithm with a constant ratio for LEX(

∑Cj,

MMC) where cij = ai × cj, a1 = . . . = am−1 = 1 and am ≥ 1.

Heuristic H4

(1) If am ≥ 2,(a) Call Minimum Cost for Machine m. Let J ′ be the set of jobs

scheduled on machine m.(b) Apply H1(J \J ′,M \ {m}) for the schedule of the remaining jobs on

machines 1, . . . ,m− 1.

15

Page 17: Fast approximation algorithms for bi-criteria scheduling with machine assignment costs

(2) If 1 ≤ am < 2,(a) Apply H1(J,M) and obtain Bi for i ∈ M .(b) Let h := argmin{V (Bi) | i ∈ M}. Swap Bm and Bh.

Theorem 4. Heuristic H4 is a (1, 2 − 12(m−1)

)-approximation for problem

LEX(∑

Cj, MMC) when cij = ai × cj, a1 = . . . = am−1 = 1 and am ≥ 1.

Proof. Case 1. Suppose that am ≥ 2. We consider two sub-cases: (i) MMCis determined at machine m, and (ii) MMC is determined at machine i, fori �= m.

(i) If MMC is determined by machine m, by the property of the schedule byMinimum Cost for Machine m, the current schedule is optimal.

(ii) Suppose that MMC is determined by a machine that is not machine m.By Lemma 1, |V (Bi)− V (Bh)| ≤ cmax for i, h ∈ M \ {m}.

If

mini∈M\{m}

{V (Bi)} ≤(1− 1

2(m− 1)

)MMC∗,

then

maxi∈M\{m}

{V (Bi)} ≤ mini∈M\{m}

{V (Bi)}+ cmax ≤(2− 1

2(m− 1)

)MMC∗.

If

mini∈M\{m}

{V (Bi)} >

(1− 1

2(m− 1)

)MMC∗,

then by the lower bound for MMC∗, we have MMC∗ ≥ V (J)/(m−1+1/am).We consider the following relationship:

maxi∈M\{m}

{V (Bi)}+ (m− 2) mini∈M\{m}

{V (Bi)} ≤ V (J) ≤ (m− 1 + 1/am)MMC∗.

Thus, we have

maxi∈M\{m}

{V (Bi)} < (m− 1 + 1/am)MMC∗ − (m− 2)

(1− 1

2(m− 1)

)MMC∗

=

(3

2+

1

am− 1

2(m− 1)

)MMC∗ ≤

(2− 1

2(m− 1)

)MMC∗.

Case 2. Suppose that 1 ≤ am < 2. We again consider two subcases: (i) MMCis determined by machine m, and (ii) MMC is determined by machine i, fori �= m.

16

Page 18: Fast approximation algorithms for bi-criteria scheduling with machine assignment costs

(i) Suppose that MMC is determined at machine m.

If V (Bm) >1m(m− 1+ 1

am)MMC∗, then

∑i∈M V (Bi) > (m− 1+ 1

am)MMC∗,

which is a contradiction.

If V (Bm) ≤ 1m(m− 1 + 1

am)MMC∗, then we have

amV (Bm) ≤ amm

(m− 1 +

1

am

)MMC∗

=(am(1− 1

m) +

1

m

)MMC∗ ≤

(2− 1

m

)MMC∗.

(ii) Suppose that MMC is determined at a machine that is not machine m.By Lemma 1, |V (Bi)− V (Bh)| ≤ cmax for i, h ∈ M .

If V (Bm) ≤(1− 1

m

)MMC∗, then

maxi∈M\{m}

{V (Bi)} ≤ V (Bm) + cmax ≤(2− 1

m

)MMC∗.

If V (Bm) >(1− 1

m

)MMC∗, then consider the relationship

maxi∈M

{V (Bi)}+ (m− 1)V (Bm) ≤ V (J) ≤ (m− 1 + 1/am)MMC∗.

Thus, we have

maxi∈M

{V (Bi)}≤ (m− 1 + 1/am)MMC∗ − (m− 1)(1− 1

m

)MMC∗

=(

1

am+

m− 1

m

)MMC∗ ≤

(2− 1

m

)MMC∗.

Note that 2− 1m

≤ 2− 12(m−1)

for m ≥ 2. The proof is complete. �

4 Makespan and Total Machine Cost

In this section we consider the problem LEX(Cmax, TMC). For the cost func-tion cij = cj, this problem is equivalent to the problem P || Cmax, for whichmany heuristics have been proposed and analyzed. Therefore, we will not con-sider this special case here.

On both cost functions cij = ai + cj and cij = ai × cj, we will obtain an upperbound of the optimal makespan by the following steps. We first order the njobs on the m machines according to the Largest-Processing-Time (LPT) rule,

17

Page 19: Fast approximation algorithms for bi-criteria scheduling with machine assignment costs

ignoring the cost of the jobs. The LPT rule schedules the jobs in descendingorder of their processing times. The next job will be assigned to the machinethat finishes the earliest. The makespan of the LPT schedule is denoted byL and is used as an upper bound for the optimal makespan. It is well knownthat L ≤ (4

3− 1

3m)C∗

max, where C∗max is the optimal makespan; see Graham

(1969).

Since the primary objective, the makespan, is hard to optimize, we may con-sider using LPT to optimize the primary objective. Unfortunately, such analgorithm can perform very poorly with regard to the secondary objective forboth cost functions cij = ai + cj and cij = ai × cj.

For the cost function cij = ai+ cj, we consider an example with two machineshaving a1 = 0 and a2 = a > 0 and n jobs, where n is even and n ≥ 6. Thejob information is as follows: p1 = p2 = 1/2 and p3 = . . . = pn = 1/(n − 2)and c1 = . . . = cn = 0. Obviously, C∗

max = 1. In the LPT schedule, jobsJ1 and J2 are scheduled on different machines and the remaining jobs areevenly scheduled on both machines. Thus, TMC(LPT ) = n/2× a. However,in the optimal schedule, jobs J1 and J2 are scheduled on machine 2 and theother jobs are scheduled on machine 1. Thus, TMC∗ = 2 × a. Therefore,TMC(LPT )/TMC∗ = O(n).

For the cost function cij = ai× cj, we consider an example with two machineshaving a1 = 1 and a2 = a > 1 and n jobs, wheren is even and n ≥ 6. Thejob information is as follows: p1 = p2 = 1/2 and p3 = . . . = pn = 1/(n − 2)and c1 = c2 = c/2 and c3 = . . . = cn = 0. Obviously, C∗

max = 1. In the LPTschedule, jobs J1 and J2 are scheduled on different machines and the remainingjobs are evenly scheduled on both machines. Thus, TMC(LPT ) = c

2(1 + a).

However, in the optimal schedule, jobs J1 and J2 are scheduled on machine 1and the other jobs are scheduled on machine 2. Thus, TMC∗ = c. Since

TMC(LPT )

TMC∗ =1 + a

2

and a can be arbitrarily large, TMC(LPT )/TMC∗ is unbounded. Therefore,we need to design an algorithm that considers both objectives simultaneously.

4.1 The special case cij = ai + cj

For the cost function cij = ai + cj, we propose a fast heuristic, heuristicH5, which works as follows. Let the makespan of the LPT schedule be L.Then the jobs are sorted in ascending order of their processing times; i.e.,p1 ≤ p2 ≤ ... ≤ pn. The jobs are scheduled on the machines, starting with thefirst machine. Specifically, the first λ jobs are scheduled on machine 1, where

18

Page 20: Fast approximation algorithms for bi-criteria scheduling with machine assignment costs

λ is the smallest index such that the total processing time of the first λ jobsis larger than L. We then delete the λ jobs and machine 1 from consideration,and repeat the process on machine 2. This process is repeated until all jobshave been scheduled. Shown below is a description of heuristic H5.

Heuristic H5(J,M)

(1) Disregarding the cost of the jobs, schedule the n jobs on the m machinesaccording to LPT. Let L denote the makespan of the LPT schedule.

(2) Sort the jobs in ascending order of their processing times. Let J =(J1, J2, ...., Jn) be a list of the n jobs such that p1 ≤ p2 ≤ ... ≤ pn.

(3) Set i = 1.(4) If the total processing time of the jobs in J is less than or equal to L,

then schedule all jobs in J on machine i and stop.(5) Let λ be the smallest integer such that the total processing time of the

first λ jobs is larger than or equal to L.(6) Assign the first λ jobs on machine i.(7) Delete the first λ jobs from J .(8) i := i+ 1.(9) Goto Step 4.

Let Bi and B∗i be the sets of jobs assigned to machine i in the schedule

generated by heuristic H5 and in the optimal schedule, respectively. Let B =〈B1, B2, . . . , Bm〉 andB∗ = 〈B∗

1 , B∗2 , . . . , B

∗m〉. With this notation, we will prove

a lemma that is instrumental in proving Theorem 5.

Lemma 2. Let Bi be the set of jobs assigned to machine i in the schedulegenerated by heuristic H5. Then, we have

∑ih=1 P (Bh) ≥ min{i×L,

∑nj=1 pj}

for all i ∈ M .

Proof: If P (Bh) ≥ L for all h, h = 1, . . . , i, then we have∑i

h=1 P (Bh) ≥ i×L.Otherwise, there is a machine f such that P (Bf ) < L for 1 ≤ f ≤ i. Thismeans that all n jobs have been scheduled on machines 1, 2, . . . , f . Thus, wehave

∑ih=1 P (Bh) =

∑nj=1 pj. �

We are now ready to prove Theorem 5.

Theorem 5.HeuristicH5 is a ((73− 1

3m),1)-approximation for problem LEX(Cmax,

TMC) when cij = ai + cj.

Proof: First, we want to show that heuristic H5 would be able to schedule allthe jobs onmmachines so that each machine finishes by time L+pmax. Supposenot. Then there is a job that cannot be scheduled on any machine such thatit completes by time L+ pmax. Since pj ≤ pmax for all j, no machine becomesavailable before time L when this job is being considered for scheduling. This

19

Page 21: Fast approximation algorithms for bi-criteria scheduling with machine assignment costs

means that the total processing time of all the jobs that have been scheduledso far is more than mL. This is impossible since L ≥ C∗

max. By the result ofGraham (1969), we have

C∗max ≤ L ≤ (

4

3− 1

3m)C∗

max.

Furthermore, we have pmax ≤ C∗max. Therefore, we have

Cmax(H5) ≤ (7

3− 1

3m)C∗

max.

We now consider the TMC objective. We will show that TMC(H5) ≤ TMC∗,where TMC∗ is the optimal total machine cost among all schedules withmakespan equal to C∗

max.

Let ni = |Bi| and n∗i = |B∗

i |. Note that∑

i∈M ni =∑

i∈M n∗i = n. Let S

and S∗ be the schedule produced by heuristic H5 and the optimal schedule,respectively. In schedule S, the smallest

∑ih=1 nh jobs, with respect to pro-

cessing times, are scheduled on machines 1, . . . , i. Suppose that, in scheduleS∗,

∑ih=1 n

∗h >

∑ih=1 nh. Then, obviously, we have

∑ih=1 P (B∗

h) >∑i

h=1 P (Bh).By Lemma 2, we have

∑ih=1 P (Bh) ≥ i × L or

∑ih=1 P (Bh) =

∑nj=1 pj for all

i ∈ M .

If∑i

h=1 P (Bh) ≥ i× L, then we have

i∑h=1

P (B∗h) >

i∑h=1

P (Bh) ≥ i× L ≥ i× C∗max,

which contradicts the fact that C∗max is the optimal makespan.

If∑i

h=1 P (Bh) =∑n

j=1 pj, then

i∑h=1

P (B∗h) >

i∑h=1

P (Bh) =n∑

j=1

pj,

which again leads to a contradiction. Thus, we have

i∑h=1

nh ≥i∑

h=1

n∗h

for all i ∈ M . Now, TMC(H5) =∑

i∈M ni × ai +∑n

j=1 cj. Since∑n

j=1 cj isa constant independent of the assignment, we will show that

∑i∈M ni × ai ≤∑

i∈M n∗i × ai, and hence TMC(H5) ≤ TMC∗.

Let ai = ai− ai−1 for all i ∈ M , where a0 = 0. Since ai ≥ ai−1, we have ai ≥ 0for all i ∈ M .

20

Page 22: Fast approximation algorithms for bi-criteria scheduling with machine assignment costs

∑i∈M

niai =n1a1 + n2(a1 + a2) + . . .+ nm(m∑

h=1

ah)

= (n1 + n2 + . . .+ nm)a1 + (n2 + . . .+ nm)a2 + . . .+ nmam=na1 + (n− n1)a2 + (n− n1 − n2)a3 + (n− n1 − n2 − . . .− nm−1)am

=n(a1 + a2 + . . .+ am)−m−1∑i=1

{(

i∑h=1

nh)ai+1

}.

Since n(a1 + a2 + . . . + am) is a constant,∑i

h=1 nh ≥ ∑ih=1 n

∗h for all i ∈ M

and ai ≥ 0 for all i ∈ M , we have TMC(H5) ≤ TMC∗. �

4.2 The special case cij = ai × cj

We now consider the cost function cij = ai × cj. We propose a heuristic,heuristic H6, which works as follows. Like in heuristic H5, let the makespanof the LPT schedule be L. We then sort the jobs in descending order of theratio cj

pj; i.e., c1

p1≥ c2

p2≥ ... ≥ cn

pn. Jobs are now assigned to the machines,

starting with the first machine. The first λ jobs will be assigned to machine1, where λ is the smallest index such that the total processing time of thefirst λ jobs is larger than L. These λ jobs and machine 1 will be deleted fromconsideration, and we proceed to schedule jobs on machine 2. This process isiterated until all jobs are assigned. Below is a description of heuristic H6.

Heuristic H6(J,M)

(1) Disregarding the cost of the jobs, schedule the n jobs on the m machinesby the LPT rule. Let L denote the makespan of this schedule.

(2) Sort the jobs in descending order of the ratios cjpj. Let J = (J1, J2, ...., Jn)

be a list of the n jobs such that c1p1

≥ c2p2

≥ ... ≥ cnpn.

(3) Set i = 1.(4) If the total processing time of the jobs in J is less than or equal to L then

assign all jobs in J to machine i and stop.(5) Let λ be the smallest integer such that the total processing time of the

first λ jobs is greater than or equal to L.(6) Assign the first λ jobs to machine i.(7) Delete the first λ jobs from J .(8) i := i+ 1.(9) Goto Step 4.

In the proof of Theorem 6, we will assume that the jobs have been sorted indescending order of cj

pj(i.e., c1

p1≥ c2

p2≥ ... ≥ cn

pn). Let Bi and B∗

i be the sets of

jobs assigned to machine i in the schedule generated by heuristic H6 and in

21

Page 23: Fast approximation algorithms for bi-criteria scheduling with machine assignment costs

the optimal schedule, respectively. Thus, TMC(H6) =∑m

i=1 ai × V (Bi) andTMC∗ =

∑mi=1 ai × V (B∗

i ).

Theorem 6. Heuristic H6 is a ((73− 1

3m),1)-approximation for the problem

LEX(Cmax, TMC) when cij = ai × cj for all 1 ≤ i ≤ m.

Proof: Similar to the proof of Theorem 5, we can show that heuristic H6must be able to schedule the n jobs on the m machines so that each machinefinishes by time L+ pmax. Since L ≤ (4

3− 1

3m)C∗

max and pmax ≤ C∗max, we have

Cmax(H6) ≤ (73− 1

3m)C∗

max. We now show that TMC(H6) ≤ TMC∗, whereTMC∗ is the optimal total machine cost among all schedules with a makespanof C∗

max.

The ratio cj/pj is the cost per unit processing time. Let λj = cj/pj for each1 ≤ j ≤ n; hence cj = λj × pj. We have λ1 ≥ λ2 ≥ ... ≥ λn. Since heuristicH6 schedules jobs on each machine with total processing time larger than Land since L ≥ C∗

max, we have for each 1 ≤ i ≤ m,

i∑h=1

P (Bh) ≥i∑

h=1

P (B∗h).

Now,i∑

h=1

V (Bh) =∑

j∈(B1∪...∪Bh)

cj =∑

j∈(B1∪...∪Bh)

λj × pj

.

Since heuristic H6 schedules the jobs in ascending order of the indexes (andhence larger λj values) and since

∑ih=1 P (Bh) ≥ ∑i

h=1 P (B∗h), we have

i∑h=1

V (Bh) ≥i∑

h=1

V (B∗h).

Let ai = ai − ai−1 for all i ∈ M , where a0 = 0 and a1 = 1. Since ai ≥ ai−1, wehave ai ≥ 0 for all i ∈ M .

∑i∈M

ai × V (Bi)=V (B1)a1 + V (B2)(a1 + a2) + . . .+ V (Bm)(m∑

h=1

ah)

= (V (J))a1 + (V (J)− V (B1))a2 + . . .+ V (Bm)am

=V (J)(a1 + a2 + . . .+ am)−m−1∑i=1

{(i∑

h=1

V (Bh)

)ai+1

}.

Since V (J)(a1 + a2 + ... + am) is a constant,∑i

h=1 V (Bh) ≥ ∑ih=1 V (B∗

h) forall i ∈ M , and ai ≥ 0 for all i ∈ M , we have TMC(H6) ≤ TMC∗. �

22

Page 24: Fast approximation algorithms for bi-criteria scheduling with machine assignment costs

In heuristicsH5 andH6, we calculate an upper bound for the optimal makespanby using LPT and thus have a competitive ratio of (1+ 4

3− 1

3m, 1) for our prob-

lems. However, if we use a better approximation algorithm for the makespanwith a worst-case performance ratio of ρ, we can have a (1+ρ, 1)-approximationalgorithm. For example, if we compute an upper bound by MULTIFIT, wehave a (1 + 13/11, 1)-approximation algorithm because the worst-case perfor-mance ratio of MULTIFIT is 13/11 by Yue (1990).

The MULTIFIT algorithm is an approximation algorithm for P || Cmax, whichoperates as follows. First, it computes a lower bound (LB) and an upper bound

(UB) for C∗max. An obvious lower bound is LB = max{pmax,

∑n

j=1pj

m}, and an

obvious upper bound is UB = 2 × LB. It then conducts a binary search inthe interval [LB, UB]. For each value C obtained in the binary search (i.e.,C = LB+UB

2), it tries to schedulle the jobs by the First-Fit-Decreasing (FFD)

rule so that no job completes after time C. If it is successful in scheduling alln jobs, then it sets UB to be C; otherwise, it sets LB to be C. This processis iterated until UB = LB + 1. Now, if all jobs can be scheduled by the FFDrule so that no job completes after time LB, then it returns LB; otherwise, itreturns UB.

Shmoys and Tardos (1993) considered the following scheduling problem: job jon machine i requires a processing time pij and incurs a cost cij. Assume T isgiven as an upper bound of the makespan, what is the machine-job assignmentthat minimizes the total assignment cost? They modeled this as the followinglinear program. Given T and C, for any t ≥ T , integer solutions to the linearprogram, LP(T,C : t), have a one-to-one correspondence with schedules thathave a cost of at most C and a makespan of at most T . The LP(T,C : t)problem can be formulated as follows:

m∑i=1

n∑j=1

cijxij ≤ C,

m∑i=1

xij = 1 for j = 1, . . . , n,

n∑j=1

pijxij ≤ T for i = 1, . . . ,m,

xij ≥ 0 for i = 1, . . . ,m, j = 1, . . . , n,

xij = 0 if pij > t, i = 1, . . . ,m, j = 1, . . . , n,

23

Page 25: Fast approximation algorithms for bi-criteria scheduling with machine assignment costs

They proved that if LP(T,C : t) has a feasible solution, then there exists aschedule that has a makespan of at most T + t and a cost of at most C. Theyalso provided an algorithm that converts a feasible solution to LP(T,C : t)into the required schedule.

We can apply their result to our problem LEX(Cmax, TMC). Note that in ourproblem pij = pj and cij = ai+cj or cij = ai×cj, which implies that the modelin Shmoys and Tardos (1993) is more general than ours. According to theabove result, we can get an (1+ρ, 1) approximation algorithm by the followingprocedure where ρ is an approximation ratio of any approximation algorithmfor minimizing the makespan in an environment with identical machines inparallel.

Step 1. Apply an approximation algorithm for minimizing the makespan withidentical machines in parallel and obtain the makespan T ′. (For example, whenLPT is applied, we have T ′ such that C∗

max ≤ T ′ ≤ (43− 1

3m)C∗

max.)

Step 2. Regard C as a variable, solve LP(T ′, C : pmax) with the objective Cto be minimized and get an optimal value C ′.

Step 3. Convert an optimal solution to LP(T ′, C ′ : pmax) into a feasible solu-tion.

Since T ′ ≥ C∗max and we allow split jobs to multiple machines in a linear

program solution, we have C ′ ≤ TMC∗. Furthermore, pmax ≤ C∗max and T ′ ≤

ρC∗max. The optimal solution from Step 2 is feasible to LP(T ′, C ′ : pmax), and

thus, we can get a schedule with a makespan of at most T ′ + pmax and costat most C ′, which implies we have a (1 + ρ, 1) -approximation algorithm forLEX(Cmax, TMC).

However, to find such an approximation, it is necessary to apply two pro-cedures (which determine the overall time complexity), namely, a linear pro-gramming algorithm in order to obtain a fractional matching solution (in Step2) and a weighted bipartite matching algorithm for the rounding (in Step 3).This LP is considered a fractional packing problem and thus can be solved inO(mn2 log n); the weighted bipartite graph has O(n) nodes and O(n) edgesand thus the weighted bipartitie matching can be solved in O(n2 log n). There-fore, the overall time complexity is O(mn2 log n).

The proposed algorithms for our problem LEX(Cmax, TMC) are in both cases(i.e., cij = ai + cj and cij = ai × cj) much simpler and easier to implement;their time complexity is O(n log n).

24

Page 26: Fast approximation algorithms for bi-criteria scheduling with machine assignment costs

5 Conclusions

We consider bi-criteria scheduling problems where customers’ objectives aswell as service providers’ objectives have to be optimized at the same time.As a customers’ objective, we consider either the total completion time or themakespan and as a service providers’ objective, we consider either the totalassignment cost or the maximum assignment cost. The primary objective isthe customers’ objective and the secondary objective is the service providers’objective. For three machine assignment cost functions (cij = cj, cij = ai + cj,and cij = ai × cj), we provide (α, β)-approximation algorithms.

Our models are all special cases of the more general model considered byShmoys and Tardos (1993), who did provide a polynomial time approximationalgorithm that is applicable to all models within their framework. However,their approximation scheme is clearly computationally slower than those wepropose and it does not provide any intuitive insights into the respective prob-lems. Our schemes are based on prioritization and are therefore more intuitiveand easier to implement (see Table 1). All the heuristics proposed in this pa-per run in O(n log n), whereas the algorithm developed by Shmoys and Tardosruns in O(mn2 log n). Our worst case approximation ratios are in three casesbetter than the ratio in Shmoys and Tardos; in two other cases they are thesame and in one case we were not able to determine a bounded worst caseapproximation ratio.

Table 1Comparisons of Heuristics and Approximation Algorithms

Problem cijOur paper Shmoys and Tardos (1993)

Alg. Ratio Ratio

LEX(∑

Cj ,MMC)

cj H1 (1, 2− 1m)

(1, 2)ai + cj H2 (1, 2− 1

m)

ai × cj H3 (1, unbounded)

ai × cj , a† H4 (1, 2− 1

2(m−1))

LEX(Cmax, TMC)ai + cj H5 (1 + ρ‡, 1)

(1 + ρ‡, 1)ai × cj H6 (1 + ρ‡, 1)

• a†: a1 = . . . = am−1 = 1, am > 1

• ρ‡ : an approximation ratio for the parallel machine scheduling problem to mini-mize the makespan

We have considered only traditional scheduling objectives that are functionsof completion times as the primary objective. However, considering MMC orTMC as the primary objective may lead to different approximation ratios.

25

Page 27: Fast approximation algorithms for bi-criteria scheduling with machine assignment costs

We have only considered cases where either α = 1 or β = 1. Finding an(α, β)-approximation algorithm for α > 1 and β > 1 may be a very promisingresearch topic.

References

Agnetis, A., Mirchandani, P.B., Pacciarelli, D., Pacifici, A., 2004. Schedulingproblems with two competing agents. Operations Research 52(2), 229–242.

Agnetis, A., Pacciarelli, D., Pacifici, A., 2007. Combinatorial models for multi-agent scheduling problems. In Eugene Levner (Ed.)Multiprocessor Scheduling:Theory and Applications, I-TECH Educational and Publishing, 21–46, 2007,Vienna, Austria.

Cho, Y., Sahni, S., 1980. Bounds on list schedules for uniform processors.SIAM Journal on Computing 9(1), 91–103.

Dosa, G., He, Y., 2004. Better online algorithms for scheduling with machinecost. SIAM Journal on Computing 33, 1035–1051.

Garey, M.R., Johnson, D.S., 1979. Computers and Intractability: A Guide tothe Theory of NP-Completeness, W.H. Freeman.

Graham, R.L., 1969. Bounds on multiprocessing time anomalies. SIAM Jour-nal on Applied Mathematics 17(2), 416–429.

Hoogeveen, H., 2005. Multicriteria scheduling. European Journal of Opera-tional Research 167(3), 592–623.

Imreh, C., Noga, J., 1999. Scheduling with machine cost. Proceedings of2nd international Workshop on Approximation Algorithms, Lecture Notes inComputer Science 1671, 168–176.

Khuller, S., Li, J., Saha, B., 2010. Energy efficient scheduling via partialshutdown. Proceedings of the Twenty-First Annual ACM-SIAM Symposiumon Discrete Algorithms (SODA ’10), 1360–1372.

Lee, K., Choi, B.-C., Leung, J.Y.-T., Pinedo, M.L., 2009. Approximationalgorithms for multi-agent scheduling to minimize total weighted completiontime. Information Processing Letters 109(16), 913–917.

Lee, K., Leung, J.Y.-T., Pinedo, M.L., 2011. Coordination mechanisms withhybrid local policy. Discrete Optimization 8, 513–524.

Lee, K., Leung, J.Y.-T., Pinedo, M.L., 2012. Coordination mechanisms for par-

26

Page 28: Fast approximation algorithms for bi-criteria scheduling with machine assignment costs

allel machine scheduling. European Journal of Operational Research 220(2),305–313.

Lee, K., Leung, J.Y.-T., Pinedo, M.L., 2013. Two dimensional load balancing.Working paper

Lei, D. 2009. Multi-objective production scheduling: a survey. The Interna-tional Journal of Advanced Manufacturing Technology 43 (9-10), 926–938.

Leung, J.Y.-T., Lee, K., Pinedo, M.L., 2012. Bi-criteria scheduling withmachine assignment costs. International Journal of Production Economics139(1), 321–329.

Leung, J.Y-T., Pinedo, M.L., 2003. Minimizing total completion time onparallel machines with deadline constraints. SIAM Journal on Computing 321370–1388.

Leung, J.Y-T., Pinedo, M.L., Wan, G., 2010. Competitive two-agent schedul-ing and its applications. Operations Research 58, 458–469.

Leung, J.Y-T., Young, G.H., 1989. Minimizing schedule length subject tominimum flow time. SIAM Journal on Computing 18, 314–326.

Pinedo, M.L., 2012. Scheduling: Theory, Algorithms, and Systems, 4th Edition,Springer.

Shmoys, D.B., Tardos, E., 1993. An approximation algorithm for the gener-alized assignment problem. Mathematical Programming 62(1-3), 461–474.

Smith, W.E., 1956. Various optimizers for single stage production. NavalResearch Logistics Quarterly 3, 59–66.

T’kindt, V., Billaut, J.-C., 2001. Multicriteria scheduling problems: a survey.RAIRO - Operations Research 35(2), 143–163.

T’kindt, V., Billaut, J.-C., 2006. Multi-Criteria Scheduling - Theory, Modelsand Algorithms, 2nd Edition, Springer.

T’kindt, V., Billaut, J.-C., Proust, C., 2001. Solving a bicriteria schedulingproblem on unrelated parallel machines occurring in the glass bottle industry.European Journal of Operational Research 135, 42–49.

Vignier, A., Sonntag, B., Portmann, M.-C., 1999. A hybrid method for aparallel-machine scheduling problem. 7th IEEE International Conference onEmerging Technologies and Factory Automation (ETFA ’99), 671 – 678.

Yue, M. 1990. On the exact upper bound for the MultiFit processor scheduling

27

Page 29: Fast approximation algorithms for bi-criteria scheduling with machine assignment costs

algorithm. Annals of Operations Research 24 233–259.

Appendix

Procedure for Solving Minimum Cost for Machine m Problem

For SPT schedules, we sort the jobs in non-decreasing order of their processingtimes and in case of a tie we sort the jobs in non-decreasing order of their costs.When there are jobs with identical processing times, those jobs may be eligibleto multiple consecutive ranks. Thus, we define Fr′,r′′ to be the set of jobs thatcan be scheduled in rank r for r′ ≤ r ≤ r′′. Since the number of jobs in Fr′,r′′

that can be scheduled on machine m in ranks [r′, r′′] is at most r′′ − r′ + 1,we can define Fr′,r′′ to be the set of (r′′ − r′ + 1) jobs with minimum costsfrom Fr′,r′′ . Now, the problem is to select and assign jobs from Fr′,r′′ to rankr for r′ ≤ r ≤ r′′ such that each rank has exactly one job and the total costof assigned jobs is minimum.

If r′′ ≥ r′ + 2, then ranks r′ + 1, r′ + 2, . . . , r′′ − 1 must be filled by jobs inFr′,r′′ . So, we can assign (r′′ − r′ − 1) jobs to those ranks first and redefinethe problem by taking off those ranks along with the scheduled jobs. Thus,without loss of generality, we can say that r′′ = r′ or r′′ = r′+1. Moreover, Fr,r

has at most one job and Fr,r+1 has at most two jobs. The number of possible(r′, r′′) pairs for Fr′,r′′ is bounded by k + (k − 1) = 2k − 1 and the number ofjobs in Fr′,r′′ is bounded by k + 2(2k − 1) = 5k − 2.

In order to describe the subsequent steps, we use following notation.

• Let c1(Fr,r) be the cost of the job in Fr,r if |Fr,r| = 1 and ∞ otherwise.• Let c1(Fr,r+1) be the cost of the job with the lower cost in Fr,r+1 if |Fr,r+1| ≥ 1and ∞ otherwise.

• Let c2(Fr,r+1) be the cost of the job with the higher cost in Fr,r+1 if |Fr,r+1| =2 and ∞ otherwise.

We define the following shortest path problem from a source node (0, 0) to thedestination node (k + 1, k + 1) in a layered graph (See Figure 1).

Nodes are defined as follows:

• Node (0, 0) is a dummy source node.• Node (k + 1, k + 1) is a dummy destination node.• Node (r, r + 1) denotes that rank r is assigned from a job in Fr,r+1 forr = 1, . . . , k − 1.

• Node (r, r) denotes that rank r is assigned from a job in Fr,r for r = 1, . . . , k.

28

Page 30: Fast approximation algorithms for bi-criteria scheduling with machine assignment costs

• Node (r, r − 1) denotes that rank r is assigned from a job in Fr−1,r forr = 2, . . . , k.

The arcs and their costs are defined as follows:

• (k, k) and (k + 1, k + 1) are connected and the arc cost is 0.• (k, k − 1) and (k + 1, k + 1) are connected and the arc cost is 0.• (r − 1, r) and (r, r + 1) are connected and the arc cost is c1(Fr,r+1).• (r − 1, r − 1) and (r, r + 1) are connected and the arc cost is c1(Fr,r+1).• (r − 1, r − 2) and (r, r + 1) are connected and the arc cost is c1(Fr,r+1).• (r − 1, r) and (r, r) are connected and the arc cost is c1(Fr,r).• (r − 1, r − 1) and (r, r) are connected and the arc cost is c1(Fr,r).• (r − 1, r − 2) and (r, r) are connected and the arc cost is c1(Fr,r).• (r − 1, r) and (r, r − 1) are connected and the arc cost is c2(Fr−1,r).• (r − 1, r − 1) and (r, r − 1) are connected and the arc cost is c1(Fr−1,r).• (r − 1, r − 2) and (r, r − 1) are connected and the arc cost is c1(Fr−1,r).

0, 0

1, 1

1, 2 2, 2

2, 3

2, 1

3, 3

3, 4

3, 2

k 1, k 1

k 1, k

k 1, k 2

k, k 1

k, k

k+1, k+1

Fig. 1. A shortest path problem to solve Minimum Cost for Machine m

From the arcs of a shortest path, we can construct an optimal solution.

Now, consider the running time of the proposed algorithm. It takes O(n log n)time to sort the jobs. It takes O(n) time to construct Fr′,r′′ and Fr′,r′′ . As forthe shortest path problem, the number of arcs is less than 9k = O(k) ≤ O(n)and a shortest path can be obtained in O(n) time. Therefore, the proposedalgorithm can be implemented in O(n log n) time.

29