• 沒有找到結果。

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

N/A
N/A
Protected

Academic year: 2021

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

Copied!
11
0
0

加載中.... (立即查看全文)

全文

(1)

Discrete Optimization

Fast approximation algorithms for bi-criteria scheduling with machine

assignment costs

Kangbok Lee

a

, Joseph Y-T. Leung

b,1

, Zhao-hong Jia

c,2

, Wenhua Li

d,3

, Michael L. Pinedo

e,⇑,4

,

Bertrand M.T. Lin

f,5

a

Department of Business & Economics, York College, The City University of New York, 94-20 Guy R. Brewer Blvd, Jamaica, NY 11451, USA b

Department of Computer Science, New Jersey Institute of Technology, Newark, NJ 07102, USA c

Key Lab of Intelligent Computing & Signal Processing of Ministry of Education, Anhui University, Hefei, Anhui 230039, PR China dSchool of Mathematics and Statistics, Zhengzhou University, Zhengzhou, Henan 450001, PR China

e

Department of Information, Operations & Management Sciences, Stern School of Business, New York University, 44 West 4th Street, New York, NY 10012-1126, USA f

Department of Information & Finance Management, National Chiao Tung University, Taiwan

a r t i c l e

i n f o

Article history: Received 28 May 2013 Accepted 17 March 2014 Available online 29 March 2014 Keywords:

Bi-criteria scheduling Maximum machine cost Total machine cost Makespan

Total completion time Heuristics

a b s t r a c t

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 asso-ciated 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.

Ó 2014 Elsevier B.V. All rights reserved.

1. Introduction

In traditional scheduling theory, most problems are concerned with the minimization of certain functions of the completion times of the jobs. This type of objectives relate in certain ways to cus-tomer satisfaction since they tend to result in schedules that have either early completion times or on-time completions of the jobs. In reality, there are other important aspects in the evaluation of schedules, namely, aspects that are related to the machines them-selves. 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

ma-chine. The machines’ objective may be the minimization of the to-tal cost incurred by all the machines or the maximum cost incurred by any machine.

This type of multi-criteria scheduling problem occurs nowadays quite often in manufacturing as well as in services industries. Con-sider, for example, a manufacturing company with multiple plants in different locations. The production cost of a customer order at one plant may be completely different from the production cost at another plant. The company has to worry about the timing of the production (in order to provide good customer service) as well as the production cost (in order for the company to remain profitable). In the services industries also, such multi-criteria scheduling problems have become more and more important in recent years. Consider, for example, an organization that provides professional services and has, say, m service providers (e.g., medical doctors, teams of consultants, lawyers, etc.) and n tasks (e.g., patients, pro-jects, legal cases, etc.). Each task has to be handled by one of the service providers. A service provider could be regarded as a ‘‘ma-chine’’ and a task may be regarded as a ‘‘job’’. The service providers in such an environment are typically not identical, i.e., different providers have different skill sets and different experience levels and charge therefore differently. The tasks may also be different in such a way that each may require a provider with a specific skill

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

0377-2217/Ó 2014 Elsevier B.V. All rights reserved.

⇑Corresponding author. Tel.: +1 212 998 0287; fax: +1 212 995 4227. E-mail addresses: [email protected] (K. Lee), [email protected]

(J.Y-T. Leung), [email protected] (Z.-h. Jia), [email protected] (W. Li),

[email protected](M.L. Pinedo),[email protected](B.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 University Grant 33050044, NSFC Grant 71171184, and China Scholarship Council Grant 201206505002.

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.

Contents lists available atScienceDirect

European Journal of Operational Research

(2)

set. From the organization’s point of view (e.g., a clinic, a consulting company, a legal firm, etc.), the objective is to minimize the total completion time of the tasks or to minimize the latest completion time so as to increase the clients’ satisfaction levels, while at the same time minimize the total service providers’ cost in order to maximize the organization’s profit or minimize the maximum profit of any service provider in order to balance the profits over the service providers. Balancing the profits of the service providers is an important goal in maintaining the morale of the employees in the company.

Clearly, the framework considered in this paper applies to any organization that has to assign a resource to a specific task or pro-ject while taking into account obpro-jectives related to customer satis-faction levels as well as objectives related to the costs of utilization of resources.

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

Many papers have dealt with bi- or multi-objective scheduling

problems and there are several survey papers in this area.T’kindt

and Billaut (2001) and T’kindt and Billaut (2006)presented a

re-view on scheduling problems with various different machine envi-ronments including single machine, parallel machines, and

flowshop environments. Hoogeveen (2005) paid more attention

to due-date related objectives and scheduling with controllable

processing times.Lei (2009)provided a more recent review.

None-theless, most research initiatives focused on two or more schedul-ing objectives that are all related to the customers’ perspectives. Thus, all the objectives are typically functions of the completion times.

Typical examples are papers that focus on minimizing two

tra-ditional scheduling objectives.Smith (1956) considered a single

machine scheduling problem to minimize the total completion time subject to the constraint that all jobs should be completed

at their due dates or before.Leung and Young (1989)studied a

par-allel machine scheduling problem to minimize the makespan sub-ject to the constraint that the total completion time is at its

minimum.Leung and Pinedo (2003)considered a parallel machine

scheduling problem to minimize the total completion time subject to the constraint that the makespan is at its minimum.

Multi-objective scheduling can be found in many different set-tings. There are studies on agent scheduling problems that focus on multiple objectives which agents selfishly optimize; see, for exam-ple,Agnetis, Mirchandani, Pacciarelli, and Pacifici (2004), Agnetis, Pacciarelli, and Pacifici (2007), Lee, Choi, Leung, and Pinedo

(2009) and Leung, Pinedo, and Wan (2010). Distributed scheduling

can also lead to multi-objective scheduling problems in which each job’s objective as well as the overall objective function are opti-mized at the same time. Several other papers focus on coordination

mechanisms; see, for example,Lee, Leung, and Pinedo (2011) and

Lee, Leung, and Pinedo (2012).

In the scheduling literature, there are two streams of research that deal with service providers’ objectives. The first and most pop-ular stream involves a machine activation cost. The number of ma-chines used is a variable and the overall objective is to minimize the sum of a traditional scheduling objective (e.g., makespan)

and the cost of activating machines; see, for example,Imreh and

Noga (1999) and Dòsa and He (2004).

Another approach assumes a machine assignment cost. When a job is scheduled on a machine, a machine assignment cost is in-curred. In most cases, the objective is either the sum of a scheduling objective and the total machine assignment cost or a prioritization

of the two objectives; see, for example, Shmoys and Tardos

(1993), Vignier, Sonntag, and Portmann (1999), T’kindt, Billaut,

and Proust (2001), Khuller, Li, and Saha (2010), and Leung, Lee, and Pinedo (2012).Khuller et al. (2010)considered a problem with

machine activation cost as well as machine assignment cost.

Shm-oys and Tardos (1993)formulated a general bi-objective scheduling

problem with machine assignment costs as a generalized assign-ment problem. They considered a prioritization of the two objec-tives and provided an approximation approach by combining a

linear programming algorithm with a rounding technique.Leung

et al. (2012) described a bi-objective scheduling problem to

minimize the scheduling objective and the total machine assign-ment cost at the same time. The makespan and the total completion time were considered as scheduling objectives and both non-pre-emptive and prenon-pre-emptive versions were dealt with. They considered weighted combinations of the two objectives as well as prioritiza-tions of the two objectives. They restricted themselves to an analy-sis of the problems in terms of their time complexity under different assumptions; they proved NP-hardness for some cases and presented polynomial time algorithms for other cases.

In this paper, we will follow in our problem formulations the

framework presented inLeung et al. (2012). However, we consider

several aspects that are different. UnlikeLeung et al. (2012), we

only focus on a prioritization of objectives, which implies that we try to optimize one objective first and then try to optimize the second one with the first one being at its minimum. Also, we

develop approximation algorithms with their worst-case

performance analyses.

In Section2, we formally describe the problem and introduce

notations. We provide in Section3approximation algorithms for

the problem in which the total completion time and maximum

machine cost have to be minimized. We present in Section 4

approximation algorithms for minimizing the makespan and the total machine cost. We conclude the paper in the last section with a discussion on future research directions.

2. Problem description

We consider the problem of scheduling n jobs on m identical machines to minimize at the same time a customers’ objective and a service providers’ objective. The processing time of job j is

pj. Let Cjdenote the completion time of job j. The customers’

objec-tive is to minimize either the total completion time (PCj) or the

last completion time, commonly referred to as the makespan

(Cmax). In addition, a cost cijis incurred when job j; 1 6 j 6 n, is

pro-cessed on machine i; 1 6 i 6 m. Let xij¼ 1 if job j is processed on

machine i and xij¼ 0 otherwise. Thus, the total machine cost, for

short TMC, isPmi¼1Pnj¼1cijxij, and the maximum machine cost, for

short MMC, is maxm

i¼1f

Pn

j¼1cijxijg. The service providers’ objective

is to minimize either TMC or MMC. The goal is to find a schedule that minimizes either the total completion time or the makespan in addition to the total machine cost or the maximum machine cost. We consider in what follows only nonpreemptive scheduling models. Let M ¼ f1; 2; . . . ; mg denote the set of m machines and J ¼ fJ1;J2; . . . ;Jng denote the set of n jobs.

We consider three types of cost functions: (i) cij¼ cj,

(ii) cij¼ aiþ cj, and

(iii) cij¼ ai cj,

where aiis a non-negative integer parameter belonging to machine

i and cjis a non-negative integer parameter belonging to job j. The

first cost function (i) is the case of identical costs; i.e., the process-ing cost of a job is independent of the machine the job is assigned to. The second cost function (ii) plays a role when the assignment

(3)

machine dependent. The third cost function (iii) plays a role when one 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

gen-erality, that a16a26. . . 6am. Obviously, (i) is a special case of (ii)

when ai¼ 0 for all i 2 M and (i) is a special case of (iii) when ai¼ 1

for all i 2 M. Throughout the paper, we also assume 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 (

c

1;

c

2). In LEX (

c

1;

c

2), the

c

1represents the primary objective

and the

c

2represents the secondary objective; i.e., the problem is

to minimize objective

c

2 subject to the constraint that objective

c

1is at its minimum.

Since we consider eitherPCj or Cmaxas the customers’

objec-tive, and consider either TMC or MMC as the service providers’

(ma-chines’) objective, we have four possible combinations:

(PCj;MMC), (PCj;TMC), (Cmax, MMC) and (Cmax;TMC). Leung

et al. (2012)already showed that LEX (PCj;TMC) can be solved

optimally in polynomial time. The problem LEX (Cmax;MMC) is

not completely investigated, but a special case of this problem

was considered by Lee, Leung, and Pinedo (2013). In this paper

we will focus on the following two problems:

1. LEX (PCj;MMC); i.e., minimize the maximum machine

cost subject to the constraint thatPCjis minimized.

2. LEX (Cmax;TMC); i.e., minimize the total machine cost

sub-ject to the constraint that Cmaxis minimized.

The two scheduling problems above can be shown to be unary

NP-hard via a simple reduction from the 3-Partition problem (

Gar-ey & Johnson, 1979). For LEX (Cmax;TMC), the primary objective can

be reduced from the 3-Partition problem. For LEX (PCj;MMC), the

secondary objective can be reduced from 3-Partition.

Because of the computational complexity of the problems, we are interested in fast heuristics. We say that heuristic A is an

ð

a

;bÞ-approximation for problem LEX (

c

1;

c

2) if A produces a

sche-dule where

c

1ðAÞ 6

a



c



1and

c

2ðAÞ 6 b 

c

2. Here,

c

1is the

opti-mal value for the first objective, and

c



2is the optimal value for the

second objective provided that the schedule attains the optimal va-lue (

c



1) for the first objective. For example, if A is a ð32;

2Þ-approx-imation for LEX (Cmax;TMC), then CmaxðAÞ 632 C

 max and

TMCðAÞ 6 2  TMC, where TMCis the optimal value for the total

machine cost provided that the makespan of the schedule is C

max.

Shmoys and Tardos (1993)consider a bi-objective scheduling

problem that is more general than those we consider; they assume

processing times pij(i.e., the processing time depends on the job as

well as on the machine), and assignment costs cij(i.e., the

assign-ment costs depend also on the job as well as on the machine). They do develop a polynomial time approximation algorithm for this framework; however, their algorithm has a higher time complexity than ours. Moreover their algorithm seems to be hard to implement, since it depends on the solution of a Linear Program, followed by the solution of a matching problem. We will compare our results with their results in the conclusion section.

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 J0, let PðJ0Þ ¼Pj2J0pj and VðJ0Þ ¼

P j2J0cj. Let C max and P C

j be the optimal objective values of the makespan

and the total completion time, respectively. Let TMC and MMC

be the optimal objective values of TMC and MMC, respectively, when the primary objective is at its minimum.

3. Total completion time and maximum machine cost

In this section we consider the problem LEX (PCj;MMC). It is

well-known that the Shortest-Processing-Time first (SPT) rule

yields an optimal schedule forPCj; seePinedo (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 6 ‘ 6 m. Sort the jobs in ascending order of their processing times, i.e.,

p16p26. . . 6pn. We refer to the last m 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) as the 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 by the rank-2 jobs, again one job per machine. This process is repeated until jobs in the last rank (rank-k) are assigned. Clearly, there may be many different schedules that can be generated according to this SPT rule and all these

sched-ules have a minimum PCj. A schedule generated by the SPT

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

(PCj;MMC) a ð1; bÞ-approximation algorithm with the smallest

possible b.

In order to guarantee a minimumPCj, we will only consider

SPT schedules. The following procedure to setup ranks will be used as a subroutine in the algorithms proposed.

Setup Ranks

(1) Sort the jobs in ascending order of their processing time; i.e.,

p16p26   6 pn. Let n ¼ ðk  1Þm þ ‘, where 1 6 ‘ 6 m.

(2) Assign the last m jobs to set Rk, the second last m jobs to set

Rk1, and so on. Assign the first ‘ jobs to set R1.

(3) Return hR1;R2; . . . ;Rki.

Note that the Setup Ranks procedure returns a possible rank composition and there may be a different rank composi-tion for SPT schedules when there are jobs with equal pro-cessing times.

3.1. The special case cij¼ cj

We first consider the cost function cij¼ cjfor all 1 6 i 6 m. We

consider a heuristic, H1, that schedules jobs according to SPT, but jobs in each rank are judiciously assigned to the machine so as to minimize the maximum machine cost. For each 1 6 i 6 m, we let

Bidenote the set of jobs assigned to machine i. Below is a

descrip-tion of H1.

Heuristic H1ðJ; MÞ (1) Call Setup Ranks

(2) Bi:¼ ; for each 1 6 i 6 m.

(3) For r from 1 to k do

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

(b) Let fJi1;Ji2; . . . ;Jiyg be all the jobs in Rr(i.e., Rrhas y jobs)

where the jobs are sorted in descending order of their costs; i.e., ci1Pci2P   P ciy.

(c) For each j from 1 to y do

(i) Blj:¼ Blj[ fJijg.

The analysis of the performance bound for heuristic H1 is sim-ilar to the analysis of a list scheduling algorithm for the classical

PkCmax problem. Before we prove the bound for heuristic H1, we

(4)

Lemma 1. Let Vði; rÞ denote the total cost of jobs assigned to machine i after assigning the jobs in rank r by heuristic H1. Then, we have

0 6 jVði; rÞ  Vðh; rÞj 6 cmaxfor 1 6 i; h 6 m:

Proof. We will prove the lemma by induction on r. The base case,

r ¼ 1, is obvious. This is because each of Biand Bhhas at most one

job and thus 0 6 Vði; 1Þ 6 cmaxand 0 6 Vðh; 1Þ 6 cmax. Thus, we have

0 6 jVði; 1Þ  Vðh; 1Þj 6 cmax:

Assume the lemma is true for all ranks up to r  1. We want to show that the lemma is true for rank-r. If Vði; r  1Þ ¼ Vðh; r  1Þ, then it

immediately holds that jVði; rÞ  Vðh; rÞj 6 cmax. Otherwise, by

sym-metry, we may assume 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Þ 6 cmax:

By heuristic H1, the job assigned to machine h has a cost that is at least as large as the cost of the job assigned to machine i. Since the cost of the job assigned to machine h is simply Vðh; rÞ  Vðh; r  1Þ and the cost of the job assigned to machine i is simply Vði; rÞ  Vði; r  1Þ, we have

Vðh; rÞ  Vðh; r  1Þ P Vði; rÞ  Vði; r  1Þ;

and hence

Vði; rÞ  Vðh; rÞ 6 Vði; r  1Þ  Vðh; r  1Þ 6 cmax:

Moreover,

Vði;rÞ  Vðh;rÞ P Vði;r  1Þ  Vðh;rÞ P Vði;r  1Þ  ðVðh;r  1Þ þ cmaxÞ P ðVði; r  1Þ  Vðh;r  1ÞÞ  cmaxPcmax;

where the last inequality is due to the fact that

Vði; r  1Þ > Vðh; r  1Þ. Therefore, we have

jVði; rÞ  Vðh; rÞj 6 cmax:

By induction, the lemma holds for all r. h

Theorem 1. Heuristic H1 is a (1; 2  1=m)-approximation for the

problem LEX (PCj;MMC) when cij¼ cj for all 1 6 i 6 m. Moreover,

the bound is tight.

Proof. Since heuristic H1 schedules jobs according to the SPT rule,

it generates an optimal solution for thePCj objective. Consider

now the MMC objective. ByLemma 1, we have

max

i2MfVði; kÞg  mini2MfVði; kÞg 6 cmax

6MMC:

There are two cases to consider.

Case 1: mini2MfVði; kÞg 6m1m MMC

.

In this case, we have

max

i2MfVði; kÞg 6 mini2MfVði; kÞg þ cmax

6m  1 m MMC þ MMC ¼ 2 1 m   MMC :

Case 2: mini2MfVði; kÞg >m1m MMC

.

A lower bound for the total cost on all the machines is

maxi2MfVði; kÞg þ ðm  1Þ  mini2MfVði; kÞg; i.e., one machine has

the maximum cost and m  1 machines have the minimum cost. Thus, we have

max

i2MfVði; kÞg þ ðm  1Þ  mini2MfVði; kÞg 6

Xm i¼1 Vði; kÞ 6 m  MMC; and hence, max i2MfVði; kÞg 6 m  MMC   ðm  1Þ  min i2MfVði; kÞg < 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 all have a processing time of 1 unit, the rank-2 jobs all have a processing time of 2 units, and the rank-3 jobs all have a processing time of 3 units. The costs of the rank-1 and rank-2 jobs are 0; 1; 2; . . . ; m  1, while the cost of the rank-3 jobs are zero except one job that has a cost of m. Heuristic H1 will produce a schedule

with MMCðH1Þ ¼ 2m  1, while the optimal schedule has

MMC¼ m. Therefore, the ratio is 2  1=m. h

3.2. The special case cij¼ aiþ cj

We now consider the cost function cij¼ aiþ cj. We propose a

different heuristic, H2, which is slightly more complicated. First, the Setup Ranks routine is called to obtain a possible rank composition for the minimum total completion time objective. In a SPT schedule with k ranks 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 jBijaiþ VðBiÞ where jBij ¼ k or ðk  1Þ. The

basic idea of heuristic H2 is to construct two schedules – the first one for jobs in rank 1 and the second one for jobs in ranks 2; . . . ; k – and combine these to create a final schedule.

For the first schedule, the jobs in R1are sorted in descending

or-der of their costs; i.e., cj1Pcj2P   P cj‘. Then, for each 1 6 i 6 ‘,

job Jji is assigned to machine i and Ai is set to be k  aiþ cji. For

each ‘ þ 1 6 i 6 m; Aiis set to be ðk  1Þ  ai. Then, the machines

are sorted in descending order of Ai; i.e., the machines l1;l2; . . . ;lm

are such that

Al1PAl2P   P Alm:

Now, heuristic H1 is then called to generate the second schedule

with the set of jobs R2[ R3[    [ Rk. When heuristic H1 returns,

let Bi be the set of jobs assigned to machine i. Then, the Bi’s are

sorted in an ascending order of the total cost of the jobs in Bi; i.e.,

VðBi1Þ 6 VðBi2Þ 6    6 VðBimÞ:

Finally, for the minimum maximum cost, for each 1 6 h 6 m, the

jobs in Bih are assigned to machine lh. The cost of machine lh is

Alhþ VðBihÞ. Shown below is a description of heuristic H2.

Heuristic H2 ðJ; MÞ (1) Call Setup Ranks

(2) Let fJj1;Jj2; . . . ;Jj‘g be the jobs in R1, sorted in descending

order of their costs; i.e., cj1Pcj2P   P cj‘.

(3) Sort the machines in ascending order of ai; i.e.,

a16a26   6 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 Aivalues such that Al1PAl2P   P Alm.

(7) Call heuristic H1(R2[ R3[    [ Rk;M) to schedule jobs in

R2[ R3[    [ Rk on m identical machines. When heuristic

H1 returns, let Bi be the set of jobs assigned to machine i

in the schedule produced by heuristic H1.

(8) Sort the Bi in ascending order of VðBiÞ; such that

VðBi1Þ 6 VðBi2Þ 6    6 VðBimÞ.

(9) For each 1 6 h 6 m, assign the jobs in Bih to machine lh and

(5)

Theorem 2. Heuristic H2 is a (1; 2  1=m)-approximation for the

problem LEX (PCj;MMC) when cij¼ aiþ cj for all 1 6 i 6 m.

More-over, the bound is tight.

Proof. For each 1 6 i 6 m, let Vibe VðBiÞ for simplicity. Recall that

Biis the set of jobs scheduled on machine i from R2[ R3[    [ Rk.

Thus, the cost of machine i is Aiþ Vi.

We claim that maxi2MfAig 6 MMCby the following reason. We

consider another set of jobs J0where all costs of jobs in rank 1 is the

same as the original problem instance and all costs of jobs in ranks

2; . . . ; k become zero. Then, maxi2MfAig is the optimal MMC value

for J0. Obviously, the optimal MMC value for J is greater than or

equal to the optimal MMC value for J0. Therefore,

maxi2MfAig 6 MMC.

Thus, jAi Ahj 6 MMCfor 1 6 i; h 6 m. ByLemma 1, we have

jVi Vhj 6 MMCfor 1 6 i; h 6 m.

Without loss of generality, we may assume that AiPAh. Thus,

0 6 Ai Ah6MMC. Since AiPAh, we have Vi6Vh, by the nature

of heuristic H2. Thus, we have

ðAiþ ViÞ  ðAhþ VhÞ 6 Ai Ah6MMC;

and

ðAiþ ViÞ  ðAhþ VhÞ P Vi VhPMMC:

Therefore, we have jðAiþ ViÞ  ðAhþ VhÞj 6 MMC. We now

consider two cases. Let Aiþ Vi¼ maxl2MfAlþ Vlg and Ahþ Vh¼

minl2MfAlþ Vlg.

Case 1: Ahþ Vh6m1m MMC

.

In this case, we have

Aiþ Vi6Ahþ Vhþ MMC6 m  1 m MMC  þ MMC¼ 2 1 m   MMC : Case 2: Ahþ Vh>m1m MMC .

In this case, we have

Aiþ Viþ ðm  1ÞðAhþ VhÞ 6 X l2M ðAlþ VlÞ 6 m  MMC: Therefore, we have Aiþ Vi6m  MMC ðm  1ÞðAhþ VhÞ < m ðm  1Þ 2 m ( ) MMC ¼ 2 1 m   MMC:

The set of jobs achieving a tight bound inTheorem 1can be used to

show the tight bound for this theorem as well. Simply let ai¼ 0 for

all i. h

3.3. The special case cij¼ ai cj

We now consider the cost function cij¼ ai cj. Recall that we

assume that a1¼ 1 and ai6aiþ1 for i ¼ 1; . . . ; m  1. We can

assume that n ¼ km; otherwise without changing the problem structure we can add dn=mem  n dummy jobs with zero process-ing 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 same rank are assigned to machines as follows:

Jobs are considered in descending order of their cost cj. When job

j is being assigned, we consider all the eligible machines and assign job j to that machine i that results in the smallest total cost on ma-chine i. After job j is assigned to mama-chine i, mama-chine i becomes inel-igible until we deal with the jobs in the next rank. The heuristic is described as follows.

Heuristic H3(J; M) (1) Call Setup Ranks

(2) Bi:¼ ; for each 1 6 i 6 m.

(3) For r from 1 to k do

(a) Let M0

¼ f1; 2; . . . ; mg be the eligible machines.

(b) Let Ri¼ fJi1;Ji2; . . . ;Jimg, sorted in descending order of

their cost; i.e., ci1Pci2P   P cim.

(c) For each j from 1 to m do (i) l :¼ arg minf 2M0fVðBfÞ þ af ci

jg, with ties broken by

choosing the machine with a larger af.

(ii) Bl:¼ Bl[ fJijg.

(iii) M0:¼ M0n flg.

Even though heuristic H3 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 scheduling problem to minimize the makespan. They showed that the worst case perfor-mance ratio of the list scheduling algorithm is at least Oðlog mÞ by presenting a problem instance. We can construct a problem

in-stance from the prohlem inin-stance inCho and Sahni (1980) and

show that the approximation ratio of heuristic H3, for problem

LEX (PCj;MMC) when cij¼ ai cj for all 1 6 i 6 m, is at least

(1, Oðlog mÞ). However, we will prove an unbounded approxima-tion ratio of heuristic H3 in the following theorem.

Theorem 3. The approximation ratio of heuristic H3, for problem LEX

(PCj;MMC) when cij¼ ai cjfor all 1 6 i 6 m, is at least (1; OðamÞ).

Proof. Since heuristic H3 schedules jobs according to SPT, it

gener-ates an optimal solution for thePCjobjective. Thus, we will prove

the lower bound of MMCðH3Þ=MMCby providing an example.

Consider two machines and four jobs. The four jobs have

identical processing times, say 1 unit. Their costs are:

c1¼ c2¼ 1; c3¼ c4¼ a, where a  1. For machine 1, a1¼ 1 and

for machine 2, a2¼ a.

Suppose the algorithm puts jobs 1 and 2 in the first rank, and

jobs 3 and 4 in the second rank, then VðB1Þ ¼ VðB2Þ ¼ a þ 1. In this

case, we have MMCð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 smallest cost in each rank to machine 2. In this case, we have jobs 1 and 2 in machine 2, 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 infinity when a gets large. This completes the proof. h

Since heuristic H3 does not have a constant approximation

ra-tio, we consider a special case of LEX (PCj;MMC) where

cij¼ ai cj;a1¼    ¼ am1¼ 1 and amP1. This setting implies

that there is only one inefficient machine. For this special case, we present an approximation algorithm with a constant ratio.

The basic idea is that we consider two cases for the am value

separately. When amis not so large, we just use heuristic H1 and

modify the schedule. When amis large, we need to assign jobs with

small costs to machine m within the structure of SPT schedules. However, if we fix ranks by Setup Ranks like heuristics H1, H2 and H3, it might be impossible to assign jobs with small costs to machine m. Therefore, we first consider a procedure to assign a job from each rank to machine m to minimize the total cost of jobs assigned to machine m among all possible rank compositions. The algorithm can be described as follows:

(6)

Minimum Cost for Machine m (1) Call Setup Ranks

(2) Construct a weighted bipartite graph G ¼ ðU1[ U2;E; wÞ

where

(a) U1¼ fjjJj2 Jg; U2¼ f1; . . . ; k þ 1g

(b) E1¼ fð

l

;

m

Þjminj2Rmfpjg 6 pl6maxj2Rmfpjgfor

l

2 U1;

m

2 U2n fk þ 1gg,

E2¼ fð

l

;k þ 1Þj

l

2 U1g and

E ¼ E1[ E2.

(c) wl;m¼ cl for

l

2 U1;

m

2 U2n fk þ 1g.

(3) Solve the following transportation problem on G and obtain

an optimal solution y l;m. minimize X ðl;mÞ2E1 wl;myl;m subject to X m:ðl;mÞ2E yl;m¼ 1 for

l

2 U1 X l:ðl;mÞ2E1 yl;m¼ 1 for

m

2 U2n fk þ 1g X l:ðl;kþ1Þ2E2 yl;kþ1¼ n  k yl;m2 f0; 1g for ð

l

;

m

Þ 2 E

(4) Job Jl is scheduled on rank

m

of machine m if and only if

y

l;m¼ 1 for ð

l

;

m

Þ 2 E1.

Instead of solving the mathematical program described above through a transportation algorithm, we will solve it by an alternative procedure that will significantly reduce the running time. This alternative procedure is described in the 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. The cost of machine i is VðBiÞ for i ¼ 1; . . . ; m  1 and

is amVðBmÞ for i ¼ m and thus

MMC ¼ maxfmaxfVðBiÞji 2 f1; . . . ; m  1gg; amVðBmÞg:

Now, we are ready to present an algorithm with a constant ratio for

LEX (PCj;MMC) where cij¼ ai cj;a1¼    ¼ am1¼ 1 and amP1.

Heuristic H4

(1) If amP2,

(a) Call Minimum Cost for Machine m. Let J0be the set of

jobs scheduled on machine m.

(b) Apply H1ðJ n J0;M n fmgÞ for the schedule of the

remain-ing jobs on machines 1; . . . ; m  1. (2) If 1 6 am<2,

(a) Apply H1(J; M) and obtain Bifor i 2 M.

(b) Let h :¼ arg minfVðBiÞji 2 Mg. Swap Bmand Bh.

Theorem 4. Heuristic H4 is a ð1; 2  1

2ðm1ÞÞ-approximation for

problem LEX (PCj;MMC) when cij¼ ai cj;a1¼    ¼ am1¼ 1 and

amP1.

Proof. Case 1. Suppose that amP2. We consider two sub-cases: (i)

MMC is determined at machine m, and (ii) MMC is determined at machine i, for i – m.

(i) If MMC is determined by machine m, by the property of the schedule by Minimum 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, jVðBiÞ  VðBhÞj 6 cmax for

i; h 2 M n fmg. If min i2MnfmgfVðBiÞg 6 1  1 2ðm  1Þ   MMC; then max

i2MnfmgfVðBiÞg 6 mini2MnfmgfVðBiÞg þ cmax

6 2  1 2ðm  1Þ   MMC: If min i2MnfmgfVðBiÞg > 1  1 2ðm  1Þ   MMC ;

then by the lower bound for MMC, we have MMCPVðJÞ=

ðm  1 þ 1=amÞ. We consider the following relationship:

max

i2MnfmgfVðBiÞg þ ðm  2Þ mini2MnfmgfVðBiÞg 6 VðJÞ

6ðm  1 þ 1=amÞMMC: Thus, we have max i2MnfmgfVðBiÞg < ðm  1 þ 1=amÞMMC   ðm  2Þ 1  1 2ðm  1Þ   MMC ¼ 3 2þ 1 am 1 2ðm  1Þ   MMC 6 2  1 2ðm  1Þ   MMC :

Case 2. Suppose that 1 6 am<2. We again consider two subcases:

(i) MMC is determined by machine m, and (ii) MMC is determined by machine i, for i – m.

(i) Suppose that MMC is determined at machine m. If VðBmÞ >m1ðm  1 þa1mÞMMC  , thenPi2MVðBiÞ > ðm  1 þa1mÞ MMC  , which is a contradiction. If VðBmÞ 6m1 ðm  1 þa1mÞMMC  , then we have amVðBmÞ 6 am m m  1 þ 1 am   MMC¼ amð1  1 mÞ þ 1 m   MMC 6 2 1 m   MMC:

(ii) Suppose that MMC is determined at a machine that is not

machine m. ByLemma 1, jVðBiÞ  VðBhÞj 6 cmaxfor i; h 2 M.

If VðBmÞ 6 1  m1MMC, then max i2MnfmgfVðBiÞg 6 VðBmÞ þ cmax 6 2 1 m   MMC: If VðBmÞ > 1 m1  

MMC, then consider the relationship

max i2MfVðBiÞg þ ðm  1ÞVðBmÞ 6 VðJÞ 6 ðm  1 þ 1=amÞMMC  : Thus, we have max i2MfVðBiÞg 6 ðm  1 þ 1=amÞMMC   ðm  1Þ 1 1 m   MMC ¼ 1 amþ m  1 m   MMC 6 2 1 m   MMC: Note that 2 1

m62 2ðm1Þ1 for m P 2. The proof is complete. h

4. Makespan and total machine cost

In this section we consider the problem LEX (Cmax;TMC). For the

cost function cij¼ cj, this problem is equivalent to the problem

PjjCmax, for which many heuristics have been proposed and

(7)

On both cost functions cij¼ aiþ cj and cij¼ ai cj, we will

ob-tain an upper bound of the optimal makespan by the following steps. We first order the n jobs on the m machines according to the Largest-Processing-Time (LPT) rule, ignoring the cost of the jobs. The LPT rule schedules the jobs in descending order of their processing times. The next job will be assigned to the machine that finishes the earliest. The makespan of the LPT schedule is denoted by L and is used as an upper bound for the optimal makespan. It is

well known that L 6 ð4

33m1ÞC 

max, where C



maxis the optimal

make-span; seeGraham (1969).

Since the primary objective, the makespan, is hard to optimize, we may consider using LPT to optimize the primary objective. Unfortunately, such an algorithm can perform very poorly with

re-gard to the secondary objective for both cost functions cij¼ aiþ cj

and cij¼ ai cj.

For the cost function cij¼ aiþ cj, we consider an example with

two machines having a1¼ 0 and a2¼ a > 0 and n jobs, where n

is even and n P 6. The job information is as follows:

p1¼ p2¼ 1=2 and p3¼    ¼ pn¼ 1=ðn  2Þ and c1¼    ¼ cn¼ 0.

Obviously, Cmax¼ 1. In the LPT schedule, jobs J1and J2are

sched-uled on different machines and the remaining jobs are evenly scheduled on both machines. Thus, TMCðLPTÞ ¼ n=2  a. However,

in the optimal schedule, jobs J1and J2are scheduled on machine 2

and the other 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 machines having a1¼ 1 and a2¼ a > 1 and n jobs, where n

is even and n P 6. The job information is as follows:

p1¼ p2¼ 1=2 and p3¼    ¼ pn¼ 1=ðn  2Þ and c1¼ c2¼ c=2 and

c3¼    ¼ cn¼ 0. Obviously, Cmax¼ 1. In the LPT schedule, jobs J1

and J2are scheduled on different machines and the remaining jobs

are evenly scheduled on both machines. Thus,

TMCðLPTÞ ¼c

2ð1 þ aÞ. However, in the optimal schedule, jobs J1

and J2are scheduled on machine 1 and the other jobs are

sched-uled on machine 2. Thus, TMC

¼ c. Since

TMCðLPTÞ TMC ¼

1 þ a 2

and a can be arbitrarily large, TMCðLPTÞ=TMCis unbounded.

There-fore, 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,

heuristic H5, 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., p16p26   6 pn. The jobs are

sched-uled on the machines, starting with the first machine. Specifically, the first k jobs are scheduled on machine 1, where k is the smallest index such that the total processing time of the first k jobs is larger than L. We then delete the k jobs and machine 1 from consider-ation, and repeat the process on machine 2. This process is re-peated until all jobs have 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 machines according 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 p16p26

   6 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 k be the smallest integer such that the total processing

time of the first k jobs is larger than or equal to L. (6) Assign the first k jobs on machine i.

(7) Delete the first k jobs from J. (8) i :¼ i þ 1.

(9) Goto Step 4.

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

schedule generated by heuristic H5 and in the optimal schedule, respectively. Let B ¼ hB1;B2; . . . ;Bmi and B¼ hB1;B

 2; . . . ;B



mi. With

this notation, we will prove a lemma that is instrumental in

provingTheorem 5.

Lemma 2. Let Bi be the set of jobs assigned to machine i in the

schedule generated by heuristic H5. Then, we have

Pi

h¼1PðBhÞ P minfi  L;Pnj¼1pjg for all i 2 M.

Proof. If PðBhÞ P L for all h; h ¼ 1; . . . ; i, then we have

Pi

h¼1PðBhÞ P i  L. Otherwise, there is a machine f such that

PðBfÞ < L for 1 6 f 6 i. This means that all n jobs have been

sched-uled on machines 1; 2; . . . ; f . Thus, we havePi

h¼1PðBhÞ ¼Pnj¼1pj.

h

We are now ready to proveTheorem 5.

Theorem 5. Heuristic H5 is a (ð7

3 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 all the jobs on m machines so that each machine finishes

by time L þ pmax. Suppose not. Then there is a job that cannot be

scheduled on any machine such that it completes by time

L þ pmax. Since pj6p

max for all j, no machine becomes available

before time L when this job is being considered for scheduling. This means that the total processing time of all the jobs that have been

scheduled so far is more than mL. This is impossible since L P Cmax.

By the result ofGraham (1969), we have

Cmax6L 6 4 3 1 3m   Cmax:

Furthermore, we have pmax6Cmax. Therefore, we have

CmaxðH5Þ 6 7 3 1 3m   C max:

We now consider the TMC objective. We will show that

TMCðH5Þ 6 TMC, where TMC is the optimal total machine cost

among all schedules with makespan equal to C

max.

Let ni¼ jBij and ni ¼ jB 

ij. Note that

P

i2Mni¼Pi2Mni ¼ n. Let S

and Sbe the schedule produced by heuristic H5 and the optimal

schedule, respectively. In schedule S, the smallestPih¼1nh jobs,

with respect to processing times, are scheduled on machines

1; . . . ; i. Suppose that, in schedule S;Pi

h¼1nh> Pi h¼1nh. Then, obviously, we havePih¼1PðB hÞ >P i h¼1PðBhÞ. ByLemma 2, we have Pi h¼1PðBhÞ P i  L orPih¼1PðBhÞ ¼Pnj¼1pjfor all i 2 M. IfPih¼1PðBhÞ P i  L, then we have Xi h¼1 PðB hÞ > Xi h¼1 PðBhÞ P i  L P i  Cmax;

which contradicts the fact that Cmaxis the optimal makespan.

(8)

Xi h¼1 PðB hÞ > Xi h¼1 PðBhÞ ¼ Xn j¼1 pj;

which again leads to a contradiction. Thus, we have

Xi h¼1 nhP Xi h¼1 n h

for all i 2 M. Now, TMCðH5Þ ¼Pi2Mni aiþPj¼1n cj. SincePnj¼1cjis a

constant independent of the assignment, we will show that P

i2Mni ai6Pi2Mni ai, and hence TMCðH5Þ 6 TMC.

Let ai¼ ai ai1for all i 2 M, where a0¼ 0. Since aiPai1, we

have aiP0 for all i 2 M.

X i2M niai¼ n1a1þ n2ða1þ a2Þ þ   þ nm Xm h¼1  ah ! ¼ ðn1þ n2þ   þ nmÞa1 þ ðn2þ    þ nmÞa2þ   þ nmam ¼ na1þ ðn  n1Þa2 þ ðn  n1 n2Þa3þ ðn  n1 n2    nm1Þam ¼ nða1þ a2þ   þ amÞ  X m1 i¼1 Xi h¼1 nh !  aiþ1 ( ) :

Since nða1þ a2þ    þ amÞ is a constant, Pih¼1nhPPih¼1nh for all

i 2 M and aiP0 for all i 2 M, we have TMCðH5Þ 6 TMC. h

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 makespan of the LPT schedule be L. We then sort the

jobs in descending order of the ratiocj

pj; i.e., c1 p1P c2 p2P   P cn pn. Jobs

are now assigned to the machines, starting with the first machine. The first k jobs will be assigned to machine 1, where k is the small-est index such that the total processing time of the first k jobs is larger than L. These k jobs and machine 1 will be deleted from consideration, and we proceed to schedule jobs on machine 2. This process is iterated 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 machines by the LPT rule. Let L denote the makespan of this schedule.

(2) Sort the jobs in descending order of the ratios cj

pj. Let

J ¼ ðJ1;J2; . . . ;JnÞ be a list of the n jobs such that

c1 p1P c2 p2P   P cn pn. (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 k be the smallest integer such that the total processing

time of the first k jobs is greater than or equal to L. (6) Assign the first k jobs to machine i.

(7) Delete the first k jobs from J. (8) i :¼ i þ 1.

(9) Goto Step 4.

In the proof ofTheorem 6, we will assume that the jobs have

been sorted in descending order ofcj

pj(i.e., c1 p1P c2 p2P   P cn pn). Let

Biand Bi be the sets of jobs assigned to machine i in the schedule

generated by heuristic H6 and in the optimal schedule,

respec-tively. Thus, TMCðH6Þ ¼Pm

i¼1ai VðBiÞ and TMC¼Pmi¼1ai VðBiÞ.

Theorem 6. Heuristic H6 is a (ð7

33m1Þ,1)-approximation for the

problem LEX (Cmax;TMC) when cij¼ ai cjfor all 1 6 i 6 m.

Proof. Similar to the proof ofTheorem 5, we can show that

heuris-tic H6 must be able to schedule the n jobs on the m machines so

that each machine finishes by time L þ pmax. Since

L 6 ð4 33m1ÞC



maxand pmax6Cmax, we have CmaxðH6Þ 6 ð733m1ÞC

 max.

We now show that TMCðH6Þ 6 TMC, where TMC is the optimal

total machine cost among all schedules with a makespan of C

max.

The ratio cj=pjis the cost per unit processing time. Let kj¼ cj=pj

for each 1 6 j 6 n; hence cj¼ kj pj. We have k1P k2P   P kn.

Since heuristic H6 schedules jobs on each machine with total

processing time larger than L and since L P Cmax, we have for each

1 6 i 6 m, Xi h¼1 PðBhÞ P Xi h¼1 PðB hÞ: Now, Xi h¼1 VðBhÞ ¼ X j2ðB1[[BhÞ cj¼ X j2ðB1[[BhÞ kj pj:

Since heuristic H6 schedules the jobs in ascending order of the

in-dexes (and hence larger kj values) and since Pih¼1PðBhÞ P

Pi h¼1PðB  hÞ, we have Xi h¼1 VðBhÞ P Xi h¼1 VðB hÞ:

Let ai¼ ai ai1 for all i 2 M, where a0¼ 0 and a1¼ 1. Since

aiPai1, we have aiP0 for all i 2 M.

X i2M ai VðBiÞ ¼ VðB1Þa1þ VðB2Þða1þ a2Þ þ    þ VðBmÞ Xm h¼1  ah ! ¼ ðVðJÞÞa1þ ðVðJÞ  VðB1ÞÞa2þ    þ VðBmÞam ¼ VðJÞða1þ a2þ    þ amÞ  X m1 i¼1 Xi h¼1 VðBhÞ !  aiþ1 ( ) : Since VðJÞða1þ a2þ    þ amÞ is a constant,Pih¼1VðBhÞ PPih¼1VðB  hÞ

for all i 2 M, and aiP0 for all i 2 M, we have TMCðH6Þ 6 TMC. h

In heuristics H5 and H6, we calculate an upper bound for the optimal makespan by using LPT and thus have a competitive ratio

of ð1 þ4

33m1;1Þ for our problems. However, if we use a better

approximation algorithm for the makespan with a worst-case

per-formance ratio of

q

, we can have a ð1 þ

q

;1Þ-approximation

algo-rithm. For example, if we compute an upper bound by MULTIFIT, we have a ð1 þ 13=11; 1Þ-approximation algorithm because the

worst-case performance ratio of MULTIFIT is 13/11 byYue (1990).

The MULTIFIT algorithm is an approximation algorithm for

PjjCmax, which operates 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;

Pn

j¼1pj m

 

, and an obvious upper bound is

UB ¼ 2  LB. It then conducts a binary search in the 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 all n jobs, then it sets UB to be C; otherwise, it sets LB to be C. This process is iterated until UB ¼ LB þ 1. Now, if all jobs can be scheduled by the FFD rule so that no job completes after time LB, then it returns LB; otherwise, it returns UB.

Shmoys and Tardos (1993)considered the following scheduling

(9)

incurs a cost cij. Assume T is given as an upper bound of the

make-span, what is the machine-job assignment that minimizes the total assignment cost? They modeled this as the following linear pro-gram. Given T and C, for any t P T, integer solutions to the linear program, LP (T; C : t), have a one-to-one correspondence with schedules that have a cost of at most C and a makespan of at most T. The LP (T; C : t) problem can be formulated as follows:

Xm i¼1 Xn j¼1 cijxij6C; Xm i¼1 xij¼ 1 for j ¼ 1; . . . ; n; Xn j¼1 pijxij6T for i ¼ 1; . . . ; m; xijP0 for i ¼ 1; . . . ; m ; j ¼ 1; . . . ; n; xij¼ 0 if pij>t; i ¼ 1; . . . ; m; j ¼ 1; . . . ; n;

They proved that if LP (T; C : t) has a feasible solution, then there ex-ists a schedule that has a makespan of at most T þ t and a cost of at most C. They also 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 our problem pij¼ pj and cij¼ aiþ cj or cij¼ ai cj, which

implies that the model inShmoys and Tardos (1993)is more

gen-eral than ours. According to the above result, we can get an

ð1 þ

q

;1Þ approximation algorithm by the following procedure

where

q

is an approximation ratio of any approximation algorithm

for minimizing the makespan in an environment with identical machines in parallel.

Step 1. Apply an approximation algorithm for minimizing the makespan with identical machines in parallel and obtain the

makespan T0. (For example, when LPT is applied, we have T0such

that Cmax6T 06 ð4 3 1 3mÞC  max).

Step 2. Regard C as a variable, solve LP (T0;C : p

max) with the

objective C to be minimized and get an optimal value C0.

Step 3. Convert an optimal solution to LP (T0;C0

:pmax) into a

fea-sible solution.

Since T0PC

maxand we allow split jobs to multiple machines in

a linear program solution, we have C06TMC. Furthermore,

pmax6Cmaxand T 06

q

C

max. The optimal solution from Step 2 is

fea-sible to LP (T0;C0:p

max), and thus, we can get a schedule with a

makespan of at most T0þ p

maxand cost at most C

0

, which implies

we have a ð1 þ

q

;1Þ -approximation algorithm for LEX (Cmax;TMC).

However, to find such an approximation, it is necessary to apply two procedures (which determine the overall time complexity), namely, a linear programming algorithm in order to obtain a frac-tional matching solution (in Step 2) and a weighted bipartite

matching algorithm for the rounding (in Step 3). This LP is consid-ered a fractional packing problem and thus can be solved in

Oðmn2log nÞ; the weighted bipartite graph has OðnÞ nodes and

OðnÞ edges and thus the weighted bipartitie matching can be

solved in Oðn2log nÞ. Therefore, the overall time complexity is

Oðmn2log nÞ.

The proposed algorithms for our problem LEX (Cmax;TMC) are in

both cases (i.e., cij¼ aiþ cjand cij¼ ai cj) much simpler and

eas-ier to implement; their time complexity is Oðn log nÞ. 5. Conclusions

We consider bi-criteria scheduling problems where customers’ objectives as well as service providers’ objectives have to be opti-mized at the same time. As a customers’ objective, we consider either the total completion time or the makespan and as a service providers’ objective, we consider either the total assignment cost or the maximum assignment cost. The primary objective is the cus-tomers’ objective and the secondary objective is the service provid-ers’ objective. For three machine assignment cost functions (cij¼ cj;cij¼ aiþ cj, and cij¼ ai cj), we provide ð

a

;

bÞ-approxima-tion algorithms.

Our models are all special cases of the more general model

con-sidered byShmoys and Tardos (1993), who did provide a

polyno-mial time approximation algorithm that is applicable to all models within their framework. However, their approximation scheme is clearly computationally slower than those we propose and it does not provide any intuitive insights into the respective problems. Our schemes are based on prioritization and are

there-fore more intuitive and easier to implement (seeTable 1). All the

heuristics proposed in this paper run in Oðn log nÞ, whereas the

algorithm developed by Shmoys and Tardos runs in Oðmn2log nÞ.

Our worst case approximation ratios are in three cases better than the ratio in Shmoys and Tardos; in two other cases they are the same and in one case we were not able to determine a bounded worst case approximation ratio.

We have considered only traditional scheduling objectives that are functions of completion times as the primary objective. How-ever, considering MMC or TMC as the primary objective may lead to different approximation ratios. We have only considered cases

where either

a

¼ 1 or b ¼ 1. Finding an ð

a

;bÞ-approximation

algo-rithm for

a

>1 and b > 1 may be a very promising research topic.

Appendix A. Procedure for solving minimum cost for machine m problem

For SPT schedules, we sort the jobs in non-decreasing order of their processing times and in case of a tie we sort the jobs in non-decreasing order of their costs. When there are jobs with iden-tical processing times, those jobs may be eligible to multiple

con-secutive ranks. Thus, we define Fr0;r00to be the set of jobs that can be

Table 1

Comparisons of heuristics and approximation algorithms.

Problem cij Our paper Shmoys and Tardos (1993)

Alg. Ratio Ratio

LEXðPCj;MMCÞ cj H1 ð1; 2 m1Þ ð1; 2Þ aiþ cj H2 ð1; 2 m1Þ ai cj H3 (1, unbounded) ai cj; ay H4 ð1; 2 2ðm1Þ1 Þ LEXðCmax;TMCÞ aiþ cj H5 ð1 þqz;1Þ ð1 þqz;1Þ ai cj H6 ð1 þqz;1Þ  ay:a 1¼    ¼ am1¼ 1; am>1.

(10)

scheduled in rank r for r06r 6 r00. Since the number of jobs in Fr0;r00

that can be scheduled on machine m in ranks ½r0;r00 is at most

r00 r0þ 1, we can define F

r0;r00to be the set of (r00 r0þ 1) jobs with

minimum costs from Fr0;r00. Now, the problem is to select and assign

jobs from Fr0;r00 to rank r for r06r 6 r00such that each rank has

ex-actly one job and the total cost of assigned jobs is minimum.

If r00Pr0þ 2, then ranks r0þ 1; r0þ 2; . . . ; r00 1 must be filled

by jobs in Fr0;r00. So, we can assign ðr00 r0 1Þ jobs to those ranks

first and redefine the problem by taking off those ranks along with the scheduled jobs. Thus, without loss of generality, we can say

that r00¼ r0 or r00¼ r0þ 1. Moreover, F

r;r has at most one job and

Fr;rþ1has at most two jobs. The number of possible ðr0;r00Þ pairs

for Fr0;r00 is bounded by k þ ðk  1Þ ¼ 2k  1 and the number of jobs

in Fr0;r00 is bounded by k þ 2ð2k  1Þ ¼ 5k  2.

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

 Let c1ðF

r;rÞ be the cost of the job in Fr;r if jFr;rj ¼ 1 and 1

otherwise.  Let c1ðF

r;rþ1Þ be the cost of the job with the lower cost in Fr;rþ1if

jFr;rþ1j P 1 and 1 otherwise.

 Let c2ðF

r;rþ1Þ be the cost of the job with the higher cost in Fr;rþ1if

jFr;rþ1j ¼ 2 and 1 otherwise.

We define the following shortest path problem from a source node ð0; 0Þ to the destination node ðk þ 1; k þ 1Þ in a layered graph (SeeFig. 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

for r ¼ 1; . . . ; k  1.

 Node ðr; rÞ denotes that rank r is assigned from a job in Fr;rfor

r ¼ 1; . . . ; k.

 Node ðr; r  1Þ denotes that rank r is assigned from a job in Fr1;r

for r ¼ 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ðF

r;rþ1Þ.

 ðr  1; r  1Þ and ðr; r þ 1Þ are connected and the arc cost is c1ðF

r;rþ1Þ.

 ðr  1; r  2Þ and ðr; r þ 1Þ are connected and the arc cost is c1ðF

r;rþ1Þ.

 ðr  1; rÞ and ðr; rÞ are connected and the arc cost is c1ðF

r;rÞ.

 ðr  1; r  1Þ and ðr; rÞ are connected and the arc cost is c1ðF

r;rÞ.

 ðr  1; r  2Þ and ðr; rÞ are connected and the arc cost is c1ðF

r;rÞ.

 ðr  1; rÞ and ðr; r  1Þ are connected and the arc cost is c2ðF

r1;rÞ.

 ðr  1; r  1Þ and ðr; r  1Þ are connected and the arc cost is c1ðF

r1;rÞ.

 ðr  1; r  2Þ and ðr; r  1Þ are connected and the arc cost is c1ðF

r1;rÞ.

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

Fr0;r00 and Fr0;r00. As for the shortest path problem, the number of arcs

is less than 9k ¼ OðkÞ 6 OðnÞ and a shortest path can be obtained in OðnÞ time. Therefore, the proposed algorithm can be implemented in Oðn log nÞ time.

References

Agnetis, A., Mirchandani, P. B., Pacciarelli, D., & Pacifici, A. (2004). Scheduling problems 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 (pp. 21–46). Vienna, Austria: I-TECH Educational and Publishing.

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

Dòsa, G., & He, Y. (2004). Better online algorithms for scheduling with machine cost. SIAM Journal on Computing, 33, 1035–1051.

Garey, M. R., & Johnson, D. S. (1979). Computers and intractability: A guide to the theory of NP-completeness. W.H. Freeman.

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

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

Imreh, C., & Noga, J. (1999). Scheduling with machine cost. In Proceedings of 2nd international workshop on approximation algorithms. Lecture notes in computer science (Vol. 1671, pp. 168–176).

Khuller, S., Li, J., & Saha, B. (2010). Energy efficient scheduling via partial shutdown. In Proceedings of the twenty-first annual ACM-SIAM symposium on discrete algorithms (SODA ’10) (pp. 1360–1372).

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

Lee, K., Leung, J. Y.-T., & Pinedo, M. L. (2011). Coordination mechanisms with hybrid local policy. Discrete Optimization, 8, 513–524.

Lee, K., Leung, J. Y.-T., & Pinedo, M. L. (2012). Coordination mechanisms for parallel 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.

(11)

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

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

Leung, J. Y-T., & Pinedo, M. L. (2003). Minimizing total completion time on parallel machines with deadline constraints. SIAM Journal on Computing, 32, 1370–1388.

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

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

Pinedo, M. L. (2012). Scheduling: Theory, algorithms, and systems. 4th ed.. Springer.

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

Smith, W. E. (1956). Various optimizers for single stage production. Naval Research 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, models and algorithms. 2nd ed.. Springer.

T’kindt, V., Billaut, J.-C., & Proust, C. (2001). Solving a bicriteria scheduling problem 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 a parallel-machine scheduling problem. In 7th IEEE international conference on emerging technologies and factory automation (ETFA ’99) (pp. 671–678).

Yue, M. (1990). On the exact upper bound for the MultiFit processor scheduling algorithm. Annals of Operations Research, 24, 233–259.

數據

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

參考文獻

相關文件

Reading Task 6: Genre Structure and Language Features. • Now let’s look at how language features (e.g. sentence patterns) are connected to the structure

Now, nearly all of the current flows through wire S since it has a much lower resistance than the light bulb. The light bulb does not glow because the current flowing through it

Abstract In this paper, we consider the smoothing Newton method for solving a type of absolute value equations associated with second order cone (SOCAVE for short), which.. 1

Optim. Humes, The symmetric eigenvalue complementarity problem, Math. Rohn, An algorithm for solving the absolute value equation, Eletron. Seeger and Torki, On eigenvalues induced by

Programming languages can be used to create programs that control the behavior of a. machine and/or to express algorithms precisely.” -

In our AI term project, all chosen machine learning tools will be use to diagnose cancer Wisconsin dataset.. To be consistent with the literature [1, 2] we removed the 16

▪ Approximation algorithms for optimization problems: the approximate solution is guaranteed to be close to the exact solution (i.e., the optimal value)..

• If we want analysis with amortized costs to show that in the worst cast the average cost per operation is small, the total amortized cost of a sequence of operations must be