11
Multi-family scheduling in a two-machine reentrant flow shop with setups Dar-Li Yang a , Wen-Hung Kuo a, * , Maw-Sheng Chern b a Department of Information Management, National Formosa University Yun-Lin 632, Taiwan, ROC b Department of Industrial Engineering and Engineering Management, National Tsing Hua University, Hsin-Chu 300, Taiwan, ROC Received 28 September 2005; accepted 22 June 2006 Available online 7 November 2006 Abstract This paper considers a two-machine multi-family scheduling problem with reentrant production flows. The problem consists of two machines, M 1 and M 2 , and each job has the processing route (M 1 ,M 2 ,M 1 ,M 2 ). There are identical jobs in the same family and the jobs in the same family are processed in succession. Each machine needs a setup time before the first job in a family is processed. The objective is to minimize the maximum completion time. Examples of such a problem occur in the bridge construction, semiconductor industry and job processing on numerical controlled machines, where they usually require that the jobs are reprocessed once and there are identical jobs in the same family. This problem is shown to be NP-hard. A branch-and-bound algorithm is proposed, and computational experiments are provided. Ó 2006 Elsevier B.V. All rights reserved. Keywords: Scheduling; Setup time; Reentrant production flows; NP-hard; Branch-and-bound 1. Introduction In this paper, we consider a two-machine multi-family scheduling problem with reentrant production flows [4,5,20,21]. The problem consists of two machines, M 1 and M 2 , and each job has the processing route (M 1 ,M 2 , M 1 ,M 2 ). There are identical jobs in the same family. The jobs in the same family are processed in succession. There is a sequence-independent setup time to initiate the processing of a family on each machine. The objec- tive is to minimize the maximum completion time. Such scheduling problems with reentrant production flows have some practical applications. In this paper, we consider the proposed model with application to a bridge construction problem. Similar types of problems arise in the job processing on numerical controlled machines and semiconductor industry [5,7,13,20]. For example, in wafer fabrication the actual integrated circuits are developed on a silicon or gallium arsenic wafer using photolithography, etching and diffusion processes [7,13]. It usually requires that these operations must be repeated more than one time. 0377-2217/$ - see front matter Ó 2006 Elsevier B.V. All rights reserved. doi:10.1016/j.ejor.2006.06.065 * Corresponding author. Tel.: +886 5 6315733; fax: +886 4 22939659. E-mail addresses: [email protected] (D.-L. Yang), [email protected] (W.-H. Kuo), [email protected] (M.-S. Chern). Available online at www.sciencedirect.com European Journal of Operational Research 187 (2008) 1160–1170 www.elsevier.com/locate/ejor

Multi-family scheduling in a two-machine reentrant flow shop with setups

Embed Size (px)

Citation preview

Page 1: Multi-family scheduling in a two-machine reentrant flow shop with setups

Available online at www.sciencedirect.com

European Journal of Operational Research 187 (2008) 1160–1170

www.elsevier.com/locate/ejor

Multi-family scheduling in a two-machine reentrantflow shop with setups

Dar-Li Yang a, Wen-Hung Kuo a,*, Maw-Sheng Chern b

a Department of Information Management, National Formosa University Yun-Lin 632, Taiwan, ROCb Department of Industrial Engineering and Engineering Management, National Tsing Hua University, Hsin-Chu 300, Taiwan, ROC

Received 28 September 2005; accepted 22 June 2006Available online 7 November 2006

Abstract

This paper considers a two-machine multi-family scheduling problem with reentrant production flows. The problemconsists of two machines, M1 and M2, and each job has the processing route (M1, M2, M1, M2). There are identical jobsin the same family and the jobs in the same family are processed in succession. Each machine needs a setup time before thefirst job in a family is processed. The objective is to minimize the maximum completion time. Examples of such a problemoccur in the bridge construction, semiconductor industry and job processing on numerical controlled machines, where theyusually require that the jobs are reprocessed once and there are identical jobs in the same family. This problem is shown tobe NP-hard. A branch-and-bound algorithm is proposed, and computational experiments are provided.� 2006 Elsevier B.V. All rights reserved.

Keywords: Scheduling; Setup time; Reentrant production flows; NP-hard; Branch-and-bound

1. Introduction

In this paper, we consider a two-machine multi-family scheduling problem with reentrant production flows[4,5,20,21]. The problem consists of two machines, M1 and M2, and each job has the processing route (M1, M2,M1, M2). There are identical jobs in the same family. The jobs in the same family are processed in succession.There is a sequence-independent setup time to initiate the processing of a family on each machine. The objec-tive is to minimize the maximum completion time. Such scheduling problems with reentrant production flowshave some practical applications. In this paper, we consider the proposed model with application to a bridgeconstruction problem. Similar types of problems arise in the job processing on numerical controlled machinesand semiconductor industry [5,7,13,20]. For example, in wafer fabrication the actual integrated circuits aredeveloped on a silicon or gallium arsenic wafer using photolithography, etching and diffusion processes[7,13]. It usually requires that these operations must be repeated more than one time.

0377-2217/$ - see front matter � 2006 Elsevier B.V. All rights reserved.

doi:10.1016/j.ejor.2006.06.065

* Corresponding author. Tel.: +886 5 6315733; fax: +886 4 22939659.E-mail addresses: [email protected] (D.-L. Yang), [email protected] (W.-H. Kuo), [email protected] (M.-S. Chern).

Page 2: Multi-family scheduling in a two-machine reentrant flow shop with setups

D.-L. Yang et al. / European Journal of Operational Research 187 (2008) 1160–1170 1161

For the two-machine flowshop scheduling problems, Johnson [9] first proposed a polynomial time algorithmfor solving it. Mitten [12] extended the problem with time lags. Sule and Huang [17] permitted the setup andremoval times to be independent of the processing time. In the group scheduling consideration, Baker [2] andSekiguchi [16] considered a two-machine flowshop scheduling problem where each group required a setup time.Vickson and Alfredsson [19] showed that a two-machine multi-family flowshop scheduling problem can besolved by Johnson’s rule. Cetinkaya and Kayaligil [3] extended this to the problem with setup time which is sep-arated from the processing time. Yang and Chern [22] extended this to the problem with setup and removal times,which are separated from the processing time and there are transportation times of jobs between machines. Forcomprehensive surveys on scheduling problems with setup time, the reader is referred to Allahverdi et al. [1].

Recently, many papers have dealt with the reentrant shop scheduling. The basic characteristic of a reentrantshop is that jobs visit a certain machine or a set of machines more than once. Lev and Adiri [11] considered themakespan problem with the jobs have the processing route (M1,M2, . . . ,Mm�1,Mm,Mm�1, . . .,M2,M1). Theyshowed that the problem is binary NP-hard for m = 2 and provided efficient solvable algorithms for some sim-ple special cases. Wang et al. [20] considered a problem with the technological constraints demand that each jobhas the processing route (M1,M2, . . .,Mm,M1). They showed that the problem is binary NP-hard for m = 2, andunary NP-hard for m P 3. Drobouchevitch and Strusevich [5] considered a problem with the jobs having theprocessing route (M1,M2,M1). They presented an O(n logn) time heuristic algorithm. Pan and Chen [14] con-sidered the makespan problem with the jobs having the processing route (M1,M2, . . .,Mm, M1,M2, . . .,Mm).They developed three mixed binary integer programming formulations and six extended effective heuristicsto solve the problem. In this paper, we consider the reentrant production flows that each job has the processingroute (M1,M2,M1,M2). We show that this problem is NP-hard and derive some theoretical results. Yang andChern [21] have proposed a heuristic algorithm for solving it and the optimal schedule can be derived analyt-ically in polynomial time if there is a single family. We note that the concept of disjunctive graph [15] canexpress the reentrant production flows. Owing to the complication of a disjunctive graph for the reentrant pro-duction flows, in this paper, we propose a clear and efficient algorithm to solve this problem.

In the next section, we consider a scheduling system with application to a bridge construction problem.Some theoretical results are given in Section 3. A branch-and-bound algorithm is proposed and computationalexperiments are provided.

2. A bridge construction problem

In constructing a bridge, many of piers will be impaled to support a bridge. Each pier (family) consists of anumber of identical piles (jobs). The impaling of a pile needs to drill a depth of h1 + h2 in the gravel layer and adepth of h3 in the rock layer. It may go through the following four operations one after another. The operation1 (0–10M drilling) is processed by machine 1, operation 2 (10M-Rock drilling) is processed by machine 2,operation 3 (rock socket drill) is again processed by machine 1 and operation 4 (concreting) is processedby machine 2. The impaling process can be graphically represented as shown in Fig. 1. The pile length is equalto h2 + h3 where h2 is the length of the pile in the gravel layer and h3 is that in the rock layer. The processingtimes of four operations are estimated as 10d1, (h1 + h2 � 10)d2, h3d3 and (h2 + h3)d4, where d1 (d2) is the timerequired for drilling one meter on the gravel layer for machine 1 (machine 2), d3 is the time required for drillingone meter on the rock layer for machine 1, and d4 is the time required for concreting the pile one meter formachine 2. A significant shifting time (setup time) is needed to move equipment from pier to pier. Since thehuge time spends on shifting, it is disadvantageous to move equipment before all piles in the current pier arecompleted. The objective is to minimize the maximum completion time (makespan), which is the time at whichall families are completed. We now formulate the bridge construction problem as a two-machine multi-familyscheduling problem with reentrant production flows. The notations and assumptions of the scheduling modelare described as follows:

(i) There are two different machines, M1 and M2.(ii) There are b different families, and each family B(i) consists of ni identical jobs, i = 1, . . . ,b. Each job j in

family B(i) consists of four operations OðiÞj1 , OðiÞj2 , OðiÞj3 , OðiÞj4 , j = 1, . . . ,ni. The jobs in the same family areprocessed in succession.

Page 3: Multi-family scheduling in a two-machine reentrant flow shop with setups

operation 1: 0-10 meter drilling by machine 1 operation 2: 10 meter-rock layer drilling by machine 2 (length = h1+h2-10)operation 3: drilling h3 meter on rock layer by machine 1 operation 4: concreting the pile by machine 2

gravel

layer

rock layer

h1

h2

h3

Fig. 1. The impaling process of a pile.

1162 D.-L. Yang et al. / European Journal of Operational Research 187 (2008) 1160–1170

(iii) Every job is processed through the same production route that M1!M2!M1!M2. The first and thethird operations are processed on M1, whereas the second and the fourth operations are processed onM2.

(iv) Each job in family B(i) has the same processing times. Let pðiÞ1 , pðiÞ2 , pðiÞ3 and pðiÞ4 be the processing times ofthe four operations.

(v) Let sðiÞ1 and sðiÞ2 be the sequence-independent setup times to initiate the processing of family B(i) on M1 andM2, respectively.

(vi) Each machine can handle only one job at a time and different operations of the same job cannot be pro-cessed simultaneously. Preemption is not allowed, that is, we need to keep an operation to be processedon a machine until it is completed.

(vii) The objective is to minimize the maximum completion time.

3. Theoretical results

The two-machine multi-family scheduling problem with reentrant production flows is first shown to be NP-hard. We then prove four dominance properties that facilitate the characterization of a set of optimal sched-ules in Section 4.

Observation 1. The two-machine multi-family scheduling problem with reentrant production flows is NP-hard.

Proof. Consider a special case of the proposed problem. Each setup time is zero and there is a single job ineach family. For each job, the last operation time is zero. The special case is equivalent to the problem, whichhas the processing route (M1,M2,M1). This problem has been proven to be NP-hard [10,11,20]. Hence, thetwo-machine multi-family scheduling problem with reentrant production flows is NP-hard. h

Observation 2. For any two jobs j,k in family B(i), if, for some r 2 {1,2,3,4}, OðiÞjr is processed before OðiÞkr , thenit is sufficient to consider the schedules in which OðiÞjl is processed before OðiÞkl for l = 1,2,3,4.

Proof. Without loss of generality, we consider r = 1. Suppose that there is a feasible schedule II which doesnot satisfy this property. Then there is a job j in family B(i) such that OðiÞj1 is processed before the operation OðiÞk1

Page 4: Multi-family scheduling in a two-machine reentrant flow shop with setups

D.-L. Yang et al. / European Journal of Operational Research 187 (2008) 1160–1170 1163

and other operation OðiÞjl may, however, be processed after OðiÞkl , l 2 {2,3,4}. Since all jobs in family B(i) areidentical, the operations OðiÞkl and OðiÞjl can be repeatedly interchanged until each operation of job j is processedbefore that of job k. This does not increase the completion time. A simple example is illustrated in Fig. 2.

This process of interchanging job operations on machine 1, or on machine 2 may be repeated until aschedule II 0 which satisfies the property. II 0 is clearly not worse than II. Thus, the observation holds as r = 1.Similarly, by the same argument, it also holds for r = 2,3,4. h

For the sake of convenience, in the following discussion, we decompose the job ðOðiÞj1 ;OðiÞj2 ;O

ðiÞj3 ;O

ðiÞj4 Þ into two

parts, ðOðiÞj1 ;OðiÞj2 Þ and ðOðiÞj3 ;O

ðiÞj4 Þ. J ðiÞj is denoted as ðOðiÞj1 ;O

ðiÞj2 Þ and J ðiÞniþj as ðOðiÞj3 ;O

ðiÞj4 Þ. Thus, the proposed problem

can be considered as a two-machine flowshop problem with precedence constraints such that, for each family

B(i),J ðiÞj precedes J ðiÞniþj for j = 1, . . . ,ni. Here, J ðiÞj precedes J ðiÞniþj means that the first operation of J ðiÞniþj may notbe processed before the last operation of J ðiÞj is completed [15]. We will show that it is sufficient to consider thesame processing sequence of jobs on both machines after the decomposition has been made.

Observation 3. For each family B(i), it is sufficient to consider the schedules in which the processing sequencesof jobs are the same on both machines.

Proof. If it is not true in a schedule II, then there is a J ðiÞj which directly precedes J ðiÞk on machine 1 and followsJ ðiÞk on machine 2, perhaps with intervening operations. If k 6 ni, the order of operations of J ðiÞj ¼ ðO

ðiÞj1 ;O

ðiÞj2 Þ or

ðOðiÞj�ni;3;OðiÞj�ni ;4

Þ and that of J ðiÞk ¼ ðOðiÞk1 ;O

ðiÞk2Þ may then be interchanged on machine 1 without increasing the

maximum completion time (Fig. 3(a) and (b)). If j, k > ni, the order of operation J ðiÞj ¼ ðOðiÞj�ni;3

;OðiÞj�ni ;4Þ and that

of J ðiÞk ¼ ðOðiÞk�ni ;3

OðiÞk�ni;4Þ may then be interchanged on machine 2 without increasing the maximum completion

time (Fig. 3(c)). If j 6 ni, k > ni, there may be some intervening operations fOðiÞj12;OðiÞj22; . . . ;OðiÞjf 2;

OðiÞk14;OðiÞk24; . . . ;OðiÞkh4g between OðiÞk�ni ;4

and OðiÞj2 , where f, h P 0 (Fig. 3(d)). From Observation 2, the operations

OðiÞj11;OðiÞj21; . . . ;OðiÞjf 1 are all processed before OðiÞj1 . Hence, we may have a feasible schedule in which the operations

processed in succession as OðiÞj12; . . . ;OðiÞjf 2;OðiÞj2 ;O

ðiÞk�ni ;4

;OðiÞk14; . . . ;OðiÞkh4. The operations OðiÞj12; . . . ;OðiÞjf 2;OðiÞj2 are pro-

cessed before OðiÞk�ni ;4;OðiÞk14; . . . ;OðiÞkh4 without increasing the maximum completion time.

This process of interchanging jobs may be repeated until a schedule II 0 is obtained with the same order onmachine 1 as that on machine 2. Schedule II 0 is clearly not worse than II. Therefore Observation 3 holds. h

From Observation 3, we just need to consider the sequence of families and the sequence of jobs in the samefamily. This leads to considerable simplification as it reduces the solution search space to the determination ofan optimal sequence. Let I ðiÞ1 ¼ fJ

ðiÞ1 ; . . . ; J ðiÞni

g and I ðiÞ2 ¼ fJðiÞniþ1; . . . ; J ðiÞ2ni

g. Since each job in I ðiÞ1 has the sameprocessing times pðiÞ1 and pðiÞ2 , we will assume without loss of generality that if j < k 6 ni, then J ðiÞj is processed

before J ðiÞk . Similarly, if ni < j < k, then J ðiÞj is processed before J ðiÞk . The representation (ZðiÞ1 ; ZðiÞ2 ; . . . ; Zð1Þni

Þ isadopted here for a feasible schedule of family B(i), where ZðiÞ1 is the number of jobs in I ðiÞ1 which are processed

before J ðiÞniþ1 and ZðiÞk , k P 2, is the number of jobs in I ðiÞ1 which are processed between J ðiÞniþk�1 and J ðiÞniþk (Fig. 4).

These ZðiÞk ’s must satisfy the constraints:

ZðiÞ1 P 1; ZðiÞ1 þ ZðiÞ2 P 2; . . . ; ZðiÞ1 þ ZðiÞ2 þ . . .þ ZðiÞni�1 P ni � 1 and ZðiÞ1 þ ZðiÞ2 þ . . .þ ZðiÞni¼ ni: ð1Þ

For example, a two-family scheduling problem is given, where n1 = n2 = 3, sð1Þ1 ¼ 3, sð1Þ2 ¼ 4, pð1Þ1 ¼ 2,pð1Þ2 ¼ 1, pð1Þ3 ¼ 3, pð1Þ4 ¼ 4, sð2Þ1 ¼ 5, sð2Þ2 ¼ 1, pð2Þ1 ¼ 1, pð2Þ2 ¼ 2, pð2Þ3 ¼ 1 and pð2Þ4 ¼ 3, the representations of the

Fig. 2. An illustration for the interchange of operations.

Page 5: Multi-family scheduling in a two-machine reentrant flow shop with setups

Fig. 3. Four cases.

Fig. 4. The block Dk is jobs in I ðiÞ1 for k = 1, . . . ,ni.

1164 D.-L. Yang et al. / European Journal of Operational Research 187 (2008) 1160–1170

schedules for each family in Fig. 5(a) are ðZð1Þ1 ; Zð1Þ2 ; Zð1Þ3 Þ ¼ ð2; 1; 0Þ and ðZð2Þ1 ; Zð2Þ2 ; Zð2Þ3 Þ ¼ ð1; 2; 0Þ, respectively.This schedule is expressed as B(1)(2, 1,0) � B(2)(1, 2,0) and its makespan is 40. A Gantt chart is given inFig. 5(b).

For each family B(i), it is clear that the number of sequences containing the jobs in I ðiÞ1 and I ðiÞ2 is equal to(2ni)!/(ni!ni!) and the number of sequences which do not satisfy (1) is equal to (2ni)!/((ni � 1)!(ni + 1)!). Hence,the number of sequences which satisfy (1) is equal to (2ni)!/(ni!ni!) � (2ni)!/((ni � 1)!(ni + 1)!) = (2ni)!/(ni!(ni + 1)!) which is the so-called Catalan number T niþ1[18]. In the proposed problem, there are b! differentpermutations of b families, it follows that the total number of feasible schedules is b!

Qbi¼1ð2niÞ!=ðni!ðni þ 1Þ!Þ.

Theorem 1. Let II = (ni, 0, . . . , 0) and II 0 be any feasible schedule of family B(i) which is different from II. If

pðiÞ1 6 pðiÞ2 or pðiÞ3 P pðiÞ4 , then

ChðIIÞ 6 ChðII0Þ; h ¼ 1; 2;

where Ch(II) and Ch(II 0) are the completion times of schedules II and II 0 on machine h respectively.

Proof. Consider the case pðiÞ1 6 pðiÞ2 . Without loss of generality, we let II0 ¼ ðZðiÞ1 ; 0; . . . ; 0; ZðiÞk ; ZðiÞkþ1; . . . ; ZðiÞni

Þ,where ni > ZðiÞ1 P k � 1, ZðiÞk P 1 and k P 2. We will show that ðZðiÞ1 ; 0; . . . ; 0; 1; ZðiÞk � 1; ZðiÞkþ1; . . . ; ZðiÞni

Þ is notworse than ðZðiÞ1 ; 0; . . . ; 0; ZðiÞk ; Z

ðiÞkþ1; . . . ; ZðiÞni

Þ which is obtained by interchanging the order of J ðiÞniþk�1 and

Page 6: Multi-family scheduling in a two-machine reentrant flow shop with setups

Fig. 5. A sequence for a two-family problem, where n1 = n2 = 3.

D.-L. Yang et al. / European Journal of Operational Research 187 (2008) 1160–1170 1165

J ðiÞZðiÞ

1þ1

in II 0. The following subcases are considered:

(1) Consider the subcase pðiÞ1 6 pðiÞ2 and pðiÞ3 P pðiÞ4 . In II 0, let t1 be the completion time of the job processeddirectly before J ðiÞniþk�1 on machine 1 and t2 be the start time of J ðiÞniþk�1 on machine 1 (t1 6 t2). The com-

pletion time of J ðiÞZðiÞ

1þ1

on machine 1 is t2 þ pðiÞ3 þ pðiÞ1 . Now if we interchange the order of J ðiÞniþk�1 and J ðiÞZðiÞ

1þ1

in II 0, the completion time of J ðiÞniþk�1 on machine 1 is max {t1 þ pðiÞ1 þ pðiÞ3 , t2 þ pðiÞ3 }6 t2 þ pðiÞ3 þ pðiÞ1 . It isclear that this will not increase the completion time on machine 1.Since min{pðiÞ1 , pðiÞ4 } 6min{pðiÞ3 , pðiÞ2 }, by Johnson’s algorithm [9], it is clear that interchanging the order of

J ðiÞniþk�1 and J ðiÞZðiÞ

1þ1

in II 0 will not increase the completion time on machine 2. Hence,

(ZðiÞ1 ; 0; . . . ; 0; 1; ZðiÞk � 1; ZðiÞkþ1; . . . ; ZðiÞniÞ is not worse than II 0.

This process is continued until ðZðiÞ1 þ 1; 0; . . . ; 0; ZðiÞk � 1; ZðiÞkþ1; . . . ; ZðiÞniÞ is obtained. By the same argu-

ment, we can prove that (ni, 0, . . ., 0) is not worse than II 0.

(2) If pðiÞ1 6 pðiÞ2 ,pðiÞ3 < pðiÞ4 and pðiÞ1 6 pðiÞ3 , then (ni, 0, . . ., 0) is not worse than II 0. The proof is similar to that in(1).

(3) If pðiÞ1 6 pðiÞ2 , pðiÞ3 < pðiÞ4 , pðiÞ1 > pðiÞ3 and ni P 2, then the completion time of (ni, 0, . . ., 0) on machine 1 is

equal to maxfpðiÞ1 þ nipðiÞ2 þ pðiÞ3 ; niðpðiÞ1 þ pðiÞ3 Þg which is a lower bound of the completion time on machine

1. The completion time of (ni, 0, . . ., 0) on machine 2 is pðiÞ1 þ niðpðiÞ2 þ pðiÞ4 Þ which is a lower bound of thecompletion time on machine 2. Therefore (ni, 0, . . ., 0) is not worse than II 0.

Similarly, if pðiÞ3 P pðiÞ4 , the theorem also holds. h

Theorem 2. Let II = (1,1, . . . , 1) and II 0 be any feasible schedule of family B(i) which is different from II. If

pðiÞ2 ¼ 0 or pðiÞ3 ¼ 0, then

ChðIIÞ 6 ChðII0Þ; h ¼ 1; 2;

where Ch(II) and Ch(II 0) are the completion times of schedules II and II 0 on machine h respectively.

Proof. If pðiÞ2 ¼ 0, then the proposed problem is reduced to a conventional two-machine flowshop sequencingproblem with pðiÞ1 ¼ pðiÞ1 þ pðiÞ3 and pðiÞ2 ¼ pðiÞ4 . The completion time of (1,1, . . . , 1) on machine 1 isniðpðiÞ1 þ pðiÞ3 Þ ¼ nip

ðiÞ1 which is a lower bound of completion time on machine 1 for the two-machine flowshop

sequencing problem with processing times pðiÞ1 and pðiÞ2 . The completion time of (1,1,. . .,1) on machine 2 ismaxfniðpðiÞ1 þ pðiÞ3 Þ þ pðiÞ4 ; ðp

ðiÞ1 þ pðiÞ3 Þ þ nip

ðiÞ4 g ¼ maxfnip

ðiÞ1 þ pðiÞ2 ; p

ðiÞ1 þ nip

ðiÞ2 g which is also a lower bound on

machine 2 for the two-machine flowshop sequencing problem with processing times pðiÞ1 and pðiÞ2 . Hence,C1(II) 6 C1(II) 0) and C2(II) 6 C2(II) 0).

Similarly, if pðiÞ3 ¼ 0, we let pðiÞ1 ¼ pðiÞ1 and pðiÞ2 ¼ pðiÞ2 þ pðiÞ4 , the theorem also holds. h

Page 7: Multi-family scheduling in a two-machine reentrant flow shop with setups

1166 D.-L. Yang et al. / European Journal of Operational Research 187 (2008) 1160–1170

Owing to the NP-hardness of proposed problem, this implies that a polynomial time algorithm to optimallysolve the problem is probably not possible [6]. Therefore it is desirable that an efficient branch-and-boundalgorithm must be developed for the problem. In next section, these theoretical results will be implementedin the proposed branch-and-bound algorithm for eliminating nodes in the enumeration tree.

4. A branch-and-bound algorithm

In the proposed algorithm, there are ‘‘family nodes’’ and ‘‘job nodes’’ in the enumeration tree. The branch-ing of families is made by taking each of the unsequenced families in turn and placing it next in the permu-tation of families already determined. By using the representation which is described in Section 3, the jobs arebranched from each of the family nodes created. The procedure for branching of jobs in the current family isrepeated until a feasible schedule of the current family is determined. After that, new family nodes are createdby branching for the unassigned families at each of the job nodes (Fig. 6).

Let ðBði1Þ;Bði2Þ; . . . ;BðirÞ;X ; . . . ;X Þ be a family node at which the sequence of r families is specified. For sim-plicity, in the following discussion, we denote (ir) = [r] for r = 1,2, . . . ,b. Let ðZ ½r�1 ; . . . ; Z ½r�s ;X ; . . . ;X Þ be a jobnode at which s positions in the representation of family B[r] is specified.

After branching of families at (B[1],B[2], . . . ,B[r],X, . . . ,X), (k � r) family nodes are branched by placing eachof the unsequenced families, B[r+1], next in the permutation already sequenced: (B[1],B[2], . . . ,B[r],B[r+1],

X, . . . ,X). The job node ðZ ½r�1 ; . . . ; Z ½r�s ;X ; . . . ;X Þ of family B[r] is associated with partial sequence, J ½r�1 ; . . . ;

J ½r�Z ½r�

1

; J ½r�n½r�þ1; J½r�Z½r�

1þ1; . . . ; J ½r�

Z ½r�1þZ½r�

2

; J ½r�n½r�þ2; . . . ; J ½r�Ps�1

j¼1Z½r�j þ1

. . . ; J ½r�Ps

j¼1Z½r�j

; J ½r�n½r�þs, such thatj 6Pj

l¼1Z ½r�l 6 n½r� for all

j = 1, . . . , s. IfPs

l¼1Z ½r�l ¼ n½r�, then a feasible schedule ðZ ½r�1 ; . . . ; Z ½r�s ; 0; . . . ; 0) of family B[r] is obtained. A job

node ðZ ½r�1 ; . . . ; Z ½r�s ; Z½r�sþ1;X ; . . . ;X Þ is branched from node ðZ ½r�1 ; . . . ; Z ½r�s ;X ; . . . ;X Þ for an integer Z ½r�sþ1, where

0 6 Z ½r�sþ1 6 n½r�, only if sþ 1 6Psþ1

l¼1Z ½r�l 6 n½r�.

For the job node ðZ ½r�1 ; . . . ; Z ½r�s ;X ; . . . ;X Þ, we assume that there is no need for idle time on either one ofmachines for the unsequenced jobs. The lower bound is as follows:

LBðNrsÞ ¼ max C1ðN rsÞ þ n½r� �Xs

l¼1

Z ½r�l

!p½r�1 þ n½r� � s

� �p½r�3 þ

Xi2Gr

sðiÞ1 þ ni pðiÞ1 þ pðiÞ3

� �� �(

þmini2GrfpðiÞ4 g; C2ðN rsÞ þ n½r� �

Xs

l¼1

Z ½r�l

!p½r�2 þ n½r� � s

� �p½r�4 þ

Xi2Gr

sðiÞ2 þ ni pðiÞ2 þ pðiÞ4

� �� �

where Gr = {ijFamily B(i) is not scheduled yet} and N rs ¼ B½1�ðZ ½1�1 ; . . . ; Z ½1�n½1�Þ � B½2�ðZ ½2�1 ; . . . ; Z ½2�n½2�

Þ � � � � �B½r�1�ðZ ½r�1�

1 ; . . . ; Z ½r�1�n½r�1�Þ � B½r�ðZ ½r�1 ; . . . ;Z ½r�s ;X ; . . . ;X Þ. Cj(Nrs) is the completion time of the scheduled jobs Nrs

on machine j. n½r� �Ps

l¼1Z ½r�l

� �p½r�j þ ðn½r� � sÞp½r�jþ2 is the sum of processing times of unscheduled jobs in the cur-

rent family B[r] on machine j.P

i2GrðsðiÞj þ niðpðiÞj þ pðiÞjþ2ÞÞ is the sum of family processing times for unscheduled

families on machine j.It is clear that an upper bound U can usually reduce the computation time in the branch-and-bound algo-

rithm. For example, a heuristic solution can be derived [21]. The completion time of the heuristic solution ischosen as an initial value U. If the completion time of a feasible schedule is less than U, then U is updated. Ajob node is fathomed if and only if the lower bound of this node is greater than or equal to U. We use the leastcost (LC) search strategy [8] that always selects the job node at which LB(Nrs) is the smallest among all theunfathomed nodes for further branching. In the case of ties, we select the node with the largest value of r

and break the tie arbitrarily for the other cases. A stepwise description of the algorithm is given as follows:

Algorithm 1

Step 0. (Initiation) Generate a heuristic solution and determine the upper bound U.Step 1. (Creating the family node) Create the family nodes by placing each of the families not yet allocated

next in the sequence of family already determined.

Page 8: Multi-family scheduling in a two-machine reentrant flow shop with setups

Fig. 6. The branching process for the scheduling problem.

D.-L. Yang et al. / European Journal of Operational Research 187 (2008) 1160–1170 1167

Step 2. (Creating the job node) For each newly generated family node, if the newly allocated family B(i) sat-isfies the condition stated in Theorems 1 or 2, then it just need to create the job nodeðZðiÞ1 ; . . . ; ZðiÞni

Þ ¼ ðni; 0; . . . ; 0Þ or (1,1, . . . , 1) in the enumeration tree. Otherwise, create all of the jobnodes.

Step 3. (Calculating the lower bound) For each newly generated job node, calculate the lower bound. If thelower bound is not less than U, then the job node is fathomed. If the job node is a feasible schedule ofthe proposed problem, then determine the completion time Cmax. If Cmax < U, then set U = Cmax.Continue this process until all the newly generated job nodes are checked.

Step 4. (Testing the optimality) If all job nodes are fathomed, then U is the optimal value and the algorithmis terminated. Otherwise, go to Step 5.

Page 9: Multi-family scheduling in a two-machine reentrant flow shop with setups

Table 1Computational results for the algorithm

b Number of jobs in abatch ni 2 [c,d]

Observed in 20 test problems Minimum number of feasibleschedules b! · ((2c)!/(c!(c + 1)!))b

Minimum number ofnodes created

Average number ofnodes created

Maximum number ofnodes created

Average CPU times(seconds)

5 [5,10] 5 11 (48) 22 0.10 (0.41) 1.6 · 1010

[10,20] 5 20 (102) 36 0.18 (0.92) 1.6 · 1023

[20,30] 5 28 (153) 42 0.24 (1.21) 1.5 · 1051

[30,40] 5 39 (245) 62 0.38 (2.21) 9.7 · 1079

[40,50] 5 51 (476) 64 0.43 (3.89) 1.5 · 10109

10 [5,10] 20 80 (313) 172 1.05 (4.01) 6.2 · 1022

[10,20] 71 121 (517) 164 1.53 (6.22) 6.5 · 1048

[20,30] 83 162 (883) 251 2.01 (10.28) 5.4 · 10104

[30,40] 90 305 (1458) 492 3.86 (19.34) 2.4 · 10162

[40,50] 92 381 (1872) 603 4.02 (21.03) 5.6 · 10220

15 [5,10] 72 208 (807) 402 4.26 (16.25) 3.2 · 1037

[10,20] 74 545 (2016) 821 10.03 (39.05) 3.4 · 1076

[20,30] 173 820 (3517) 1403 17.64 (71.84) 2.6 · 10160

[30,40] 384 1176 (4771) 1804 20.42 (82.16) 7.6 · 10246

[40,50] 221 1384 (6502) 2013 22.36 (118.21) 2.7 · 10334

20 [5,10] 213 412 (1508) 817 13.07 (42.53) 7.1 · 1050

[10,20] 302 907 (3889) 1513 30.14 (130.47) 7.8 · 10102

[20,30] 576 1504 (7503) 2589 45.21 (230.58) 5.4 · 10214

[30,40] 638 2085 (11021) 3501 70.32 (315.15) 1.0 · 10330

[40,50] 665 2503 (15068) 5176 90.36 (545.89) 5.7 · 10446

Note: There in parentheses are the computational results of the algorithm without node elimination (i.e. without using Theorems 1 and 2).

1168D

.-L.

Ya

ng

eta

l./

Eu

rop

ean

Jo

urn

al

of

Op

eratio

na

lR

esearch

18

7(

20

08

)1

16

0–

11

70

Page 10: Multi-family scheduling in a two-machine reentrant flow shop with setups

D.-L. Yang et al. / European Journal of Operational Research 187 (2008) 1160–1170 1169

Step 5. (Selecting a node for further branching) Select a job node with the smallest lower bound among theunfathomed nodes. If the selected node corresponds to a feasible schedule of the current family, thengo to Step 1. Otherwise, create all newly generated job nodes and go to Step 3.

5. Computational experiments

In order to evaluate the efficiency of the proposed algorithm and node elimination method, we have gen-erated several groups of random problems as follows:

(1) b= the number of families. B = 5, 10, 15, or 20.(2) pðiÞj ¼ the processing time of jth operation for the jobs in family B(i) ÆpðiÞj is uniformly distributed over

[5,15].(3) sðiÞj ¼ the setup time of family B(i) on machine j. sðiÞj is uniformly distributed over [20, 40].(4) ni = the number of jobs in family B(i). ni is uniformly distributed over [5,10], [10,20], [20,30], [30, 40], or

[40,50] depending on the group.

The computational experiments are conducted on a Sun SPARC II. The branch-and-bound algorithm iscoded in Pascal. We may also obtain a heuristic solution at each job node [21]. If the completion time of aheuristic solution is less than the upper bound U, then U is updated. There are 20 test problems for each prob-lem type. A total of 400 test problems are generated. The computational results are presented in Table 1. Foreach problem group, the table reports minimum, average and maximum numbers of job nodes created andaverage CPU times in seconds.

As it can be seen from the Table 1, the performance of the proposed algorithm with the node eliminationmethod is quite satisfactory. The number of average generated job nodes is seen to be extremely small com-pared with the minimum number of feasible schedules for each problem type.

6. Conclusions

In this paper, we investigate a two-machine multi-family scheduling problem with reentrant productionflows. This scheduling model has some practical applications. Examples of such a problem occur in the bridgeconstruction and integrated circuit manufacturing, where they usually require that the jobs are reprocessedonce and there are identical jobs in the same family. This problem is shown to be NP-hard and a branch-and-bound algorithm is proposed. Some theoretical results are also derived and implemented in the proposedalgorithm for eliminating nodes in the enumeration tree.

This paper considers the two-machine case. Further researches may be extended to the m-machine case(m > 2) and there may be duplication of each type of machines. It is also worthwhile to consider some otherperformance measures in the problem, for example, total completion time.

Acknowledgements

This work was partially supported by the National Science Council of the Republic of China under GrantNSC-93-2213-E-150-019.

References

[1] A. Allahverdi, C.T. Ng, T.C.E. Cheng, M.Y. Kovalyov, A survey of scheduling problems with setup times or costs. European Journalof Operational Research, in press, doi:10.1016/j.ejor.2006.06.060.

[2] K.R. Baker, Scheduling groups of jobs in the two-machine flow shop, Mathematical and Computer Modelling 13 (1990) 29–36.[3] F.C. Cetinkaya, M.S. Kayaligil, Unit sized transfer family scheduling with setup times, Computers and Industrial Engineering 22

(1992) 177–183.[4] M.S. Chern, D.L. Yang, A two-machine scheduling problem with reprocessing operations, in: The 5th International Congress on

Computational and Applied Mathematics, Belgium, 1992.

Page 11: Multi-family scheduling in a two-machine reentrant flow shop with setups

1170 D.-L. Yang et al. / European Journal of Operational Research 187 (2008) 1160–1170

[5] I.G. Drobouchevitch, V.A. Giordani, A heuristic algorithm for two-machine re-entrant shop scheduling, Annals of OperationsResearch 86 (1999) 417–439.

[6] M.R. Garey, D.S. Johnson, Computers and Intractability: A Guide to the Theory of NP-Completeness, Freeman, San Francisco,1979.

[7] H. Gurnani, R. Anupindi, R. Akella, Control of family processing systems in semiconductor wafer fabrication facilities, IEEETransactions on Semiconductor Manufacturing 5 (1992) 319–327.

[8] E. Horowitz, S. Sahni, Fundamentals of Computer Algorithms, Computer Science Press, Inc., 1978.[9] S.M. Johnson, Optimal two- and three-stage production schedules with setup times included, Naval Research Logistics Quarterly 1

(1954) 61–68.[10] J.K. Lenstra, A.H.G. Rinnooy Kan, P. Brucker, Complexity of machine scheduling problems, Annals of Discrete Mathematics 1

(1977) 343–362.[11] V. Lev, I. Adiri, V-Shop scheduling, European Journal of Operational Research 18 (1984) 51–56.[12] L.G. Mitten, Sequencing n jobs on two machines with arbitrary time lags, Management Science 5 (1958) 293–298.[13] S.J. Moss, A. Ledwith (Eds.), The Chemistry of the Semiconductor Industry, Chapman and Hall, New York, 1987.[14] J.C.-H. Pan, J.-S. Chen, Minimizing makespan in reentrant permutation flow-shops, Journal of Operational Research Society 57

(2003) 642–653.[15] A.H.G. Rinnooy Kan, Machine Scheduling Problems: Classification, Complexity and Computations, Nijhoff, The Hague, Holland,

1976.[16] Y. Sekiguchi, Optimal schedule in a GT-type flow-shop under series-parallel precedence constraints, Journal of Operations Research

Society of Japan 26 (1983) 226–251.[17] D.R. Sule, K.Y. Huang, Sequency on two and three machines with setup, processing and removal times separated, International

Journal of Production Research 21 (1983) 723–732.[18] I. Tomescu, Introduction to Combinatiorics (Translated from Romanian by I. Tomescu and S. Rudeanu), Collet’s Publishers Ltd.,

London, Wellingborough, 1975.[19] R.G. Vickson, B.E. Alfredsson, Two- and three-machine flow shop scheduling problems with equal sized transfer families,

International Journal of Production Research 30 (1992) 1551–1574.[20] M.Y. Wang, S.P. Sethi, S.L. Van De Velde, Minimizing makespan in a class of reentrant shops, Operations Research 45 (1997) 702–

712.[21] D.L. Yang, M.S. Chern, A scheduling problem with reprocessing operations - a case study, Journal of Management 14 (1997) 135–

154.[22] D.L. Yang, M.S. Chern, Two-machine flowshop group scheduling problem, Computers and Operations Research 27 (2000) 975–985.