17
Flow-Shop Batch Scheduling with Identical Processing-Time Jobs Gur Mosheiov, Daniel Oron, Yaacov Ritov School of Business Administration and Department of Statistics, The Hebrew University, Jerusalem 91905, Israel Received 18 February 2003; revised 2 March 2004; accepted 14 April 2004 DOI 10.1002/nav.20028 Published online 21 June 2004 in Wiley InterScience (www.interscience.wiley.com). Abstract: In many practical situations of production scheduling, it is either necessary or recommended to group a large number of jobs into a relatively small number of batches. A decision needs to be made regarding both the batching (i.e., determining the number and the size of the batches) and the sequencing (of batches and of jobs within batches). A setup cost is incurred whenever a batch begins processing on a given machine. This paper focuses on batch scheduling of identical processing-time jobs, and machine- and sequence-independent setup times on an m-machine flow-shop. The objective is to find an allocation to batches and their schedule in order to minimize flow-time. We introduce a surprising and nonintuitive solution for the problem. © 2004 Wiley Periodicals, Inc. Naval Research Logistics 51: 783–799, 2004. Keywords: batch-scheduling; flow-shop; flow-time 1. INTRODUCTION A classical example of batch scheduling, described in Conway, Maxwell, and Miller [6], involves the production of different paint colors on the same machine. A setup time for cleaning the machine is incurred whenever there is a color change. A decision needs to be made regarding both batching (i.e., determining the number and the size of the batches) and sequencing (of batches and of jobs within batches). This example reflects many practical situation, in which it is either necessary or recommended to group a large number of jobs into a relatively small number of batches. The motivation for such grouping relates to the existence of some similarity between jobs belonging to the same class or family (such as their required tooling, color, container size, etc.) and the changeover times or setup times incurred when starting a new batch. The recent survey of Potts and Kovalyov [11] reflects the extensive literature on models that integrate scheduling with batching decisions. Models of batch scheduling have been studied in all classical machine settings. The recent survey of Cheng, Gupta, and Wang [4] focuses on flow-shop settings only. Within this class of models, the vast majority deals with makespan minimization. Among the very few papers which study flow-time minimization we find: Aldowaisan and Allahverdi [1], who present a heuristic for the two-machine no-wait flow-shop; © 2004 Wiley Periodicals, Inc.

Flow-shop batch scheduling with identical processing-time jobs

Embed Size (px)

Citation preview

Flow-Shop Batch Scheduling with Identical Processing-TimeJobs

Gur Mosheiov, Daniel Oron, Yaacov Ritov

School of Business Administration and Department of Statistics, The Hebrew University,Jerusalem 91905, Israel

Received 18 February 2003; revised 2 March 2004; accepted 14 April 2004DOI 10.1002/nav.20028

Published online 21 June 2004 in Wiley InterScience (www.interscience.wiley.com).

Abstract: In many practical situations of production scheduling, it is either necessary orrecommended to group a large number of jobs into a relatively small number of batches. Adecision needs to be made regarding both the batching (i.e., determining the number and the sizeof the batches) and the sequencing (of batches and of jobs within batches). A setup cost isincurred whenever a batch begins processing on a given machine. This paper focuses on batchscheduling of identical processing-time jobs, and machine- and sequence-independent setuptimes on an m-machine flow-shop. The objective is to find an allocation to batches and theirschedule in order to minimize flow-time. We introduce a surprising and nonintuitive solution forthe problem. © 2004 Wiley Periodicals, Inc. Naval Research Logistics 51: 783–799, 2004.

Keywords: batch-scheduling; flow-shop; flow-time

1. INTRODUCTION

A classical example of batch scheduling, described in Conway, Maxwell, and Miller [6],involves the production of different paint colors on the same machine. A setup time for cleaningthe machine is incurred whenever there is a color change. A decision needs to be made regardingboth batching (i.e., determining the number and the size of the batches) and sequencing (ofbatches and of jobs within batches). This example reflects many practical situation, in which itis either necessary or recommended to group a large number of jobs into a relatively smallnumber of batches. The motivation for such grouping relates to the existence of some similaritybetween jobs belonging to the same class or family (such as their required tooling, color,container size, etc.) and the changeover times or setup times incurred when starting a new batch.

The recent survey of Potts and Kovalyov [11] reflects the extensive literature on models thatintegrate scheduling with batching decisions. Models of batch scheduling have been studied inall classical machine settings. The recent survey of Cheng, Gupta, and Wang [4] focuses onflow-shop settings only. Within this class of models, the vast majority deals with makespanminimization. Among the very few papers which study flow-time minimization we find:Aldowaisan and Allahverdi [1], who present a heuristic for the two-machine no-wait flow-shop;

© 2004 Wiley Periodicals, Inc.

Allahverdi [2], who introduces a polynomial time solution for two special cases (with someagreeability conditions) of the two-machine flow-shop and heuristic algorithms for the generaltwo-machine case; and Bukchin, Tzur, and Jaffe [3], who deal with lot splitting in a two-machine flow-shop with machine-dependent processing times and setup times, and introduce aheuristic which is shown empirically to perform very well.

The present paper addresses a batch scheduling problem in an m-machine flow-shop tominimize flow-time. We focus on the special case of identical jobs (i.e., identical processing-time jobs), which is known to be highly relevant in many applications, including the commonapplication of repetitive production of the same item. Although the setting of identical process-ing times has been extensively studied in various contexts of classical scheduling, it has not beenaddressed in batch-scheduling and flow-time minimization in a non-single-machine setting. Therelevant references (all within the context of a single machine) are: Santos and Magazine [12],Dobson, Karmarkar, and Rummel [7], Naddef and Santos [10], and Coffman, Nozari, andYannakakis [5], who solved the relaxed problem, in which batch sizes are not necessarilyintegers. Shallcross [13] and Mosheiov, Oron, and Ritov [9] provided a solution with integerbatch sizes.

Similar to the above references, we assume job- and machine-independent setup times. Underthese assumptions, we introduce a polynomial time solution for the relaxed problems. Thesolution appears to consist of a somewhat surprising and nonintuitive allocation of jobs tobatches. The optimal set of batches contains a subset of identical-size batches, followed by asubset of (the remaining) batches, which have a constant difference in their size and arescheduled in a nonincreasing order. We are not aware of any other scheduling problems havinga solution of similar structure. In order to obtain integer batch sizes, we propose a simple(heuristic) rounding procedure. (We note that the procedure proposed in Mosheiov, Oron, andRitov [9] for the single machine case, which guarantees optimal integer batch sizes, does notseem to be extended to flow-shops.) The procedure, which requires constant running time,produces very close-to-optimal schedules, as verified in our numerical study.

In Section 2, we introduce the formulation of the problem. Section 3 describes the solutionfor the general m-machine flow-shop.

2. FORMULATION

A set of n independent jobs is available for processing in an m-machine flow-shop at timezero. We denote by pij the processing time of job j ( j � 1, 2, . . . , n) on machine i (i � 1,2, . . . , m). We assume identical processing times; therefore, pij � p for j � 1, 2, . . . , n andfor i � 1, 2, . . . , m. For convenience, let pij � 1 for all i and j. All jobs have to be groupedinto batches and the batches have to be scheduled. For a given allocation to batches, let k denotethe number of batches, and let nj denote the size of the jth batch. The total processing time ofbatch j is equal to its size, i.e., the number of (unit processing time) jobs it contains ( j � 1,2, . . . , k). s denotes the fixed (positive) machine- and sequence-independent setup time for allbatches on all the machines. Setups are nonanticipatory, that is, they may be performed onlyafter processing of the batch on the previous machine has been completed. We considerbatch-availability, that is, the completion time of a job is defined as the completion time of thebatch to which it is assigned. Consequently, the completion time of a job belonging to batch jis defined as the completion time of batch j on the last machine, denoted by Cj. The objectiveis to minimize the total completion time. Using the conventional notation (Lawler et al. [8]), theproblem referred to is Fm/pij � 1, sij � s/¥ Cj.

784 Naval Research Logistics, Vol. 51 (2004)

3. THE m-MACHINE FLOWSHOP

We focus first on the solution of the relaxed version of the problem, in which batch sizes arenot necessarily integers. A trivial property of an optimal solution is that there exists an optimalschedule with no idle time between consecutive batches on the first machine. (Clearly, insertingidle time between two consecutive batches on the first machine can only increase the totalflow-time.) Next we show that batches are ordered according to LPT (Largest Processing Timefirst).

PROPOSITION 1: There exists an optimal schedule in which batches are scheduled innonincreasing order.

PROOF: Consider a non-LPT schedule q. Assume that i and i � 1 are the first consecutivebatches that do not maintain the LPT order, i.e., ni � ni�1. We show that a schedule q� obtainedfrom q by replacing ni and ni�1, with two identical batches of size (ni � ni�1)/ 2, has a smallerflow-time. This procedure can be repeated (perhaps an infinite number of times, see Comment1 below) to obtain a schedule that is better than q and contains no pair of consecutive batches( j, j � 1) such that nj � nj�1. Consequently, an optimal schedule exists in which batches areordered in LPT.

In order to prove that q� is a better schedule than q (has a smaller flow-time), we show that(i) the contribution of batches i and i � 1 to the total flow-time is smaller in q�, and (ii) thecompletion time of batch i � 1 on each of the machines does not increase in q� (implying thatthe contribution of the following batches to the total flow-time does not increase). Wedistinguish between two main cases.

Case 1: ni�1 � n1.

In this case there is no idle time between batch i and batch i � 1 both in q and in q� (see Fig.1). Recall that the previous batches are ordered in LPT; thus there is no idle time betweenconsecutive batches on all the machines. Denote by T the completion time of batch i � 1 onmachine m. Clearly, T is the same in q and in q�. The contribution of batches i and i � 1 tothe total flow-time in q is given by

f � �T � ni � s�ni � �T � ni � ni�1 � 2s�ni�1.

The contribution of batches i and i � 1 to the total flow-time in q� is given by

f� � �T �ni � ni�1

2� s� ni � ni�1

2� �T � ni � ni�1 � 2s�

ni � ni�1

2.

It is easily verified that

f � f� �1

4�ni�1 � ni�

2 �1

2s�ni�1 � ni� � 0.

Since no idle time exists between batches i and i � 1 (and obviously between batches scheduledprior to batch i) both in q and in q�, the completion time of batch i � 1 remains unchanged (inq and in q�) on all the machines. Thus, schedule q� is better than schedule q.

785Mosheiov, Oron, Ritov: Flow-Shop Batch Scheduling with Identical Processing-Time Jobs

Case 2: ni�1 � n1.

Within this case we distinguish between two subcases:

Case 2a: ni�1 � n1 and (ni � ni�1)/ 2 � n1.

In this case there is idle time between batch i and batch i � 1 in q. It is easily shown that theidle time on machine t is equal to (ni�1 � n1)(t � 1), t � 1, . . . , m. Note that there is noidle time on machine 1, and the idle time on machine m is (ni�1 � n1)(m � 1). Because (ni �ni�1)/ 2 � n1, there is no idle time prior to batch i � 1 in q� (see Fig. 2a). The contributionof batches i and i � 1 to the total flow-time in q is given by

f � �T � ni � s�ni � �T � ni � ni�1 � 2s � �ni�1 � n1��m � 1��ni�1.

Figure 1. Case 1 in Proposition 1. A 3-machine flow-shop before and after the change in batches i andi � 1.

786 Naval Research Logistics, Vol. 51 (2004)

The contribution of batches i and i � 1 to the total flow-time in q� is given by

f� � �T �ni � ni�1

2� s� ni � ni�1

2� �T � ni � ni�1 � 2s�

ni � ni�1

2.

In this case the flow-time decreases by

f � f� �1

4�ni�1 � ni�

2 �1

2s�ni�1 � ni� � �ni�1 � n1��m � 1�ni�1 � 0.

Since the idle time between batches i and i � 1 disappears in schedule q�, the completion timeof batch i � 1 decreases by this idle time, i.e., by (ni�1 � n1)(t � 1) on machine t, t � 1, . . . ,m. Again, q� is shown to be a better schedule.

Figure 2a. Case 2a in Proposition 1. A 3-machine flow-shop before and after the change in batches i andi � 1; the idle time prior to batch i � 1 is closed by this change.

787Mosheiov, Oron, Ritov: Flow-Shop Batch Scheduling with Identical Processing-Time Jobs

Case 2b: ni�1 � n1 and (ni � ni�1)/ 2 � n1.

As in Case 2a, in schedule q there is idle time of (ni�1 � n1)(t � 1) between batch i and batchi � 1 on machine t, t � 1, . . . , m. This idle time disappears in schedule q�. However, because(ni � ni�1)/ 2 � n1, a smaller idle time is created prior to batch i. This idle is equal to [(ni �ni�1)/ 2 � n1](t � 1) on machine t, t � 1, . . . , m (see Fig. 2b). The contribution of batchesi and i � 1 to the total flow-time in q is given by

f � �T � ni � s�ni � �T � ni � ni�1 � 2s � �ni�1 � n1��m � 1��ni�1.

The contribution of batches i and i � 1 to the total flow-time in q� is given by

f� � �T �ni � ni�1

2� �ni � ni�1

2� n1� �m � 1� � s� ni � ni�1

2

Figure 2b. Case 2b in Proposition 1. A 3-machine flow-shop before and after the change in batches i andi � 1; the idle time prior to batch i � 1 is closed and a smaller idle time is created prior to batch i.

788 Naval Research Logistics, Vol. 51 (2004)

� �T � ni � ni�1 � �ni � ni�1

2� n1� �m � 1� � 2s� ni � ni�1

2.

In this case the flow-time decreases by

f � f� �1

4�ni�1 � ni�

2 �1

2s�ni�1 � ni�

� �m � 1�� �ni�1 � n1�ni�1 � ni

2� �n1 � ni�

ni�1 � ni

2 � � 0.

Note that the latter expression is strictly positive since ni�1 was assumed to be strictly largerthan n1, and ni is not larger than n1 due to the LPT of the first i batches. Recall that in scheduleq� the idle time prior to batch i � 1 disappears, but a new (smaller) idle time is inserted priorto batch i. The total decrease in idle time on machine t prior to batch i � 1 is (t � 1)(ni�1 �n1) � (t � 1)((ni�1 � ni)/ 2 � n1) � (t � 1)(ni�1 � ni)/ 2. Consequently, the completiontime of batch i � 1 decreases by (t � 1)(ni�1 � ni)/ 2 on machine t, t � 1, . . . , m. It followsthat q� is a better schedule in the case as well. �

COMMENT 1: The procedure of replacing a pair of consecutive batches (i, i � 1), such thatni � ni�1, by a pair of identical batches of the average size, may be repeated an infinite numberof times in order to obtain an LPT schedule. This will happen, for example, in the case of (atleast) three consecutive batches (i, i � 1, i � 2) such that ni � ni�1 � ni�2. It is clear thata schedule obtained after a finite number of iterations is not LPT. However, (i) by Proposition1, each iteration improves the flow time value, and (ii) it is easily verified that asymptoticallythe schedule consists of a set of three identical batches of size (ni � ni�1 � ni�2)/3. Thus, theresulting (improved) schedule is LPT.

We showed that an optimal schedule exists such that n1 � n2 � . . . � nk. Note again that,based on the LPT property, an optimal schedule exists with no idle time between consecutivebatches on any of the machines. Our main and unusual result, regarding the optimal number ofbatches and their size, is introduced in the following theorem:

THEOREM 1: There exists an optimal schedule q such that:

● The number of batches k is

k �

1 � �1 �8mn

s

2.

● The first l batches (l � k) are of equal size where l is

l �

�1 � �1 �8�m � 1�n

s

2.

● Batch sizes are

789Mosheiov, Oron, Ritov: Flow-Shop Batch Scheduling with Identical Processing-Time Jobs

ni � �m

k�

m � 1

l �n �k � l

2s for 1 � i � l,

ni �mn

k� �k � 1

2� i�s for l � 1 � i � k.

PROOF: Based on Proposition 1, there exists an optimal schedule in which the batches arescheduled in LPT order. Therefore, we can write the objective function in the following manner:

f�q� � �j�1

k

Cj � n1�mn1 � ms� � n2�mn1 � n2 � �m � 1�s� � · · ·

� nk�mn1 � n2 � · · · � nk � �m � k � 1�s�.

By substituting n � ¥j�1k nj, we obtain

f�q� � �m � 1�n1n �1

2n2 �

1

2 �j�1

k

nj2 � n1ms � n2�m � 1�s � · · · � nk�m � k � 1�s.

We assume, without loss of generality, that the first l batches are of equal size (l can be of size1). We obtain

f�q� � �m � 1�n1n �1

2n2 �

l

2n1

2 �1

2 �j�l�1

k

nj2 � n1�m �

�l � 1�

2 � ls

� nl�1�m � l�s � · · · � nk�m � k � 1�s.

Thus, we have to solve the following optimization problem:

min f�q�

st

�j�1

k

nj � n.

Using Lagrange multipliers, we obtain

g�q� � f�q� � � � � �j�1

k

nj � n� .

Taking the first derivative of g(q) by n1, we obtain

790 Naval Research Logistics, Vol. 51 (2004)

�m � 1�n � l � n1 � �m ��l � 1�

2 � ls � l� � 0. (1)

Taking the first derivative of g(q) by ni, i � l � 1, . . . , k, we obtain

ni � �m � i � 1�s � � � 0 for l � 1 � i � k. (2)

From (2), we conclude that

ni�1 � ni � s for l � i � k � 1. (3)

Based on the assumption that the first l batches are equal in size, we calculate

�j�l�1

k

nj � n � �j�1

l

nj � n � l � n1. (4)

Summing over i � l � 1, . . . , k in (2), we obtain

�j�l�1

k

�nj � �m � j � 1�s� � �k � l��

f n � l � n1 � �m � 1 ��k � l � 1�

2 � �k � l�s � �k � l��. (5)

From (1) and (5), we obtain

�k � l

l � � � �m � 1�n � l � n1 � �m �l � 1

2 � ls�� �n � l � n1� � �m � 1 �

�k � l � 1�

2 � �k � l�s.

The solution of the above equation gives the optimal size batches:

ni � �m

k�

m � 1

l �n �k � l

2s for 1 � i � l,

ni �mn

k� �k � 1

2� i�s for l � 1 � i � k. (6)

Given the batch sizes, we have to ensure that:

1. The batches are in LPT order (according to Proposition 1).2. All batch sizes are nonnegative.

791Mosheiov, Oron, Ritov: Flow-Shop Batch Scheduling with Identical Processing-Time Jobs

In order to guarantee an LPT order, nl must be larger than or equal to nl�1. (Our solutionrequires the first l batches to be of equal size, and the following k � l batches to be scheduledin decreasing order. Thus, we have to ensure that the first l batches are larger than the largestbatch among the following n � k batches, that is, batch l � 1.) The size of nl�1 is calculatedfrom Eq. (6):

nl�1 � nl Nmn

k� �k � 1

2� l�s � n�m

k�

m � 1

l � � �k � l

2 �s.

Consequently, the condition on l is

l�l � 1� �2n�m � 1�

s. (7a)

Moreover, the difference between nl and nl�1 cannot exceed s. (Otherwise, an additional batchcan be inserted prior to batch l � 1, whose size is nl�1 � s.) Thus,

nl�1 � s � nl Nmn

k� �k � 1

2� l � 1�s � n�m

k�

m � 1

l � � �k � l

2 �s,

implying

l�l � 1� �2n�m � 1�

s. (7b)

In order to ensure that all batches are of nonnegative size, it is sufficient to require that thesmallest batch, nk, be nonnegative. The size of nk is calculated from Eq. (6):

nk �mn

k�

�k � 1�

2s.

Therefore,

nk � 0 Nmn

k�

�k � 1�

2s � 0 N k�k � 1� �

2mn

s.

We obtain that

k�k � 1� �2mn

s. (8a)

Since nk is the size of the smallest batch, it follows that the size of the next batch (which issmaller by s) cannot be positive, i.e., nk�1 � nk � s � 0. We obtain

792 Naval Research Logistics, Vol. 51 (2004)

nk�1 �mn

k�

�k � 1�

2s � s � 0 N k�k � 1� �

2mn

s.

Therefore, we require that

k�k � 1� �2mn

s. (8b)

Recall that k and l denote the number of batches and the number of identical batches,respectively. Therefore, they must be assigned positive integer values. From (7a) we obtain

l �

�1 � �1 �8n�m � 1�

s

2.

From (7b) we obtain

l �

1 � �1 �8n�m � 1�

s

2.

We conclude that

l �

�1 � �1 �8n�m � 1�

s

2. (9)

Similarly, from (8a) we obtain

k �

1 � �1 �8mn

s

2,

and from (8b) we obtain

k �

�1 � �1 �8mn

s

2.

We conclude that

793Mosheiov, Oron, Ritov: Flow-Shop Batch Scheduling with Identical Processing-Time Jobs

k �

1 � �1 �8mn

s

2. (10)

The resulting batch sizes are given by

ni ��2l � k�n

lk�

k � l

2s for i � l,

ni �2n

k�

�2i � k � 1�

2s for i � l. �

Recall that k is bounded by n and that l is bounded by k. Note that when s increases, bothk and l approach the value of 1. In this case, as expected, a single batch is optimal. When sdecreases, both k and l increase. For small enough values of s, k, and l given in (9) and in (10),respectively, are unbounded. In fact, both reach their largest possible value, n.

Note that when m equals 1, we obtain the solution for the single machine case presented bySantos and Magazine [12]. In this case, l equals 0 and k is given by

k �

1 � �1 �8n

s

2.

Because l equals 0, the difference in size between any two consecutive batches is s.The following algorithm provides an optimal solution for the (relaxed version of the)

problem:

Algorithm_Flowshop

Input: n, s.

Step 1: Determine the number of batches to be processed, k [from (10)].Step 2: Calculate the number of identical batches, l [from (9)].Step 3: Calculate the batch sizes [from (6)].

In Examples 1 and 2, we demonstrate the use of Algorithm_Flowshop:

EXAMPLE 1 (2 machines): Consider a 2-machine flowshop with n � 60 and s � 11. Firstwe calculate the number of batches k:

k �

1 � �1 �16n

s

2�

1 � �1 �16 � 60

11

2�

1 � �88.2727

2� 4.198 � 5.

794 Naval Research Logistics, Vol. 51 (2004)

Next we calculate the number of identical batches l:

l �

�1 � �1 �8n

s

2�

�1 � �1 �8 � 60

11

2�

�1 � �44.636

2� 2.841 � 3.

Now we determine the size of the first three (identical) batches:

n1 � n2 � n3 ��2l � k�n

lk�

k � l

2s �

�2 � 3 � 5� � 60

3 � 5�

5 � 3

2� 11 � 15.

The size of batches 4 and 5 are

n4 �2n

k�

�2i � k � 1�

2s �

2 � 60

5�

�2 � 4 � 5 � 1�

2� 11 � 13.

n5 �2n

k�

�2i � k � 1�

2s �

2 � 60

5�

�2 � 5 � 5 � 1�

2� 11 � 2.

The schedule that minimizes the total completion time consists of the following batch sizes:n1 � 15, n2 � 15, n3 � 15, n4 � 13, n5 � 2. The total flow-time is 5456.

EXAMPLE 2 (5 machines): Consider a 5-machine flowshop with n � 1260 s � 30. In thiscase,

k �

1 � �1 �8mn

s

2�

1 � �1 �8 � 5 � 1260

30

2�

1 � �1681

2� 21 � 21,

l �

�1 � �1 �8�m � 1�n

s

2�

�1 � �1 �8 � 4 � 1260

30

2

��1 � �1345

2� 17.837 � 18.

The size of the first 18 batches:

n1 � n2 � · · · � n18 � �m

k�

m � 1

l �n �k � l

2s

� � 5

21�

5 � 1

18 � � 1260 �21 � 18

2� 30 � 65.

795Mosheiov, Oron, Ritov: Flow-Shop Batch Scheduling with Identical Processing-Time Jobs

The size of batches 19–21:

n19 �mn

k� �k � 1

2� i�s �

5 � 1260

21� �21 � 1

2� 19� � 30 � 60,

n20 �mn

k� �k � 1

2� i�s �

5 � 1260

21� �21 � 1

2� 20� � 30 � 30,

n21 �mn

k� �k � 1

2� i�s �

5 � 1260

21� �21 � 1

2� 21� � 30 � 0.

A schedule of batches that minimizes the total completion time is:

n1 � n2 � · · · � n18 � 65, n19 � 60, n20 � 30, n21 � 0.

The total flow-time is 1,698,525. Note that the size of the last batch is 0, which is in accordancewith Theorem 1.

Our algorithm provides the optimal number of batches, their size, and their order. Asmentioned, it does not guarantee integer batch sizes. We thus propose a simple roundingprocedure. The procedure consists of two main steps. In the first step the first l batches arerounded to the nearest integer. If they are rounded up (down), the remaining k � l batches arerounded down (up). If the total number of jobs, n, is not maintained, an additional (correction)step is required. A more formal description of this procedure is given below:

A rounding procedure:

Input: n, k, l, n1, n2, . . . , nk.

Step 1: If n1 � n1 � 0.5, then n1 � n1, n2 � n2, . . . , nl � nl, and nl�1 �

nl�1, nl�2 � nl�2, . . . , nk � nk.

Else, (n1 � n1 � 0.5) then n1 � n1, n2 � n2, . . . , nl � nl, and nl�1 �

nl�1, nl�2 � nl�2, . . . , nk � nk.Define as the difference between the total number of jobs in the new allocation and theiroriginal number, i.e., � ¥i�1

k ni � n.If � 0 then stop. (Rounding is completed.)If � 0 then an additional rounding down procedure is required (Step 2).Else (if � 0) then an additional rounding up procedure is required (Step 3).

Step 2: If nk � 0 then nk � nk � 1; check .If � 0 thenif nk�1 � 0 then nk�1 � nk�1 � 1; check .Continue until � 0 or nl�1 � nl�1 � 1.If additional correction is needed ( � 0), restart with batch k.If this correction process leads to the (rare) case that nl�1 � nl�2 � . . . � nk � 0, beginreducing batch l (and if required batch l � 1 and so on) until � 0.

796 Naval Research Logistics, Vol. 51 (2004)

Step 3: nl�1 � nl�1 � 1; check .If � 0 then nl�2 � nl�2 � l; check .Continue until � 0 or nk � nk � 1.If additional correction is needed ( � 0), repeat the above procedure (starting with batch l �1) while maintaining nl � nl�1 � . . . � nk.If the above correction leads to the (rare) case that nl � nl�1 � . . . � nk, create a new batchnk�1 � 1. If � 0 increase nk�1 by 1 until � 0. If nk�1 � nl create an additional batchnk�2 in a similar manner, and so on. The procedure is completed when � 0.

We demonstrate the rounding procedure with the following examples. Consider first a 2-ma-chine flow-shop with 42 jobs and a setup time of 2. The relaxed solution consists of sevenbatches of size 5.33 and two batches of size 3.33 and 1.33. We round down the size of the firstseven batches to 5 and round up the size of the two remaining batches to 4 and 2, respectively(Step 1). Since � �1 we proceed to Step 3. nl�1 (�n8) increases by 1 and becomes 5. Atthis stage � 0 and the rounding procedure is completed. The resulting integer solution is (5,5, 5, 5, 5, 5, 5, 5, 2). A second example consists of a 3-machine flow-shop, 19 jobs, and a setuptime of 2. The non-integer solution consists of six batches of size 2.792 and two similar batchesof size 2.125 and 0.125, respectively. In Step 1, we round up the size of the first six batches to3, and round down the size of the last two batches to 2 and 0, respectively. � 1 and, therefore,we proceed to Step 2. Since nk � n8 � 0, we cannot reduce its size. Thus, the size of batch7 (nk�1) is reduced by 1. The rounding procedure is completed (since � 0) and the resultinginteger solution is (3, 3, 3, 3, 3, 3, 1, 0). The following example demonstrates a completesolution for the relaxed problem and rounding procedure.

EXAMPLE 3 (3 machines): Consider a 3-machine flowshop with n � 34 and s � 2. Theoptimal number of batches is

k �

1 � �1 �8mn

s

2�

1 � �1 �8 � 3 � 34

2

2� 10.

The optimal number of identical batches is

l �

1 � �1 �8�m � 1�n

s

2�

1 � �1 �8 � 2 � 34

2

2� 8.

The batch sizes for the relaxed problem are

n1 � n2 � · · · � n8 � �m

k�

m � 1

l �n �k � l

2s

� � 3

10�

3 � 1

8 � � 34 �10 � 8

2� 2 � 3.7,

n9 �mn

k� �k � 1

2� i�s �

3 � 34

10� �10 � 1

2� 9� � 2 � 3.2,

797Mosheiov, Oron, Ritov: Flow-Shop Batch Scheduling with Identical Processing-Time Jobs

n10 �mn

k� �k � 1

2� i�s �

3 � 34

10� �10 � 1

2� 10� � 2 � 1.2.

The total flow-time is 1374.2. Using the above rounding procedure, we obtain the followinginteger batch-size solution: n1 � n2 � . . . � n8 � 4, n9 � 2, n10 � 0. Note that the totalnumber of batches is reduced to 9. The flow-time value is 1376. A complete enumeration showsthat this solution is optimal.

In order to test the accuracy of the rounding procedure, we performed a numerical studycontaining problems with various number of machines (m � 3, 5, 10), jobs (n � 25, 100,500), and setup values (s � 0.5, 1, 10). For each combination of m, n, and s, first the relaxedproblem is solved to optimality by Algorithm_Flowshop. The resulting flow-time value is clearlya lower bound on the optimal cost of the general problem. Then we performed the roundingprocedure to obtain integer batch sizes. Table 1 presents the ratio between the flow-time valuesobtained and the lower bounds. Table 1 verifies that our rounding procedure is very accurate inall settings. Although an optimal solution is not guaranteed (as in the case of a single machine,see Mosheiov, Oron, and Ritov [9]), the optimality gaps are extremely small, and for all practicalpurposes our solution procedure is clearly recommended.

4. CONCLUSION

In this paper, we solve the m-machine flow-shop scheduling problem with identical jobs andmachine- and sequence-independent setups. An optimal solution is provided for the relaxedversion, and an efficient and accurate rounding procedure is presented for the general problem(with integer batch sizes). The solution presented is both surprising and nonintuitive. At present,we cannot provide an explanation for the unique structure of the optimal schedule.

Future research may focus on the introduction of a polynomial-time rounding procedure thatguarantees an optimal solution, if one exists. Future studies may also focus on similar flow-timeminimization problems in different machine settings, or on the more complicated case ofsequence-dependent or machine-dependent setup times.

ACKNOWLEDGEMENTS

This paper was supported in part by the Reccanati Fund of The School of BusinessAdministration, The Hebrew University of Jerusalem.

REFERENCES

[1] T. Aldowaisan and A. Allahverdi, Total flowtime in no-wait flowshops with separated setup times,Comput Oper Res 25(9) (1998), 757–765.

Table 1. Ratio between the flow-time value obtained for integer batch sizes and the lower bound.

n � 25 n � 100 n � 500

s � 0.5 s � 1 s � 10 s � 0.5 s � 1 s � 10 s � 0.5 s � 1 s � 10

m � 3 1.00999 1.00287 1.00002 1.00044 1.00234 1.00002 1.00002 1.00001 1.00001m � 5 1.00584 1.00764 1.00000 1.00405 1.00206 1.00073 1.00030 1.00048 1.00006m � 10 1.01041 1.00196 1.00233 1.00796 1.00403 1.00034 1.00104 1.00012 1.00005

798 Naval Research Logistics, Vol. 51 (2004)

[2] A. Allahverdi, Minimizing mean flowtime in a two machine flowshop with sequence independentsetup times separated, Comput Oper Res 27(2) (2000), 111–127.

[3] J. Bukchin, M. Tzur, and M. Jaffe, Lot splitting to minimize average flow-time in a two machineflowshop, IIE Trans 34 (2002), 953–970.

[4] T.C.E. Cheng, J.N.D. Gupta, and G. Wang, A review of flowshop scheduling research with setuptimes, Prod Oper Management 9 (2000), 262–282.

[5] E.G. Coffman Jr., A. Nozari, and M. Yannakakis, Optimal scheduling of products with twosubassemblies on a single machine, Oper Res 37 (1989), 426–436.

[6] R.W. Conway, W.L. Maxwell, and L.W. Miller, Theory of scheduling, Addison-Wesley, Reading,MA, 1967.

[7] G. Dobson, U.S. Karmarkar, and J.L. Rummel, Batching to minimize flow times on one machine,Management Sci 33 (1987), 784–799.

[8] E.L. Lawler, J.K. Lenstra, A.H.G. Rinnooy Kan, and D.B. Shmoys, Handbooks in OR and MS,Elsevier Science, Amsterdam, 1993, Vol. 4, Chap. 9.

[9] G. Mosheiov, D. Oron, and Y. Ritov, Minimizing flow-time on a single-machine with integer sizebatches, Oper Res Lett, 2002, to appear.

[10] D. Naddef and C. Santos, One-pass batching algorithms for the one-machine problem, Discrete ApplMath 21 (1988), 133–145.

[11] C.N. Potts and M. Kovalyov, Scheduling with batching: A review, European J Oper Res 120 (2000),228–249.

[12] C.A. Santos and M. Magazine, Batching in single operation manufacturing systems, Oper Res Lett4 (1985), 99–103.

[13] D. Shallcross, A polynomial algorithm for a one machine batching problem, Oper Res Lett 11 (1992),213–218.

799Mosheiov, Oron, Ritov: Flow-Shop Batch Scheduling with Identical Processing-Time Jobs