Directory UMM :Data Elmu:jurnal:O:Operations Research Letters:Vol26.Issue5.2000:

Operations Research Letters 26 (2000) 223–229
www.elsevier.com/locate/dsw

An improved heuristic for two-machine
owshop scheduling with
an availability constraint
T.C. Edwin Chenga; ∗ , Guoqing Wangb; c
a Oce

of the Vice-President (Research and Postgraduate Studies) The Hong Kong Polytechnic University,
Kowloon, Hong Kong
b Department of Business Administration, Jinan University, Guangzhou, People’s Republic of China
c Department of Management, The Hong Kong Polytechnic University, Kowloon, Hong Kong
Received 1 May 1998; received in revised form 1 March 2000

Abstract
In this paper we study the two-machine
owshop scheduling problem with an availability constraint on the rst machine.
We rst show that the worst-case error bound 12 of the heuristic provided by Lee [4] is tight. We then develop an improved
c 2000 Elsevier Science B.V. All rights reserved.
heuristic with a worst-case error bound of 13 .

Keywords: Flowshop scheduling; Heuristics; Error bound

1. Introduction
In this paper, we address the two-machine
owshop
scheduling problem with an availability constraint on
the rst machine. We are given two machines M1 and
M2 , and a job set S = {J1 ; : : : ; Jn }. Each job has to be
processed rst on M1 and then on M2 . In our problem, M2 is always available, but M1 is unavailable
for job processing during a certain period of time and
the time interval of unavailability is assumed to be
known in advance. All jobs are assumed resumable,
i.e. if a job cannot nish before the unavailable period of a machine, then its processing may be interrupted and resumed at a later time when the machine
Corresponding author. Fax: +852-2356-2682.
E-mail address: [email protected] (T.C.E. Cheng).



becomes available again. The objective is to minimize
the makespan.

The two-machine
owshop scheduling problem
with an availability constraint is rst studied by Lee
[4]. He shows that the problem is NP-hard and develops a pseudo-polynomial dynamic programming
algorithm to solve the problem optimally. When the
availability constraint is imposed on M1 , he provides
a heuristic H2 to tackle the problem and proves that
its worst-case error bound is 12 . But the problem of
whether the bound is tight is left open. He also provides another heuristic with a worst-case error bound
of 31 for a variant of the problem, where the availability constraint is imposed on M2 . For other works on
owshop scheduling with availability constraints, we
refer the interested reader to Kubiak et al. [3], Lee [5],
and Cheng and Wang [1].

c 2000 Elsevier Science B.V. All rights reserved.
0167-6377/00/$ - see front matter
PII: S 0 1 6 7 - 6 3 7 7 ( 0 0 ) 0 0 0 3 3 - X

224


T.C.E. Cheng, G. Wang / Operations Research Letters 26 (2000) 223–229

In this paper, we rst show that the bound 21 is tight
for H2. We then provide another heuristic to solve the
problem and show that the heuristic has a worst-case
error bound of 31 .
2. Notation
For the problem under consideration, we use the
following notation.
S = {J1 ; : : : ; Jn }; the set of jobs,
M1 , M2 : machine 1 and machine 2,
s1 , t1 : M1 is unavailable from s1 to t1 , where
06s1 6t1 ,
pi , qi : processing times for Ji on M1 and M2 , respectively,
 = hJ(1) ; : : : ; J(n) i: a permutation schedule, where
J(i) is the ith job in ,
Cmax (): the makespan of ,
∗ : an optimal schedule,
C ∗ : the optimal makespan.
Following the notation of Lee [4], we denote

the problem under study as F2=r − a(M1 )=Cmax , i.e.
the makespan minimization problem in the twomachine
owshop with a resumable availability constraint on M1 .
It is well-known that the classical two-machine
owshop makespan minimization problem, F2==Cmax ,
can be solved by Johnson’s rule [2]. Johnson’s rule
can be implemented as follows:
Johnson’s algorithm. Divide S into two disjoint
subsets A and B, where A = {Ji | qi ¿pi } and B =
{Ji | qi ¡ pi }. Order the jobs in A in nondecreasing
order of pi and those jobs in B in nonincreasing order
of qi . Sequence jobs in A rst, followed by those in B.
Let C ∗ be the optimal makespan for F2==Cmax . It is
evident that
C ∗ 6C ∗ :

(1)

3. An improved heuristic and its worst-case error
bound

The heuristic H2 proposed by Lee for F2=r −
a(M1 )=Cmax is as follows:
Heuristic H2
(i) Use Johnson’s algorithm to schedule the jobs and
let the corresponding schedule be 1

(ii) Sequence jobs in nonincreasing order of qi =pi
and let the corresponding schedule be 2 . Let
t be the starting time of the last busy period
on M2 , namely M2 is idle immediately before t.
Let Jk be the corresponding job that starts at t
on M2 .
(iii) Sequence all jobs in the same order as that in
Step (ii) except that we make Jk the rst job in
the sequence. Let the corresponding schedule be
3 .
(iv) Choose the schedule with the minimum
makespan from the above three schedules. Let
CH2 = min{Cmax (1 ); Cmax (2 ); Cmax (3 )}.
It is shown in [4] that (CH2 − C ∗ )=C ∗ 6 21 . Below,

we complete the analysis of the algorithm by demonstrating that this bound is tight. Consider a problem
instance with n = 3. Let p1 = 1, q1 = a + 1, p2 = a,
q2 = a2 , p3 = a + 2, and q3 = (a + 2)2 , s1 = a,
t1 = a2 + a, and s2 = t2 = 0, where a ¿ 1. It is clear
that Step (i) will result in sequence 1 = hJ1 ; J2 ; J3 i
with Cmax (1 ) = 3a2 + 5a + 5 (see Fig. 1(a)). Steps
(ii) and (iii) will result in 2 = 3 = hJ3 ; J1 ; J2 i, with
Cmax (2 ) = Cmax (3 ) = 3a2 + 6a + 7 (see Fig. 1(b)).
Hence, CH2 = 3a2 + 5a + 5. However, the optimal solution is ∗ = hJ2 ; J1 ; J3 i with C ∗ = 2a2 + 6a + 7 (see
Fig. 1(c)). We see that (CH2 − C ∗ )=C ∗ goes to 12 as a
approaches in nity.
In what follows, we present an improved heuristic
that nds a schedule for F2=r − a(M1 )=Cmax that is at
most 4=3 times the optimal value.
Heuristic HI:
(i) Let Ja and Jb be two jobs with the largest and the
second largest processing time on M2 , respectively, i.e. min{qa ; qb }¿qi for i = 1; : : : ; n, i 6= a,
and i 6= b.
(ii) Use Johnson’s algorithm to schedule the jobs and
let the corresponding schedule be 1 .

(iii) Sequence jobs in nonincreasing order of qi =pi .
Let the corresponding schedule be 2 . Let t be
the starting time of the latest busy period on M2
in 2 , namely M2 is idle immediately before t.
Let Jk be the corresponding job that starts at t on
M2 .
(iv) Sequence the jobs in the same sequence as that in
Step (iii) except that Ja and Jb are scheduled as
the rst two jobs such that the completion time of
the last one is minimized. Let the corresponding
schedule be 3

T.C.E. Cheng, G. Wang / Operations Research Letters 26 (2000) 223–229

225

Fig. 1. (a) Solution of Step (i); (b) solution of Steps (ii) and (iii); and (c) optimal solution.

(v) If t ¿ s1 and pk 6s1 , then construct 4 by maintaining all jobs in the same order they appear
in 2 , with the exception of Jk which is moved

to position u in which it nishes by time s1
and the job in position u + 1 nishes after s1
on M1 .
(vi) Let S1 = {Ji | pqii ¿1 and pi ¡ pk }, and S2 = S \
(S1 ∪ {Jk }). Let 5 = hS1 ; Jk ; S2 i, where all jobs
in S1 are scheduled in nonincreasing order of
qi =pi and jobs in S2 are scheduled according to
Johnson’s rule.
(vii) Choose the schedule with the minimum
makespan from the above ve schedules.
Let CHI = min{Cmax (1 ); Cmax (2 ); Cmax (3 );
Cmax (4 ); Cmax (5 )}.
Before we analyze the worst-case performance of
heuristic HI, we rst establish the following three lemmas which will be used in the subsequent analysis.
The rst lemma is directly from Lee [4].
Lemma 1. There exists an optimal solution for
F2=r − a(M1 )=Cmax in which all jobs before Jl follow
Johnson’s rule and the remaining jobs (including Jl )
also follow Johnson’s rule; where Jl is the rst job
which nishes after t1 on M1 .


Lemma 2. Let T2 (w) be the completion time of any
job J2 (w) on M1 in 2 . Given an arbitrary feasible
schedule ; let J(v) be the last job which nishes no
laterP
than time TP
2 (w) on M1 . We have
v
w
q( j) 6 j=1 q2 ( j) ,
(i)
j=1
Pn
Pn
(ii)
j=v+1 q( j) ¿
j=w+1 q2 ( j) .

Pw
Pv

Proof It is clear that j=1 p( j) 6 j=1 p2 ( j) and
Pn
Pn
j=w+1 p2 ( j) . Since all jobs are sej=v+1 p( j) ¿
quenced in nonincreasing order of qi =pi in 2 , we can
easily check the results.

Lemma 3. For schedule 2 and job Jk de ned in Step
(iii) of Heuristic HI; the following inequalities hold:
(i) Cmax (2 )6C ∗ + qk ,
(ii) If t6s1 or t¿t1 + pk ; then Cmax (2 )6C ∗ + pk .
Proof
Pn Assume that J2 (w) = Jk , then Cmax (2 ) = t +
j=w q2 ( j) .
(i) Let J∗ (v) be the last job which nishes no later
than P
time t on M1 inP∗ . From Lemma 2(ii), we
n
n
have j=v+1 q∗ ( j) ¿ j=w+1 q2 ( j) . Hence, we have

Cmax (2 )6C ∗ + qk .
(ii) Let L be P
the total idle time on M2 in 2 . It is
w−1
clear that L=t − j=1 q2 ( j) . Let J∗ (v′ ) be the last job

226

T.C.E. Cheng, G. Wang / Operations Research Letters 26 (2000) 223–229

which nishes no later than time T2 (w−1) on M1 , and
L∗ the total idle time on M2 in ∗ . From Lemma 2(i),
Pw−1
Pv′
we know that j=1 q∗ ( j) 6 j=1 q2 ( j) . When t6s1
Pv′
or t − pk ¿t1 , it is clear that L∗ ¿t − pk − j=1 q∗ ( j) .
Hence, we have L∗ ¿L − pk , and so Cmax (2 ) = C ∗ +
pk .
Theorem 1. (CHI − C ∗ )=C ∗ 6 31 .
P
Proof It suces to consider the case with pi ¿ s1 .
Note that Cmax (1 )6C ∗ + t1 − s1 . Hence, if
t1 − s1 6C ∗ =3 we are done. Therefore, in the remainder of the proof, we are only interested in the case with
t1 − s1 ¿ C ∗ =3. Let Ŝ = {Ji |qi ¿ C ∗ =3; i = 1; : : : ; n}.
It is obvious that |Ŝ|62. When |Ŝ| = 0, from
Lemma 3(i), we have Cmax (2 )6C ∗ + qk ¡ 4C ∗ =3.
Hence, we only need to consider the following two
cases.
Case 1: |Ŝ| = 2
In this case, we have Ŝ = {Ja ; Jb }. Let us consider
Step (iv). Let C ∗ (Ŝ) denote the optimal completion
time of the jobs in Ŝ in 3 . It is clear that C ∗ (Ŝ)6C ∗ .
Let t ′ be the starting time of the last busy period on
M2 in 3 , and Jl be the corresponding job that starts
at t ′ on M2 . If Jl = Ja or Jb , we have
X
qj − qa − qb
Cmax (3 ) = C ∗ (Ŝ) +
Jj ∈S

6 C ∗ + C ∗ =364C ∗ =3;
otherwise, we have
X
qj − qa − qb
Cmax (3 ) 6 t ′ +

pk ¿ C ∗ =3. Note that we must have qk ¡ 2C ∗ =3 and
X
pi 6C ∗ − pk − (t1 − s1 )6C ∗ =3:
(2)
Ji ∈S\{Jk }

It is clear that schedule 2 will result in the same
makespan for both F2=r−a(M1 )=Cmax and F2==Cmax in
this subcase, and the optimal makespan C ∗ for F2=r −
a(M1 )=Cmax is no less than the optimal makespan C ∗
for F2==Cmax . Let A′ = {Ji | qi ¿pi ; i = 1; : : : ; n; i 6= k}
and B′ = S \ (A′ ∪ {Jk }). It is not dicult to see that
there exists an optimal solution for F2==Cmax in which
all jobs in A′ are scheduled before Jk and all jobs in
B′ are scheduled after Jk according to Johnson’s rule.
Thus, we have
X
X
qi ;
(3)
pi + pk + qk +
C ∗ ¿C ∗ ¿
and so
X
qi 6C ∗ − pk − qk ¡ C ∗ =3:

X

We rst suppose that qk ¿pk . Let N be the set of
jobs which follow Jk in 2 and satisfy qi ¿pi . It is
clear that
P
qi q
P Ji ∈N 6 k :
(5)
pk
Ji ∈N pi
Since all jobs are scheduled in nonincreasing order
of qi =pi in 2 , it is clear that 2 = hA′ \ N; Jk ; N; B′ i.
From (2) – (5), we have
X
X
X
pi + pk + qk +
qi
qi +
Cmax (2 ) =
6

X

pi + pk + qk

Ji ∈A′ \N

+

Jj ∈S

Case 2: |Ŝ| = 1
Let us consider 2 . Since Cmax (2 )6C ∗ + qk from
Lemma 2(i), it suces to consider qk = qa ¿ C ∗ =3,
for otherwise we are done. Now, we need to consider
the following two subcases.
1. t6s1
From Lemma 3(ii), we have Cmax (2 )6C ∗ + pk .
If pk 6C ∗ =3, then we are done. Now suppose that

Ji ∈N

Ji ∈A′ \N

pj + (t1 − s1 ) + C ∗ =3

6 4C ∗ =3:

(4)

Ji ∈B′

Jj

6

Ji ∈B′

Jk ∈A′

X
qk X
qi
pi +
pk J ∈N

Ji ∈B

i

6

X

pi + pk + qk +



X
qk
−1
pi
pk
J ∈N

Ji ∈B′

Ji ∈A′

+

X

¡ C∗ +

i

X

Ji ∈N

¡ 4C ∗ =3:

pi

qi

Ji ∈B′

227

T.C.E. Cheng, G. Wang / Operations Research Letters 26 (2000) 223–229

Now suppose that qk ¡ pk . Let N be the set of jobs
which follow Jk in 2 . From (2) – (4), we have
X
X
Cmax (2 ) =
qi
pi + pk + qk +
Ji ∈N

Ji ∈S\(N ∪{Jk })

6

X

pi + pk + qk +

X

pi + C ∗

Ji

Ji ∈S\{Jk }

6

X

qi

+

(q4 ( j) − p4 ( j) ):

j=1

If pk 6C ∗ =3; then all jobs preceding Jk in 4 satisfy
the conditions
qi qk
¿ ¿ 1:
pi pk
Hence, we have
L ¡ pk 6C ∗ =3:
If pk ¿ C ∗ =3, note again that we have
X
pi 6C ∗ − (t1 − s1 ) − pk 6C ∗ =3:
Let J∗ (u′ ) = Jk in ∗ . Then we have


L ¿pk −


uX
−1

(q∗ ( j) − p∗ ( j) );

j=1

u−1
X

p4 ( j) −

j=1


uX
−1


uX
−1

j=1

q∗ ( j) −

j=1

u−1
X
j=1



p∗ ( j) 


(7)

q4 ( j)  :

Pu′ −1
p4 ( j) ¿ j=1 p∗ ( j) , it is clear that
Pu′ −1
j=1 q4 ( j) ¿
j=1 q∗ ( j) as all jobs except Jk are
sequenced in nondecreasing order of qi =pi in 4 ,
From (7), we have
If
Pu−1

2. t ¿ s1 . We consider the following two situations.
(a) There exists an optimal schedule ∗ such that Jk
nishes before s1 on M1 .
Let us focus on schedule 4 obtained in Step (v).
Let t ′ be the starting time of the last busy period on
M2 ; and J4 (v) be the corresponding job that starts at t ′
on M2 . Whenever v ¡ u or v ¿ u, following the same
argument as that for Lemma 3, we can easily show
that Cmax (4 ) − C ∗ 6q4 (v) 6C ∗ =3. Now we focus on
v = u, i.e. J4 (v) = Jk .
Let L be the total idle time on M2 in 4 . We have

Ji ∈S\{Jk }

L 6 L∗ + 

∈B′

¡ 4C ∗ =3:

L = pk −





Ji ∈S\{Jk }

u−1
X

and so

(6)

Pu−1
j=1

L6L∗ +

u−1
X

p4 ( j) ¡L∗ + C ∗ =3:

j=1

If

+

Pu′ −1

Pu−1

j=1 p4 ( j)¡
Pu′ −1
q4 (u+1) ¿ j=1


L¡L +


uX
−1

j=1

q

j=1

p∗ ( j) , we have

q∗ ( j) , and so

∗ ( j)



u−1
X

Pu−1
j=1

q4 ( j)

q4 ( j)

j=1

6L∗ + q4 (u+1) ¡ L∗ + C ∗ =3:
(b) There exists no optimal schedule such that Jk nishes before s1 on M1 .
It is clear that pk ¡ C ∗ =3 and so pk ¡ qk ; otherwise, we have C ∗ ¿t1 − s1 + pk + qk ¿ C ∗ , a contradiction. Let us focus on schedule 5 obtained in Step
(vi). We rst show that there exists an optimal solution in which all jobs in S1 are scheduled before Jk ,
and all jobs in S2 are scheduled after Jk in this situation. Let ∗ be an optimal schedule, and assume,
without loss of generality, that ∗ satis es Lemma 1.
Then it is immediately clear that any job Ji ∈ S1 which
nishes after t1 on M1 is scheduled before Jk in ∗ .
This also means that all jobs in S1 are scheduled before Jk in ∗ . As it is also clear that any job Ji such
that pi ¿pk which nishes after t1 can be scheduled
after Jk , now suppose that there is a job Ji such that
pi ¿pk nishes before s1 in ∗ . Since qi ¡ qk , it is
easy to see that interchanging Ji and Jk in ∗ will not
increase the makespan. This means that there exists
an optimal solution in which Jk nishes before s1 on
M1 , a contradiction. Again, as it is clear that any job
Ji such that pi ¿ qi and pi ¡ pk which nishes after
s1 on M1 follows Jk in ∗ , we suppose that there are

228

T.C.E. Cheng, G. Wang / Operations Research Letters 26 (2000) 223–229

Fig. 2. Solution of Step (ii); (b) solution of Steps (iii) and (iv); (c) solution of Step (v); (d) solution of Step (vi) and (e) optimal solution.

some jobs such that pi ¿ qi and pi ¡ pk which nish before s1 on M1 in ∗ . Let Jj be the last job which
nishes before s1 on M1 in ∗ . It is clear that pj ¿ qj ,
as ∗ satis es Lemma 1. Since pj ¡ pk ¡ qk , it is not
dicult to see that moving Jj to the position immediately after Jk will not increase the makespan. Repeating the same process, we see that there is an optimal schedule in which all jobs in S2 are scheduled
after Jk .
As Jk nishes after t1 on M1 in ∗ , and so all jobs
in S2 must also nish after t1 on M1 , and it is optimal
to assign the jobs by Johnson’s rule. Let C ∗ (S1 ) be

the completion time of the last job in S1 in the optimal
solution. Then we have
X
qi ;
(8)
C ∗ = C ∗ (S1 ) + L + qk +
Ji ∈S2

where L is the total idle time on M2 between the
last job of S1 and the last job of S2 in the optimal
solution.
Let C(S1 ) = C ∗ (S1 ) +  be the completion time of
the last job in S1 in 5 . From Lemma 3(i), we know
that
6max{qi | Ji ∈ S1 } ¡ C ∗ =3:

(9)

229

T.C.E. Cheng, G. Wang / Operations Research Letters 26 (2000) 223–229

From (8) and (9), we have
Cmax (5 ) = C(S1 ) + max{0; L − } + qk +

X

qi

(see Fig. 2(d)). Hence, (CHI − C ∗ )=C ∗ goes to
approaches in nity.

1
4

as a

Ji ∈S2

¡ C ∗ (S1 ) + L + qk +

X

qi + C ∗ =3

Ji ∈S2


¡ 4C =3
The proof is complete.
Remark (i) The time complexity of the algorithm is
O(n log n).
(ii) Although we are not able to show that the
bound is tight, the following instance with n = 3
shows that the bound cannot be better than 14 . Consider a problem with p1 = a − 1; q1 = (a − 1)2 ; p2 =
a; q2 = a2 ; p3 = a + 1, and q3 = 2(a + 1)2 ; s1 = 2a,
and t1 = 2a2 + 2a, where a ¿¿ 1. It is clear that
Step (ii) will result in schedule 1 = hJ1 ; J2 ; J3 i with
Cmax (1 )=5a2 +7a+2 (see Fig. 2(a)). Both Steps (iii)
and (iv) will result in schedule 2 = 3 = hJ3 ; J2 ; J1 i
with Cmax (2 ) = Cmax (3 ) = 5a2 + 2 (see Fig. 2(b)).
Step (v) will result in schedule 4 = hJ2 ; J3 ; J1 i
with Cmax (4 ) = 6a2 + 4a + 4 (see Fig. 2(c)).
Step (vi) will result in schedule 5 = hJ2 ; J1 ; J3 i
with Cmax (5 ) = 5a2 + 7a + 2 (see Fig. 2(d)).
Hence, CHI = 5a2 + 2. However, the optimal solution is ∗ = hJ3 ; J1 ; J2 i with C ∗ = 4a2 + 3a + 4

Acknowledgements
This research was supported in part by The Hong
Kong Polytechnic University under grant number
G-YW16. We are grateful to an anonymous referee
for his constructive comments on earlier versions of
the paper.
References
[1] T.C.E. Cheng, G. Wang, Two-machine
owshop scheduling
with consecutive availability constraints, Inform. Process. Lett.
71 (1999) 49–54.
[2] S.M. Johnson, Optimal two- and three-stage production
schedules with setup times included, Naval Res. Logist. Quart.
1 (1954) 61–68.
[3] W. Kubiak, J. Blazewicz, P. Formanowicz, G. Schmidt, A
branch and bound algorithm for two machine
ow shop
with limited machine availability, The Abstracts of the
Tenth Meeting of the European Chapter on Combinatorial
Optimization 38 (1997).
[4] C.-Y. Lee, Minimizing the makespan in the two-machine
owshop scheduling problem with an availability constraint,
Oper. Res. Lett. 20 (1997) 129–139.
[5] C.-Y. Lee, Two-machine
owshop scheduling with availability
constraints, European J. Oper. Res. 114 (1999) 420–429.