Scheduling on a two-machine flowshop subject to ... - Science Direct

18 downloads 2090 Views 716KB Size Report
same sequence of the jobs on each machine. After providing an elimination criterion for minimizing makespan with probability 1, we show that under appropriate ...
EUROPEAN JOURNAL OF OPERATIONAL RESEARCH ELSEVIER

European Journal of Operational Research 81 (1995) 376-387

Theory and Methodology

Scheduling on a two-machine flowshop subject to random breakdowns with a makespan objective function Ali Allahverdi *, John Mittenthal

a

Department of Decision Sciences and Engineering Systems, RensselaerPolytechnic Institute, Troy, NY12180, USA

Received March 1993;revised August 1993

Abstract Two-machine flowshop scheduling problems have been discussed in the literature extensively under the assumption that machines are continuously available. We address the problem of minimizing makespan in a two-machine flowshop when the machines are subject to random breakdowns. We first show that it is sufficient to consider the same sequence of the jobs on each machine. After providing an elimination criterion for minimizing makespan with probability 1, we show that under appropriate conditions Johnson's algorithm stochastically minimizes makespan. Keywords: Stochastic scheduling; Flowshops; Random breakdowns; Makespan

1. Introduction In a two-machine flowshop, it is commonly assumed that (i) a set of n two-operation jobs is ready for processing at time zero, (ii) setup times for the operations are sequence independent and are included in the processing times, (iii) job data are known and deterministic, (iv) individual operations are not preemptable, and (v) both machines are always available as long as there is an operation to be processed. As some of these assumptions are relaxed, new scheduling problems arise. For instance, relaxing the third assumption defines a stochastic job scheduling problem where some aspect of the job data is modeled as a random variable. Makino (1965), Talwar (1967), Cunningham and Dutta (1973), Prasad (1981), Forst (1983), and Ku and Niu (1986) discussed the problem when job processing times are random variables. Relaxing the fifth assumption gives rise to a stochastic machine scheduling problem where machines may suffer random breakdowns. In such an environment, the effect of a machine breakdown on a schedule could range from a substantial increase in the objective function to having little or no impact. In

* Corresponding author. Present address: Department of Industrial Engineering, Marmara University, G6ztepe Campus, 81040 Istanbul, Turkey. 1Present address: Department of Management Science and Statistics, The University of Alabama, Tuscaloosa, AL 35487-0226, USA. 0377-2217/95/$09.50 © 1995 Elsevier Science B.V. All rights reserved SSDI 0377-2217(93)E0318-R

A. AUahverdi, J. Mittenthal /European Journal of OperationalResearch 81 (1995)376-387

377

the former case, for instance, the occurrence of a breakdown on the first machine prior to the completion of the first job will delay every job's completion time by the amount of the breakdown. For the latter case, note that when a breakdown occurs on the second machine during the processing of a job that is followed by an idle time interval, the breakdown will effect only this job as long as the duration of the breakdown is less than or equal to the length of the following idle time interval. This range of breakdown scenarios should be considered when creating schedule since otherwise the resulting schedule may be a suboptimal solution with regard to the breakdowns. Much of the previous work concerning scheduling on unreliable machines has been confined to single machine problems. Mittenthal (1986) and Birge et al. (1990) introduced a single machine breakdown model and established results for various stochastic single machine problems. Allahverdi and Mittenthal (1994) generalize this breakdown model to an m parallel machine environment and show that the problem minimizing expected total flowtime can be solved using methods established for the corresponding deterministic problems. In the paper, this single machine breakdown model is generalized to a two-machine flowshop environment with an objective of minimizing makespan. Makespan, or the completion time of the last job, is a common criterion used in multiple machine environments and is relevant when different parts are manufactured by machines in an assembly line, see Foley and Suresh (1984).

2. Problem definition

The problem of scheduling n jobs on a two-machine flowshop may be defined without loss of generality so that each job requires its first operation on machine 1 and its second on machine 2. Job i has an associated processing time on machine k, tik, and leaves the system after completion of its processing on machine 2. The deterministic version of this problem is to find a schedule of the jobs that minimizes makespan. Johnson (1954) showed that it is sufficient to consider the same sequence of the jobs on each machine and developed an algorithm which minimizes the makespan. When machines are subject to stochastic breakdowns, the machines alternate between being available for a random length of time, Urk (r = 1, 2 , . . . , and k = 1, 2), and being unavailable for a random length of time, Drk (r = 1, 2 , . . . , and k = 1, 2). Urk denotes the r-th uptime of machine k, i.e., the length of time between the ( r - 1)-st and r-th breakdown on machine k. Drk represents the r-th downtime of machine k, i.e., the duration of the r-th downtime of machine k. The breakdown process of machine k is denoted by a sequence of finite-valued, positive random vectors {Urk, D~k}, for r = 1, 2, . . . . We assume that breakdowns may occur on machines only while the machines are busy. This seems reasonable since it is unlikely that machines would suffer a breakdown while they are idle. We also assume that if a job is being processed when a breakdown occurs, the work done on the job is not lost, i.e., a preempt-resume model as opposed to preempt-restart where the work done is lost. Such an assumption is acceptable in the case of batch processing since the completed parts in the batch will not be reprocessed. After the specification of the type of strategy the scheduler may use to respond to the breakdowns, this stochastic scheduling problem becomes a stochastic programming problem. There are two strategies to be considered when scheduling on multiple machines subject to random breakdowns. In the literature (see Birge et al., 1990; Mittenthal, 1986; Mittenthal and Raghavachari, 1993), these strategies are called simple recourse and general recourse. Under a simple recourse strategy, the sequence of job completion times in a schedule is fixed, but the completion times may be pushed back as a result of one or more machine breakdowns. In contrast, a general recourse strategy specifies at any point of time the job to be processed for any realization of uptimes and downtimes. The general recourse strategy is more general since the set of all simple recourse strategies is only a subset of the general recourse strategies. Although

A. Allahverdi, J. Mittenthal /European Journal of Operational Research 81 (1995) 376-387

378

general recourse is the ideal strategy, Mittenthal and Raghavachari (1993) have observed that in practice the time required to determine an optimal general recourse strategy is prohibitively large. Therefore, we consider the stochastic programming problem under the simple recourse strategy. Let 12 represent the set of all realizations of uptimes and downtimes, and w denote one realization of uptimes and downtimes, i.e., oJ = {Urn, Drk} (k = 1, 2 and r = 1, 2 , . . . , ~). Let X and Y be two random variables defined on the same sample space 12. X is said to be smaller than Y with probability 1 (w.p.1) if for all realizations oJ ~ 12 - F, X(o~) P r ( Y < t). The makespan of a sequence is a minimum w.p.1 if the makespan of the sequence is smaller than t h a t of any other sequence for all realizations o~ ~ 12 - F. The makespan of a sequence is minimized stochastically if the makespan of that sequence is stochastically smaller than that of any other sequence. Observe that X < Y w.p.1 implies X < sY, but the converse need not be true. Therefore, if the makespan of a sequence is a minimum w.p.1, then the makespan is also minimized stochastically - although again the converse need not be true. Furthermore, notice that minimization w.p.1 or stochastically implies the minimization in expectation, The notion of stochastically minimizing an objective function has been used by Pinedo (1982), Birge, Frenk, Mittenthal and Rinnooy Kan (1990), and Foley and Suresh (1984, 1986) in stochastic scheduling.

3. Objective function development For the deterministic problem, makespan consists of two items: the sum of job processing times on machine 2 and the total idle time on the second machine caused by processing on the first machine. In the stochastic case, makespan is the sum of three items: (i) the sum of job processing times on machine 2, (ii) total breakdown duration during the processing of the jobs on machine 2, and (iii) the total idle time on the second machine caused by both processing and breakdowns on the first machine. Recall that the breakdown process of machine k (k = 1, 2) was denoted by a sequence of non-negative random vectors {Urg, Drk} for r = 1, 2 . . . . . For each k, let {Ng(t): t _> 0} be a counting process associated with the sequence {Urk} (r = 1, 2 , . . . , ~). Nk(t) denotes the number of breakdowns occurring on machine k up to, and including, time t. Its definition is given by

Nk(t)=sup(r>O: ~ Uik 2 q-

] Aj(0-2, a~) = Kg_l, 1 3- tq, 1 q-

;)

(

P~I + TD1 0, Kg_l, 1 q- ti2,1 +

/1j(0-1, W) = Kg-l,l -I-ti2,1 q-

(

E Pr2 r=g+l

J) r=g+l ;1 E

Prl

E Pr2 + T D 2 0, Kg_l, 2 + t h , 2q- ~ Pr2 r=g+l r=g+l

)] ,

)]

where ~g=g+ lPr2 = O. Notice that /1(O'2, 0)) --Aj(O'I, 0)) =

(7)

til,1 -- ti2,l q- ti2,2 -- til,2 i

+ T D I ( 0 , Kg_l, 1 -k th, 1 -F

J)(

E

r=g+l

Prl

j_l)

+ T D 2 [ 0 , Kg_l, 2 -t- tQ, 2 -?

E

r=g+l

Pr2

-- TD1 O, Kg_,,, + ti2,1 q-

( -- TD2 O, Kg_l, 2 + ti. 2 +

(S)

J)

E

r=g+l

(9)

Prl

;_1)

E Pr2 • r=g+l

(10)

Note that (7) and (9) are nonpositive since ti2,1 >__ti~,l. Moreover, (8) and (10) are nonpositive since tiz,2 t 2 which implies N2(t 1) > N2(t2). Therefore,

N2(tl) N2(t2) TDI(0, tl) =s E D r 2 > s ~'~ D r 2 = T D 2 ( O , t2). r=0 r=0

(12)

By (11) and (12), TDI(T1, T1 + tl) -> sTD2(T2, T2 + t2).

[]

Recall that a Poisson process is an example of a homogeneous counting process. Theorem 3. Consider scheduling on a two-machine flowshop where both machines are subject to random breakdowns. Under the assumptions stated in Lemma 1, if

min{tq,1, ti2,2 } -~ min{til,2, ti2,1 }' then job i 1 precedes job i 2 in a schedule which stochastically minimizes makespan. Proof. Consider two job sequences: o°1: . . . , i2, i I . . . . and 002: . . . , il, i 2 , " ' , where 0-2 is an optimal sequence in which job i 2 is in position g and job i I is in position g + 1 whereas sequence 002 is obtained from sequence 001 by interchanging the jobs in the positions g and g + 1. For all o) ~ ~2, we shall show that A(002, w) < sA(o-1, w). Let w be a given realization of uptimes and downtimes. It should be obvious that Aj(00a, o)) = Ai(o-2, w) for j = 1, 2 , . . . , g - - 1, g + 2 . . . . . n. Therefore, in order to show that A(002, to) < sA(001, e0) we only need to show that max{Ag(002, ¢.o), •g+1(002, W)} ~S max{Ag(001, ~o), Ag+l(O'l, o))}. Hence, sequence ~r2 would be no worse than sequence o-1, and therefore, job i 1 would precede job i 2 in an optimal sequence. By definition, we have

Ag(001, o)) -----Kg_l, 1 + TDI(0 , Kg_l,1) -1- ti2,1 + TDI(Kg_I, 1, Kg_I, 1 + ti2,1 ) --[Kg_l, 2 -J- TD2(0 , Kg-l,2)] ,

A. Allahverdi, J. Mittenthal / European Journal of Operational Research 81 (1995) 376-387

385

Ag(o'2, to) = Kg_l, 1 + TD,(0, Kg_l,,) + tq, 1 + TDI(Kg_I,1, Kg_l, 1 + ti,a) --[ Kg_l, 2 -k TD2(0 , Kg_ll2)],

Ag+ 1(0-1, to) = Kg_l, 1 -t- TDI(0, Kg_l,1) -l- ti2,1 -1- tia,1 + T D I ( K g _ m , Kg_l, 1 -I- ti2,1 -[- til,, ) - [ Kg-l,2 + TD2(0, Kg-l,2) + tiz,2 + TD2(Kg_,,2, Kg-l,2 + ti>l)], ag+ 1(0-2, to) = Kg-l,1 + TDI(0, K g - m ) + til,1 -t- ti2,1 -I- TDI(Kg_I,1, Kg_l, 1 + til,1 + ti2,1) - [ K g _ l , 2 + TD2(O, Kg_l,2) + ti2,1 + TO2(Kg_l,2, Kg_l,2 + ti2,1)].

Now, consider differences between some of the above pairs• Specifically, Ag(0-2, to) -- Ag(o',, to) = ti,,, + TDI(Kg_I,1 , Kg_l,1 + ti,,1 ) - [ t i > 1 + TD,(Kg_ m, Kg_l, 1 + ti>l) ] ,

(13)

a +1(0-2, to) -ag(0-1, to) = til,1 q- TDI(Kg_,a , Kg_l, 1 -t- ti2,1 + til,1 ) - TDI(Kg_I,a, Kg_l, 1 -[- ti2a) - [ t 6 , 2 + TD2(Kg_I,2, Kg-,,2 + t6,2)] ~- til,1 d-

TDI(Kg_I,1,

K g _ l , 1 -b ti2,1 ) -[- TD,(Kg_I, 1 + tiz,1 , K g _ l , 1 q- ti2,1 d- til,1 )

- TDI(Kg_,, 1, Kg_,,, + ti2,, ) - I t 6 , 2 + TD2(Kg_,,2, Kg_,, 2 + til,2)] =til,l+TD,(Kg_,,,+ti2,1,

Kg_,,,+ti2,,+til,,)-[til,2+TD2(Kg_,,2,

Ag+1(0-2, to) -- Ag+,(0-1, to) = ti2,2 d-

TD2(Kg_,,2, Kg_l, 2 +

Kg_,,2+t6,2) ] ,

(14)

ti2,2 )

-[til,2 + TD2(Kg_,,2, Kg_,,2 + til,2)],

(15)

ag(O'2, to) -- ag+l(0-,, to) = ti2,2 + TD2(Kg_I,2, Kg-,,2 + ti>2) -[ti2,, + T D , ( K g _ I , , , Kg_,,, + ti2,,)].

(16)

Note that the condition min{t 6 ,, ti22} < min{ti 2, ti 1} can be considered under two cases. Case 1: If ram{t/11, < ti 2,1 and t i 1,1 --< ti 1,2" Observe ' ti22} ' = ti 1,1, then t i 1,1 -< minlti 1,2, ti 1,,} and hence t i1,1 -t h a t /~g(0-2, to) - Ag(0-,, to) ~ 0 by (13) a n d til,1 2 -

ag+l(O2, to) -< ag+,(0-1, to). Also note that Ag(o'2, oo) - Ag+1(0-1, to) < so by (16), Lemma 1 and ti2,2 < ti2,P Hence, ag(0-2, to) -~ .sag+l(Ol, to).

(19) (20)

386

A. Allahverdi, J. Mittenthal / European Journal of Operational Research 81 (1995) 376-387

By (19) and (20), max{Au(o-z, w), Ag+l(o-2, o))}