11
Int. J. Production Economics 113 (2008) 1038–1048 A two-stage multiple-machine assembly scheduling problem for minimizing sum of completion times C.S. Sung , Hyun Ah Kim Department of Industrial Engineering, KAIST, Yuseong-gu, Daejeon 305-701, Republic of Korea Received 20 December 2005; accepted 19 December 2007 Available online 9 January 2008 Abstract This paper considers a two-stage multiple-machine assembly scheduling problem for minimizing the sum of completion times. The first stage consists of two independent machines, each of which produces its own type of components. The second stage consists of two identical and independent parallel machines. The processing of the second stage cannot begin until the processing of the first stage is finished. Minimizing the sum of completion times at the second stage is considered as the scheduling measure. A lower bound based on the SPT rule is derived, which is then used to develop a branch-and- bound algorithm. An efficient simple heuristic algorithm is also developed. r 2008 Elsevier B.V. All rights reserved. Keywords: Two-stage assembly scheduling; Sum of completion times; Branch-and-bound 1. Introduction This paper considers a manufacturing system where two types of components (or sub-assemblies) are fabricated first at their pre-assembly (first) stage and then assembled into final products (jobs) at their assembly (second) stage. The first and second stages consist of two fabrication machines and two assembly machines in parallel, respectively. The processing at the second stage cannot begin until the pre-assembly processing (both the processings in two fabrication machines) is finished. The objective is to find the optimal job schedule to minimize the sum of total completion times at the second stage. This problem is concerned with the following process environment: Each final product is as- sembled with two components that are first pro- cessed at the associated fabrication machines at the pre-assembly stage and then assembled together into a final product at the main assembly station. This type of assembly process is called ‘‘fixed assembly’’ since a fixed position is assigned to the assembly operation and each component should be processed on the pre-specified fabrication machine (Yoon and Sung, 2005). In this case, the compo- nents are pre-assembled separately and indepen- dently at the first stage, and then assembled at the second stage. For example, body and chassis are two components of a fire engine. They can be fabricated independently and then brought into the assembly station (Lee et al., 1993). Production of the body and the chassis can take place in the associated machines at the same time, but the final ARTICLE IN PRESS www.elsevier.com/locate/ijpe 0925-5273/$ - see front matter r 2008 Elsevier B.V. All rights reserved. doi:10.1016/j.ijpe.2007.12.007 Corresponding author. Tel.: +82 42 869 3131; fax: +82 42 869 3110. E-mail addresses: [email protected] (C.S. Sung), [email protected] (H.A. Kim).

A two-stage multiple-machine assembly scheduling problem for minimizing sum of completion times

  • Upload
    cs-sung

  • View
    214

  • Download
    2

Embed Size (px)

Citation preview

Page 1: A two-stage multiple-machine assembly scheduling problem for minimizing sum of completion times

ARTICLE IN PRESS

0925-5273/$ - se

doi:10.1016/j.ijp

�Correspondifax: +8242 869

E-mail addre

rhokum@kaist.

Int. J. Production Economics 113 (2008) 1038–1048

www.elsevier.com/locate/ijpe

A two-stage multiple-machine assembly scheduling problem forminimizing sum of completion times

C.S. Sung�, Hyun Ah Kim

Department of Industrial Engineering, KAIST, Yuseong-gu, Daejeon 305-701, Republic of Korea

Received 20 December 2005; accepted 19 December 2007

Available online 9 January 2008

Abstract

This paper considers a two-stage multiple-machine assembly scheduling problem for minimizing the sum of completion

times. The first stage consists of two independent machines, each of which produces its own type of components. The

second stage consists of two identical and independent parallel machines. The processing of the second stage cannot begin

until the processing of the first stage is finished. Minimizing the sum of completion times at the second stage is considered

as the scheduling measure. A lower bound based on the SPT rule is derived, which is then used to develop a branch-and-

bound algorithm. An efficient simple heuristic algorithm is also developed.

r 2008 Elsevier B.V. All rights reserved.

Keywords: Two-stage assembly scheduling; Sum of completion times; Branch-and-bound

1. Introduction

This paper considers a manufacturing systemwhere two types of components (or sub-assemblies)are fabricated first at their pre-assembly (first) stageand then assembled into final products (jobs) attheir assembly (second) stage. The first and secondstages consist of two fabrication machines and twoassembly machines in parallel, respectively. Theprocessing at the second stage cannot begin until thepre-assembly processing (both the processings intwo fabrication machines) is finished. The objectiveis to find the optimal job schedule to minimize thesum of total completion times at the second stage.

e front matter r 2008 Elsevier B.V. All rights reserved

e.2007.12.007

ng author. Tel.: +82 42 869 3131;

3110.

sses: [email protected] (C.S. Sung),

ac.kr (H.A. Kim).

This problem is concerned with the followingprocess environment: Each final product is as-sembled with two components that are first pro-cessed at the associated fabrication machines at thepre-assembly stage and then assembled togetherinto a final product at the main assembly station.This type of assembly process is called ‘‘fixedassembly’’ since a fixed position is assigned to theassembly operation and each component should beprocessed on the pre-specified fabrication machine(Yoon and Sung, 2005). In this case, the compo-nents are pre-assembled separately and indepen-dently at the first stage, and then assembled at thesecond stage. For example, body and chassis aretwo components of a fire engine. They can befabricated independently and then brought into theassembly station (Lee et al., 1993). Production ofthe body and the chassis can take place in theassociated machines at the same time, but the final

.

Page 2: A two-stage multiple-machine assembly scheduling problem for minimizing sum of completion times

ARTICLE IN PRESSC.S. Sung, H.A. Kim / Int. J. Production Economics 113 (2008) 1038–1048 1039

assembly station cannot start its processing untilboth the body and the chassis are delivered to theassembly station.

If the second assembly process is more compli-cated and time-consuming work than the first pre-assembly process, it may be beneficial to use severalparallel machines at the second assembly stage. Thispaper assumes that there are two identical machinesin parallel at the second assembly stage.

A two-stage multiple-machine assembly schedul-ing problem can be widely considered in variousapplications. For example, when a general assemblyprocess, such as a table assembly is performed, theboard and the legs are made separately at the firststage and then assembled together at the secondstage. As another example, two factories producetoothbrushes and toothpastes separately, and athird factory is employed to pack both the productstogether. In another situation, the two-stage multi-ple-machine assembly problems can also correspondto a cross-docking distribution problem where twoproducts are gathered together and then repacked.

The two-stage multiple-machine assembly pro-blem can also be used for project managementwhere jobs and machines are regarded as projectworks and project handling departments, respec-tively. For example, Departments A and B want tobuy office supplies, so that they ask a purchasingdepartment to buy those for them. The purchasingdepartment piles some requests up and then buyoffice supplies at one point in time. In this case, tosend a request in A or B department is the first-stageprocessing and to place an order in the purchasingdepartment is the second-stage processing.

The objective of this paper is to find an optimalschedule that minimizes the sum of completiontimes of all jobs, that is, the total flowtime. In asupply chain management environment, all theinvolved stages in the supply chain need to beintegrally managed, which is a very competitiveissue for each company to provide quick and goodservices to customers. Therefore, this paper con-siders the scheduling measure, flowtime, whichrepresents the time duration for each job to stayin the system, so that its minimization amounts toimproving customer service in terms of responsive-ness (Allahverdi, 2000).

There are a few papers that consider only the firststage. The consideration of only the first stage maycorrespond to the situation that the machine at thesecond stage has infinite capacity. For example,Sung and Yoon (1998) have used the total weighted

completion time as the scheduling measure for atwo-machine pre-assembly scheduling problemj(2-FPS) with two fabrication machines and provedthat the problem is NP-complete in the strong sense.Yoon and Sung (2005) have extended the problemto a general m-machine case, for which a branch-and-bound algorithm has been derived to obtain anoptimal schedule and an efficient greedy-typeheuristic algorithm has also been derived to obtaina near-optimal schedule.

Some other researches have been reported ontwo-stage assembly scheduling problems. For ex-ample, Lee et al. (1993) have considered a schedul-ing problem for a two-stage fixed assembly shopand proved that the problem is NP-complete withrespect to makespan measure, even for the case ofonly two fabrication machines. Potts et al. (1995)have generalized the problem to the case of multiplefabrication machines. For the same problem,Hariri and Potts (1997) have proposed a branch-and-bound algorithm, and Sun et al. (2003) havesuggested several powerful heuristic algorithms.Koulamas and Kyparisis (2001) have generalizedthe problem to a three-stage assembly schedulingproblem. They have proposed several heuristics tosolve the problem. Cheng and Wang (1999) andLin and Cheng (2002) have investigated a two-stage flowshop scheduling problem where eachstage has a single machine and various compo-nents are processed together in the single machineat the first stage. All these scheduling researcheshave considered makespan as the schedulingmeasure.

The following researches have considered theweighted sum of completion times as the schedulingmeasure. For example, Tozkapan et al. (2003) havesuggested a branch-and-bound algorithm and aheuristic algorithm for a two-stage assembly sche-duling problem. Yokoyama and Santos (2005) haveconsidered a modified flowshop scheduling problemfor a production system to decide both the sequenceof products and the sequence of parts.

Cheng et al. (2001) have considered a schedulingproblem for a parallel-machine flowshop (denotedby PMFS) consisting of multiple stages, each ofwhich is composed of one or more identicalmachines. The PMFS is a generalization of thetraditional flowshop model with only one machineat each stage, and also a generalization of a parallel-machine shop with a single stage, so that schedulingproblems for the PMFS are more intractable.One of the earliest papers for the PMFS is that

Page 3: A two-stage multiple-machine assembly scheduling problem for minimizing sum of completion times

ARTICLE IN PRESS

Fig. 1. Schematic figure of the two-stage multiple-machine

problem.

Fig. 2. Illustration of the two-stage multiple-machine problem in

Example 1.

C.S. Sung, H.A. Kim / Int. J. Production Economics 113 (2008) 1038–10481040

of Arthanary and Ramaswarmy (1971) where atwo-stage problem has been discussed. Since then,there have been a lot of papers for two-stage PMFSproblems including Chen (1995), Deal and Hun-sucker (1991), Gupta (1988), Gupta et al. (1997),Gupta and Tunc (1991), Hoogeveen et al. (1993),Seetharama (1984), and Sriskandarajah and Sethi(1989). Moreover, Riane et al. (1998) have con-sidered three-stage PMFS problems.

Because the m-machine flowshop problem isNP-complete in the strong sense (1978), there aremany researches that have proposed heuristicalgorithms. For example, Woo and Yim (1998),Nawaz et al. (1983), Campbell et al. (1970), Ho(1995), and Rajendran and Ziegler (1997) haveintroduced the WY, NEH, CDS, HO and RZheuristics. Wang et al. (1997) have presented twoheuristic approaches related to idle times. Allahver-di and Aldowaisan (2002) have proposed severalnew heuristics with total completion time measure.

The organization of the paper is briefed asfollows. Section 2 gives the problem description.Section 3 characterizes several solution properties.In Section 4, a branch-and-bound algorithm and aheuristic algorithm are proposed by use of thesolution properties. In Section 5, the proposedbranch-and-bound algorithm and heuristics aretested for their efficiency/effectiveness throughvarious numerical experiments. Finally, Section 6contains concluding remarks.

2. Problem description

There are n jobs, denoted by J1, J2,y, Jn, to becompleted through two-stage processing where thefirst and second stages consist of two independentfeeding machines (Ma,Mb) each producing its owncomponent associated with a job and of twoidentical and independent parallel machi-nesj(M1,M2), respectively. The two componentsassociated with each job are to be assembled ateither M1 or M2. Job Ji consists of three tasks Jia,Jib and Ji2 for i ¼ 1,2,y,n. The processing times ofJia, Jib and Ji2 are denoted by Pia, Pib and Pi2,respectively. Ji2 cannot begin until both Jia and Jib

are finished. All the jobs are available to beprocessed at time 0. The objective is to minimizethe total completion time of two parallel machinesat the second stagej(M1,M2). Note that thecompletion time at the second stage is influencedby the completion time at the first stage due to theflowshop mechanism.

For notational convenience, the following nota-tion will be considered in this paper: Ji ¼ (Pia, Pib,Pi2) for job i. For example, J2 ¼ (1, 2, 3) impliesthat P2a ¼ 1, P2b ¼ 2 and P22 ¼ 3. Ma and Mbdenote the first-stage two-assembly machines, andM1 and M2 denote the second-stage parallelmachines.

The proposed problem is schematically depictedas in Fig. 1. For the given jobs J1, J2,y, Jn, thetwo machines M1 and M2 at the second stage are tobe operated in parallel, while the two machines Maand Mb at the first stage are to be operatedindividually.

Example 1. Consider a three-job problem withJ1 ¼ (7,6,6), J2 ¼ (3,3,3) and J3 ¼ (3,5,5). Ifthe schedule is set with job 1 preceding job 2and with job 2 preceding job 3, then the totalcompletion time at the second stage (M1,M2) is 45(Fig. 2).

Page 4: A two-stage multiple-machine assembly scheduling problem for minimizing sum of completion times

ARTICLE IN PRESSC.S. Sung, H.A. Kim / Int. J. Production Economics 113 (2008) 1038–1048 1041

3. Solution analysis

The proposed two-stage assembly problem is ageneralization of the two-machine flowshop pro-blem. If the first stage has one machine instead oftwo feeding machines and the second stage also hasone machine instead of two parallel machines, thenit is seen as the two-machine flowshop problem.Gonzalez and Sahni (1978) have proved that theF2JP

Cj problem is strongly NP-hard. Thus, theproposed problem is NP-hard in the strong sense.

The first solution property is characterized toshow that it is sufficient to consider only permuta-tions to solve the proposed problem. The processingorder depends on the starting time of the job. Letri(S) be the starting time of job i in the schedule S.Then, Ji precedes Jj on machine Mk, which meansthat ri(S)prj(S) on Mk. At the second stage, in theparallel machines, the processing order depends onthe starting time of the job at the second stage. Letrik(S) be the starting time of job i on machine Mk inthe schedule S. Then, Ji precedes Jj at the secondstage, which means that rik(S)prjk(S), independentof k.

Theorem 1. The set of permutation schedules con-

tains an optimal schedule for the proposed problem.

Proof. Suppose that there exists an optimal sche-dule S in which the processing orders are the sameon the first-stage machines Ma and Mb but differenton the parallel machines at the second stage, whichimplies no permutation schedule. Let Cik(S) be thecompletion time of job i on Mk, k ¼ a, b. Thereexists a pair of jobs i and j, such that job i issequenced immediately before job j on Mk, but job i

follows job j at the second stage of parallelmachines, perhaps with some intervening opera-tions. In the schedule S, job i follows job j on thesecond stage, so that the relations rj(S)pri(S) and

CjkðSÞ ¼ CikðSÞ þ pjkprjðSÞpriðSÞ hold.

Construct a new schedule S0 by interchanging thesequence positions of jobs i and j on Mk, k ¼ a, b, inS. Then, the relation

CjkðS0ÞpCjkðSÞprjðSÞ and

CikðS0Þ ¼ CjkðSÞprjðSÞpriðSÞ hold:

Thus, the jobs in S0 will start on Mk at least asearly as the same jobs in S. This implies that theschedule S0 must also be optimal. Repeating thesame argument for any inconsistent job ordering

between the two stages will end up with the resultsof Theorem 1.

This completes the proof. &

Theorem 2. If the relations P1apP2apypPna,

P1bpP2bpypPnb and P12pP22p...pPn2 hold

and if the relation for a pair of two jobs i and j,

PiapPja, PibpPjb and Pi2pPj2 also hold, then the

schedules with Ji immediately followed by Jj dominate

the schedules with Jj immediately followed by Ji.

Proof. Suppose that the relations P1apP2apypP-

na, P1bpP2bpypPnb and P12pP22p...pPn2 hold.Now consider three jobs i, j and k such that therelations PiapPjapPka, PibpPjbpPkb andPi2pPj2pPk2 hold. If job i is processed on M1, thenjob j has to be processed on M2 (in the case wheremax(Cja, Cjb) is smaller than Ci1) or can be processedon either one of M1 and M2. If job j can be processedon either one of M1 andM2, then the completion timeof job j will be the same on both the machines.Therefore, it is necessary to consider job j to beprocessed on M2. Then, job k has to be processed onM1 because Pi2pPj2pPk2. This implies that the caseof job k to be processed only onM2 is not possible. Ofcourse, job k can be processed on either one of M1and M2, but having the same completion time onboth the machines. Therefore, it is necessary toconsider only job k to be processed on M1.

From the above discussion, if the relationsP1apP2apypPna, P1bpP2bpypPnb andP12pP22pypPn2 hold, then the jobs with oddjob index numbers need to be processed on M1, butthe jobs with even job index numbers need to beprocessed on M2. Let ci(S) be the completion time ofjob i at the second stage in the schedule S. If n is anodd number, then the following relationships hold:

c1ðSÞ ¼ maxðP1a;P1b; 0Þ þ P12,

c2ðSÞ ¼ maxðP2a;P2b; 0Þ þ P22,

c3ðSÞ ¼ maxðP1a þ P2a þ P3a;P1b þ P2a

þ P3b; c1ðSÞÞ þ P32,

c4ðSÞ ¼ maxðP1a þ � � � þ P4a;P1b

þ � � � þ P4b; c2ðSÞÞ þ P42,

� � �

cn�1ðSÞ ¼ maxðP1a þ � � � þ Pðn�1Þb;P1b

þ � � � þ Pðn�1Þb; cn�3ðSÞÞ þ Pðn�1Þ2,

cnðSÞ ¼ maxðP1a þ � � � þ Pna;P1b

þ � � � þ Pnb; cn�2ðSÞÞ þ Pn2.

Thus, the total completion time isPn

i¼1ciðSÞ.

Page 5: A two-stage multiple-machine assembly scheduling problem for minimizing sum of completion times

ARTICLE IN PRESSC.S. Sung, H.A. Kim / Int. J. Production Economics 113 (2008) 1038–10481042

Now, consider the situation where the schedule S

has a pair of jobs i and j, such that job i is sequencedimmediately before job j, and the schedule S0 has thesame pair of jobs but with their sequence positionsof i and j interchanged. If i is an odd number, thenthe following relationships hold:

ciðSÞ ¼ maxðP1a þ � � � þ Pia;P1b

þ � � � þ Pib; ci�2ðSÞÞ þ Pi2,

ciðS0Þ ¼ maxðP1a þ � � � þ Pja þ Pia;P1b

þ � � � þ Pjb þ Pib; ci�2ðSÞÞ þ Pi2,

cjðSÞ ¼ maxðP1a þ � � � þ Pia þ Pjb;P1b

þ � � � þ Pib þ Pjb; cj�2ðSÞÞ þ Pj2,

cjðS0Þ ¼ maxðP1a þ � � � þ Pja;P1b

þ � � � þ Pjb; cj�2ðSÞÞ þ Pj2.

Therefore, it follows that cj(S0) cannot be smaller

than ci(S) and ci(S0) cannot be smaller than cj(S),

because the relations P1apP2apypPna,P1bpP2bpypPnb and P12pP22pypPn2 hold.This implies that

Pni¼1ciðS

0Þ cannot be smaller thanPni¼1ciðSÞ, and the pairwise interchanging cannot

improve the total completion time. If i is an evennumber, a similar conclusion can be derived.

Moreover, if n is an even number, a similarconclusion can be derived.

This completes the proof. &

Corollary 1. If the relations P1apP2apypPna,

P1bpP2bpypPnb and P12pP22p...pPn2 hold,

then the production sequence (J1, J2,y, Jn) is

optimal. In other words, if the job sequences at

three machines, each of which is obtained via the

associated SPT rule, are the same, then the sequence

is optimal.

Proof. If the sequences of the jobs at the first andsecond stages are the same and each follows the SPTrule, then the results of Theorem 2 will hold for anytwo jobs in the schedule.

This completes the proof. &

In the case that the first-stage feeding machineshave heavier workload than that of the second-stagemachines and all the jobs have to wait at thesecond-stage machines until processing at the firststage, the first-stage machines will be defined asbottleneck machines. On the other hand, thesecond-stage machines will be defined as bottleneckmachines.

The following considers some particular situa-tions for which an optimal ordering rule is easilyrecognized.

Proposition 1. If the first-stage machines are bottle-

neck machines where Ma or Mb is a bottleneck

machine, and the respective job sequences obtained

via the SPT rule are the same, then the sequence is

optimal.

Proof. Suppose that the first-stage machines arebottleneck machines. Then, the jobs at the secondstage always have idle times, so that the totalcompletion time can be dependent on the scheduleat the first stage such that the associated totalcompletion time is determined as max{Cia,Cib}+Pi2. Note that Pi2’s are constants, so that it isnecessary to consider only the first-stage schedule.Sung and Yoon (1998) have proved that if the twosequences S1 and S2, which are obtained byapplying the SPT rule to two single-machinescheduling problems with respect to the measureof minimizing the total completion time, are thesame, then the sequence is optimal. Accordingly, theresults of Proposition 1 hold.

This completes the proof. &

Proposition 2. If the second-stage machines are

bottleneck machines where M1 or M2 is a bottleneck

machine, then the SPT rule at the second-stage

parallel machines provides the optimal sequence.

Proof. Suppose that the second-stage machines arebottleneck machines. Then, the jobs at the first stagealways have idle times, so that the jobs at the secondstage depend on their preceding jobs. Therefore, it isnecessary to consider only the second-stage sche-dule. Pinedo (2002) has proved that the SPT rule isoptimal for Pmjj

Pni¼1Ci. Accordingly, the results of

Proposition 2 hold.This completes the proof. &

4. Branch-and-bound and heuristic algorithm

4.1. Branching rule

Since the jobs should be processed in the sameorder on all machines, the proposed problem can beconsidered as finding an optimum from among n!possible permutation sequences. Therefore, a for-ward branching tree can be used, where each nodecorresponds to a sub-problem that is defined by apartial sequence of a subset of jobs that are to beplaced at the front of the whole sequence. In each

Page 6: A two-stage multiple-machine assembly scheduling problem for minimizing sum of completion times

ARTICLE IN PRESSC.S. Sung, H.A. Kim / Int. J. Production Economics 113 (2008) 1038–1048 1043

branching stage, a sub-problem (i.e., node) isselected and partitioned into one or more sub-problems that are defined by attaching one more jobassociated with the sub-problem being partitioned.To select a node for branching, a depth-first rule isadapted in the proposed algorithm. In the depth-first rule, a node with the most jobs in thecorresponding partial sequence is selected forbranching. In case of ties, the branching rule selectsa node with the minimum job index number amongthem. In the branching a node list will be kept,which is ranked by the depth levels and lowerbounds for active nodes, and the first node in the listwill be selected for branching. The step-by-stepprocedure is as follows:

Step 1: Generate branches—depth-first ruleJ A node with the most jobs in the correspond-

ing partial sequence is selected for branching.J In case of ties, the branching rule selects a

node with the minimum job index numberamong them.

Step 2: Calculate an initial upper bound by theproposed heuristic (to be explained in Section 4.3in detail). � Step 3: For each branch node, calculate the

associated lower bound (the procedure of obtain-ing the lower bound to be explained in Section4.2 in detail).

� Step 4: Node fathoming.

J Go to Step 5 if the current node is fathomed.J The current node is fathomed if the associated

lower bound with each node is equal to orlarger than the best upper bound.

J Otherwise, go to Step 6.

� Step 5: Backtracking.

J Backtrack to the previous level of the branch-and-bound tree and go to Step 3 if the level isnot zero.

J Otherwise, finish the procedure with the bestfeasible solution, which is set as an optimalsolution.

Step 6: Go to Step 1 if the branch-and-boundlevel is zero.J Otherwise, update the best upper bound and

go to Step 5.

The proposed branch-and-bound algorithm maysolve the problem in exponential time in the worstcase when searching 1+n+n(n�1)+?+n! nodes ifthe entire tree needs to be generated. However, byuse of the lower bound-based fathoming rule, the

efficiency of the branch-and-bound algorithm maybe improved.

4.2. Lower bound

It is known that the SPT rule minimizes the totalcompletion time in the case of parallel machines(Pinedo, 2002). Thus, the SPT rule is going to beadapted on the parallel machines at the secondstage, so that the total completion time at thesecond stage can be a lower bound. In other words,the processing time of the pre-assembly stage is notconsidered, so that the total completion time at thesecond stage by using the SPT rule is always nolarger than the total completion time of any feasibleschedule.

Idle time always occurs in the second stage, becausethe processing of the second stage cannot begin untilpre-assembly processing at the first stage is finished. Inorder to improve the lower bound by considering suchidle time, a modified SPT rule is proposed.

Consider Pab ¼ mini{maxa,b{Pia,Pib}}. The firstidle time on the second-stage machine is no smallerthan the time value Pab even if any job comes to thefirst position of the job sequence. Therefore, thetotal completion time at the second stage obtainedby using the SPT rule with the first idle time Pab canbe a lower bound when any jobs are not scheduled.

Theorem 3. The SPT rule adapted at the second

stage where

max½minifmaxa;bfta þ Pia; tb þ Pibgg;minfC1;C2g�

ði; the remaining jobsÞ

is allowed as the idle time in front of the associated

schedule provides a lower bound.

Proof. With some jobs scheduled, the associatedlower bound can be derived as follows:

Let ta, tb, C1 and C2 be the earliest starting times(i.e., the completion times of the precedent jobs) onMa, Mb, M1 and M2. Then,

I iab ¼ max½minifmaxa;bfta þ Pia; tb þ Pibgg;minfC1;C2g�

ði; the remaining jobsÞ

is no larger than the total completion time of anyother feasible schedule. Therefore, the sum of thetotal completion time of the scheduled jobs and thetotal completion time at the second stage obtainedby using the SPT rule with the first idle time Iiab forthe remaining jobs can be a lower bound.

This completes the proof. &

Page 7: A two-stage multiple-machine assembly scheduling problem for minimizing sum of completion times

ARTICLE IN PRESSC.S. Sung, H.A. Kim / Int. J. Production Economics 113 (2008) 1038–10481044

4.3. Initial upper bound (heuristic procedures)

In order to save the search effort in the proposedbranch-and-bound algorithm, branching willstart with an upper bound corresponding to afeasible solution value, which is found prior tothe implementation of the branch-and-bound algo-rithm by a separate heuristic approach. In thisregard, a processing-time-based pairwise exchangeheuristic mechanism is considered. Moreover, theNP-hardness result provides the motivation ofdeveloping an effective heuristic algorithm. Infact, the computational effort to obtain an exactsolution for any large problem may be prohibi-tive. Therefore, the proposed processing-time-based heuristic algorithm may be used to obtaina good-quality solution at little computationalexpense.

The processing-time-based pairwise exchangeheuristic mechanism:

Step 1: Compute psumi ¼ (Pia+Pib+Pi2) foreach job Ji. Let K denote the initial job sequenceobtained by arranging the associated psumi

values SPT order. Then, let H denote all theintermediate sequences that can result frompairwise exchange operations implemented onthe initial heuristic sequence K. The best of thesesequences K can be obtained by such repeatedupdating of pairwise exchange operations.

Fig. 3. Overall solut

ion

Step 2: Set k ¼ 1, m ¼ k+1, exchange the kth joband the mth job in the initial sequence K. IfPn

i¼1Cj is improved, declare it as the current H.

� Step 3: Update m ¼ m+1, exchange the kth job

and mth job in the sequence K. IfPn

i¼1Cj isimproved, declare it as the current H.

� Step 4: If m ¼ n, go to Step 5, else go to Step 3. � Step 5: Update k ¼ k+1. Set m ¼ k+1, ex-

change the kth job and the mth job in thesequence H. If

Pni¼1Cj is improved, declare it as

the current H.

� Step 6: If k ¼ n, declare the current H as the final

sequence K and stop, otherwise go to Step 5.

4.4. Overall solution procedure

This section presents the overall solution proce-dure by combining the branch-and-bound proce-dure and the heuristic procedure as shown in Fig. 3.

Example 2. Consider a four-job problem withJ1 ¼ (11,9,9), J2 ¼ (6,6,8), J3 ¼ (9,13,12) andJ4 ¼ (6,7,4). Fig. 4 shows the result of the branch-and-bound procedure. The procedure starts withgenerating an initial solution J4J2J1J3 having itsobjective value 111, which is obtained from theproposed heuristic. At level 1 of the tree, node(3***) has the associated lower bound value, 113,no less than the current upper bound value, so that

procedure.

Page 8: A two-stage multiple-machine assembly scheduling problem for minimizing sum of completion times

ARTICLE IN PRESS

Fig. 4. Depictiong the branch-and-bound procedure for Example 2.

C.S. Sung, H.A. Kim / Int. J. Production Economics 113 (2008) 1038–1048 1045

node (3***) is fathomed. From among the threeremaining nodes, node (1***) is selected to branch,because it has the minimum job index number. Atthe branching stage, three nodes (12**), (13**) and(14**) are generated. Node (13**) is fathomed,because the node has the associated lower bound noless than the current upper bound value. This way,the overall solution procedure continues.

5. Computational experiments

This section describes the computational experi-ments that are performed to evaluate the proposedbranch-and-bound algorithm and to show theeffectiveness of the proposed heuristic algorithm infinding a good-quality schedule. These algorithmsare programmed in C-language, and the tests areperformed on a 1.71GHz, 512MB memory perso-nal computer.

5.1. Evaluation of the proposed branch-and-bound

algorithm

The test problems are randomly generated withthe number of jobs ranging from 5 to 13. In the

second stage, there are two parallel machines, sothat in order to consider the workload balanceamong the machines, the job processing timesare separately generated into two classes. In Class1, the processing times on all the machines arerandomly generated from [1,20]. On the otherhand, in order to represent the case that theparallel machines in the second stage have heavierworkload than the first stage, the processing timesof the first-stage machines and the second-stagemachines are randomly generated from the discreteuniform distribution with range [1,15] and range[5,20], respectively, in Class 2. For each combina-tion of the number of jobs and the class ofprocessing times, 40 problems are generated toevaluate the performance of the branch-and-boundalgorithm.

The results of the experiments are reported inTable 1, which includes the mean and median CPUtimes, the mean and median numbers of thegenerated nodes and the number of the problemssolved within 900 s. From the table, it is noted thatthe percentage of the generated nodes decreases asthe number of jobs increases, which implies that theproposed lower bound scheme may be effective.

Page 9: A two-stage multiple-machine assembly scheduling problem for minimizing sum of completion times

ARTICLE IN PRESS

Table 1

Results of the branch-and-bound algorithm

n Proc. time (p.t) CPU time (s) Number of nodes npl

Mean Median Mean Median

5 Class 1 0.0004 0 73.875 (0.36) 75 40

Class 2 0.0004 0 40.13 36 40

7 Class 1 0.0075 0.0075 1120.9 (0.129) 1052 40

Class 2 0.004 0 582.78 421 40

9 Class 1 0.235 0.187 28,904.68 (0.046) 21,926 40

Class 2 0.097 0.075 11,571.05 8553 40

11 Class 1 10.98 7.34 762,253.8 (0.011) 577,041 40

Class 2 4.79 2.68 364,285.2 232,976 40

13 Class 1 530.57 514.32 9,730,075 (9.09E�4) 9,727,259 23

Class 2 180.15 105.469 4,112,227 3,594,735 33

npl: number of problems solved within 900 s (out of 40 problems).

Table 2

Possible number of nodes corresponding to job number

Number of jobs Possible number of

corresponding nodes

5 206

7 8660

9 623,530

11 68,588,312

13 1.069978� 1010

C.S. Sung, H.A. Kim / Int. J. Production Economics 113 (2008) 1038–10481046

Table 2 includes the mean number of the generatednodes over the possible number of nodes when nonode is fathomed. For example, if n ¼ 11, thepossible number of nodes is 68,588,312, and themean percentage number of nodes generated forthe problem-set [n ¼ 11, Class 1] is 762,253.8/68,588,312 ¼ 0.011.

5.2. Effectiveness of the heuristic algorithm

The proposed heuristic algorithm is tested toexamine its effectiveness. The numerically generateddata are the same as in the aforementioned case forthe branch-and-bound test. The first phase of thetests is carried out for relatively small-sized pro-blems of between 5 and 13 jobs. The proposedbranch-and-bound algorithm generates the optimalsolution, so that the optimal solution is comparedwith the solution generated by the proposedprocessing-time-based pairwise exchange heuristicalgorithm. Table 3 reports the average gap and the

maximum gap compared with the optimal solution.The gap is defined as 100� (heu�opt)/opt, whereheu denotes the heuristic objective value and optdenotes the optimal value. From the table, theproposed heuristic generates good-quality solutions.The proposed heuristic gives the average gapranging from 0.6% to 3.56%. To verify theeffectiveness of the proposed processing-time-basedpairwise exchange heuristic, the other simple heur-istics solutions are also compared with the optimalsolution. NEH heuristic (Nawaz et al., 1983) givesthe average gap ranging from 2.34% to 10.11%.P_2 heuristic of applying the SPT rule to theprocessing times of the second stage (Pi2) gives theaverage gap ranging from 11.0% to 25.97%. P_maxheuristic chooses the maximum processing timeamong the three processing times of a job (Pia, Pib,Pi2), and uses the schedule of applying the SPT ruleto those maximum processing times, which gives theaverage gap ranging from 4.12% to 17.13%. Thisshows that the proposed processing-time-basedpairwise exchange heuristic outperforms the otherthree heuristics.

The second phase of the tests is carried out forlarge-sized problems of between 15 and 50. Theheuristic solutions are compared with the otherheuristic solutions. The results are shown in Table 4,which includes the number of the problems opti-mally solved by the heuristic, out of 40 problems.The gap is defined as 100� (heu�pro_heu)/pro_heu, where pro_heu denotes the processing-time-based pairwise exchange heuristic objectivevalue.

Page 10: A two-stage multiple-machine assembly scheduling problem for minimizing sum of completion times

ARTICLE IN PRESS

Table 3

Results of the heuristic algorithm (deviation from optimal solution)

n Processing-time-based

heuristic

NEH heuristic P_2 heuristic P_max heuristic Branch-and-bound

algorithm

Max. gap

(%)

Average

gap (%)

Max. gap

(%)

Average

gap (%)

Max. gap

(%)

Average

gap (%)

Max. gap

(%)

Average

gap (%)

Average

time (s)

npl

5 Class 1 4.09 0.81 20.30 2.34 43.94 14.73 22.22 4.12 0.0004 40

Class 2 4.2 0.6 23.42 2.55 34.81 11.0 33.33 8.13 0.0004 40

7 Class 1 5.38 1.9 24.90 5.27 35.48 17.20 30.85 6.82 0.0075 40

Class 2 5.6 1.5 50 5.52 28.72 14.82 27.9 12.29 0.004 40

9 Class 1 8.41 2.82 28.89 7.02 45.95 21.35 21.22 7.89 0.235 40

Class 2 4.2 1.9 35.97 6.58 36.87 19.09 34.22 15.21 0.097 40

11 Class 1 6.18 2.83 26.5 8.73 45 22.47 23.81 9.33 10.98 40

Class 2 8.6 2.2 31.84 8.49 34.03 19.54 27.57 14.73 4.79 40

13 Class 1 6.29 3.56 34.28 10.11 34.78 25.97 18.74 11.19 530.57 23

Class 2 6.2 2.7 31.77 9.75 32.69 21.96 28.64 17.13 180.15 33

npl: number of problems solved optimally by B&B within 900 s (out of 40 problems).

Table 4

Results of the heuristic algorithm (deviation from processing-time-based heuristic)

n Processing-time-

based heuristic

NEH heuristic P_2 heuristic P_max heuristic

npl Average gap

with p.t

heuristic (%)

npl Average gap

with p.t

heuristic (%)

npl Average gap

with p.t

heuristic (%)

Npl

15 Class 1 29 5.48 10 18.37 0 5.90 1

Class 2 36 9.99 3 19.32 0 13.62 1

20 Class 1 32 9.69 8 20.79 0 6.33 0

Class 2 40 19.02 0 22.30 0 17.04 0

30 Class 1 38 16.60 2 22.64 0 6.58 0

Class 2 39 18.46 1 21.72 0 16.26 0

40 Class 1 37 21.65 1 22.31 0 5.73 2

Class 2 39 22.54 1 20.80 0 15.30 0

50 Class 1 39 22.09 0 22.24 0 5.61 1

Class 2 40 23.0 0 22.70 0 17.16 0

npl: number of problems solved optimally by heuristic (out of 40 problems).

p.t: processing time.

C.S. Sung, H.A. Kim / Int. J. Production Economics 113 (2008) 1038–1048 1047

6. Concluding remarks

This paper considers a two-stage assembly flow-shop scheduling problem to minimize the sum ofcompletion times. In the analysis, some solutionproperties are characterized to derive a solutionbound, which is used to derive a processing-time-based pairwise exchange heuristic algorithm and adepth-first branch-and-bound algorithm. The effec-

tiveness and efficiency of the derived algorithms areevaluated through several computational experi-ments that are performed with various numericalinstances.

The results of this paper may immediately be appliedto many corresponding production/service systems forimproving the associated logistic service quality.

As a further study, more than two machines atthe first stage may be considered in a multi-stage

Page 11: A two-stage multiple-machine assembly scheduling problem for minimizing sum of completion times

ARTICLE IN PRESSC.S. Sung, H.A. Kim / Int. J. Production Economics 113 (2008) 1038–10481048

flowshop problem. Consideration of makespanmeasure may also be interesting.

References

Allahverdi, A., 2000. Minimizing mean flowtime in a two

machine flowshop with sequence independent setup times.

Computers & Operations Research 27, 117–127.

Allahverdi, A., Aldowaisan, T., 2002. New heuristics to minimize

total completion time in m-machine flowshops. International

Journal of Production Economics 77, 71–83.

Arthanary, T.S., Ramaswarmy, K.G., 1971. An extension of two

machine sequencing problem. Opsearch 8, 10–22.

Campbell, H.G., Dudek, R.A., Smith, M.L., 1970. A heuristic

algorithm for the n-job, m-machine sequencing problem.

Management Science 16, 630–637.

Chen, B., 1995. Analysis of classes of heuristics for scheduling a

two-stage flowshop with parallel machines at one stage.

Operations Research 46, 234–244.

Cheng, J., Karuno, Y., Kise, H., 2001. A shifting bottleneck

approach for a parallel-machine flowshop scheduling pro-

blem. Journal of the Operations Research Society of Japan 44

(2), 140–156.

Cheng, T.C.E., Wang, Q., 1999. Scheduling the fabrication and

assembly of components in a two-machine flowshop. IIE

Transactions 31, 135–148.

Deal, D., Hunsucker, J., 1991. The two-stage flow-shop problem

with m machines at each stage. Journal of Information and

Optimization Science 12, 407–417.

Gonzalez, T., Sahni, S., 1978. Flowshop and jobshop schedules:

Complexity and approximation. Operations Research 26 (1),

36–52.

Gupta, J.N.D., 1988. Two-stage hybrid flow shop scheduling

problem. Operations Research 39, 359–364.

Gupta, J.N.D., Tunc, E., 1991. Scheduling for a two-stage hybrid

flowshop with parallel-machine at the second stage. Interna-

tional Journal of Production Research 29, 1489–1502.

Gupta, J.N.D., Hariri, A.M.A., Potts, C.N., 1997. Scheduling a

two-stage hybrid flowshop with parallel-machine at the first

stage. Annals of Operations Research 69, 171–191.

Hariri, A.M.A., Potts, C.N., 1997. A branch and bound

algorithm for the two-stage assembly scheduling problem.

European Journal of Operational Research 103, 547–556.

Ho, J.C., 1995. Flowshop sequencing with mean flowtime

objective. European Journal of Operational Research 81,

571–578.

Hoogeveen, J.A., Lenstra, J.A., Veltman, J.K., 1993. Minimizing

makespan in a multi-processor flowshop is strongly NP-hard.

European Journal of Operational Research 89, 172–175.

Koulamas, C., Kyparisis, G.J., 2001. The three stage assembly

flowshop scheduling problem. Computers and Operations

Research 28, 689–704.

Lee, C.Y., Cheng, T.C.E., Lin, B.M.T., 1993. Minimizing the

makespan in the 3-machine assembly-type flowshop schedul-

ing problem. Management Science 39 (5), 616–625.

Lin, B.M.T., Cheng, T.C.E., 2002. Fabrication and assembly

scheduling in a two-machine flowshop. IIE Transactions 34,

1015–1020.

Nawaz, M., Enscore, E., Ham, I., 1983. A heuristic algorithm for

the m-machine, n-job flowshop sequencing problem. OME-

GA: The International Journal of Management Sciences 11,

91–95.

Pinedo, M., 2002. Scheduling: Theory, Algorithms, and Systems.

Prentice-Hall, Englewood Cliffs, NJ.

Potts, C.N., Sevast’janov, S.V., Strusevich, V.A., Van Wassen-

hove, L.N., Zwaneveld, C.M., 1995. The two-stage assembly

scheduling problem: Complexity and approximation. Opera-

tions Research 43 (2), 346–355.

Rajendran, C., Ziegler, H., 1997. An efficient heuristic for

scheduling in a flowshop to minimize total weighted flowtime

of jobs. European Journal of Operational Research 103,

129–138.

Riane, F., Artiba, A., Elmaghraby, S.E., 1998. A hybrid three-

stage flowshop problem: Efficient heuristics to minimize

makespan. European Journal of Operational Research 109,

321–323.

Seetharama, L., 1984. Scheduling in a two-stage manufacturing

process. International Journal of Production Research 22,

555–564.

Sriskandarajah, C., Sethi, S.P., 1989. Scheduling algorithms for

flexible flow shops: Worst and average case performance.

European Journal of Operational Research 43, 143–160.

Sun, X., Morizawa, K., Nagasawa, H., 2003. Powerful heuristics

to minimize makespan in fixed, 3-machine, assembly-type

flowshop scheduling. European Journal of Operational

Research 146, 499–517.

Sung, C.S., Yoon, S.H., 1998. Minimizing total weighted

completion time at a pre-assembly stage composed of two

feeding machines. International Journal of Production

Economics 54, 247–255.

Tozkapan, A., Kirca, O., Chung, C.-S., 2003. A branch and

bound algorithm to minimize the total weighted flowtime for

the two-stage assembly scheduling problem. Computers and

Operations Research 30, 309–320.

Wang, C., Chu, C., Proth, J.M., 1997. Heuristic approaches for

n/m/F/PCi scheduling problem. European Journal of Opera-

tional Research 96, 636–644.

Woo, H.S., Yim, D.S., 1998. A heuristic algorithm for mean

flowtime objective in flowshop scheduling. Computers and

Operations Research 25, 175–182.

Yokoyama, M., Santos, D.L., 2005. Three stage flowshop

scheduling with assembly operations to minimize the weighted

sum of product completion times. European Journal of

Operational Research 161, 754–770.

Yoon, S.H., Sung, C.S., 2005. Fixed pre-assembly scheduling on

multiple fabrication machines. International Journal of

Production Economics 96, 109–118.