7
Two-machine flow shop scheduling with linear decreasing job deterioration q Ji-Bo Wang a, * , Li-Li Liu b a School of Science, Shenyang Institute of Aeronautical Engineering, Shenyang 110136, People’s Republic of China b School of Science, Shanghai Second Polytechnic University, Shanghai 201209, People’s Republic of China article info Article history: Received 23 March 2008 Received in revised form 10 September 2008 Accepted 12 September 2008 Available online 20 September 2008 Keywords: Scheduling Flow shop Deteriorating jobs Total completion time Branch-and-bound algorithm Heuristic algorithm abstract In this paper, we consider a two-machine flow shop scheduling problem with deteriorating jobs. By a deteriorating job, we mean that the processing time is a decreasing function of its execution start time. A proportional linear decreasing deterioration function is assumed. The objective is to find a sequence that minimizes total completion time. Optimal solutions are obtained for some special cases. For the gen- eral case, several dominance properties and some lower bounds are derived to speed up the elimination process of a branch-and-bound algorithm. A heuristic algorithm is also proposed to overcome the ineffi- ciency of the branch-and-bound algorithm. Computational results for randomly generated problem instances are presented, which show that the heuristic algorithm effectively and efficiently in obtaining near-optimal solutions. Ó 2008 Elsevier Ltd. All rights reserved. 1. Introduction Traditional scheduling problems usually involve jobs with con- stant, independent processing times. In practice, however, we of- ten encounter settings in which the job processing times increase or decrease over time. Researchers have formulated this phenom- enon into different models and solved different problems for vari- ous criteria. Extensive surveys of scheduling models and problems concerning start time dependent job processing times can be found in Alidaee and Womer(1999) and Cheng, Ding, and Lin (2004). Gen- erally, two types of models are used to describe this kind of pro- cess. The first type is devoted to problems in which the job processing times are characterized by a non-decreasing function, and the second type concerns problems in which the job process- ing times are given by a non-increasing function. Applications of these models can be found, among others, in fire fighting, emer- gency medicine, police, machine maintenance, computer science, and radar science. Browne and Yechiali (1990) considered a scheduling problem in which the processing times of the jobs are linear deterioration functions of their starting times. They showed that this problem can be solved optimally. Mosheiov (1991) considered the problem that all the jobs are characterized by a common positive basic pro- cessing time. Based on this basic assumption, Mosheiov proved that the optimal schedule to minimize flowtime is symmetric and has a V-shaped property with respect to the increasing rates of deterioration. Mosheiov (1994) considered the following objec- tive functions: makespan, total flow time, total weighted comple- tion time, total lateness, maximum lateness and maximum tardiness, and number of tardy jobs. When the values of the basic processing times equal zero, all these problems can be solved poly- nomially. Sundararaghavan and Kunnathur (1994) considered the single-machine scheduling problem in which the processing time is a binary function of a common start time due date. The jobs will incur processing time penalties for starting after the due date, and the objective is to minimize the sum of the weighted completion times. Three special cases of this problem can be solved optimally. Cheng and Ding (2001) considered the scheduling model in which each job has a normal processing time that deteriorates as a step function if its starting time is beyond a given deterioration thresh- old. They showed that the flow time problem with identical job deteriorating dates is NP-hard, and suggested a pseudo-polynomial algorithm for the makespan problem. They also introduced a gen- eral method of solution for the flow time problem. Chen (1996), Hsieh and Bricker (1997), and Mosheiov (1998) considered scheduling linear deteriorating jobs on a group of par- allel identical machines. Chen (1996) considered minimizing the flow time, while Hsieh and Bricker (1997), and Mosheiov (1998) studied makespan minimization. Mosheiov (2002) considered the computational complexity of the flow shop, open shop, and job shop makespan minimization problems with simple linear deteri- orating jobs. He introduced a polynomial-time algorithm for the 0360-8352/$ - see front matter Ó 2008 Elsevier Ltd. All rights reserved. doi:10.1016/j.cie.2008.09.020 q This manuscript was processed by Area Editor Maged M. Dessouky. * Corresponding author. E-mail address: [email protected] (J.-B. Wang). Computers & Industrial Engineering 56 (2009) 1487–1493 Contents lists available at ScienceDirect Computers & Industrial Engineering journal homepage: www.elsevier.com/locate/caie

Two-machine flow shop scheduling with linear decreasing job deterioration

Embed Size (px)

Citation preview

Computers & Industrial Engineering 56 (2009) 1487–1493

Contents lists available at ScienceDirect

Computers & Industrial Engineering

journal homepage: www.elsevier .com/ locate/caie

Two-machine flow shop scheduling with linear decreasing job deterioration q

Ji-Bo Wang a,*, Li-Li Liu b

a School of Science, Shenyang Institute of Aeronautical Engineering, Shenyang 110136, People’s Republic of Chinab School of Science, Shanghai Second Polytechnic University, Shanghai 201209, People’s Republic of China

a r t i c l e i n f o

Article history:Received 23 March 2008Received in revised form 10 September2008Accepted 12 September 2008Available online 20 September 2008

Keywords:SchedulingFlow shopDeteriorating jobsTotal completion timeBranch-and-bound algorithmHeuristic algorithm

0360-8352/$ - see front matter � 2008 Elsevier Ltd. Adoi:10.1016/j.cie.2008.09.020

q This manuscript was processed by Area Editor Ma* Corresponding author.

E-mail address: [email protected] (J.-B. W

a b s t r a c t

In this paper, we consider a two-machine flow shop scheduling problem with deteriorating jobs. By adeteriorating job, we mean that the processing time is a decreasing function of its execution start time.A proportional linear decreasing deterioration function is assumed. The objective is to find a sequencethat minimizes total completion time. Optimal solutions are obtained for some special cases. For the gen-eral case, several dominance properties and some lower bounds are derived to speed up the eliminationprocess of a branch-and-bound algorithm. A heuristic algorithm is also proposed to overcome the ineffi-ciency of the branch-and-bound algorithm. Computational results for randomly generated probleminstances are presented, which show that the heuristic algorithm effectively and efficiently in obtainingnear-optimal solutions.

� 2008 Elsevier Ltd. All rights reserved.

1. Introduction

Traditional scheduling problems usually involve jobs with con-stant, independent processing times. In practice, however, we of-ten encounter settings in which the job processing times increaseor decrease over time. Researchers have formulated this phenom-enon into different models and solved different problems for vari-ous criteria. Extensive surveys of scheduling models and problemsconcerning start time dependent job processing times can be foundin Alidaee and Womer(1999) and Cheng, Ding, and Lin (2004). Gen-erally, two types of models are used to describe this kind of pro-cess. The first type is devoted to problems in which the jobprocessing times are characterized by a non-decreasing function,and the second type concerns problems in which the job process-ing times are given by a non-increasing function. Applications ofthese models can be found, among others, in fire fighting, emer-gency medicine, police, machine maintenance, computer science,and radar science.

Browne and Yechiali(1990) considered a scheduling problem inwhich the processing times of the jobs are linear deteriorationfunctions of their starting times. They showed that this problemcan be solved optimally. Mosheiov (1991) considered the problemthat all the jobs are characterized by a common positive basic pro-cessing time. Based on this basic assumption, Mosheiov proved

ll rights reserved.

ged M. Dessouky.

ang).

that the optimal schedule to minimize flowtime is symmetricand has a V-shaped property with respect to the increasing ratesof deterioration. Mosheiov (1994) considered the following objec-tive functions: makespan, total flow time, total weighted comple-tion time, total lateness, maximum lateness and maximumtardiness, and number of tardy jobs. When the values of the basicprocessing times equal zero, all these problems can be solved poly-nomially. Sundararaghavan and Kunnathur (1994) considered thesingle-machine scheduling problem in which the processing timeis a binary function of a common start time due date. The jobs willincur processing time penalties for starting after the due date, andthe objective is to minimize the sum of the weighted completiontimes. Three special cases of this problem can be solved optimally.Cheng and Ding (2001) considered the scheduling model in whicheach job has a normal processing time that deteriorates as a stepfunction if its starting time is beyond a given deterioration thresh-old. They showed that the flow time problem with identical jobdeteriorating dates is NP-hard, and suggested a pseudo-polynomialalgorithm for the makespan problem. They also introduced a gen-eral method of solution for the flow time problem.

Chen (1996), Hsieh and Bricker (1997), and Mosheiov (1998)considered scheduling linear deteriorating jobs on a group of par-allel identical machines. Chen (1996) considered minimizing theflow time, while Hsieh and Bricker (1997), and Mosheiov (1998)studied makespan minimization. Mosheiov (2002) considered thecomputational complexity of the flow shop, open shop, and jobshop makespan minimization problems with simple linear deteri-orating jobs. He introduced a polynomial-time algorithm for the

1488 J.-B. Wang, L.-L. Liu / Computers & Industrial Engineering 56 (2009) 1487–1493

two-machine flow shop and two-machine open shop problems,respectively. He also proved that the three-machine flow shop,three-machine open shop, and two-machine job shop problemsare NP-hard, respectively. Kononov and Gawiejnowicz (2001) con-sidered the makespan minimization problem. They showed thatunder linear deterioration the two-machine flow shop problem isstrongly NP-hard, and the two-machine open shop problem is or-dinary NP-hard. They also showed that for the three-machine flowshop problem with simple linear deterioration, there does not exista polynomial-time approximation algorithm with a worst-case ra-tio bounded by a constant. Finally, they proved that the three-ma-chine open shop problem with simple linear deterioration isordinary NP-hard. Wang and Xia (2006a, 2006b) considered gen-eral, no-wait or no-idle flow shop scheduling problems with jobprocessing times dependent on their starting times. In these prob-lems some dominating relationships between machines can be sat-isfied. They showed that polynomial algorithms exist for theproblems to minimize makespan or weighted sum of completiontimes. However, when the objective is to minimize maximum late-ness, the solution of the corresponding classical version may nothold.

Apart from the increasing linear model for the job processingtimes, there is also a decreasing linear model. This model wasintroduced by Ho, Leung, and Wei (1993), who considered theproblem of solution feasibility with deadline restrictions. Ng,Cheng, Bachman, and Janiak (2002) considered three schedulingproblems with a decreasing linear model of the job processingtimes, where the objective function is to minimize total comple-tion time, and two of the problems are solved optimally. A pseu-do-polynomial-time algorithm was constructed to solve the thirdproblem using dynamic programming. Some interesting relation-ships between the linear models with decreasing and increasingstart time dependent parts were presented by Ng et al. (2002).Bachman, Cheng, Janiak, and Ng (2002) considered the single-ma-chine scheduling problem with start time dependent job process-ing times. They proved that the problem of minimizing totalweighted completion time is NP-hard. They also considered somespecial cases. Wang and Xia(2005) considered scheduling problemsunder a special type of linear decreasing deterioration. They pre-sented optimal algorithms for single-machine scheduling to mini-mize makespan, maximum lateness, maximum cost, and numberof late jobs, respectively. For the two-machine flow shop schedul-ing problem to minimize makespan, they proved that the optimalschedule can be obtained by Johnson’s rule. If the processing timesof all the operations are equal for each job, they proved that theflow shop scheduling problem can be transformed into single-ma-chine scheduling problem. Wang (2007) considered the general,no-wait and no-idle flow shop scheduling problem with deteriorat-ing jobs, respectively. They assumed that the processing time is adecreasing function of its starting time. They also assumed thatthe normal processing time is proportional to its decreasing rate,and some dominant relationships between the machines hold.They showed that polynomial algorithms exist for the problemsto minimize makespan or weighted sum of completion time,although these problems are more complicated than their classicalcounterparts. When the objective is to minimize maximum late-ness, the solution of the classical version may not hold.

In this paper, we consider the two-machine flow shop schedul-ing problem to minimize sum of completion times with propor-tional linear decreasing deterioration. This model was proposedby Wang and Xia (2005) and Wang (2007). It is well-known thatflow shop scheduling to minimize total completion time is NP-hardeven if there are no deteriorating jobs (Garey, Johnson, & Sethi,1976). Therefore, the problem of two-machine flow shop schedul-ing to minimize the sum of completion times with proportionaldecreasing deterioration is NP-hard.

The rest of paper is organized as follows. In the next section,we give the problem description. In Section 3, we consider somepolynomially solvable special cases. In Section 4, we first pro-pose several elimination rules to enhance the efficiency of thesearch for the optimal solution, then we establish some lowerbounds to improve the branching procedures. In Section 5, wedevelop a heuristic algorithm to find near-optimal solutions. InSection 6, we present computational experiments to evaluatethe performance of the branch-and-bound algorithm and theheuristic algorithm. Concluding remarks are given in the lastsection.

2. Problem description

There are n jobs J1; J2; . . . ; Jn to be processed successively on twomachines M ¼ fM1;M2g in that order. Each job can be processed onno more than one machine at any time, while each machine canhandle only one job at a time and the processing of a job maynot be interrupted. All the jobs are available for processing at time0. The operation of job Jj on machine Mi is denoted by Tij. As inWang and Xia (2005) and Wang (2007), we assume that the pro-cessing time of operation Tij is given by

pijðtÞ ¼ aijð1� utÞ ði ¼ 1;2; j ¼ 1;2; . . . ; nÞ; ð1Þ

where aij > 0 denotes the normal processing time of operation Tij, tis its starting time. It is assumed that u satisfies the followingcondition:

0 < u < 1 and uXn

i¼1

Xn

j¼1

aij � amin

!< 1;

where amin ¼mini¼1;2;j¼1;2;...;nfaijg:

The first condition ensures that the decrease in processingtime of each job is less than one unit for every unit of delay inits starting moment. The second condition ensures that all thejob processing times are positive in a feasible schedule (see alsoHo & Gupta, 1995, 2007 for detailed explanations). The objectiveis to find a schedule that minimizes total completion time ormean flow time, a widely used performance measure in schedul-ing literature. We assume unlimited intermediate storagebetween successive machines for the general flow shop schedul-ing problem.

Let Ci;jðpÞ denote the completion time of job Jj on machine Mi

under some schedule p. Let Ci;½j�ðpÞ denote the completion timeof the jth job on machine Mi under schedule p. Thus, the comple-tion time of job Jj is Cj ¼ C2;j. Using the three-field notation forscheduling problem classification, the problem can be representedas F2jpijðtÞ ¼ aijð1� utÞj

PCj. For ease of exposition, we denote a1j

by aj, and a2j by bj; j ¼ 1;2; . . . ;n.For u ¼ 0, the problem F2jpij ¼ aijð1� utÞj

PCj is the classical

problem F2kP

Cj, hence, in this paper, we only consider the caseof u > 0.

3. Solvable cases

Lemma 1. There exists an optimal schedule in which the job sequence

is identical on both machines.

Proof. Similar to the proof of Theorem 3.6 in Brucker (2004). h

Lemma 1 implies that only permutation schedules need be con-sidered for this problem. In what follows, it is shown that our prob-lem is solvable for some special cases.

J.-B. Wang, L.-L. Liu / Computers & Industrial Engineering 56 (2009) 1487–1493 1489

Lemma 2. For a given schedule p ¼ ½J1; J2; . . . ; Jn� of 1jpjðtÞ ¼ajð1� utÞj

PCj, if job Jj starts at time t0 P 0, then its completion

time Cj is equal to

Cj ¼ t0 �1u

� �Yj

i¼1

ð1� uaiÞ þ1u: ð2Þ

Proof. The proof can be found in Wang and Xia (2005). h

Lemma 3. The quantityPn

j¼1

Qjk¼1ð1� uakÞ is maximized by arrang-

ing aj in their non-decreasing values.

Proof. Using the simple job interchanging technique, the resultcan be easily obtained. h

Lemma 4. The quantityPn

i¼1wip½i� is minimized by matching thesmallest value of wi with the largest value of p½i�, the next smallestvalue of wi with the next largest value of p½i�, and so on. While,Pn

i¼1wip½i� is maximized by matching the smallest value of wi withthe smallest value of p½i�, the next smallest value of wi with the nextsmallest value of p½i�, and so on.

Proof. The proof can be found in Hardy, Littlewood, and Polya(1934). h

Theorem 1. For the problem F2jpij ¼ aijð1� utÞ; a1j ¼ aj; a2j ¼bjP

Cj, an optimal schedule can be obtained by sequencing the jobsin non-decreasing order of aj.

Proof. Reindex the jobs in order of non-decreasing aj, where tiesare settled arbitrarily. Let r denote the corresponding schedule;due to the numbering, Jj occupies the jth position in r. Let p denotean arbitrary schedule, and J½j�ðj ¼ 1;2; . . . ;nÞ denote the job thatoccupies the jth position in p.

We prove the theorem by showing that CjðrÞ 6 C½j�ðpÞ forj ¼ 1;2; . . . ;n. The proof is based on induction. For j ¼ 1, from (2),we have

C1ðrÞ ¼1uð1� ð1� ua1Þð1� ubÞÞ 6 1

uð1� ð1� ua½1�Þð1� ubÞÞ

¼ C ½1�ðpÞ:

Suppose that CjðrÞ 6 C½j�ðpÞ for j ¼ 1;2; . . . ; k. We have

Ckþ1ðrÞ ¼maxfCkðrÞ;C1;kþ1ðrÞg þ bð1� u maxfCkðrÞ; C1;kþ1ðrÞgÞ¼ ð1� buÞmaxfCkðrÞ;C1;kþ1ðrÞg þ b

and

C ½kþ1�ðpÞ ¼ ð1� buÞmaxfC ½k�ðrÞ; C1;½kþ1�ðrÞg þ b:

Since C1;kþ1ðrÞ ¼ 1u 1 �

Qkþ1i¼1 ð1 � uaiÞ

� �6

1u 1 �

Qkþ1i¼1 ð1 � ua½i�Þ

� �¼ C1;½kþ1�ðpÞ and CkðrÞ 6 C½k�ðpÞ, we have that Ckþ1ðrÞ 6 C½kþ1�ðpÞ.This completes the proof. h

Now we consider another special case: the flow shop schedul-ing with dominant machines. Following Ho and Gupta (1995),Wang, Ng, Cheng, and Liu (2006) and Wang (2007), machine M1

is dominated by M2, or M2 dominates M1 iff maxfajjj ¼1;2; . . . ; ng 6 minfbjjj ¼ 1;2; . . . ;ng (denoted as M1 < M2).

Theorem 2. For the problem F2jpijðtÞ ¼ aijð1� utÞ;M1 < M2jP

Cj

and a fixed job in the first sequence position, an optimal schedule canbe obtained by sequencing the remaining ðn� 1Þ jobs in non-decreasing order of bj.

Proof. The proof can be found in Wang (2007). h

To solve the problem, therefore, all the jobs can in turn be fixedin the first sequence position to generate n schedules. The one withthe minimum total completion time among these n schedules is anoptimal schedule for F2jpijðtÞ ¼ aijð1� utÞ;M1 < M2j

PCj.

Theorem 3. For the problem F2jpijðtÞ ¼ aijð1� utÞ;M1 > M2jP

Cj,an optimal schedule can be obtained by sequencing the jobs in non-decreasing order of aj=½ð1� uajÞð1� ubjÞ�.

Proof. The proof can be found in Wang (2007). h

Theorem 4. For the problem F2jpij ¼ aijð1� utÞ; a1j ¼ a2j ¼ ajjP

Cj,an optimal schedule can be obtained by sequencing the jobs in non-decreasing order of aj.

Proof. Similar to the proof of Wang and Xia (2005). h

4. Dominance properties and lower bounds

4.1. Dominance properties

The problem under consideration was shown to be NP-hardeven if there are no deteriorating jobs (Garey et al., 1976). There-fore, a branch-and-bound algorithm is proposed to derive the opti-mal solution.

Let S1 ¼ ðpJiJjp0Þ, and S2 ¼ ðpJjJip0Þ be obtained from S1 by onlyinterchanging jobs Ji and Jj, where p and p0 are partial sequences.Further, we assume that there are r � 1 jobs in p. Thus jobs Ji

and Jj are the rth (ðr þ 1Þth) and the ðr þ 1Þth (rth)jobs in S1 (S2).To further simplify the notation, let A and B denote the completiontimes of the last job in p on M1 and M2, respectively.

Obviously, the completion times of Jk in sequences S1 and S2 areequal if it is in p since both sequences have the same jobs in thesepositions. To show S2 dominates S1, it suffices to show that thecompletion times of Ji and Jj satisfy the condition that

C ½r�ðS2Þ þ C½rþ1�ðS2Þ < C½r�ðS1Þ þ C½rþ1�ðS1Þ ð3Þ

and that the ðr þ 1Þth jobs in S1 and S2 satisfied the condition that

C ½rþ1�ðS2Þ 6 C½rþ1�ðS1Þ: ð4Þ

Jobs in p0 may be delayed due to (4), i.e.,

C ½k�ðS2Þ 6 C ½k�ðS1Þ; if J½k� 2 p0: ð5Þ

Proposition 1. If B P A� 1u

� �ð1� uajÞ þ 1

u, B� 1u

� �ð1� ubjÞP

A� 1u

� �ð1� uaiÞð1� uajÞ, and bi > bj , then S2 dominates S1.

Proof. Since B P A� 1u

� �ð1� uajÞ þ 1

u and B� 1u

� �ð1� ubjÞP

A� 1u

� �ð1� uaiÞð1� uajÞ, the completion times of Ji and Jj in S2

are

C ½r�ðS2Þ ¼maxfAþ ajð1� uAÞ;Bgþ bjð1� u maxfAþ ajð1� uAÞ;BgÞ

¼ max A� 1u

� �ð1� uajÞ þ

1u;B

� � 1

u

� �ð1� ubjÞ þ

1u

¼ B� 1u

� �ð1� ubjÞ þ

1u;

and

C ½rþ1�ðS2Þ ¼ max A� 1u

� �ð1� uajÞð1� uaiÞ

��

þ 1u; B� 1

u

� �ð1� ubjÞ þ

1u

� 1

u

�ð1� ubiÞ þ

1u

¼ B� 1u

� �ð1� ubjÞð1� ubiÞ þ

1u:

From bi > bj, we have

1490 J.-B. Wang, L.-L. Liu / Computers & Industrial Engineering 56 (2009) 1487–1493

C ½r�ðS1Þ ¼ max A� 1u

� �ð1� uaiÞ þ

1u;B

� � 1

u

� �ð1� ubiÞ þ

1u

P B� 1u

� �ð1� ubiÞ þ

1u

> B� 1u

� �ð1� ubjÞ þ

1u

B� 1u< 0

� �

¼ C½r�ðS2Þ; ð6Þ

and

C½rþ1�ðS1Þ ¼ max A�1u

� �ð1�uajÞð1�uaiÞþ

1u;C ½r�ðS1Þ

� �1

u

� �ð1�ubjÞþ

1u

P C ½r�ðS1Þ�1u

� �ð1�ubjÞ þ

1u

P B�1u

� �ð1�ubiÞð1�ubjÞ þ

1u

¼ C½rþ1�ðS2Þ: ð7Þ

Thus, from (6) and (7), we have

C ½r�ðS2Þ þ C½rþ1�ðS2Þ < C ½r�ðS1Þ þ C½rþ1�ðS1Þ:

Therefore, S2 dominates S1. h

Using the similar method of Proposition 1, the following propo-sitions can be easily obtained.

Proposition 2. If B P A� 1u

� �ð1� uajÞ þ 1

u, B� 1u

� �ð1� ubjÞ 6

A� 1u

� �ð1� uaiÞð1� uajÞ, aj < bi and aj < bj, then S2 dominates S1.

Proposition 3. If B 6 A� 1u

� �ð1� uajÞ þ 1

u, ð1� uaiÞð1� ubiÞ 6ð1� uajÞð1� ubjÞ and ai > bj > bi, then S2 dominates S1.

Proposition 4. If B 6 A� 1u

� �ð1� uajÞ þ 1

u, ð1� uaiÞð1� ubiÞ 6ð1� uajÞð1� ubjÞ and ai > bj > aj, then S2 dominates S1.

Proposition 5. If B 6 A� 1u

� �ð1� uajÞ þ 1

u, ð1� uaiÞð1� ubiÞ 6ð1� uajÞð1� ubjÞ and bi < ai < bj, then S2 dominates S1.

Proposition 6. If B 6 A� 1u

� �ð1� uajÞ þ 1

u, ð1� uaiÞð1� ubiÞ 6ð1� uajÞð1� ubjÞ and aj < ai < bj, then S2 dominates S1.

Proposition 7. If B 6 A� 1u

� �ð1� uajÞ þ 1

u, ð1� uaiÞð1� ubiÞ 6ð1� uajÞð1� ubjÞ and bi 6 ai and ai < bj, then S2 dominates S1.

Proposition 8. If B 6 A� 1u

� �ð1� uajÞ þ 1

u, ðB� 1uÞð1� ubiÞP

A� 1u

� �ð1� uajÞð1� ubjÞ and bi < ai < bj, then S2 dominates S1.

Proposition 9. If B 6 A� 1u

� �ð1� uajÞ þ 1

u, ðB� 1uÞð1� ubiÞP

A� 1u

� �ð1� uajÞð1� ubjÞ and ai > bj > bi, then S2 dominates S1.

Proposition 10. If B 6 A� 1u

� �ð1� uajÞ þ 1

u, aj 6 bi and aj < bj 6 ai,then S2 dominates S1.

Proposition 11. If A� 1u

� �ð1� uajÞ þ 1

u 6 B 6 A� 1u

� �ð1� uaiÞ þ 1

u,B� 1

u

� �ð1� ubjÞ 6 A� 1

u

� �ð1� uaiÞð1� ubiÞ, aj P bi and bi < bj, then

S2 dominates S1.

To further curtail the size of branching trees, we develop twodominance properties for a pairwise interchange of two non-adja-cent jobs. Let S1 and S2 be two job schedules, where the differencebetween S1 and S2 is a pairwise interchange of two non-adjacentjobs Ji and Jj, i.e., S1 ¼ ðpJip0Jjp00Þ and S2 ¼ ðpJjp0Jip00Þ, where p, p0and p00 are partial sequences. Furthermore, we assume that thereare r � 1 jobs in p. Theorems 5 and 6 below can be easily obtainedby Theorems 1 and 4.

Theorem 5. If jobs Ji and Jj satisfy ai > aj and bi ¼ bj, then S2

dominates S1.

Theorem 6. If jobs Ji and Jj satisfy ai ¼ bi;aj ¼ bj, ai > aj, then S2

dominates S1.

4.2. Lower bounds

The efficiency of a branch-and-bound algorithm largely de-pends on the effectiveness of calculating lower bounds for partialsolutions. In this subsection, we establish four lower bounds. Sup-pose that PS is a partial schedule in which the order of the first kjobs has been determined and S is a complete schedule obtainedfrom PS. By definition, the completion time of the ðkþ 1Þth job is

C½kþ1�ðSÞ ¼ max1u

1�Ykþ1

j¼1

ð1� ua½j�Þ !

; C½k�ðSÞ( )

� 1u

!ð1� ub½kþ1�Þ þ

1u

P C½k�ðSÞ �1u

� �ð1� ub½kþ1�Þ þ

1u:

Similarly,

C½i�ðSÞ ¼ max1u

1�Ykþ1

j¼1

ð1� ua½j�Þ !

;C ½i�1�ðSÞ( )

� 1u

!ð1� ub½i�Þ þ

1u

P C½k�ðSÞ �1u

� � Yi

j¼kþ1

ð1� ub½j�Þ þ1u

for i ¼ kþ 1; . . . ;n:

Therefore, the total completion time of S is

TCðSÞ ¼Xk

j¼1

C ½j�ðSÞ þXn

j¼kþ1

C ½j�ðSÞ

PXk

j¼1

C ½j�ðSÞ þ ðC ½k�ðSÞ �1uÞXn

j¼kþ1

Yj

i¼kþ1

ð1� ub½i�Þ þ ðn� kÞ1u:

ð8Þ

Observe that the first term on the right-hand side of Eq. (8) isknown, the term C½k�ðSÞ is known and a lower bound for PS canbe obtained by maximizing the term

Pnj¼kþ1

Qji¼kþ1ð1� ub½i�Þ. From

Lemma 3, we obtain the first lower bound

LB1 ¼Xk

j¼1

C ½j�ðSÞ þ C ½k�ðSÞ �1u

� � Xn

j¼kþ1

Yj

i¼kþ1

ð1� ubðiÞÞ

þ ðn� kÞ1u

ð9Þ

where bðkþ1Þ 6 bðkþ2Þ 6 . . . 6 bðnÞ is a non-decreasing order of thedeterioration rates on M2 for the remaining unscheduled jobs.However, if the deterioration rates on the first machine are longer,this lower bound may not be tight. To overcome this situation, weneed to take the deterioration rates on M1 into consideration.Therefore,

C½i� ¼ max1u

1�Ykþ1

j¼1

ð1� ua½j�Þ !

;C½i�1�ðSÞ( )

� 1u

!ð1� ub½i�Þ þ

1u

P1u

1�Yi

j¼1

ð1� ua½j�Þð1� ub½i�Þ !

for i ¼ kþ 1; . . . ;n:

ð10Þ

Therefore, the total completion time of S is

TCðSÞ¼Xk

j¼1

C½j�ðSÞþXn

j¼kþ1

C½j�ðSÞ

PXk

j¼1

C ½j�ðSÞþ1uðn�kÞ�

Xn

i¼kþ1

Yi

j¼kþ1

ð1�ua½j�Þð1�ub½i�Þ !

PXk

j¼1

C ½j�ðSÞþ1uðn�kÞ�ð1�u min

kþ16j6nfbjgÞ

Xn

i¼kþ1

Yi

j¼kþ1

ð1�ua½j�Þ !

: ð11Þ

J.-B. Wang, L.-L. Liu / Computers & Industrial Engineering 56 (2009) 1487–1493 1491

Observe that the first term on the right-hand side of Eq. (11) isknown, the term ð1� uminkþ16j6nfbjgÞ is known and a lower boundfor PS can be obtained by maximizing the term

Pnj¼kþ1

Qji¼kþ1

ð1� ua½i�Þ. From Lemma 3, the maximum value of Eq. (11) can beobtained by sequencing the unscheduled jobs in a non-decreasingorder of the deterioration rates on M1. Consequently, we obtain thesecond lower bound

LB2 ¼Xk

j¼1

C½j�ðSÞ

þ 1uðn� kÞ � ð1� u min

kþ16j6nbjÞ

Xn

i¼kþ1

Yi

j¼kþ1

ð1� uaðjÞÞ !

; ð12Þ

where aðkþ1Þ 6 aðkþ2Þ 6 . . . 6 aðnÞ is a non-decreasing order of thedeterioration rates on M1 for the remaining unscheduled jobs.

The third lower bound is based on Lemma 4.

TCðSÞ ¼Xk

j¼1

C ½j�ðSÞ þXn

j¼kþ1

C ½j�ðSÞ

PXk

j¼1

C ½j�ðSÞ þ1uðn� kÞ �

Xn

i¼kþ1

Yi

j¼kþ1

ð1� ua½j�Þð1� ub½i�Þ !

PXk

j¼1

C ½j�ðSÞ þ1uðn� kÞ �

Xn

i¼kþ1

ð1� ubðiÞÞYi

j¼kþ1

ð1� uaðjÞÞ !

;

ð13Þ

where aðkþ1Þ 6 aðkþ2Þ 6 . . . 6 aðnÞ and bðkþ1Þ 6 bðkþ2Þ 6 . . . 6 bðnÞ (notethat aðjÞ and bðjÞ are not necessarily for the same job). The lastinequality is obtained from Lemma 4 (

Qij¼kþ1ð1� uaðjÞÞ is a decreas-

ing function of i). Therefore, the third lower bound is given asfollows

LB3 ¼Xk

j¼1

C½j�ðSÞ

þ 1uðn� kÞ �

Xn

i¼kþ1

ð1� ubðiÞÞYi

j¼kþ1

ð1� uaðjÞÞ !

: ð14Þ

In order to make the lower bound tighter, we choose the max-imum value of Eqs. (9), (12), and (14) as the lower bound of PS.That is

LB� ¼maxfLB1; LB2; LB3g:

5. Heuristic algorithm

The search for an optimal or near-optimal sequence for a sched-uling problem requires exact and approximate solution techniques,respectively. In most cases, exact solution techniques can solve theproblem with a limited number of jobs. On the other hand, a heu-ristic algorithm might provide a good solution in an efficient way.In this section, we present a heuristic algorithm.

The procedure is adapted from the results in Wang, Chu, andProth (1996) and Lee and Wu (2004).

Wang et al. (1996) proposed three heuristic algorithms for thisproblem when there are no deteriorating jobs. The first methodfocus on avoiding or reducing idle time on the second machine.The second method focus on avoiding or reducing waiting timeof the jobs on the second machine. The third method chooses jobson local optimality considerations. Their computational resultsshowed that the first heuristic method is superior to the others.Lee and Wu (2004) proposed a two-phase heuristic algorithm forthe same problem with a learning effect. Thus, the heuristic algo-rithm is modified from the first heuristic method of Wang et al.

(1996) and a two-phase heuristic algorithm of Lee and Wu(2004). That is, the job that has the maximize ð1� uaiÞð1� ubiÞon two machines is the first one to be processed (see Eq. (2)). Ifthere are ties, the job with the smallest normal processing timeon the first machine is chosen. We then choose the next unsched-uled job from these jobs that have arrived at M2 before the comple-tion of the last scheduled job. If more than one job satisfies thiscondition, a job with the shortest normal processing time on M1

is chosen. If no job satisfies the condition, we choose the job thathas the earliest arrival time, to minimize the idle time of M2.

In summary, the steps of the heuristic procedure are as follows.

A heuristic algorithm

Phase I

Step 1. Set k ¼ 1 and N ¼ fJ1; J2; . . . ; Jng.Step 2. Choose job Ji with the maximum ð1� uaiÞð1� ubiÞ to be

scheduled in the kth position. Set Ak ¼ ai andC½k� ¼ 1

u ð1� ð1� uaiÞð1� ubiÞÞ. Delete Ji from N.Step 3. Collect the jobs that satisfy the condition

ðAk � 1uÞð1� uaiÞ þ 1

u 6 C½k�:Step 3.1. If more than one job meets the condition, then

choose the job Ji having the smallest ai to be sched-uled in the ðkþ 1Þth position.

Step 3.2. If no job meets the condition, then choose the job Ji

with the smallest processing time bi on M1 to bescheduled in the ðkþ 1Þth position. Update C½k� byC½kþ1� ¼ max Ak � 1

u

� �ð1� uaiÞ þ 1

u ;C½k� �

� 1u

� �ð1� ubiÞþ

1u and Ak by Akþ1 ¼ Ak � 1

u

� �ð1� uaiÞ þ 1

u. Delete Ji fromN. Increase k by 1.

Step 4. If N is not empty, then go to Step 3. Otherwise, Stop.

Phase II

Step 1. Let S0 be the schedule obtained from Phase IStep 2. Set k ¼ 1 and i ¼ kþ 1.Step 3. Create a new sequence S1 by moving J½i� forward to posi-

tion k in S0. Replace S0 by S1 if the value of the total com-pletion time of S1 is smaller than that of S0.

Step 4. Increase i by 1. If i 6 n, go to Step 3.Step 5. Increase k by 1. If k < n, go to Step 2. Otherwise, stop.

The time complexity: The Phase I takes time Oðn2Þ and Phase IItakes time Oðn2Þ, hence, the complexity of Algorithm B is Oðn2Þ.

6. Computational experiments

Computational experiments were conducted to evaluate theeffectiveness of the branch-and-bound algorithm and the heuristicalgorithm. The heuristic algorithm and the branch-and-bound algo-rithm were coded in VC++ 6.0 and the computational experimentswere run on a Pentium 4 personal computer. The normal job pro-cessing times on M1 and M2 were generated from a uniform distribu-tion over (0,10). For all the tests, the values u ¼ 0:5G and u ¼ 0:1Gwere used, where G ¼ 1=

Pni¼1ðai þ biÞ �mini¼1;2;...;n

�fai; big�.

In order to test the branch-and-bound algorithm, seven differ-ent job sizes, n = 9, 10, 11, 12, 13, 14, and 15 were used. As a con-sequence, seven experimental conditions were examined and 20replications were randomly generated for each condition. A totalof 280 problems were tested. For the branch-and-bound algorithm,the average number of nodes, the maximum number of nodes, theaverage time, and the maximum time (in seconds) are reported.The contribution of the dominance properties and the lower boundis shown by the algorithm efficiency, which is calculated in terms

Table 1Results of branch-and-bound algorithm and heuristic algorithm

u n Branch-and-bound algorithm Heuristic algorithm Lower bound

CPU time (s) Node number (Heur� V�Þ=V� ð%Þ (V� � LBÞ=LB ð%Þ

Mean Max Mean Max Mean Max Mean Max

u ¼ 0:1G 9 0.051 0.203 8596 40861 2.132 9.912 7.871 17.49010 0.225 1.094 38168 216933 4.331 15.113 8.616 19.78611 1.076 7.609 167718 1314663 5.119 18.956 6.519 20.35812 2.181 8.735 305980 1362422 4.238 21.117 7.417 24.18313 15.999 213.172 1754288 23281062 5.438 20.925 10.204 26.39814 129.071 2007.938 5003039 59231191 8.437 23.713 10.867 25.03915 862.125 8085.245 22189631 203645123 8.945 24.529 11.161 26.964

u ¼ 0:5G 9 0.048 0.172 7483 35762 3.154 10.941 9.516 22.27010 0.079 0.563 11765 103637 5.224 18.511 9.521 20.77511 0.662 4.172 102062 720472 4.621 21.415 8.893 23.83112 2.416 27.563 359816 4424832 5.892 22.482 11.094 24.58013 10.088 64.094 1244939 8348986 7.258 20.223 9.114 19.34014 173.627 2551.678 6528962 53151932 6.562 24.614 10.184 21.57715 993.162 7097.496 15189654 125068963 8.925 25.351 11.598 23.553

Table 2Performance evaluation of the heuristic algorithm

n u ¼ 0:1G u ¼ 0:5G

Heur time (s) (Heur � LB)/LB (%) Heur time (s) (Heur � LB)/LB (%)

10 0.0000 16.828 0.0008 18.65220 0.0031 20.610 0.0023 15.17530 0.0039 20.272 0.0031 19.28140 0.0109 21.898 0.0040 18.40650 0.0197 21.441 0.0047 18.37860 0.0353 20.661 0.0142 22.12270 0.0588 21.959 0.0182 22.69980 0.0844 21.735 0.0368 21.47990 0.1243 22.717 0.0408 21.166100 0.1812 20.470 0.0609 21.210

1492 J.-B. Wang, L.-L. Liu / Computers & Industrial Engineering 56 (2009) 1487–1493

of the number of nodes explored compared to the total number ofnodes. For the heuristic algorithm, the average and maximum errorpercentage are recorded. The error percentage of the solution pro-duced by the heuristic algorithm is calculated as (Heur� V�)/V�,where Heur is the solution value of the heuristic algorithm andV� is the optimal value of the objective function obtained by thebranch-and-bound algorithm. For the gap between the optimalvalues and the lower bound, the average and maximum error per-centage are recorded. The error percentage of the solution pro-duced by the branch-and-bound algorithm is calculated as(V� � LBÞ=LB. The results are summarized in Table 1.

Table 2 reports the performance of the heuristic method interms of accuracy. Accuracy is defined as (Heur-LB)/LB, where Heuris the solution value of the heuristic algorithm.

The heuristic method was tested for 10 sizes of the problem(n = 10, 20, 30, 40, 50, 60, 70, 80, 90, and 100). As a consequence,10 experimental conditions were examined and 20 replicationswere randomly generated for each condition. A total of 400 prob-lems were tested. For the heuristic algorithm, the average CPU timein seconds, and the average percentage deviation of the heuristicalgorithm from the lower bound, i.e., (Heur-LB)/LB, are reported.From Table 2, we see that the performance of the heuristic algo-rithm is effective.

7. Conclusions

In this paper, we investigated a two-machine flow shop schedul-ing problem under the assumption that the processing times are notconstant over time. We assumed that the jobs follow a proportionallinear decreasing deterioration function. Some polynomially solv-able special cases were given. Several dominance conditions and

lower bounds for the total completion time of the problem weredeveloped and used in a proposed branch-and-bound algorithm tosearch for the optimal solutions. A heuristic algorithm was also pro-posed, which was shown by computational experiments to be effec-tive and efficient in obtaining near-optimal solutions.

Acknowledgements

We are grateful to two anonymous referees for their helpfulcomments on earlier version of this paper. This research was sup-ported in part by the Science Research Foundation of the Educa-tional Department of Liaoning Province, China, under Grant No.20060662. Liu was also partially supported by Innovation Programof Shanghai Municipal Education Commission 08ZY78.

References

Alidaee, B., & Womer, N. K. (1999). Scheduling with time dependent processingprocessing times: review and extensions. Journal of the Operational ResearchSociety, 50, 711–720.

Bachman, A., Cheng, T. C. E., Janiak, A., & Ng, C. T. (2002). Scheduling start timedependent jobs to minimize the total weighted completion time. Journal of theOperational Research Society, 53, 688–693.

Browne, S., & Yechiali, U. (1990). Scheduling deteriorating jobs on a singleprocessor. Operations Research, 38, 495–498.

Brucker, P. (2004). Scheduling algorithms. Berlin: Springer.Chen, Z.-L. (1996). Parallel machine scheduling with time dependent processing

times. Discrete Applied Mathematics, 70, 81–94.Cheng, T. C. E., & Ding, Q. (2001). Single machine scheduling with step-

deterioration processing times. European Journal of Operational Research, 134,623–630.

Cheng, T. C. E., Ding, Q., & Lin, B. M. T. (2004). A concise survey of scheduling withtime-dependent processing times. European Journal of Operational Research, 152,1–13.

Garey, M. R., Johnson, D. S., & Sethi, R. (1976). The complexity of flowshop andjobshop scheduling. Mathematics of Operations Research, 1, 117–129.

Hardy, G. H., Littlewood, J. E., & Polya, G. (1934). Inequalities. Cambridge: CambridgeUniversity Press. p. 261.

Ho, J. C., & Gupta, J. N. D. (1995). Flowshop scheduling with dominant machines.Computers and Operations Research, 22, 237–246.

Ho, K. I-J., Leung, J. Y-T., & Wei, W-D. (1993). Complexity of scheduling tasks withtime-dependent execution times. Information Processing Letters, 48, 315–320.

Hsieh, Y. C., & Bricker, D. L. (1997). Scheduling linearly deteriorating jobs onmultiple machines. Computers and Industrial Engineering, 32, 727–734.

Kononov, A., & Gawiejnowicz, S. (2001). NP-hard cases in scheduling deterioratingjobs on dedicated machines. Journal of the Operational Research Society, 52,708–717.

Lee, W.-C., & Wu, C.-C. (2004). Minimizing total completion time in a two-machineflowshop with a learning effect. International Journal of Production Economics, 88,85–93.

Mosheiov, G. (1991). V-shaped policies for scheduling deteriorating jobs. OperationsResearch, 39, 979–991.

Mosheiov, G. (1994). Scheduling jobs under simple linear deterioration. Computersand Operations Research, 21, 653–659.

J.-B. Wang, L.-L. Liu / Computers & Industrial Engineering 56 (2009) 1487–1493 1493

Mosheiov, G. (1998). Multi-machine scheduling with linear deterioration. INFOR, 36,205–214.

Mosheiov, G. (2002). Complexity analysis of job-shop scheduling with deterioratingjobs. Discrete Applied Mathematics, 117, 195–209.

Ng, C. T., Cheng, T. C. E., Bachman, A., & Janiak, A. (2002). Three scheduling problemswith deteriorating jobs to minimize the total completion time. InformationProcessing Letters, 81, 327–333.

Sundararaghavan, P. S., & Kunnathur, A. S. (1994). Single machine scheduling withstart time dependent processing times: Some solvable cases. European Journal ofOperational Research, 78, 394–403.

Wang, C., Chu, C., & Proth, J. M. (1996). Efficient heuristic and optimal approachesfor n=2=F=

PCi scheduling problems. International Journal of Production

Economics, 44, 225–237.

Wang, J.-B. (2007). Flow shop scheduling problems with decreasing lineardeterioration under dominant machines. Computers and Operations Research,34, 2043–2058.

Wang, J.-B., Ng, C. T., Cheng, T. C. E., & Liu, L. L. (2006). Minimizing total completiontime in a two-machine flow shop with deteriorating jobs. Applied Mathematicsand Computation, 180, 185–193.

Wang, J.-B., & Xia, Z.-Q. (2005). Scheduling jobs under decreasing lineardeterioration. Information Processing Letters, 94, 63–69.

Wang, J.-B., & Xia, Z.-Q. (2006a). Flow shop scheduling with deteriorating jobs underdominating machines. Omega, 34, 327–336.

Wang, J.-B., & Xia, Z.-Q. (2006b). Flow shop scheduling problems with deterioratingjobs under dominating machines. Journal of the Operational Research Society, 57,220–226.