Single machine scheduling to minimize total weighted tardiness

Single machine scheduling to minimize total weighted tardiness

European Journal of Operational Research 165 (2005) 423–443 www.elsevier.com/locate/dsw Single machine scheduling to minimize total weighted tardines...

404KB Sizes 6 Downloads 136 Views

European Journal of Operational Research 165 (2005) 423–443 www.elsevier.com/locate/dsw

Single machine scheduling to minimize total weighted tardiness T.C.E. Cheng a, C.T. Ng a

a,*

, J.J. Yuan

a,b

, Z.H. Liu

a,c

Department of Logistics, The Hong Kong Polytechnic University, Hung Hom, Kowloon, Hong Kong, PR China b Department of Mathematics, Zhengzhou University, Zhengzhou, Henan 450052, PR China c Department of Mathematics, East China University of Science and Technology, Shanghai 200237, PR China Received 1 November 2002; accepted 1 September 2003 Available online 2 June 2004

Abstract The problem of minimizing the total weighted tardiness in single machine scheduling is a well-known strongly NPhard problem. In this paper, we present an Oðn2 Þ time approximation algorithm for the problem, where n is the number of jobs. We further investigate different sub-models of the problem and obtain interesting properties and results. We begin with the model where the job due dates are affine-linear functions of their processing times and the job tardiness weights are proportional to their processing times. For this model, we classify the NP-hardness of the problem with respect to different affine-linear functions, and provide an Oðn log nÞ algorithm for each of the polynomially solvable problems. The second model we investigate is one where all job due dates have equal slacks, namely the SLK due-date model. Results for this model include: the problem is NP-hard in the ordinary sense; a pseudo-polynomial algorithm with time complexity Oðn2 P Þ is derived, where P is the sum of all of the processing times; and a fully polynomial-time approximation scheme is constructed. Ó 2004 Elsevier B.V. All rights reserved. Keywords: Single machine scheduling; Due dates; Tardiness; Processing-plus-wait; SLK due-dates

1. Introduction We consider the single machine total weighted tardiness scheduling problem [3]. Let n jobs J1 ; J2 ; . . . ; Jn and a single machine that can handle only one job at a time be given. Each job Ji has a processing time pi , a due date di and a unit tardiness penalty wi . All jobs are available at time zero to be processed on the machine without preemption. Let Ci ðpÞ and Ti ðpÞ ¼ maxf0; Ci ðpÞ  di g denote the completion time and tardiness of job Ji respectively, under a job sequence p. For convenience, the job in position i under the sequence p will be denoted by JpðiÞ . The objective function to be minimized is the total weighted tardiness:

*

Corresponding author. Tel.: +852-27667364; fax: +852-23302704. E-mail addresses: [email protected] (T.C.E. Cheng), [email protected] (C.T. Ng), [email protected] (J.J. Yuan), [email protected] (Z.H. Liu). 0377-2217/$ - see front matter Ó 2004 Elsevier B.V. All rights reserved. doi:10.1016/j.ejor.2004.04.013

424

T.C.E. Cheng et al. / European Journal of Operational Research 165 (2005) 423–443

f ðpÞ ¼

n X i¼1

wi Ti ðpÞ ¼

n X

wpðiÞ TpðiÞ :

i¼1

that no idle The problem is to determine an optimal sequence p that minimizes the function f ðpÞ. It is Pclear n time exists in the optimal sequence and so the processing of all jobs finishes at time P  i¼1 pi . As in [16], we denote the problem as  X n  1 wT:  i¼1 i i Although this problem of minimizing the total weighted tardiness on a single machine occurs frequently in practice, only a few results involving arbitrary due dates and arbitrary Pweights have been reported in the literature. Lawler [14] and Lenstra et al. [16] prove that the problem 1k ni¼1 wi Ti is strongly NP-hard. Potts and Van Wassenhove [19] give a branch-and-bound algorithm for this problem. Schrage and Baker [20] give an Oð2n Þ dynamic programming algorithm to solve this and other scheduling problems. Abdul-Razaq et al. [1] give a survey of dynamic programming algorithms and branch-and-bound algorithms for this problem. Since the dynamic programming approach requires Oð2n Þ time and the branch-and-bound approach may require complete enumeration of all possible solutions in the worst case, a more efficient algorithm has been desired for a long time. To this end, we provide in this paper an Oðn2 Þ time approximation algorithm for this problem. Since problems with arbitrary due dates are quite hard to handle analytically, interest in special due date models has been increasing lately. For example, the common/constant (CON) due date model, i.e., di ¼ d, where a common/constant due date is P assigned to all jobs, has been widely studied. For this model, Yuan n [23] shows that the problem 1jdi ¼ dj i¼1 wi Ti is NP-hard in the ordinary sense. Lawler and Moore [15] Pn provide aPpseudo-polynomial algorithm for the problem 1jdi ¼ dj i¼1 wi Ti , and show that the problem n 1jdi ¼ dj i¼1 Ti is polynomially solvable. Another widely studied due date model is the equal-slack (SLK) due date model, Pn i.e., di ¼ pi þ q, where q is a given constant. Lawler [14] shows that the problem 1jdi ¼ pi þ qj i¼1 Ti is polynomially solvable. Other scheduling studies involving the SLK due dates can be found in [4–6,17]. A more general due date model is one in which the due dates are affine-linear functions of the job processing times, i.e., di ¼ api þ q, where a and q are given constants. This model is called the processing-plus-wait (PPW) due date model (see Kahlbacher and Cheng [12] and Cheng and Kovalyov [7]). The rationale of the PPW due date model is based on the observation that the due date of a job is proportional to its processing time in many practical situations. The PPW due dates were probably first introduced by Smith and Seidmann [21], where the model was called total work and number of operations (TWNO). Since in a single-machine environment each job consists of a single operation, the TWNO due dates become the PPW due dates in single machine systems. A review of research on due date assignment and scheduling is given in Cheng and Gupta [5]. Besides special due date models, researchers are also interested in models where special restrictions are imposed P on other problem parameters. For example, Du and Leung [8] prove that the problem n 1jwi ¼ 1j i¼1 wi Ti is NP-hard in the ordinary sense, and Lawler [14] gives P a pseudo-polynomial algorithm n for this problem. Arkin and Roundy [2] show that the problem 1jwi ¼ kpi j i¼1 wi Ti , where k is a constant, is also NP-hard in the ordinary sense, and give a pseudo-polynomial algorithm for this problem. Similarly, Pn Lenstra et al. [16] show that the problem 1jpi ¼ pj i¼1 wi Ti is polynomially solvable. As seen from the above, the research trend is moving towards studying special models of the general total weighted tardiness problem. We follow this trend in this present study where we will consider different special models of the problem. To the best of our knowledge, there is no report on the models: (A) P P 1jdi ¼ api þ q, wi ¼ kpi j ni¼1 wi Ti , and (B) 1jdi ¼ pi þ qj ni¼1 wi Ti in the literature. We attempt to fill these gaps in this paper. The results we have obtained for these two models can be summarized as follows.

T.C.E. Cheng et al. / European Journal of Operational Research 165 (2005) 423–443

425

For model (A), we classify its NP-hardness with respect to different values of a. The results are: 1. If 0 < a < 1, then the problem is NP-hard in the ordinary sense. A pseudo-polynomial algorithm for this problem can be found in [2]. 2. If a 6 0, then the problem is solved by the longest processing time (LPT) rule. 3. If a P 1, then the problem is solved by the shortest processing time (SPT) rule. For model (B), the results include: 1. The problem is NP-hard in the ordinary sense. 2. A pseudo-polynomial algorithm with time complexity Oðn2 P Þ is derived. 3. A fully polynomial-time approximation scheme, discussed below, is obtained. Suppose that we are considering an NP-hard optimization problem. Let q be a number with q > 1. A qapproximation algorithm [10] is a polynomial-time algorithm that always finds a solution having an objective function value within a factor of q of the optimal. We say that a family of algorithms fHe g is a polynomial-time approximation scheme (PTAS) [10] for an optimization problem A, if for every e > 0, He is a ð1 þ eÞ-approximation algorithm for A. Furthermore, if for every e > 0, He is a (1 þ e)-approximation algorithm for A with a time requirement which is polynomial in the size of A and 1e , then we say that fHe g is a fully polynomial-time approximation scheme (FPTAS) [10] for A. The following is a practical example of model (A): A building contractor has been awarded a contract to build apartments of different designs at n different sites, i.e., n jobs, for a property developer. Since the core building equipment such as tower cranes, elevators, excavators and bulldozers, etc., is very expensive, the contractor does not own this equipment in order to reduce the costs and risks. Instead, on landing the contract, the contractor will hire the necessary equipment for each individual site from equipment suppliers. Each site will be managed by a project management team comprising experienced management and engineering personnel from the contractor. Due to the scarce human and equipment resources, the contractor can only work on one site at a time. Since a site of complicated apartments will take a longer time to process, a longer due date will be allowed for its construction. A reasonable way to set the due date is di ¼ api þ q, which relates the due date of a job to its processing time proportionally. It is a practice in the construction industry that contractors are charged penalties for failing to complete jobs on time. The penalty is proportional to the value of the job and its tardiness. So, for each site of apartments completed tardy, the contractor is liable to a penalty Pi ¼ wi Ti , where wi is the tardiness weight, i.e., the unit tardiness penalty, which is proportional to the job’s value and Ti is the amount of tardiness incurred. Since a site comprising more complicated apartments normally commands a higher value and it takes a longer time to construct, it is reasonable to assume that the tardiness weight is proportional to its processing time, i.e., wi ¼ kpi . In model (B), the due date assignment method is a special case of the PPW due date assignment method for which a ¼ 1 and there is no restriction on the tardiness weight wi . Therefore, examples valid for model (A) are also valid for model (B) with no restriction on wi . The rest of paper is organized as follows. The Oðn2 Þ time approximation algorithm for the general Pthis n problem 1k i¼1 wi Ti will P be given in Section 2. In Section 3, we consider the problem model (A) 1jdi ¼ api þ q, wi ¼ kpi j ni¼1 wi TiPand classify its NP-hardness according to different values of a. The problem model (B) 1jdi ¼ pi þ qj ni¼1 wi Ti is considered in SectionP4. We present some preliminary results n in Section 4.1. Then, we prove that the problem 1jdi ¼ pi P þ qj i¼1 wi Ti is NP-hard in SectionP4.2. A n pseudo-polynomial algorithm for the problem 1jdi ¼ pi þ qj i¼1 wi Ti with time complexity Oðn2 pi Þ is derived in Section 4.3. Based on the polynomial-time approximation algorithm obtained in Section 2, we modify the pseudo-polynomial algorithm to derive an FPTAS for this problem in the later part of Section 4.3. Finally, some concluding remarks are given in Section 5.

426

T.C.E. Cheng et al. / European Journal of Operational Research 165 (2005) 423–443

2. A polynomial-time approximation algorithm for the general total weighted tardiness problem Several heuristics are proposed in the literature for the general total weighted tardiness problem P n 1k i¼1 wi Ti , and experimental results for these heuristics are presented (see [11,22] for example). Up to now, no performance ratio of these heuristics has been analyzed from a theoretical point of view. In contrast, we give, in this section, a polynomial-time ðn  1Þ-approximation algorithm for the problem Pn 1k i¼1 wi Ti . This approximation algorithm will also be in Section 4.3 where an upper bound for the Pused n optimal objective value of the problem 1jdi ¼ pi þ qj i¼1 wi Ti will be constructed. We recall that Lawler [13] first gives an algorithm that solves the problem 1k max1 6 i 6 n wi Ti in Oðn2 Þ time. This algorithm will be called Lawler’s algorithm. Our approximation algorithm, Pn which we call ‘‘Modified Lawler’s Algorithm’’, for the general total weighted tardiness problem 1k i¼1 wi Ti can be described as follows. For n jobs J1 ; J2 ; . . . ; Jn with processing times p1 ; p2 ; . . . ; pn , due-dates d1 ; d2 ; . . . ; dn and weights w1 ; w2 ; . . . ; wn , respectively, we first compute the modified due-date di0 ¼ maxfpi ; di g for each job Ji , 1 6 i 6 n, where the notion of modified due-dates was first described by Lawler in [14]. Then, by Lawler’s algorithm, we construct the schedule p that minimizes the objective function gðpÞ ¼ max1 6 i 6 n wi Ti0 ðpÞ, where Ti0 ðpÞ ¼ maxf0; Ci ðpÞ  di0 g, is the tardiness of job Ji under the sequence p with respect to the modified due-date di0 . The sequence p is an approximate solution. Modified Lawler’s Algorithm Step 1. Modify the due-dates by setting di0 ¼ maxfpi ; di g;

1 6 i 6 n:

P Step 2. Set k :¼ n, J :¼ fJ1 ; J2 ; . . . ; Jn g and P :¼ ni¼1 pi . Step 3. Pick Jj 2 J such that wj  maxf0; P  dj0 g is minimum among wi  maxf0; P  di0 g, Ji 2 J and then set p ðkÞ ¼ j. Step 4. Set k :¼ k  1, J :¼ J n fJj g and P :¼ P  pj . Step 5. If k ¼ 0 then stop. Otherwise, return to Step 3. Theorem 2.1. The Modified Lawler’s Algorithm is an ðn  1Þ-approximation P algorithm with time complexity n bounded above by Oðn2 Þ for the general total weighted tardiness problem 1k i¼1 wi Ti . Proof. Computing di0 , i ¼ 1; . . . ; n takes OðnÞ time. Finding the sequence p by Lawler’s algorithm takes Oðn2 Þ P time. Therefore, the time of Modified Lawler’s Algorithm is Oðn2 Þ. Let Pn complexity n 0 0 f ðrÞ ¼ i¼1 wi Ti ðrÞ and f ðrÞ ¼ i¼1 ¼ wi Ti ðrÞ. Then, for any r, n X wi Ti0 ðrÞ ¼ f 0 ðrÞ: gðrÞ ¼ max wi Ti0 ðrÞ 6 16i6n

i¼1

If pi < di , then di0 ¼ di and Ti ðrÞ  Ti0 ðrÞ ¼ 0. If pi P di , then di0 ¼ pi and, by noting that Ci ðrÞ P pi P di , Ti ðrÞ  Ti0 ðrÞ ¼ maxf0; Ci ðrÞ  di g  maxf0; Ci ðrÞ  pi g ¼ pi  di . Thus, Ti ðrÞ  Ti0 ðrÞ ¼ maxf0; pi  di g. Therefore, we have f 0 ðrÞ ¼ f ðrÞ 

n X i¼1

wi ½Ti ðrÞ  Ti0 ðrÞ ¼ f ðrÞ 

n X

wi maxf0; pi  di g:

i¼1

Let r be the sequence that minimizes f ðrÞ. Since p minimizes gðpÞ, we have that gðp Þ 6 gðr Þ. Note that di0 P pi for each i. Therefore, the first job under any sequence has zero tardiness with respect to its modified due date. It holds that

T.C.E. Cheng et al. / European Journal of Operational Research 165 (2005) 423–443

427

f 0 ðp Þ 6 ðn  1Þgðp Þ 6 ðn  1Þgðr Þ 6 ðn  1Þf 0 ðr Þ: Hence, we have 

f ðp Þ 

n X



wi maxf0; pi  di g 6 ðn  1Þ f ðr Þ 

i¼1

n X

! wi maxf0; pi  di g :

i¼1

Then, f ðp Þ 6 ðn  1Þf ðr Þ. The result follows. h The following instance shows that the bound n  1 in Theorem 2.1 is asymptotically tight. Let p1 ¼ p2 ¼ m3 ;

and

pi ¼ m;

d1 ¼ d2 ¼ m3 ;

and

di ¼ m3 þ ði  2Þm;

w1 ¼ 1;

for i ¼ 3; 4; . . . ; n; for i ¼ 3; 4; . . . ; n;

for i ¼ 1; 2; . . . ; n:

One can verify that Modified Lawler’s Algorithm generates the sequence p ¼ ð1; 2; . . . ; nÞ with f ðp Þ ¼ ðn  1Þm3 . However, the optimal sequence r ¼ ð1; 3; 4; . . . ; n; 2Þ has f ðr Þ ¼ m3 þ ðn  2Þm. Thus, f ðp Þ=f ðr Þ tends to n  1 as m ! þ1.

3. Problem model (A) P In this section we investigate the problem model 1jdi ¼ api þ q, wi ¼ kpi j ni¼1 wi Ti . We will classify different cases of the problem as NP-hard or not according to different values of a, and give algorithms for the polynomially solvable cases. 3.1. NP-hard case We use the well-known 2-Partition problem for the NP-hardness reduction. Pt 2-Partition problem: Given a set of t different positive integers A ¼ fa P P1 ; a2 ; . . . ; at g such that i¼1 ai ¼ 2B is even, is there a partition of A into A1 and A2 such that ai 2A1 ai ¼ ai 2A2 ai ¼ B? Lemma 3.1.1 [9]. The 2-Partition problem is NP-complete in the ordinary sense. Pn We will prove that the problem 1jdi ¼ api þ q, wi ¼ kpi j i¼1 wi Ti is NP-hard for 0 < a < 1 by showing that the corresponding decision problem is NP-complete. Our reduction is a modification of the one in [2]. Theorem 3.1.2. The problem 1jdi ¼ api þ q;

wi ¼ kpi j

n X

wi Ti

i¼1

is NP-hard for every fixed a with 0 < a < 1. Proof. The decision version of our problem is clearly in the class NP. P t For a given instance of the 2-Partition problem: a1 ; a2 ; . . . ; at with 12 i¼1 ai ¼ B, we can suppose that 1 1 B P maxfa ; 1ag, for otherwise, each ai can be replaced by mai , where m is a sufficiently large number. We construct an instance of our decision problem as follows:

428

T.C.E. Cheng et al. / European Journal of Operational Research 165 (2005) 423–443

n ¼ t þ 1; w i ¼ p i ¼ ai ;

for 1 6 i 6 t;

wn ¼ pn ¼ 4B3 ; q ¼ 4B3 ð1  aÞ þ B; Y ¼ 4B4 a þ B2 : The reduction can be done in polynomial time. We show in the sequel that the instance of the 2-Partition problem has a solution if and only if the instance of the decision version of our problem has a sequence p such that f ðpÞ 6 Y . For a sequence p of the above instance, set JE ¼ fJi jJi is processed before Jn under pg; JL ¼ fJi jJi is processed after Jn under pg: The relative positions are shown in Fig. 1. 1 Because B P maxf1a ; 1a g, we have q ¼ 4B3 ð1  aÞ þ B P 4B2 þ B > 2B ¼

t X

pi ;

i¼1

and q ¼ 4B3  4B3 a þ B 6 4B3  4B2 þ B < 4B3 ¼ pn : Then Cj < q 6 dj for Jj 2 JE, and Cj > Cn þ pj > q þ pj P dj for Jj 2 JL. It follows that the jobs in JE are all on time and the jobs in JL are all tardy. Let X X PE ¼ pi and PL ¼ pi : Ji 2JE

Ji 2JL

For a job Ji 2 JL, set JLðiÞ ¼ fJj 2 JLjJj is processed before Ji under pg: Because Cn ðpÞ ¼ PE þ pn and X Ci ðpÞ ¼ PE þ pn þ pj þ pi

for Ji 2 JL;

Jj 2JLðiÞ

i.e., Ci ðpÞ ¼ PE þ

X

pj þ pi þ q þ ð4B3 a  BÞ;

for Ji 2 JL;

Jj 2JLðiÞ

we have Tn ðpÞ ¼ maxf0; PE  Bg;

Fig. 1.

T.C.E. Cheng et al. / European Journal of Operational Research 165 (2005) 423–443

X

Ti ðpÞ ¼ PE þ

pj þ ð1  aÞpi þ ð4B3 a  BÞ;

429

for Ji 2 JL:

Jj 2JLðiÞ

Since X

pi

Ji 2JL

X

pj þ

Jj 2JLðiÞ

1X 2 1 2 p ¼ PL ; 2 Ji 2JL i 2

it follows that the sum of the tardiness penalties is f ðpÞ ¼ pn Tn þ

X

pi Ti ¼ pn maxf0; PE  Bg þ

Ji 2JL

X

0

X

pi @PE þ

Ji 2JL

1 pj þ ð1  aÞpi þ 4B a  BA 3

Jj 2JLðiÞ

 X 1 1  a pi2 þ ð4B3 a  BÞPL ¼ 4B3 maxf0; PE  Bg þ ð2B  PL ÞPL þ PL2 þ 2 2 Ji 2JL   X 1 1 ¼ 4B3 maxf0; PE  Bg þ ð4B3 a þ BÞPL  PL2 þ  a pi2 : 2 2 Ji 2JL Notice that

  1 2 X 1 PL   a pi2 < PL2 6 4B2 ; 2 2 Ji 2JL

so we also have f ðpÞ > 4B3 maxf0; PE  Bg þ ð4B3 a þ BÞPL  4B2 : Because pi ¼ ai (for 1 6 i 6 t), we only need to prove in the following that f ðpÞ 6 Y if and only if PL ¼ B. If PL ¼ B, then PE ¼ B. Because  X 1 1  PL2 þ  a pi2 6 0; 2 2 Ji 2JL we have f ðpÞ 6 ð4B3 a þ BÞPL ¼ 4B4 a þ B2 ¼ Y : If PL > B, then PE < B. Set PL ¼ B þ x, where x P 1, then f ðpÞ > ð4B3 a þ BÞPL  4B2 ¼ Y þ ð4B3 a þ BÞx  4B2 : For the reason that Ba P 1, we have ð4B3 a þ BÞx P 4B3 a þ B P 4B2 þ B > 4B2 : Thus, we deduce that f ðpÞ > Y . If PL < B, then PE > B. Set PE ¼ B þ h, where h P 1, then PL ¼ B  h and f ðpÞ > 4B3 h þ ð4B3 a þ BÞðB  hÞ  4B2 ¼ Y þ ð4B3 ð1  aÞ þ BÞh  4B2 : For the reason that Bð1  aÞ P 1, we have ð4B3 ð1  aÞ þ BÞh P 4B3 ð1  aÞ þ B P 4B2 þ B > 4B2 : Then, we deduce that f ðpÞ > Y . This completes the proof. The question of whether the problem 1jdi ¼ api þ qj

Pn

i¼1

h wi Ti is strongly NP-hard is still open.

430

T.C.E. Cheng et al. / European Journal of Operational Research 165 (2005) 423–443

3.2. Polynomially solvable cases Now, we will give two polynomially solvable cases of the problem 1jdi ¼ api þ q, wi ¼ kpi j We first consider the following two results.

Pn

i¼1

wi Ti .

Theorem 3.2.1. Suppose that a is a rational number with a 6 0. If p1 P p2 P    P pn and Pn w1 =p1 P w2 =p2 P    P wn =pn , then the sequence ð1; 2; . . . ; nÞ is optimal for the problem 1jdi ¼ api þ qj i¼1 wi Ti . Proof. The proof is by Adjacent Pairwise Interchange. Suppose that in a sequence p, job Jj comes immediately before job Ji where i < j. We claim that the sequence p obtained from p by interchanging the positions of jobs Ji and Jj is not worse than p. Recall that Rþ ¼ maxf0; Rg for any real number R. Let X ¼ Ci ðpÞ  q. Then, þ

Ti ðpÞ ¼ ðX  api Þ ;

þ

Tj ðpÞ ¼ ðX  pi  apj Þ ;

Ti ðp Þ ¼ ðX  pj  api Þþ ;

Tj ðp Þ ¼ ðX  apj Þþ :

Therefore, our claim is equivalent to þ

þ

þ

þ

wi ðX  api Þ þ wj ðX  pi  apj Þ P wi ðX  pj  api Þ þ wj ðX  apj Þ :

ð1Þ

For any real numbers Y , a and b with b P 0, we define ga;b ðY Þ ¼ ðY  aÞþ  ðY  a  bÞþ . From this definition, we get þ

ga;b ðY Þ ¼ minfðY  aÞ ; bg P 0:

ð2Þ

To show (1), it suffices to show that wi gapi ;pj ðX Þ P wj gapj ;pi ðX Þ;

for all X :

By (2), we have þ

pi gapi ;pj ðX Þ ¼ minfpi ðX  api Þ ; pi pj g; and þ

pj gapj ;pi ðX Þ ¼ minfpj ðX  apj Þ ; pi pj g: þ

þ

Since a 6 0 and pi P pj , we have X  api P X  apj , and so ðX  api Þ P ðX  apj Þ . Then, pi ðX  api Þþ P pj ðX  apj Þþ ; and, therefore, þ

þ

minfpi ðX  api Þ ; pi pj g P minfpj ðX  apj Þ ; pi pj g: That is, pi gapi ;pj ðX Þ P pj gapj ;pi ðX Þ. Since wi =pi P wj =pj , we obtain wi gapi ;pj ðX Þ ¼ ðwi =pi Þpi gapi ;pj ðX Þ P ðwj =pj Þpj gapj ;pi ðX Þ ¼ wj gapj ;pi ðX Þ;

for all X :



T.C.E. Cheng et al. / European Journal of Operational Research 165 (2005) 423–443

431

Remark for Theorem 3.2.1. The pairwise-job interchange method does not work for the case where p1 P p2 PP   P pn and w1 P w2 P    P wn . In fact, it is implied in [23] that even the problem 1jdi ¼ qj ni¼1 wi Ti is NP-hard for this special case. Similarly, we can prove the following theorem. Theorem 3.2.2. Suppose that a is a number with a > 1. If p1 6 p2 6    6 pn and P w1 =p1 P w2 =p2 P    P n wn =pn , then the sequence p ¼ ð1; 2; . . . ; nÞ is optimal for the problem 1jdi ¼ api þ qj i¼1 wi Ti . As a consequence of Theorems 3.2.1 and 3.2.2, we have the following corollary. Corollary 3.2.3. For the problem 1jdi ¼ api þ q, wi ¼ kpi j if a P 1, it can be solved by the SPT rule.

Pn

i¼1

wi Ti , if a 6 0, it can be solved by the LPT rule;

4. Problem model (B) In this section, we will investigate the problem model 1jdi ¼ pi þ qj

Pn

i¼1

wi Ti .

4.1. Some preliminary results We first give some simple properties for the problem 1jdi ¼ pi þ qj the rest of this section.

Pn

Lemma 4.1.1. For any given sequence p for the problem 1jdi ¼ pi þ qj each job JpðiÞ with l 6 i 6 n is tardy and i1 X ppðjÞ : TpðiÞ ¼ TpðlÞ þ

i¼1

Pn

wi Ti . These properties are key to

i¼1

wi Ti , if JpðlÞ is a tardy job, then

j¼l

Proof. Note that CpðlÞ ¼ TpðlÞ þ dpðlÞ ¼ TpðlÞ þ ppðlÞ þ q ¼ TpðlÞ þ ppðlÞ  ppðiÞ þ dpðiÞ . Thus, i i1 X X CpðiÞ ¼ CpðlÞ þ ppðjÞ ¼ TpðlÞ þ ppðjÞ þ dpðiÞ : j¼l

j¼lþ1

The result follows.

h

Lemma 4.1.2. For any given sequence p for the problem 1jdi ¼ pi þ qj Then, the objective function f ðpÞ can be re-written as n X X f ðpÞ ¼ Tpði0 Þ wpðiÞ þ ppðiÞ wpðjÞ : i¼i0

Pn

i¼1

wi Ti , let Jpði0 Þ be the first tardy job.

i0 6 i
Pn Proof. Since job Pi1Jpði0 Þ is the first tardy job under p, we have f ðpÞ ¼ i¼i0 wpðiÞ TpðiÞ . By Lemma 4.1.1, TpðiÞ ¼ Tpði0 Þ þ j¼i0 ppðjÞ for i0 6 i 6 n. Therefore, n n X i1 n X X X X f ðpÞ ¼ Tpði0 Þ wpðiÞ þ wpðiÞ ppðjÞ ¼ Tpði0 Þ wpðiÞ þ ppðiÞ wpðjÞ :  i¼i0

i¼i0 j¼i0

i¼i0

i0 6 i
432

T.C.E. Cheng et al. / European Journal of Operational Research 165 (2005) 423–443

Lemma 4.1.3. Let JpðlÞ be a tardy job in a given sequence p for the problem 1jdi ¼ pi þ qj Then, X

TpðlÞ þ

ppðiÞ ¼

l6i6n

n X

Pn

i¼1

wi Ti .

ppðiÞ  q:

i¼1

Proof. It is a direct consequence of the definition of Ti as it is clear that no idle time exists in an optimal sequence. h The following are some inequalities that will be used later in this section. Lemma 4.1.4. Let l1 ; l2 ; . . . ; ln be positive integers with L ¼ Then,

Pn

i¼1 li .

Suppose that F is a positive number.

P (i) 0 < 1 6 i 12 nðn  1ÞF 2 þ ðn  1ÞFL, and (ii) P1 6 i
ðli þ lj Þ ¼

n X n n X 1X 1X ðli þ lj Þ ¼ ðli þ lj Þ  li ¼ ðn  1ÞL: 2 i6¼j 2 i¼1 j¼1 i¼1

Therefore, X

X 1 ðF þ li ÞðF þ lj Þ ¼ nðn  1ÞF 2 þ ðn  1ÞFL þ li lj : 2 1 6 i
h

The following is the well-known Equal Size 2-Partition problem, which will be used to prove the NPhardness of the problem. P2t Equal Size 2-Partition problem: Given 2t positive integers a1 ; a2 ; . . . ; a2t such that P is even, i¼1 ai ¼ 2B P is there a partition of A ¼ f1; 2; . . . ; 2tg into A1 and A2 such that jA1 j ¼ jA2 j ¼ t and i2A1 ai ¼ i2A2 ai ¼ B? Lemma 4.1.5 ([9]). The Equal Size 2-Partition problem is NP-complete in the ordinary sense. 4.2. An NP-hardness proof We will prove that the problem

T.C.E. Cheng et al. / European Journal of Operational Research 165 (2005) 423–443

433

 X n  1jdi ¼ pi þ q wT  i¼1 i i is NP-hard in the ordinary sense by showing that the corresponding decision problem is NP-complete in the ordinary sense. Theorem 4.2.1. The problem 1jdi ¼ pi þ qj

Pn

i¼1

wi Ti is NP-hard in the ordinary sense.

Proof. The decision version of our problem is clearly in the class NP. P For a given instance of the Equal Size 2-Partition problem: a1 ; a2 ; . . . ; a2t with 12 2t i¼1 ai ¼ B (without loss of generality, we suppose t P 2 in the sequel), we construct an instance of our decision problem as follows: n ¼ 2t þ 1; y ¼ 2tð3t  1ÞB6 þ 4ð3t  1ÞB4 þ 6B2 ; pi ¼ wi ¼ 2B3 þ 2ai ;

1 6 i 6 2t;

pn ¼ 2tB3 þ 2B

wn ¼ y þ 1;

and

di ¼ pi þ 2tB3 þ 2B ðor equivalently q ¼ 2tB3 þ 2BÞ;

1 6 i 6 n:

The reduction can be done in polynomial time. We show in the sequel that the instance of the Equal Size 2-Partition problem has a solution if and only if the instance of the decision version of our problem has a sequence p such that f ðpÞ 6 y. If the Equal Size 2-Partition problem then there is a partition of A ¼ f1; 2; . . . ; 2tg into A1 P has a solution, P and A2 such that jA1 j ¼ jA2 j ¼ t and i2A1 ai ¼ i2A2 ai ¼ B. As shown in Fig. 2, we define a job sequence p which satisfies the following conditions: fpðiÞj1 6 i 6 tg ¼ A1 ; pðt þ 1Þ ¼ n; fpðiÞjt þ 2 6 i 6 ng ¼ A2 : Because t X i¼1

ppðiÞ ¼

n X

ppðiÞ ¼ 2tB3 þ 2B;

i¼tþ2

Jpðtþ1Þ ¼ Jn is the last on-time job under the sequence p with Cpðtþ1Þ ¼ dpðtþ1Þ ¼ 4tB3 þ 4B; and so Tpðtþ2Þ ¼ Cpðtþ1Þ  q ¼ 2tB3 þ 2B:

Fig. 2.

434

T.C.E. Cheng et al. / European Journal of Operational Research 165 (2005) 423–443

Hence, by Lemma 4.1.2, we have n X

f ðpÞ ¼ Tpðtþ2Þ

i¼tþ2

X

wpðiÞ þ

ppðiÞ wpðjÞ

tþ2 6 i
¼ ð2tB3 þ 2BÞð2tB3 þ 2BÞ þ

X

ð2B3 þ 2apðiÞ Þð2B3 þ 2apðjÞ Þ:

tþ2 6 i
According to Lemma 4.1.4, we have X

ð2B3 þ 2apðiÞ Þð2B3 þ 2apðjÞ Þ 6 2tðt  1ÞB6 þ 4ðt  1ÞB4 þ 2B2 :

tþ2 6 i
Thus, we have f ðpÞ 6 2tð3t  1ÞB6 þ 4ð3t  1ÞB4 þ 6B2 ¼ y; and so p is a required sequence for our problem. Now suppose that the instance of the Equal Size 2-Partition problem has no solution. We only need to prove that f ðpÞ > y for any job sequence p. The special structure P of pi implies the following claim. Claim 1. There is no subset S  fJ1 ; J2 ; . . . ; J2t g such that Ji 2S pi ¼ q ¼ 2tB3 þ 2B. Suppose that p is any given sequence. Let m be the integer such that pðmÞ ¼ n, i.e., JpðmÞ ¼ Jn . If Jn is tardy under p, then f ðpÞ > y is implied by the fact wn ¼ y þ 1. We suppose that Jn is on time under p. We first prove the following claim. Claim 2. m 6 t þ 1. Otherwise, m P t þ 2. By the fact that pi > 2B3 , we deduce m1 X

ppðiÞ P

i¼1

tþ1 X

ppðiÞ > 2ðt þ 1ÞB3 > q:

i¼1

Hence, we get TpðmÞ > 0 and Jn is tardy under p, a contradiction. This completes the proof of Claim 2. By using Claim 2, we only need to consider the following two cases. Case 1. m 6 t. In this case, Jpðtþ1Þ is a tardy job under p. By using Lemma 4.1.3, we deduce n X ppðiÞ ¼ 4tB3 þ 4B; Tpðtþ1Þ þ i¼tþ1

and so Tpðtþ1Þ þ

n X

2apðiÞ ¼ 2ðt  1ÞB3 þ 4B:

i¼tþ1

Because Tpðtþ1Þ þ

X

ppðiÞ > 2ðt  1ÞB3 ;

1 6 i 6 t;i6¼m

by using Lemma 4.1.4, we have

T.C.E. Cheng et al. / European Journal of Operational Research 165 (2005) 423–443

f ðpÞ P Tpðtþ1Þ

n X

X

wpðiÞ þ

ppðiÞ wpðjÞ

tþ1 6 i
i¼tþ1

3

¼ Tpðtþ1Þ 2ðt þ 1ÞB þ

n X

! 2apðiÞ

> 2ðt þ 1ÞB3 Tpðtþ1Þ þ



  2B3 þ 2apðiÞ 2B3 þ 2apðjÞ

tþ1 6 i
i¼tþ1

X

X

þ

ð2B3 þ 2apðiÞ Þð2B3 þ 2apðjÞ Þ

tþ1 6 i
> 2ðt þ 1ÞB3 Tpðtþ1Þ þ 2tðt þ 1ÞB6 þ 2tB3

n X

2apðiÞ

i¼tþ1

3

6

¼ 2B Tpðtþ1Þ þ 2tðt þ 1ÞB þ 2tB

3

Tpðtþ1Þ þ

n X

! 2apðiÞ

i¼tþ1

> 4ðt  1ÞB6 þ 2tðt þ 1ÞB6 þ 2tB3 ð2ðt  1ÞB3 þ 4BÞ ¼ ð6t2 þ 2t  4ÞB6 þ 8tB4 > y: Case 2. m ¼ t þ 1. In this case, Jpðtþ2Þ is the first tardy job under p. By using Lemma 4.1.3, we deduce Tpðtþ2Þ þ

n X

ppðiÞ ¼ 4tB3 þ 4B;

i¼tþ2

and so Tpðtþ2Þ þ

n X

2apðiÞ ¼ 2tB3 þ 4B:

i¼tþ2

Because JpðmÞ ¼ Jn is on time, we deduce by Claim 1 that t X

ppðiÞ < q ¼ 2tB3 þ 2B:

i¼1

This implies that n X

Pt

i¼1

2apðiÞ < 2B, and so

apðiÞ P B þ 1:

i¼tþ2

We write x ¼

Pn

i¼tþ2

2apðiÞ in the sequel. Then, we have

2B þ 2 6 x < 4B; and so ð2ðt  1ÞB3 þ 4B  xÞx > 4ðt  1ÞB4 þ 4ðt  1ÞB3 :

435

436

T.C.E. Cheng et al. / European Journal of Operational Research 165 (2005) 423–443

By using Lemma 4.1.4, we have n X X f ðpÞ P Tpðtþ2Þ wpðiÞ þ

ppðiÞ wpðjÞ

tþ2 6 i
i¼tþ2

¼ Tpðtþ2Þ ð2tB3 þ xÞ þ

X

ð2B3 þ 2apðiÞ Þð2B3 þ 2apðjÞ Þ

tþ2 6 i
> ð2tB þ 4B  xÞð2tB3 þ xÞ þ 2tðt  1ÞB6 þ 2ðt  1ÞB3 x ¼ 2tð3t  1ÞB6 þ 8tB4 þ ð2ðt  1ÞB3 þ 4B  xÞx > 2tð3t  1ÞB6 þ 4ð3t  1ÞB4 þ 4ðt  1ÞB3 ¼ y þ 4ðt  1ÞB3  6B2 > y: This completes the proof.

h

4.3. A pseudo-polynomial algorithm and a fully polynomial-time approximation scheme P We will first design a pseudo-polynomial algorithm to solve the problem 1jdi ¼ pi þ qj ni¼1 wi Ti by imitating the algorithm for OPTIMIZATION 0–1 KNAPSACK in [18]. In the rest of this paper, we assume that all the pi ’s, wi ’s and q are integers. Note that di ¼ pi þ q P pi for all 1 6 i 6 n. Thus, for any sequence p, job Jpð1Þ must be on time. Therefore, the last on-time job must exist in any sequence. The following result, and Lemma 4.1.1, are critical to the design of our pseudo-polynomial algorithm. Lemma 4.3.1. There is an optimal sequence p for the scheduling problem with SLK due-dates n X 1jdi ¼ pi þ qj wi Ti ; i¼1

such that, if JpðlÞ is the first tardy job under p, then we have the following results: (1)

wpðlÞ ppðlÞ

P

wpðlþ1Þ ppðlþ1Þ

P  P

wpðnÞ . ppðnÞ

(2) If there are two jobs JpðkÞ and JpðtÞ such that k; t P l and

wpðkÞ ppðkÞ

¼

wpðtÞ , ppðtÞ

then the sequence p obtained from p by

exchanging the positions of pðkÞ and pðtÞ is still optimal. (3) The first l  2 on-time jobs can be scheduled in any order among themselves without affecting the optimality. (4) The last on-time job, i.e., job Jpðl1Þ , is such that ppðl1Þ ¼ max1 6 i 6 l1 ppðiÞ . Proof. Let p be an optimal sequence for the considered problem. If JpðlÞ is the first tardy job under p, then the objective value can be denoted by n n X X f ðpÞ ¼ wpðjÞ CpðjÞ  wpðjÞ dpðjÞ : j¼l

j¼l

Then, (1) and (2) can be established by the pairwise-job interchange method. Since jobs Jpð1Þ ; Jpð2Þ ; . . . ; Jpðl1Þ are on-time jobs, we have CpðiÞ 6 dpðiÞ , i.e., Cpði1Þ 6 q, for i ¼ 1; . . . ; l  1, where Cpð0Þ  0. This is equivalent to Cpðl2Þ 6 q. Therefore, rearranging the first l  2 on-time jobs in any order will still keep these l  2 jobs on time. Hence, (3) follows. In addition, since Cpðl2Þ 6 q is equivalent to ppðl1Þ P Cpðl1Þ  q, by exchanging job Jpðl1Þ with the largest job among the first l  1 jobs will still keep the first l  1 jobs on time. Therefore, (4) follows. 

T.C.E. Cheng et al. / European Journal of Operational Research 165 (2005) 423–443

437

Any sequence p satisfying conditions (1) and (4) of Lemma 4.3.1, where l is the least integer such that Cpðl1Þ > q, is called a regular sequence. By Lemma 4.3.1, to solve the problem n X w i Ti ; 1jdi ¼ pi þ qj i¼1

we only need to consider the regular sequences. Now we give the idea of our algorithm. Suppose that the jobs are initially sequenced in the weighted longest processing time (WLPT) order, i.e., w1 w2 wn 6 6  6 : p1 p2 pn Let P ¼ p1 þ p2 þ    þ pn , Jj ¼ fJ1 ; J2 ; . . . ; Jj g and P ðjÞ ¼ p1 þ p2 þ    þ pj , for 1 6 j 6 n. For each j, 1 6 j 6 n, we will construct a set Mj consisting of all the possible quadruples ðX ; m; t; cÞ such that 1. X  Jj is the set of the last jX j tardy jobs of a regular sequence p, and the jobs in Jj n X are on-time under p; 2. m is a job index such that job Jm is the longest job in Jj n X (we set m ¼ 0 and p0 ¼ 0 if X ¼ Jj ) and is the last P on-time job in Jj n X under p; 3. t ¼ P  Ji 2X pi is the starting time of the first tardy job in X under p; and 4. c is the total weighted tardiness due to the jobs in X under p. Fig. 3 illustrates the sequence p. In actual computation, some useless quadruples will be discarded from Mi due to some feasibility properties or dominance properties discussed below. We use SL ¼ ðX ; cÞ to denote the fact that there is a regular sequence such that X contains all the tardy jobs and the total weighted tardiness is c. Initially, we set M0 ¼ fð;; 0; P ; 0Þg and SL ¼ ð;; þ1Þ. Because w1 =p1 is minimum among all wi =pi , 1 6 i 6 n, by Lemma 4.3.1, either there is an optimal sequence p such that J1 is the last tardy job under p, or there is an optimal sequence p0 such that J1 is on time under p0 . If J1 is the last tardy job under an optimal sequence p (P  p1 > q is necessary), then M1 should contain the quadruple ðfJ1 g; 0; P  p1 ; w1 ðP  p1  qÞÞ. If J1 is on time under an optimal sequence p0 , then M1 should contain the quadruple ð;; 1; P ; 0Þ. Hence, we set M1 ¼ fð;; 1; P ; 0Þg [ fðfJ1 g; 0; P  p1 ; w1 ðP  p1  qÞÞjP  p1 > qg: In general, suppose that Mj1 has been determined. For every ðX ; m; t; cÞ 2 Mj1 , there is a family of regular sequences frg such that the last jX j tardy jobs under r are the jobs in X scheduled in the WSPT order and the jobs in Jj1 n X are on time under r with Jm as the last on-time job among Jj1 n X . By the regularity of r, we can suppose that either Jj is on time under r, or Jj is the last tardy job among the job set fJj ; Jjþ1 ; . . . ; Jn g under r. If job Jj is on time, then the largest job processing time of the jobs in Jj n X is maxfpm ; pj g. Let m0 be the minimum index in fm; jg such Pthat pm0 ¼ maxfpm ; pj g. To make sure that the jobs in Jj n X are on time, we must have P ðjÞ  ðP  tÞ  Ji 2Jj nX pi 6 pm0 þ q. In this case, there is a corresponding family of regular sequences fr0 g  frg such that the last jX j tardy jobs under r0 are the jobs in X scheduled in the WSPT

Fig. 3.

438

T.C.E. Cheng et al. / European Journal of Operational Research 165 (2005) 423–443

Fig. 4.

Fig. 5.

order, the jobs in Jj n X are on time under r0 with job Jm0 being the last on-time job among Jj n X , the starting time of the jobs in X under r0 is t, and the total weighted tardiness of the jobs in X under r0 is c. Fig. 4 illustrates the resulting sequence in this case. P If job Jj is tardy, then we must have P  Jj 2X [fJj g pi > q, i.e., t  pj > q. In this case, there is a corresponding family of regular sequences fr00 g  frg such that the last jX j þ 1 tardy jobs under r00 are the jobs in X [ fJj g scheduled in the WSPT order with Jj be the first tardy job among the job set X [ fJj g, the jobs in Jj n ðX [ fJj gÞ ¼ Jj1 n X are on time under r00 with Jm being the last on-time job among the jobs in Jj1 n X , the starting time of the jobs in X [ fJj g under r00 is t  pj , and the total weighted tardiness of the jobs in X [ fJj g under r00 is c þ wj ðt  pj  qÞ. Fig. 5 illustrates the resulting sequence in this case. Hence, we set Mj ¼ fðX ; m0 ; t; cÞjðX ; m; t; cÞ 2 Mj1 ; P ðjÞ  P þ t 6 pm0 þ qg [ fðX [ fJj g; m; t  pj ; c þ wj ðt  pj  qÞÞjðX ; m; t; cÞ 2 Mj1 ; t  pj > qg: To reduce the computational effort, if there are two distinct elements ðX1 ; m1 ; t1 ; c1 Þ and ðX2 ; m2 ; t2 ; c2 Þ in Mj such that m1 ¼ m2 ¼ m, t1 6 t2 and c1 6 c2 , then the element ðX2 ; m2 ; t2 ; c2 Þ should be removed from consideration. The proof is given in the Appendix A. Furthermore, if ðX ; m; t; cÞ is an element in the Mj such that t  pm 6 q and c is as small as possible, then there is a regular sequence p with the tardy job set X and total weighted tardiness c. The proof is given in the Appendix A. Hence, if c < b (where b is the second component of SL), we revise SL by setting SL :¼ ðX ; cÞ and delete any element ðX 0 ; m0 ; t0 ; c0 Þ with c0 P c from Mj . The above discussion leads to the following algorithm. Pn Algorithm 4.3.2. For 1jdi ¼ pi þ qj i¼1 wi Ti . Input: n jobs J1 ; J2 ; . . . ; Jn with processing times p1 ; p2 ; . . . ; pn , weights w1 ; w2 ; . . . ; wn , and SLK due-dates di ¼ pi þ q, for 1 6 i 6 n, respectively. Without loss of generality, we can suppose that the jobs are labelled according to the WLPT order, i.e., w1 w2 wn 6 6  6 ; p1 p2 pn for otherwise, we can relabel the jobs in Oðn log nÞ time to obtain a required sequence. Step 1. Compute P ¼ p1 þ p2 þ    þ pn and P ðiÞ ¼ p1 þ p2 þ    þ pi for 1 6 i 6 n. Step 2. Set M0 ¼ fð;; 0; P ; 0Þg,

T.C.E. Cheng et al. / European Journal of Operational Research 165 (2005) 423–443

439

SL ¼ ð;; þ1Þ and p0 ¼ 0. Step 3. For j ¼ 1; 2; . . . ; n, do sub-steps (a)–(d). (a) Let Mj ¼ ;. (b) For each element ðX ; m; t; cÞ of Mj1 , add to Mj the element ðX ; m0 ; t; cÞ if P ðjÞ  P þ t 6 q þ pm0 , where m0 is the minimum index in fm; jg such that pm0 ¼ maxfpm ; pj g, and also add to Mj the element ðX [ fJj g; m; t  pj ; c þ wj ðt  pj  qÞÞ if t  pj  q > 0 and c þ wj ðt  pj  qÞ < b (where b is the second component of SL). (c) Examine Mj for pairs of elements ðX ; m; t; cÞ and ðX 0 ; m; t; c0 Þ with the same second component and third component. For each such pair, delete ðX ; m; t; cÞ if c P c0 , and delete ðX 0 ; m; t; c0 Þ otherwise. (d) Let the element ðX ; m; t; cÞ (if any) in Mj be such that t  pm 6 q and c is as small as possible. If c < b (where b is the second component of SL), revise SL by setting SL :¼ ðX ; cÞ and delete any element ðX 0 ; m0 ; t0 ; c0 Þ with c0 P c from Mj . Step 4. Obtain the terminal SL ¼ ðX ; cÞ. Output: An optimal sequence p with the tardy job set X being scheduled by the WSPT rule, and with the other on-time jobs being scheduled by the SPT rule. The following is a numerical example of the above algorithm. n ¼ 5, q ¼ 10, pj , wj and P ðjÞ, 1 6 j 6 n, are as follows. j wj pi P ðjÞ

1 1 4 4

2 3 5 9

3 4 6 15

4 5 6 21

5 4 4 25

For simplicity, we only compute each Mj and SL. M0 ¼ fð;; 0; 25; 0Þg; SL ¼ ð;; þ1Þ; M1 ¼ fð;; 1; 25; 0Þ; ðfJ1 g; 0; 21; 11Þg;

and

M2 ¼ fð;; 2; 25; 0Þ; ðfJ2 g; 1; 20; 30Þ; ðfJ1 g; 2; 21; 11Þ; ðfJ1 ; J2 g; 0; 16; 29Þg: Since M2 has four elements, there will be eight possible elements for M3 . But, for the tardy job set X ¼ fJ1 ; J2 ; J3 g, the starting time of the jobs in X is 10 ¼ q. Therefore, this X is eliminated in Step 3(b). So, after Step 3(b), M3 ¼ fð;; 3; 25; 0Þ; ðfJ3 g; 2; 19; 36Þ; ðfJ2 g; 3; 20; 30Þ; ðfJ2 ; J3 g; 1; 14; 46Þ; ðfJ1 g; 3; 21; 11Þ; ðfJ1 ; J3 g; 2; 15; 31Þ; ðfJ1 ; J2 g; 3; 16; 29Þg: No element can be eliminated in Step 3(c). By noting that the element ðfJ1 ; J2 g; 3; 16; 29Þ satisfies the criteria of Step 3(d), we update SL and delete any element ðX 0 ; m0 ; t0 ; c0 Þ with c0 P 29 from M3 , including ðfJ1 ; J2 g; 3; 16; 29Þ itself. Thus, after Step 3(d), we have M3 ¼ fð;; 3; 25; 0Þ; ðfJ1 g; 3; 21; 11Þg and

SL ¼ ðfJ1 ; J2 g; 29Þ:

440

T.C.E. Cheng et al. / European Journal of Operational Research 165 (2005) 423–443

Similarly, M4 ¼ ; and M5 ¼ ;. Hence, the optimal sequence is p ¼ ðJ5 ; J3 ; J4 ; J2 ; J1 Þ; and the objective value of p is 29. Theorem 4.3.3. Algorithm 4.3.2 solves the problem n X 1jdi ¼ pi þ qj wi Ti i¼1

in Oðn2 P Þ time, where P ¼

P

pi .

Proof. The correctness is implied in the preceding discussion leading to Algorithm 4.3.2. For the time bound, notice that the size of each set Mj is no greater than nP , because there is at most one element in Mj with the same second component and third component. Each update operation of Step 3(b) can be done in OðnÞ time and be repeated for all OðnP Þ elements of Mj1 . Steps 3(c) and 3(d) require also Oðn2 P Þ time, because they can be implemented concurrently with Step 3(b). Hence, the theorem follows. h For convenience in further discussion, we consider the following modified algorithm. P Algorithm 4.3.4. Modified algorithm for 1jdi ¼ pi þ qj ni¼1 wi Ti : Let U be an upper bound of the optimal objective value. This algorithm is obtained from Algorithm 4.3.2 by initially setting SL ¼ ð;; U Þ and replacing Step 3(c) with the following Step 3(c0 ). Step 3(c0 ) Examine Mj for pairs of elements ðX ; m; t; cÞ and ðX 0 ; m; t0 ; c0 Þ with the same second component and fourth component. For each such pair, delete ðX ; m; t; cÞ if t P t0 , and delete ðX 0 ; m; t0 ; cÞ otherwise. Similar to Theorem 4.3.3, we have the following time bound for Algorithm 4.3.4. Theorem 4.3.5. Algorithm 4.3.4 solves the problem  X n  1jdi ¼ pi þ q wT  i¼1 i i in Oðn2 U Þ time, where U ð 6

P

16j6i6n

wi pj Þ is an upper bound of the optimal objective value.

Remarks. The value of U in Theorem 4.3.5 can be chosen as U ¼ f ðp Þ, where p is the sequence obtained by Modified Lawler’s Algorithm in Section 2, and so U is at most n  1 times of the optimum. Suppose U > 0 in the sequel. Based on the fact that U is at most n  1 times of the optimal objective value, the following algorithm gives an FPTAS for the considered problem. Pn Algorithm 4.3.6. An FPTAS for 1jdi ¼ pi þ qj i¼1 wi Ti . Input: An arbitrary positive number e; n jobs J1 ; J2 ; . . . ; Jn with processing times p1 ; p2 ; . . . ; pn , weights w1 ; w2 ; . . . ; wn and SLK due-dates di ¼ pi þ q, for 1 6 i 6 n, respectively, such that w1 w2 wn 6 6  6 : p1 p2 pn Let U be the objective value of the sequence p which is obtained by Modified Lawler’s Algorithm in Section 2.

T.C.E. Cheng et al. / European Journal of Operational Research 165 (2005) 423–443

441

Step 1. Compute K ¼ deU e, n2 P ¼ p1 þ p2 þ    þ pn and P ðiÞ ¼ p1 þ p2 þ    þ pi , for 1 6 i 6 n. Step 2. Set M0 ¼ fð;; 0; P ; 0Þg, SL ¼ ð;; U Þ and p0 ¼ 0. Step 3. For j ¼ 1; 2; . . . ; n do sub-steps (a)–(d). (a) Let Mj ¼ ;. (b) For each element ðX ; m; t; cÞ of Mj1 , add to Mj the element ðX ; m0 ; t; cÞ if P ðjÞ  P þ t 6 q þ pm , where m0 is the minimum index in fm; jg such that pm0 ¼ maxfpm ; pj g, and also add to Mj the element ðX [ fJj g; m; t  pj ; c þ Kbwj ðt  pj  qÞ=KcÞ if t  pj  q > 0 and c þ Kbwj ðt  pj  qÞ=Kc < b (where b is the second component of SL). (c) Examine Mj for pairs of elements ðX ; m; t; cÞ and ðX 0 ; m; t0 ; cÞ with the same second component and fourth component. For each such pair, delete ðX ; m; t; cÞ if t P t0 , and delete ðX 0 ; m; t0 ; cÞ otherwise. (d) Let the element ðX ; ; m; t; cÞ (if any) in Mj be such that t  pm 6 q and such that c is as small as possible. If c < b (where b is the second component of SL), revise SL by setting SL :¼ ðX ; cÞ and delete any element ðX 0 ; m0 ; t0 ; c0 Þ with c0 P c from Mj . Step 4. Obtain the terminal SL ¼ ðX ; cÞ. Output: An ð1 þ eÞ-approximation solution r with the tardy job set X being scheduled by the WSPT rule, and with the other on-time jobs being scheduled by the SPT rule. The important difference between Algorithms 4.3.6 and 4.3.2 arises in Step 3(b), which guarantees that each Mj has at most OðnU =KÞ elements in Algorithm 4.3.6. The reader may find that the tardiness penalty of each job Ji ; is calculated by Kbwi Ti =Kc. The following result establishes that Algorithm 4.3.6 forms an FPTAS. Theorem 4.3.7. Pn For any e > 0, Algorithm 4:3:6 is a ð1 þ eÞ-approximation algorithm for the problem 1jdi ¼ pi þ qj i¼1 wi Ti with a time requirement of Oðn4 1e Þ. Proof. Because each Mj has at most OðnU Þ elements in Algorithm 4.3.6, the time requirement is at most K Oðn2 UK Þ ¼ Oðn4 1e Þ. Let c be the optimal objective value of the considered problem. Let ðX ; cÞ be the terminal SL of Algorithm 4.3.6 and r be the corresponding sequence. For the reason that c is the optimal objective value of the problem  X n  1jdi ¼ pi þ q; p is regular Kbwi Ti ðpÞ=Kc;  i¼1 and c is the optimal objective function value of the problem  X n  1jdi ¼ pi þ q; p is regular  w T ðpÞ;  i¼1 i i we have c P c. Furthermore, let c be the total weighted tardiness r. By the optimality of c, P under sequence P we have c P c and U 6 ðn  1Þc < nc. We write c ¼ f ðrÞ ¼ ni¼1 wi Ti . Then, c ¼ ni¼1 Kbwi Ti =Kc. Because

442

T.C.E. Cheng et al. / European Journal of Operational Research 165 (2005) 423–443

wi Ti  Kbwi Ti =Kc 6 K  1 6 eU =n2 6 c=n, we have c  c 6 c  c ¼ implies c 6 ð1 þ eÞc and completes the proof. h

Pn

i¼1

ðwi Ti  Kbwi Ti =KcÞ 6 c. This

5. Concluding remarks We present in this paper an Oðn2 Þ time approximation algorithm for the general total weighted tardiness problem in a single machine. This algorithm can be treated as a more efficient alternative to the existing dynamic programming and branch-and-bound algorithms for the problem. Due to the fact that the general total weighted tardiness problem is NP-hard in the strong sense, many researchers have turned to investigations of special models of the problems. We follow the same trend and analyze different special models of the problem, obtaining some interesting properties and results. We begin with the model where the job due dates are affine-linear functions of their processing times and the tardiness weights are proportional to their processing times. For this model, we successfully classify the NPhardness of the problem with respect to different affine-linear functions, and provide an Oðn log nÞ algorithm for each of the polynomially solvable problems. We continue to analyze the SLK due date model, and obtain the following results: the problem is NP-hard in the ordinary sense; a pseudo-polynomial algorithm with time complexity Oðn2 P Þ is derived; and a fully polynomial-time approximation scheme is obtained. The results in this paper have filled some gaps in the literature. These results may be helpful in developing new solution techniques and methods to tackle other aspects of the problems in the future. The techniques used in this paper are theoretically challenging and may be applied to other earliness/tardiness scheduling problems. Acknowledgements This research was supported in part by The Hong Kong Polytechnic University for Area of Strategic Development under grant number A628. The third author was also supported by the National Natural Science Foundation of China under grant number 10371112. The authors would like to thank two anonymous referees for their helpful comments and recommendations. The present version of the paper has benefited greatly from these comments.

Appendix A The proofs of two statements are given in this Appendix A. A.1. If there are two distinct elements ðX1 ; m1 ; t1 ; c1 Þ and ðX2 ; m2 ; t2 ; c2 Þ in Mj such that m1 ¼ m2 ¼ m, t1 6 t2 and c1 6 c2 , then the element ðX2 ; m2 ; t2 ; c2 Þ should be left out of consideration. Proof. Let frk g be the family of regular sequences corresponding to ðXk ; mk ; tk ; ck Þ 2 Mj , k ¼ 1, 2. Let p2 be an arbitrary sequence in fr2 g. For every job J 2 fJm g [ fJjþ1 ; Jjþ2 ; . . . ; Jn g, set sðJ ; p2 Þ be the starting time of J under p2 . Since the jobs in fJm g [ fJjþ1 ; Jjþ2 ; . . . ; Jn g should be scheduled from time P ðjÞ  P þ tk  pm to time tk under rk , k ¼ 1, 2, there must be a sequence p1 2 fr1 g such that the starting time of each job J 2 fJm g [ fJjþ1 ; Jjþ2 ; . . . ; Jn g is sðJ ; p2 Þ  ðt2  t1 Þ 6 sðJ ; p2 Þ, and so the tardiness of job J under p1 is less than or equal to the tardiness of job J under p2 . Because c1 6 c2 , the total weighted tardiness under p1 is less than or equal to the total weighted tardiness under p2 . Hence, ðX2 ; m2 ; t2 ; c2 Þ should be deleted from Mj . h

T.C.E. Cheng et al. / European Journal of Operational Research 165 (2005) 423–443

443

A.2. If (X ; m; t; c) is an element in Mj such that t  pm 6 q and c is as small as possible, then there is a regular sequence p with tardy job set X and total weighted tardiness c. Proof. Let r be a regular sequence corresponding to ðX ; m; t; cÞ. Keeping the jobs in X unchanged in r, move job Jm to the position just before the jobs in X . Since t  pm 6 q, all the jobs in Jn n X are early no matter how the jobs in Jn n ðX [ Jm Þ are sequenced. Hence, there exists a regular sequence p with the tardy job set X and total weighted tardiness c. h References [1] T.S. Abdul-Razaq, C.N. Potts, L.N. Van Wassenhove, A survey of algorithms for the single machine total weighted tardiness scheduling problem, Discrete Applied Mathematics 26 (1990) 235–253. [2] E.M. Arkin, R.O. Roundy, Weighted-tardiness scheduling on parallel machines with proportional weights, Operations Research 39 (1991) 64–81. [3] K.R. Baker, Introduction to Sequencing and Scheduling, Wiley, New York, NY, 1974. [4] T.C.E. Cheng, Optimal slack due-date determination and sequencing, Engineering Costs and Production Economics 10 (1986) 305–309. [5] T.C.E. Cheng, M.C. Gupta, Survey of scheduling research involving due-date determination decisions, European Journal of Operational Research 38 (1989) 156–166. [6] T.C.E. Cheng, C. Oguz, X. Qi, Due date assignment and single machine scheduling with compressible processing times, International Journal of Production Economics 43 (1996) 107–113. [7] T.C.E. Cheng, M.Y. Kovalyov, Complexity of parallel machine scheduling with processing-plus-wait due dates to minimize maximum absolute lateness, European Journal of Operational Research 114 (1999) 403–410. [8] J.Z. Du, J.Y.-T. Leung, Minimizing total tardiness on one machine is NP-hard, Mathematics of Operations Research 15 (1990) 483–495. [9] M.R. Garey, D.S. Johnson, Computers and Intractability: A Guide to the Theory of NP-Completeness, Freeman, San Francisco, CA, 1979. [10] D.S. Hochbaum, Approximation Algorithms for NP-Hard Problems, PWS, Boston, MA, 1997. [11] J.E. Holsenback, R.M. Russell, R.E. Markland, P.R. Philipoom, An improved heuristic for the single-machine weighted-tardiness problem, Omega, International Journal of Management Science 27 (1999) 485–499. [12] H.G. Kahlbacher, T.C.E. Cheng, Processing-plus-wait due dates in single-machine scheduling, Journal of Optimization Theory and Applications 85 (1995) 163–186. [13] E.L. Lawler, Optimal sequencing of a single machine subject to precedence constraints, Management Science 19 (1973) 544–546. [14] E.L. Lawler, A pseudopolynomial algorithm for sequencing jobs to minimize total tardiness, Annals of Discrete Mathematics 1 (1977) 331–342. [15] E.L. Lawler, J.M. Moore, A functional equation and its application to resource allocation and sequencing problems, Management Science 16 (1969) 77–84. [16] J.K. Lenstra, A.H.G. Rinnooy Kan, P. Brucker, Complexity of machine scheduling problems, Annals of Discrete Mathematics 1 (1977) 343–362. [17] C. Oguz, C. Dincer, Single machine earliness–tardiness scheduling problems using the equal-slack rule, Journal of the Operational Research Society 5 (1994) 589–594. [18] C.H. Papadimitriou, K. Steiglitz, Combinatorial Optimization, Prentice Hall, Englewood Cliffs, NJ, 1982. [19] C. Potts, L. Van Wassenhove, A branch and bound algorithm for the total weighted tardiness problem, Operations Research 33 (1985) 363–377. [20] L. Schrage, K.R. Baker, Dynamic programming solution of sequencing problems with precedence constraints, Operations Research 26 (1978) 444–449. [21] M.L. Smith, A. Seidmann, Due-date selection procedures for job-shop simulation, Computers and Industrial Engineering 7 (1983) 199–207. [22] A. Volgenant, E. Teerhuis, Improved heuristics for the n-job single machine weighted tardiness problem, Computers and Operations Research 26 (1999) 35–44. [23] J.J. Yuan, The NP-hardness of the single machine common due date weighted tardiness problem, Systems Science and Mathematical Sciences 5 (4) (1992) 328–333.