job scheduling 2

8
Moth/ Compuf. Modelling Vol. 13 No. 3 pp. 29-36 1990 Printed n Great Britain 089s7177/90 3.00 + 0.00 Pergamon Press plc S CHEDU LI NG GROUPS OF J OBS I N THE TWO MACHINE FLOW SHOP? K. R. BAKER The Amos Tuck School of Business Administration, Dartmouth College, Hanover, NH 03755, U.S.A. Abstract This paper provides a review of the two-machine flow shop model when time lag s or setups are introduced. Building on these results, it establishes a general framework for scheduling groups of jobs when each group requires a setup. INTRODUCTION Scheduling models for groups of jobs have gained significance as group technology (GT) has become more widely applied. In the GT scheduling problem there is typically an incentive to perform similar tasks together and a requirement to incur a setup in order to perform a dissimilar task. Many basic models for the scheduling of independent jobs have been extended to the GT setting. For example, the minimization of mean flowtime is treated by Yoshida et al. [l], and the minimiza tion of mean tardiness is examined by Yoshida et al. [2] and Ozden et al. [3]. Each of these papers deals with a single-mach ine model. The flow shop model is analyzed by Yoshida and Hitomi [4,5], and their result is reported in the survey of Ham et al. [6]. However, they consider one variation of many that can occur in the GT environme nt. The purpose of this paper is to develop a general framework within which several variations of the GT model can be analyzed for the two-machine flow shop. In order to provide the base for this framework, we review the important results on flow shop scheduling with time lags. This review states certain key properties that have not been discussed in the basic papers on this topic. We pay particular attention to the possible overlapping of tasks. We also distinguish anticipatory (or “separable”) setups from nonanticipa tory setups. Although these two features are not always explicit in scheduling models, they appear at first glance t o generate different problems. However, the general framework we present here permits us to handle several variants with one basic scheduling rule. machines is limiting , but we know that many interesting and practical m-machine problems are quite difficul t to solve. The m-machine version of the GT scheduling problem considered here is likely to be even more difficult. Ho wever, the optimal solution to two-machine problems has often supplied the kernel from which a general solution technique has been developed. Two well-know n examples are the flow shop heuristic of Campbell et al. [7] and the branch-and-bound procedure of Lageweg et al. [8]. In the same vein, we expect that the insights gained in solving two-machine GT problems will be useful in attacking larger ones. This same analogy has already been demonstrated in the work of Ham et al. [6, Chap. 81. THE TWO-MACHINE FLOW SHOP MODEL In order to describe the basic fl ow shop model, let uj denote the processing time of job j on machine 1 and let bj denote the time on machine 2, where precedence requirements dictate that jobs must go to machine 1 before machine 2. Indeed, in the basic model, each job must complete all of its work on machine 1 before it starts on machine 2. The objective is to minimize the schedule length, or makespan. The fundamental result for flow shop sequencing [9] states that in this basic model, job i precedes job i in an optimal sequence if min(a,, b,) -c min(u,, bi). 1) tworking paper No. 231 from the Amos Tuck School of Business Administration. 29

Upload: allen-r-kerketta

Post on 17-Feb-2018

221 views

Category:

Documents


0 download

TRANSCRIPT

7/23/2019 job scheduling 2

http://slidepdf.com/reader/full/job-scheduling-2 1/8

Moth/ Compuf. Modelling Vol. 13 No. 3 pp. 29-36 1990

Printed n Great Britain

089s7177/90 3.00 + 0.00

PergamonPress

plc

SCHEDULING GROUPS OF J OBS IN THE

TWO MACHINE FLOW SHOP?

K. R.

BAKER

The Amos Tuck School of Business Administration, Dartmouth College, Hanover, NH 03755, U.S.A.

Abstract This paper provides a review of the two-machine flow shop model when time lags or setups

are introduced. Building on these results, it establishes a general framework for scheduling groups of jobs

when each group requires a setup.

INTRODUCTION

Scheduling models for groups of jobs have gained significance as group technology (GT) has

become more widely applied. In the GT scheduling problem there is typically an incentive to

perform similar tasks together and a requirement to incur a setup in order to perform a dissimilar

task. Many basic models for the scheduling of independent jobs have been extended to the GT

setting. For example, the minimization of mean flowtime is treated by Yoshida et al. [l], and the

minimization of mean tardiness is examined by Yoshida et al. [2] and Ozden et al. [3]. Each of these

papers deals with a single-machine model.

The flow shop model is analyzed by Yoshida and Hitomi [4,5], and their result is reported in

the survey of Ham et al. [6]. However, they consider one variation of many that can occur in the

GT environment. The purpose of this paper is to develop a general framework within which several

variations of the GT model can be analyzed for the two-machine flow shop.

In order to provide the base for this framework, we review the important results on flow shop

scheduling with time lags. This review states certain key properties that have not been discussed

in the basic papers on this topic. We pay particular attention to the possible overlapping of tasks.

We also distinguish anticipatory (or “separable”) setups from nonanticipatory setups. Although

these two features are not always explicit in scheduling models, they appear at first glance to

generate different problems. However, the general framework we present here permits us to handle

several variants with one basic scheduling rule.

The results we cover pertain to the two-machine model. Of course, the restriction to two

machines is limiting, but we know that many interesting and practical m-machine problems are

quite difficult to solve. The m-machine version of the GT scheduling problem considered here is

likely to be even more difficult. However, the optimal solution to two-machine problems has often

supplied the kernel from which a general solution technique has been developed. Two well-known

examples are the flow shop heuristic of Campbell

et al.

[7] and the branch-and-bound procedure

of Lageweg

et al. [8].

In the same vein, we expect that the insights gained in solving two-machine

GT problems will be useful in attacking larger ones. This same analogy has already been

demonstrated in the work of Ham et al. [6, Chap. 81.

THE TWO-MACHINE FLOW SHOP MODEL

In order to describe the basic flow shop model, let uj denote the processing time of job j on

machine 1 and let

bj

denote the time on machine 2, where precedence requirements dictate that jobs

must go to machine 1 before machine 2. Indeed, in the basic model, each job must complete all

of its work on machine 1 before it starts on machine 2. The objective is to minimize the schedule

length, or

makespan.

The fundamental result for flow shop sequencing [9] states that in this basic

model, job i precedes job i in an optimal sequence if

min(a,, b,) -c min(u,, bi).

1)

tworking paper No. 231 from the Amos Tuck School of Business Administration.

29

7/23/2019 job scheduling 2

http://slidepdf.com/reader/full/job-scheduling-2 2/8

30 K. R.

BAKER

(al

(b)

Fig. 1. Right-shifting to avoid inserted idle time.

This ordering allows a complete sequence to be constructed by ranking the job processing times,

starting with the shortest, and breaking ties arbitrarily. The job corresponding to the first

processing time on this list is placed in the first or last available position in sequence, according

to whether the processing time is on machines 1 or 2, respectively. That job is then removed from

consideration, and the remaining list is treated the same way, until all jobs are sequenced.

Normally, when the flow shop model is presented in the literature, diagrams of schedules

produced by Johnson’s rule suggest that each operation should be scheduled as early as possible

on each machine. As a result, there is no idle time on machine 1 until all jobs have been processed,

but there may be inserted idle time on machine 2. See Fig. l(a) for such an example. Notice that,

as long as our objective is to minimize makespan, we can also schedule the jobs on machine 2 so

that there is no inserted idle time once processing begins. This simply involves right-shifting the

operations of machine 2 as they appear in Fig. l(a), while maintaining the completion time of the

last operation. Figure l(b) depicts the modification, where i, denotes the idle time on machine 2

before processing begins and i, denotes the idle time on machine 1 after processing is complete.

For convenience, we refer to these respectively as the initial

and

f inal idle times of the schedule.

To compute these quantities, let

yk = (al + a2 + ’ ..+ak)- b,+b,+,..+6,_,).

2)

The two sums in equation (2) represent the machine workloads that must be completed prior to

the processing of job k at machine 2. Their difference represents the amount of initial idle time

necessary on machine 2 prior to the processing of jobs 1 through k, given that they are processed

without inserting idle time. The quantity yk is a lower bound on i,. Thus,

In symmetric fashion let

x, = (bk +

where n is the number of jobs

i, = max( yk).

b,+, +.. ‘+b,)- ak+,+ak+z+...+a,),

in the schedule. Then

i2 = max(x,).

(3)

(4)

(5)

We shall generalize these definitions later on.

THE MODEL WITH TIME LAGS

Time lags (start lags and stop lags) are discussed by Mitten [lo] and several other authors,

leading to the general models presented by Rinnooy Kan [l l] and Szwarc [12]. The motivation for

introducing start and stop lags is to allow for splitting and overlapping of jobs. That is, processing

can begin at machine 2 on an early portion of a job, while the later portion is still at machine 1.

A typical application would be a situation where each job is a batch consisting of several discrete

and identical units. Once the first unit completes at machine 1, it can immediately begin processing

at machine 2. In this case, the start lag represents the time to process one unit on machine 1, and

the stop lag represents the time to process one unit on machine 2. In other words, we would be

using a “transfer batch” of size 1. Obviously, transfer batches of size > 1 can also be modeled with

the use of time lags. In particular, define a start lag uj as the required delay between the start of

the first operation and the start of the second operation. Analogously, a stop lag Uj s the required

delay between the completion of the first operation and the completion of the second. As shown

7/23/2019 job scheduling 2

http://slidepdf.com/reader/full/job-scheduling-2 3/8

The two-machine flow shop model

(b)

Fig. 2. The relationships among time-lags and processing times.

by Rinnooy Kan [l 11 he optimal schedule is characterized by a rule analogous to condition (1):

specifically, job

i

precedes job j in an optimal sequence if

min(a, + dii, b, + d,) < min(u, + d,, bi + di),

6)

where

d, = max(u,- aj, oj- b,).

(7)

The form of equation (7) in which d, may be negative, reflects the fact that one of the two time

lags will always be binding. If, as in Fig 2(a), we have

d, = uj -a, > v,-b,,

then the start lag is binding, and a schedule that meets the start-lag constraint will automatically

satisfy the stop-lag constraint. On the other hand, if, as in Fig. 2(b), we have

d,= v,-b,> uj-a/,

then the stop-lag is binding, and a schedule that meets the stop-lag constraint will automatically

satisfy the start-lag constraint. In either case, d, represents the time offset between the completion

of the first operation and the start of the second operation. Conway et al. [13] referred to 4. as

the transfer lag.

Finally, consider the one-job schedule for jobj alone, with a given start-lag and a given stop-lag.

Let e,j denote the idle time on machine 2 prior to processing job j, and let e,, denote the idle time

on machine 1 after processing job j. These quantities are shown in Fig. 3. Then

e,, = aj + d,

8)

and

e2,=

bj+dj.

9)

Therefore, the rule based on condition (6) can be restated as follows: job i precedes job i in an

optimal sequence if

min(e,,, ezj) < min(e,j, ezi).

(10)

As we shall see, this form of the rule proves to be convenient when we analyze the scheduling of

groups of jobs.

THE MODEL WITH SETUPS

In Johnson’s original model [9], there is no need to distinguish setup times and run times;

therefore, setup times are assumed to be contained in processing times. For certain applications,

however, it is useful to treat the setup times as separable; hence we define slj as the setup time for

job j on machine 1 and sSj as the setup time on machine 2. These times are assumed to be

sequence-independent.

Fig. 3. Parameters for a single job, scheduled with overlapping operations.

7/23/2019 job scheduling 2

http://slidepdf.com/reader/full/job-scheduling-2 4/8

32 K. R.

BAKER

(al

tb)

........

.......

1

lj

aj

Sl.

J

aj

‘ j

bj j

bj

Fig. 4. A schedule for one job with setup times that are (a) nonanticipatory and (b) anticipatory.

Figure 4(a) shows how a particular job might be scheduled over two machines in this case. Two

features are significant here. First, a job cannot be split: this means that the entire job must be

completed at machine 1 before it can begin work at machine 2. Second, the setup is nonanticipatory:

this means that work must arrive at machine 2 in order for the setup to be initiated. (In other words,

the setup cannot be scheduled in ant icipat ion of arriving work.) Under these two assumptions the

two-machine flow shop problem can be treated in the original manner. Specifically, let

Aj = slj + a, and E, = sIi i b,

1 I)

and then adapt condition (1) to construct the optimal sequence: job

i

precedes

job j

in an optimal

sequence if

min(Ai, B,) < min(A,,

B,).

(12)

The use of capital letters denotes compound processing times: in this case “processing” includes

both setup time and run time.

Consider, for example, what happens if the setup for machine 2 can be scheduled in anticipation

of arriving work, as in Fig. 4(b). We can view this case as a model with

Aj = s,, + aj

and

B, = szi + b,

and with start-lag U, = slj + a,-szj and stop-lag V, = by Thus, equations (8) and (9) yield:

E,j= A,+ max(U,-Aj, B,- V,)

=~,,+a,-s~~

and

Ezj= B,+ max(U,-A,, B,- V,) = b,

Hence the general rule (10) reduces to the following:

min(s,, + a, s,, b,) < min(sli + a/- sz,, b,).

(13)

This same result is proven by Yoshida and Hitomi [4,5], working from first principles.

We could also permit overlapping while recognizing setups. To address this combination, we

must be sure that the start-lag is consistent with the presence of setup times. In other words, we

measure the start-lag from the beginning of the setup on machine 1, so that U, > slj if setups are

nonanticipatory, and Uj > slj--s,, if setups are anticipatory. Thus, there are four cases of the

solution, depending on whether setups are anticipatory and whether jobs can be overlapped.

SEQUENCING GROUPS OF JOBS

In the GT scheduling model, jobs are organized into

groups,

and the various jobs of a group

must be processed consecutively. Job k of group j requires a processing time of

ajk

on machine 1

and bjk on machine 2. In addition, there is a setup time s,~ to initiate the production of group j

on machine

i .

The overall scheduling problem decomposes into two levels, one involving the

sequencing of jobs within groups and the other involving the sequencing of the groups themselves.

In the lower-level problem, a sequence must be determined for the jobs in group j. Fortunately,

it is not hard to see that Johnson’s rule applies. (The formal proof involves a pairwise interchange

argument, as in the proof for the basic model, showing that no improvement is possible by violating

the rule.) Note that the time-lag version of Johnson’s rule applies if jobs can be overlapped.

Furthermore, the setup-time version applies if the jobs within a particular group each require a

7/23/2019 job scheduling 2

http://slidepdf.com/reader/full/job-scheduling-2 5/8

The two-machine flow shop model

33

minor setup. Assuming that the lower-level problem has been solved, we use the subscript to mean

the kth job in the optimal sequence for the group.

In the higher-level problem, a sequence must be determined for the groups. The essential

modeling question here is how to redefine groups as pseudo-jobs in order to apply the existing

results of flow shop theory. Clearly, if setup times are nonanticipatory and groups must each

complete work on machine 1 before starting on machine 2, then we can simply redefine groups

as jobs and use Johnson’s rule. Formally, let

and

Aj =

Slj +

1 alk

k

Then group i precedes job j in an optimal sequence if

min(A,,

B,) <

min(Aj,

B;).

Similarly, if we prohibit the overlapping of groups but permit anticipatory setups, then we can

adapt condition (13) to yield an optimal sequence.

However, the essence of the typical GT scheduling problem is that groups can be processed in

overlapping fashion, because one of the jobs in the group can occupy machine 2 while another

occupies machine 1. For this reason, our general framework must recognize that groups could

overlap. To allow for overlapping we invoke the time-lag model, with groups in the role of what

were jobs. Hence, the basic rule governing the sequence of groups is the following: group i precedes

group j in an optimal sequence if

min(A, + D i , B, + 0,) < min(Aj + Dj , Bi + Di ),

(14)

where the parameters in this expression refer to properties of groups, being determined from the

problem data and assumptions about setups, as we discuss next.

Assume first that setups are nonanticipatory and that jobs must complete on machine 1 before

starting on machine 2, so that jobs may not be split. Each group will appear in the schedule with

its individual jobs sequenced by Johnson’s rule. Also, a setup time will initiate the processing of

the jobs comprising the group, as shown in Fig. 5(a). Without loss of generality, we can reschedule

the jobs with no inserted idle time ,

as shown in Fig. 5(b). For groupj, let Ilj denote the initial

group idle time, and let Z2j denote the final time group idle time, as in Fig. 5(b). The reasoning

in equations (2)-(j) leads, similarly, to the following:

where, for k > 1,

I,, = my (Y,~), (15)

_Y,k (SI, + ajl + aj2 + .

+a,,)- S,,+b,,+bj ,+...+b,,k_,)

and, for

k =

1,

Similarly,

Yjl slj + ql.

12, = m;x -u,)~

16)

(a)

(b)

MCH 1 ::::::

MCHZ

I, ......

d I I

Fig. 5. Right-shifting the group schedule to avoid inserted idle time.

7/23/2019 job scheduling 2

http://slidepdf.com/reader/full/job-scheduling-2 6/8

34

K. R BAKER

where, for k > 1,

Xjk = b jk+b j ,k+ I+“ ‘ +b jg ) - u j .k+ ,+U j ,k+ ,+” ’+Qjg )

and, for k = 1,

XII= (Szj+ bj, + bj2 +

’ ’ . +

bjg)- ~j , + U j3 . . +

U,g),

where g is the number of jobs in the group.

With these definitions in place, we can interpret Z,j as the start-lag for group j, and Zzj s the

stop-lag. The parameters are therefore as follows:

Aj = Slj + 1

ajk

k

B j = S2 j + C

bjk

k

u, = I,j

and

and so

D,=max(U,-Aj,

y--B,)

= max max y,k)-slj-~ ajk,

maX Xjk)-s2j-~

bjk

i

.

k k

Although the optimal sequence can be obtained from condition (14) with the parameters in this

form, it turns out that an alternative version exists, just as condition (10) serves as an alternative

to condition (6) for the sequencing of jobs. With analogous reasoning it can be shown that

and

Aj+D,=Z,j

B, + Dj = Izr.

Therefore the optimizing rule may be stated as follows:

group i precedes group j i n an optimal

sequence i f

min I,i, Izj ) < mi n Z,j, Z2,).

17)

If setups are anticipatory, this same rule applies, but the yjk and xjk must be calculated

consistently. In equation (15), we have, Vk 2 1,

y jk = SI, + aj l + uj 2 + ’ ’ .+Ujk ) - S,j+bj ,+b,,+.. .+b,,k_,) .

In equation (16) we must take the maximum for k > 0, where, for k > 1,

Xjk= bjkkbj.k+,+“‘+bj~)- Uj,k+,fUj,k+,+.”+Uj~)

and, in addition,

Xj o= szj+bjl +bjz+..

’ + b,k_,) - Slj + ujl +

U,2 f . . ’ + Ujk).

Finally, the result in condition (17) can be extended to overlapping jobs by specifying the

calculation of yjk and xjk appropriately.

EXAMPLE

As a numerical example, consider the three groups described in Table 1. Suppose that setups

are nonanticipatory and that no overlapping of jobs is permitted. The groups in this example each

contain three jobs. Within each group the jobs are already sequenced according to Johnson’s rule.

7/23/2019 job scheduling 2

http://slidepdf.com/reader/full/job-scheduling-2 7/8

The two-machine flow shop model

Table 1. An example containing three groups and nine jobs, with setup times and

processing times given; for the case of nonanticipatory setups, the I,, values are

computed from the given information

Gr0tlp/ Setup

machine times

Process times

I,, and 12,

values

l/l 5 5 II 8 10

112 10 8 12 6 17

20 8 3 5 7 11

212 IO 6 5 3 12

30 5 3 8 16 8

312 2 12 15 4 9

35

Table 2. An example containing three groups and nine jobs, with setup times and

processing times given; for the case of anticipatory setups, the I, values are

computed from the given information

Group/

Setup

I,, and rI,

machine

times

process times values

l/l 5 5 II 8 3

112 10 8 12 6 IO

20 8 3 5 7 2

2/2 10 6 5 3 3

3/l 5 3 8 16 6

312 2 12 15 4 7

The table summarizes the required calculations with the values of Z,j and I,. These values imply

an optimal group sequence of 3-l-2, as can be verified from the summary of Z-values shown

below:

Group j 1 3 2

Ilj 8 10 11

I

2J

9 17 12

The makespan for the entire schedule is 102.

Now suppose that setups are anticipatory in the same example. Table 2 contains a set of

appropriate calculations, showing the change in the value of I,,. As should be clear from Fig. 5,

the difference between I,j and IIj is unaffected by the change in the assumption about setups.

However, there may still be an incentive to resequence the groups. In this case the optimal

sequences is 2-l-3, as can be verified from the summary of Z-values shown below:

Group j 2 3

1

[lj

2

3 6

I

2,

3 10 7

The makespan for this schedule is 95.

SUMMARY

We have analyzed the two-machine flow shop model involving groups of jobs. Each group

requires a setup on each machine, in order to initiate the processing of the jobs in the group. The

first step in the solution (the lower-level problem) is to order the jobs in each group according to

Johnson’s rule. The next step is to calculate the initial group idle time Z,j and the final group idle

time Z,, based on this ordering of jobs. Finally, in the higher-level problem, the groups are

sequenced according to the following rule: group

i

precedes group i if min(Zli, Ztj) < min(Z,j, Zzi).

This ordering allows a complete sequence to be constructed by ranking the group idle times, starting

with the shortest, and breaking ties arbitrarily. The group corresponding to the first idle time on

this ranked list is placed in the first or last available position in sequence according to whether the

idle time is initial or final, respectively. That group is then removed from consideration, and the

remaining list is treated the same way until all groups are sequenced.

7/23/2019 job scheduling 2

http://slidepdf.com/reader/full/job-scheduling-2 8/8

36

K. R.

B KER

The results in this paper generalize Theorem 1 of Kurisu [14], regarding the sequencing of strings

of jobs. Our framework can be viewed as a generalization of the rule in condition (10) for

sequencing overlapping jobs to the sequencing of overlapping groups. As we have seen, the rule

is unchanged if we assume that group setup times are anticipatory instead of nonanticipatory, or

if we assume that individual jobs can be split and overlapped, or if we assume that individual jobs

require minor setups. The only differences occur in the applications of Johnson’s rule to the

lower-level problem and in the specific calculation of Zij.

Acknowledgements-The comments of Professor W. Szwarc and an anonymous referee on earlier drafts of this manuscript

are gratefully acknowledged.

REFERENCES

1. T. Yoshida, N. Nakamura and K. Hitomi, A study of production scheduling (optimization of group scheduling on

a single production stage). Trans. Japan Sot. mech. Engng 39, 1993-2003 (1973).

2. T. Yoshida, N. Nakamura and K. Hitomi, Group production scheduling for minimum total tardiness. AIIE Trans.

10, 157-162 (1978).

3. M. Ozden, P. Egbelu and A. Iyer, Job scheduling in a group technology environment for a single facility.

Computers

ind . Engng 9, 67-72 1985).

4.

T. Yoshida and K. Hitomi, Multi-stage production scheduling with setup time consideration.

Trans. Japan Sot. mech.

Engng 45 395) 1979).

5. T. Yoshida and K. Hitomi, Optimal two-stage production scheduling with setup times separated. AIIE Trans. 11,

261-263 (1979).

6. I. Ham, K. Hitomi and T. Yoshida,

Group Technology.

Kluwer-Nijhoff, Amsterdam (1985).

7. H. G. Campbell, R. A. Dudek and M. L. Smith, A heuristic algorithm for the n job, m machine sequencing problem.

Mgmt Sci. 16, B630-637 (1970).

8. B. J. Lageweg, J. K. Lenstra and A. H. G. Rinnooy Kan, A general bounding scheme for the permutation flow shop.

Ops Res.

26, 53-67 (1978).

9. S. M. Johnson, Optimal two- and three-stage production schedules with setup times included. Nav. Res. Logist. Q. 1,

61-68 (1954).

10. L. G. Mitten, Sequencing n jobs on two machines with arbitrary time lags. Mgmt Sci. 5, 293-298 (1959).

Il. A. H. G. Rinnooy Kan,M hine

Scheduling Problems.

Stenfert-Kroese, Amsterdam (1976).

12. W. Szwarc. Flow shoe problems with time lags.

Mnmt Sci.

29, 477-481 (1983).

13. R. W. Conway, W. L. ‘Maxwell and L. W. Miller,-Theory o .Schedul in g: Addison-Wesley, Reading, Mass. (1967).

14. T. Kurisu, Two-machine scheduling under required precedence among jobs.

J. Ops Res. Sot . Japan

19, l-13 (1976).