11
Computers & Operations Research 34 (2007) 152 – 162 www.elsevier.com/locate/cor Heuristics for two-machine flowshop scheduling with setup times and an availability constraint Xiuli Wang, T.C. Edwin Cheng Department of Logistics,The Hong Kong Polytechnic University, Hung Hom, Kowloon, Hong Kong Available online 20 March 2006 Abstract This paper studies the two-machine flowshop scheduling problem with anticipatory setup times and an availability constraint imposed on only one of the machines where interrupted jobs can resume their operations. We present two heuristics and show that their worst-case error bounds are no larger than 2 3 . 2005 Elsevier Ltd. All rights reserved. Keywords: Flowshop scheduling; Heuristics; Error bound 1. Introduction Machine scheduling problems with availability constraints motivated by preventive maintenance have received increasing attention from researchers. The studies in the literature on this topic mainly deal with three situations, namely resumable, nonresumable, and semiresumable. If a job cannot be finished before the unavailable period of a machine and the job can continue after the machine becomes available again, it is called resumable. On the other hand, if the job has to restart rather than continue, the situation is called nonresumable. If the unfinished job will have to partially restart after the machine becomes available again, the situation is called semiresumable. The recent research results on this subject can be found in the review papers by Lee et al. [1], Sanlaville and Schmidt [2], and Schmidt [3]. The two-machine flowshop scheduling problem with availability constraints was first studied by Lee [4]. Under the resumable assumption, he proved that the problem is NP-hard when an availability constraint Corresponding author. E-mail address: [email protected] (T.C. Edwin Cheng). 0305-0548/$ - see front matter 2005 Elsevier Ltd. All rights reserved. doi:10.1016/j.cor.2005.05.003

Heuristics for two-machine flowshop scheduling with setup times and an availability constraint

Embed Size (px)

Citation preview

Computers & Operations Research 34 (2007) 152–162www.elsevier.com/locate/cor

Heuristics for two-machine flowshop scheduling with setup timesand an availability constraint

Xiuli Wang, T.C. Edwin Cheng∗

Department of Logistics, The Hong Kong Polytechnic University, Hung Hom, Kowloon, Hong Kong

Available online 20 March 2006

Abstract

This paper studies the two-machine flowshop scheduling problem with anticipatory setup times and an availabilityconstraint imposed on only one of the machines where interrupted jobs can resume their operations. We present twoheuristics and show that their worst-case error bounds are no larger than 2

3 .� 2005 Elsevier Ltd. All rights reserved.

Keywords: Flowshop scheduling; Heuristics; Error bound

1. Introduction

Machine scheduling problems with availability constraints motivated by preventive maintenance havereceived increasing attention from researchers. The studies in the literature on this topic mainly deal withthree situations, namely resumable, nonresumable, and semiresumable. If a job cannot be finished beforethe unavailable period of a machine and the job can continue after the machine becomes available again, itis called resumable. On the other hand, if the job has to restart rather than continue, the situation is callednonresumable. If the unfinished job will have to partially restart after the machine becomes availableagain, the situation is called semiresumable. The recent research results on this subject can be found inthe review papers by Lee et al. [1], Sanlaville and Schmidt [2], and Schmidt [3].

The two-machine flowshop scheduling problem with availability constraints was first studied by Lee [4].Under the resumable assumption, he proved that the problem is NP-hard when an availability constraint

∗ Corresponding author.E-mail address: [email protected] (T.C. Edwin Cheng).

0305-0548/$ - see front matter � 2005 Elsevier Ltd. All rights reserved.doi:10.1016/j.cor.2005.05.003

X. Wang, T.C. Edwin Cheng / Computers & Operations Research 34 (2007) 152–162 153

is imposed on only one machine and proposed a pseudo-polynomial dynamic programming algorithmto solve the problem optimally. He also developed two heuristics. The first heuristic is for solving theproblem where the availability constraint is imposed on machine 1, which has a worst-case error bound of12 . The second heuristic is for solving the problem where the availability constraint is imposed on machine2, which has a worst-case error bound of 1

3 . Lee [5] further studied the semiresumable case and developeda pseudo-polynomial dynamic programming algorithm and heuristics. For the resumable case, Chengand Wang [6] developed an improved heuristic when the availability constraint is imposed on the firstmachine, and the heuristic has a worst-case error bound of 1

3 . Breit [7] presented an improved heuristic forthe problem with an availability constraint only on the second machine and showed that the heuristic hasa worst-case error bound of 1

4 . Cheng and Wang [8] considered a special case of the problem where theavailability constraint is imposed on each machine, and the two availability constraints are consecutive.They developed a heuristic and showed that it has a worst-case error bound of 2

3 for the nonresumablesituation. In addition, the two-machine flowshop scheduling problem with availability constraints hasalso been studied under the no-wait processing environment by Cheng and Liu [9,10]. For the generalflowshop scheduling problem with availability constraints, Aggoune [11] proposed a heuristic based ona genetic algorithm and a tabu search.

In all the above-mentioned flowshop scheduling models, setup times are not considered; in other words,setup times are assumed to be included in processing times. However, in many industrial settings, it isnecessary to treat setup times as separated from processing times (see, for example [12,13]). In this paperwe consider the two-machine flowshop scheduling problem with anticipatory setup times, where theavailability constraint is imposed on only one machine. The setup times are anticipatory, i.e., the setupfor the second operation of any job on machine 2 can start before the completion of its first operationon machine 1 whenever there is some idle time on machine 2. We assume that the processing order ofjobs is the same on each machine. That is, we confine ourselves to finding solutions that are permutationschedules for the problem. We also assume that all the jobs and their setups are resumable. The objectiveis to minimize the makespan. It is evident from Lee [4] that our problem is NP-hard. In the next section,we introduce the notation and some preliminaries. In Sections 3 and 4, we study the cases where theavailability constraint is imposed on machines 1 and 2, respectively. Some concluding remarks are givenin the last section.

2. Notation and preliminaries

For the problem under consideration, we introduce the following notation to be used throughout thispaper.

S = {J1, . . . , Jn}: a set of n jobs;M1, M2: machine 1 and machine 2;�l = tl − sl :the length of the unavailable interval on Ml , where Ml is unavailable from time sl to tl ,

0�sl � tl , l = 1, 2;s1i , s2

i :setup times of Ji on M1 and M2, respectively, where s1i > 0, s2

i > 0;ai, bi :processing times of Ji on M1 and M2, respectively, where ai > 0, bi > 0;� = [J�(1), . . . , J�(n)]:a permutation schedule, where J�(i) is the ith job in �;�∗:an optimal schedule;

154 X. Wang, T.C. Edwin Cheng / Computers & Operations Research 34 (2007) 152–162

M1

2 10 16 19 26 28 33 36

M2

7 10 15 18 28 32 39 45

Fig. 1. A schedule � for the example instance.

CHx:the makespan yielded by heuristic Hx;C∗:the optimal makespan.Following the notation of Lee [1], we denote the problem under study as F2/setup, r − a(Ml)/Cmax,

i.e., the makespan minimization problem in a two-machine flowshop with setup times and a resumableavailability constraint on Ml . As an example, consider a problem instance of F2/setup, r − a(M1)/Cmaxwith n = 3. Let s1

1 = 2, s21 = 3, a1 = 8, b1 = 5, s1

2 = 6, s22 = 10, a2 = 5, b2 = 4, s1

3 = 5, s23 = 7, a3 = 3,

b3 = 6, s1 = 19, and t1 = 26. A schedule � = [J1, J2, J3] for the instance is shown in Fig. 1.The classical two-machine permutation flowshop scheduling problem with setup times, denoted as

F2/permu, setup/Cmax, can be optimally solved by theYoshida and Hitomi algorithm (YHA) in O(n log n)

time [14]. YHA works in the following manner:Divide S into two disjoint subsets A and B, where A={Ji |s1

i +ai−s2i �bi} and B={Ji |s1

i +ai−s2i > bi}.

Sequence the jobs in A in nondecreasing order of s1i + ai − s2

i and the jobs in B in nonincreasing orderof bi . Arrange the ordered subset A first, followed by the ordered subset B.

3. The unavailable interval is on M1

In this section we develop a heuristic for the problem F2/setup, r − a(M1)/Cmax and evaluate itsworst-case error bound. The basic ideas of our heuristic are to combine a few simple heuristic rules andthen improve the schedules by re-arranging the order of some special jobs with large setup times or largeprocessing times on M2 in different situations.

Heuristic H1:

(1) Find jobs Jp and Jq such that

s2p + bp �s2

q + bq � max{s2i + bi |Ji ∈ S\{Jp, Jq}}.

(2) Sequence the jobs by YHA. Let the corresponding schedule be �1 and the corresponding makespanbe Cmax(�1).

(3) Sequence the jobs in nonincreasing order of (s2i + bi)/(s

1i + ai). Let the schedule be �2 and the

corresponding makespan be Cmax(�2).(4) Place job Jp in the first position and keep the other n − 1 jobs in the same positions as those in Step

(3). Let the corresponding schedule be �3.(5) If (s1

p + ap) + (s1q + aq)�s1, then sequence jobs Jp and Jq as the first two jobs such that the

completion time of the last one is minimized. The remaining n− 2 jobs are sequenced randomly. Letthe corresponding schedule be �4.

X. Wang, T.C. Edwin Cheng / Computers & Operations Research 34 (2007) 152–162 155

(6) Select the schedule with the minimum makespan from the above four schedules. Let CH1 =min{Cmax(�1), Cmax(�2), Cmax(�3), Cmax(�4)}.

The time complexity of Heuristic H1 is O(n log n). In the following, we analyze the performancebound of Heuristic H1.

Let � be a schedule for the problem F2/setup, r − a(M1)/Cmax. We define the critical job J�(k) in �as the last job in � such that its starting time on M2 is equal to its finishing time on M1.

Lemma 1. For schedule �2 defined in Step (3) of Heuristic H1, we assume that the completion time ofthe critical job J�2(k) on M1 is t, and let J�(v) be the last job that finishes no later than time t on M1 in aschedule �. The following inequality holds:

Cmax(�2)�Cmax(�) + b�2(k) + s2�(v+1).

Proof. For schedule �2, its makespan is

Cmax(�2) = t + b�2(k) +n∑

j=k+1

(s2�2(j) + b�2(j)

). (1)

Under the assumption of Lemma 1, we have

v∑j=1

(s1�(j) + a�(j)

)�

k∑j=1

(s1�2(j) + a�2(j)

),

thenn∑

j=v+1

(s1�(j) + a�(j)

)�

n∑j=k+1

(s1�2(j) + a�2(j)

). (2)

Since all the jobs are sequenced in nonincreasing order of(s2�2(j) + b�2(j)

)/(s1�2(j) + a�2(j)

)in �2, and

from (2), it is not difficult to check that the following inequality holds:

n∑j=v+1

(s2�(j) + b�(j)

)�

n∑j=k+1

(s2�2(j) + b�2(j)

). (3)

For schedule �, we have

Cmax(�)� t +n∑

j=v+1

(s2�(j) + b�(j)

)− s2

�(v+1). (4)

Therefore, from (1), (3) and (4), we have

Cmax(�2)�Cmax(�) + b�2(k) + s2�(v+1) �

Theorem 1. For the problem F2/setup, r − a(M1)/Cmax, (CH1 − C∗)/C∗� 23 .

156 X. Wang, T.C. Edwin Cheng / Computers & Operations Research 34 (2007) 152–162

Proof. If∑n

i=1 (s1i + ai)�s1, it is obvious that schedule �1 obtained from Heuristic H1 is an optimal

schedule for the problem under study. Hence, in the following text, we assume that∑n

i=1 (s1i + ai) > s1.

Notice that since all the jobs are resumable for the problem F2/setup, r − a(M1)/Cmax, we haveCmax(�1)�C∗ + �1. If �1 �2C∗/3, then we are done. So, in the following, we focus on the situationwhere �1 > 2C∗/3.

Because �1 > 2C∗/3 and∑n

i=1 (s1i +ai)+�1 < C∗, we have

∑ni=1 (s1

i +ai) < C∗/3. Let S′={Ji |s2i +

bi > C∗/3, i=1, 2, . . . , n}. It is obvious that |S′|�2. When |S′|=0, for an optimal schedule �∗, accordingto Lemma 1, we have Cmax(�2)�C∗ + b�2(k) + s2

�∗(v+1) < 5C∗/3. Thus, we only need to consider thefollowing two cases.

Case 1: |S′| = 1In this case, S′ = {Jp}. If s2

p �C∗/3 and bp �C∗/3, then from Lemma 1, we are done. Otherwise, weconsider schedule �3 obtained in Step (4) of Heuristic H1.

For subcase s1p + ap �s1, suppose that the critical job does not exist in �3, then Cmax(�3) = ∑n

i=1(s2�3(i)

+ b�3(i)

)= C∗. Otherwise, we denote the critical job as J�3(u). If

∑ui=1

(s1�3(i)

+ a�3(i)

)�s1,

then

Cmax(�3) =u∑

i=1

(s1�3(i)

+ a�3(i)

)+(

n∑i=u+1

(s2�3(i)

+ b�3(i)

)+ b�3(u)

)

�C∗/3 + C∗ = 4C∗/3;

otherwise, since∑u

i=1

(s1�3(i)

+ a�3(i)

)> s1, Jp is the first job in �3 and s1

p + ap �s1, then u > 1. Thus,

we have

Cmax(�3) =(

u∑i=1

(s1�3(i)

+ a�3(i)

)+ �1

)+(

b�3(u) +n∑

i=u+1

(s2�3(i)

+ b�3(i)

))

�C∗ + 2C∗/3 = 5C∗/3.

For subcase s1p + ap > s1, we have s1

p + ap + �1 + bp �C∗. If the critical job does not exist or job Jp

is the critical job, then we have

Cmax(�3) = max{s1p + ap + �1, s

2p

}+ bp +

∑Ji∈S\Jp

(s2�3(i)

+ b�3(i)

)

�C∗ + 2C∗/3 = 5C∗/3;

otherwise, for the critical job J�3(u), u > 1, we have

Cmax(�3) =(

u∑i=1

(s�3(i) + a�3(i)) + �1

)+ b�3(u) +

n∑i=u+1

(s2�3(i)

+ b�3(i)

)�C∗ + 2C∗/3 = 5C∗/3.

Case 2: |S′| = 2

X. Wang, T.C. Edwin Cheng / Computers & Operations Research 34 (2007) 152–162 157

Similar to Case 1, it is not difficult to check that schedule �2 or �3 may yield a solution with an errorbound of no more than 2C∗/3. In the following, we further prove that the error bound of schedule �4obtained in Step (5) is no more than C∗/3 for this case.

For schedule �4, if no critical job exists, then

Cmax(�4) =n∑

i=1

(s2�4(i)

+ b�4(i)

)= C∗;

otherwise, for the critical job J�4(u) , if u > 2, we have

Cmax(�4)�u∑

i=1

(s1�4(i)

+ a�4(i)

)+ �1 +

(n∑

i=u+1

(s2�4(i)

+ b�4(i)

)+ b�4(u)

)

�C∗ + C∗/3 = 4C∗/3.

If u�2, then u must be equal to 1; otherwise, a contradiction arises because C∗/3 >∑n

i=1

(s1i + ai

)>(

s1p + ap

)+(s1q + aq

)� min

{s2p + bp, s2

q + bq

}> C∗/3. Thus, we have

Cmax(�4)� max{s1p + ap, s1

q + aq

}+(

b�4(1) +n∑

i=2

(s2�4(i)

+ b�4(i)

))

�C∗/3 + C∗ = 4C∗/3. �

From the proof of Theorem 1, we see that Steps (1)–(4) of Heuristic H1 can produce a solution withan error bound of no more than 2C∗/3, and schedule �4 in Step (5) can produce a solution with an errorbound of no more than C∗/3 in some special situations.

Although we do not know whether the bound is tight or not, the following instance shows that theworst-case error bound of H1 is no less than 1

2 . Consider an instance with s11 = 4, a1 = 4, s2

1 = 7, b1 = 3h,s1

2 = h, a2 = h, s22 = 3h, b2 = 8, s1

3 = �, a3 = �, s23 = 1, b3 = 1, s1 = 8, and t1 = 4h + 8, where h?1 and

0 < � < 8/(3h + 7). It is easy to check that �∗ = [J1, J2, J3] with C∗ = 6h + 18 (see Fig. 2(c)). ApplyingHeuristic H1, we obtain �1 = �3 = [J2, J3, J1] with Cmax(�1) = Cmax(�3) = 9h + 17 (see Fig. 2(a)), and�2 =[J3, J1, J2] with Cmax(�2)=10h+2�+16 (see Fig. 2(b)). Since (s1

p +ap)+(s1q +aq)=2h+8 > s1,

we need not consider Step (5) of H1. Thus, CH1 =9h+17. Hence, we see that(CH1 −C∗)/C∗ approaches12 as h approaches infinity.

4. The unavailable interval is on M2

In this section we provide a heuristic for the problem F2/setup, r − a(M2)/Cmax and analyze itsworst-case error bound.

158 X. Wang, T.C. Edwin Cheng / Computers & Operations Research 34 (2007) 152–162

Fig. 2. (a) Solution of Steps (2) and (4); (b) solution of Step (3); (c) optimal solution.

Heuristic H2:

(1) Find two jobs Jp and Jq such that

s2p + bp � max

{s2i + bi |Ji ∈ S\{Jp}}

and

s1q + aq � max{s1

i + ai |Ji ∈ S\{Jq}}.(2) Sequence the jobs by YHA. Let the corresponding schedule be �1 and the corresponding makespan

be Cmax(�1).(3) Sequence the jobs in nonincreasing order of (s2

i + bi)/(s1i + ai). Let the schedule be �2 and the

corresponding makespan be Cmax(�2).(4) Sequence job Jq in the last position, and sequence the remaining n − 1 jobs by YHA. Let the

corresponding schedule be �3.(5) Sequence job Jp in the first position, and sequence the remaining n − 1 jobs in the same positions as

those in Step (3). Let the corresponding schedule be �4.(6) Choose the schedule with the minimum makespan from the above four schedules. Let CH2 =

min{Cmax(�1), Cmax(�2), Cmax(�3), Cmax(�4)}.Since Steps (2) and (3) of H2 dominate the algorithm, the complexity of Heuristic H2 is O(n log n).For the problem F2/setup, r − a(M2)/Cmax, since an unavailable period exists on M2, we assume

that all the jobs must be processed on M1 and M2 as early as possible, and, for a given �, define again the

X. Wang, T.C. Edwin Cheng / Computers & Operations Research 34 (2007) 152–162 159

critical job J�(k) in it as the last job in � such that its starting time on M2 is equal to its finishing time onM1 or the job in � before which the last idle time on M2 occurs.

Lemma 2. For schedule �2 defined in Step (3) of Heuristic H2, we assume that the completion time ofthe critical job J�2(k) on M1 is t and let � be a given schedule.

(i) If t �s2 or t > t2, let J�(v) be the last job that finishes no later than time t on M1 in �, thenCmax(�2)�Cmax(�) + b�2(k) + s2

�(v+1).(ii) If s2 < t � t2, let J�2(h) be the job that finishes just before time s2 on M1 in �2, and J�(u) the last

job that finishes no later than J�2(h) on M1 in �, then Cmax(�2)�Cmax(�) +(s1�2(h+1) + a�2(h+1)

)+(

s1�(u+1) + a�(u+1)

).

Proof. (i) Similar to the proof of Lemma 1.(ii) Let I�2 be the total idle time on M2 in �2. Under the assumption that J�2(h) finishes just before time

s2 on M1 in �2, we have I�2 �s2 −∑hj=1

(s2�2(j) + b�2(j)

). Let I� be the total idle time on M2 in �. So,

I� �s2 −u∑

j=1

(s2�(j) + b�(j)

)−(s1�2(h+1) + a�2(h+1)

)−(s1�(u+1) + a�(u+1)

).

Notice that since∑u

j=1

(s1�(j) + a�(j)

)�∑h

j=1

(s1�2(j) + a�2(j)

)and all the jobs are sequenced in nonin-

creasing order of(s2i + bi

)/(s1i + ai

)in �2, it is not difficult to prove that

∑nj=h+1(

s2�2(j) + b�2(j)

)�∑n

j=u+1

(s2�(j) + b�(j)

).We know that Cmax(�2)=∑n

j=1

(s2�2(j) + b�2(j)

)+�2+I�2

and Cmax(�) =∑nj=1

(s2�(j) + b�(j)

)+ �2 + I�. Hence,

Cmax(�2)�s2 +n∑

j=h+1

(s2�2(j) + b�2(j)

)+ �2

�s2 +n∑

j=u+1

(s2�(j) + b�(j)

)+ �2

= Cmax(�) +⎛⎝s2 −

u∑j=1

(s2�(j) + b�(j)

)− I�

⎞⎠

�Cmax(�) +(s1�2(h+1) + a�2(h+1)

)+(s1�(u+1) + a�(u+1)

).

This completes the proof. �

The following theorem establishes the worst-case error bound of Heuristic H2 for the resumable case.

Theorem 2. For the problem F2/setup, r − a(M2)/Cmax, (CH2 − C∗)/C∗� 23 .

160 X. Wang, T.C. Edwin Cheng / Computers & Operations Research 34 (2007) 152–162

Proof. We know thatYHA can produce an optimal solution for F2/permu, setup/Cmax. Since when t2=0,F2/setup, r −a(M2)/Cmax is equivalent to F2/permu, setup/Cmax, it is obvious that Cmax(�1)−C∗� t2.If t2 �2C∗/3, then we are done. So, in the following, we focus on the case where t2 > 2C∗/3.

Let S′ ={Ji |s1i + ai > C∗/3, i = 1, 2, . . . , n

}and S′′ ={Ji |s2

i + bi > C∗/3, i = 1, 2, . . . , n}. We can

easily show that |S′|�2 and |S′′|�2 from the lower bound max{∑n

i=1 (s1i + ai),

∑ni=1(s

2i + bi) + �2

}�

C∗. When |S′| = 0 and |S′′| = 0, from (i) and (ii) of Lemma 2, we have Cmax(�2)�5C∗/3. Hence, in theremainder of proof, we only need to consider the following two situations.

Case 1: |S′′| = 0 and |S′| > 0In this case, we consider schedule �3. If no critical job exists in �3, then Cmax(�3) = ∑n

i=1(s2�3(i)

+ b�3(i)

)+ �2 = C∗. Next, we assume that there exists a critical job in �3. Let Jq be the critical

job, then

Cmax(�3)� max

{n∑

i=1

(s1�3(i)

+ a�3(i)), t2

}+ bq �C∗ + C∗/3 = 4C∗/3.

Otherwise, suppose J�3(k) (k < n) is the critical job, then we have

Cmax(�3)�k∑

i=1

(s1�3(i)

+ a�3(i)

)+(

�2 + b�3(k) +n∑

i=k+1

(s2�3(i)

+ b�3(i)

))

�2C∗/3 + C∗ = 5C∗/3.

Case 2: |S′′|�1We check schedule �4 obtained in Step (5) of Heuristic H2. If no critical job exists in �4, then Cmax(�4)=∑ni=1

(s2�4(i)

+ b�4(i)

)+�2 =C∗. In the following, we assume that there exists a critical job in �4. Since

|S′′|�1, we assume that s2p + bp > C∗/3 for Jp. If

n∑i=1

(s1i + ai

)� max

{max{s1

p + ap, s2p} − max{s1

p + ap − s2, 0}, s2p

}+ bp + ��2,

where � = 1 if s2 < max{s1p + ap, s2

p} + bp; otherwise, � = 0. Then, we have

Cmax(�4)�n∑

i=1

(s1i + ai

)+ (1 − �)�2 +∑

Ji∈S\{Jp}

(s2i + bi

)�C∗ + 2C∗/3 = 5C∗/3.

Otherwise, Jp is the critical job. From s2p +bp > C∗/3 and max

{s1p + ap, s2

p

}+bp < C∗, we obtain that

max{s1p + ap − s2

p, 0}

< 2C∗/3; so

Cmax(�4)� max{s1p + ap − s2

p, 0}

+ �2 +n∑

i=1

(s2i + bi

)< 2C∗/3 + C∗ = 5C∗/3.

The proof is completed. �

X. Wang, T.C. Edwin Cheng / Computers & Operations Research 34 (2007) 152–162 161

Fig. 3. (a) Solution of Step (2); (b) solution of Steps (3) and (5); (c) solution of Step (4); (d) optimal solution.

Although we do not know whether the bound is tight or not, the following instance shows that theworst-case error bound of H2 is no less than 1/3. Consider an instance with s1

1 =h−2, a1 =1, s21 =h−3,

b1 = 1, s12 = h/2 + 1, a2 = h/2 + 1, s2

2 = 1, b2 = h + 2, s13 = h, a3 = 1, s2

3 = 1, b3 = 5, s2 = h, andt2 = 2h, where h?1. It is easy to check that �∗ = [J1, J2, J3] with C∗ = 3h + 9 (see Fig. 3(d)). ApplyingHeuristic H2, we obtain �1 = [J2, J3, J1] with Cmax(�1) = 4h + 6 (see Fig. 3(a)), �2 = �4 = [J2, J1, J3]with Cmax(�2) = Cmax(�4) = 4h + 6 (see Fig. 3(b)), and �3 = [J3, J1, J2] with Cmax(�3) = 4h + 6 (seeFig. 3(c)). Thus, CH2 =4h+6. Hence, we see that (CH2 −C∗)/C∗ approaches 1

3 as h approaches infinity.

5. Conclusions

In this paper we studied the two-machine flowshop scheduling problem with anticipatory setup timesand a resumable availability constraint imposed on only one of the machines. Since the problem isNP-hard, we developed two polynomial-time heuristics and analyzed their worst-case error bounds.

162 X. Wang, T.C. Edwin Cheng / Computers & Operations Research 34 (2007) 152–162

Acknowledgements

This research was supported in part by The Hong Kong Polytechnic University under a grant from theArea of Strategic Development in China Business Services.

References

[1] Lee C-Y, Lei L, Pinedo M. Current trends in deterministic scheduling. Annals of Operations Research 1997;70:1–41.[2] Sanlaville E, Schmidt G. Machine scheduling with availability constraints. Acta Informatica 1998;35:795–811.[3] Schmidt G. Scheduling with limited availability. European Journal of Operational Research 2000;121:1–15.[4] Lee C-Y. Minimizing the makespan in the two-machine flowshop scheduling problem with an availability constraint.

Operations Research Letters 1997;20:129–39.[5] Lee C-Y. Two-machine flowshop scheduling with availability constraints. European Journal of Operational Research

1999;114:420–9.[6] Cheng TCE, Wang G. An improved heuristic for two-machine flowshop scheduling with an availability constraint.

Operations Research Letters 2000;26:223–9.[7] Breit J. An improved approximation algorithm for two-machine flow shop scheduling with an availability constraint.

Information Processing Letters 2004;90:273–8.[8] Cheng TCE, Wang G. Two-machine flowshop scheduling with consecutive availability constraints. Information Processing

Letters 1999;71:49–54.[9] Cheng TCE, Liu Z. Approximability of two-machine no-wait flowshop scheduling with availability constraints. Operations

Research Letters 2003;31:319–22.[10] Cheng TCE, Liu Z. 3/2-approximation for two-machine no-wait flowshop scheduling with availability constraints.

Information Processing Letters 2003;88:161–5.[11] Aggoune R. Minimizing the makespan for the flow shop scheduling problem with availability constraints. European Journal

of Operational Research 2004;153:534–43.[12] Rajedran C, Ziegler H. Heuristics for scheduling in a flow shop with setup processing and removal times separated.

Production Planning and Control 1997;8:568–76.[13] Sule DR, Huang KY. Sequencing on two and three machines with setup, processing and removal times separated.

International Journal of Production Research 1983;21:723–32.[14] Yoshida T, Hitomi K. Optimal two-stage production scheduling with setup times separated. AIIE Transactions 1979;11:

261–3.