13
This article was downloaded by: [Virginia Tech Libraries] On: 18 October 2014, At: 20:31 Publisher: Taylor & Francis Informa Ltd Registered in England and Wales Registered Number: 1072954 Registered office: Mortimer House, 37-41 Mortimer Street, London W1T 3JH, UK IIE Transactions Publication details, including instructions for authors and subscription information: http://www.tandfonline.com/loi/uiie20 Simultaneous resource scheduling with batching to minimize weighted flow times GREGORY DOBSON a & INDER KHOSLA b a The William E. Simon Graduate School of Business Administration, University of Rochester , Rochester, NY, 14627, USA b Operations and Management Sciences Department , Curtis L. Carlson School of Management, University of Minnesota , 271 19th Avenue South, Minneapolis, MN, 55455, USA Published online: 13 Jul 2010. To cite this article: GREGORY DOBSON & INDER KHOSLA (1995) Simultaneous resource scheduling with batching to minimize weighted flow times, IIE Transactions, 27:5, 587-598, DOI: 10.1080/07408179508936774 To link to this article: http://dx.doi.org/10.1080/07408179508936774 PLEASE SCROLL DOWN FOR ARTICLE Taylor & Francis makes every effort to ensure the accuracy of all the information (the “Content”) contained in the publications on our platform. However, Taylor & Francis, our agents, and our licensors make no representations or warranties whatsoever as to the accuracy, completeness, or suitability for any purpose of the Content. Any opinions and views expressed in this publication are the opinions and views of the authors, and are not the views of or endorsed by Taylor & Francis. The accuracy of the Content should not be relied upon and should be independently verified with primary sources of information. Taylor and Francis shall not be liable for any losses, actions, claims, proceedings, demands, costs, expenses, damages, and other liabilities whatsoever or howsoever caused arising directly or indirectly in connection with, in relation to or arising out of the use of the Content. This article may be used for research, teaching, and private study purposes. Any substantial or systematic reproduction, redistribution, reselling, loan, sub-licensing, systematic supply, or distribution in any form to anyone is expressly forbidden. Terms & Conditions of access and use can be found at http:// www.tandfonline.com/page/terms-and-conditions

Simultaneous resource scheduling with batching to minimize weighted flow times

  • Upload
    inder

  • View
    214

  • Download
    2

Embed Size (px)

Citation preview

Page 1: Simultaneous resource scheduling with batching to minimize weighted flow times

This article was downloaded by: [Virginia Tech Libraries]On: 18 October 2014, At: 20:31Publisher: Taylor & FrancisInforma Ltd Registered in England and Wales Registered Number: 1072954 Registered office: Mortimer House,37-41 Mortimer Street, London W1T 3JH, UK

IIE TransactionsPublication details, including instructions for authors and subscription information:http://www.tandfonline.com/loi/uiie20

Simultaneous resource scheduling with batching tominimize weighted flow timesGREGORY DOBSON a & INDER KHOSLA ba The William E. Simon Graduate School of Business Administration, University of Rochester ,Rochester, NY, 14627, USAb Operations and Management Sciences Department , Curtis L. Carlson School ofManagement, University of Minnesota , 271 19th Avenue South, Minneapolis, MN, 55455, USAPublished online: 13 Jul 2010.

To cite this article: GREGORY DOBSON & INDER KHOSLA (1995) Simultaneous resource scheduling with batching to minimizeweighted flow times, IIE Transactions, 27:5, 587-598, DOI: 10.1080/07408179508936774

To link to this article: http://dx.doi.org/10.1080/07408179508936774

PLEASE SCROLL DOWN FOR ARTICLE

Taylor & Francis makes every effort to ensure the accuracy of all the information (the “Content”) containedin the publications on our platform. However, Taylor & Francis, our agents, and our licensors make norepresentations or warranties whatsoever as to the accuracy, completeness, or suitability for any purpose of theContent. Any opinions and views expressed in this publication are the opinions and views of the authors, andare not the views of or endorsed by Taylor & Francis. The accuracy of the Content should not be relied upon andshould be independently verified with primary sources of information. Taylor and Francis shall not be liable forany losses, actions, claims, proceedings, demands, costs, expenses, damages, and other liabilities whatsoeveror howsoever caused arising directly or indirectly in connection with, in relation to or arising out of the use of theContent.

This article may be used for research, teaching, and private study purposes. Any substantial or systematicreproduction, redistribution, reselling, loan, sub-licensing, systematic supply, or distribution in anyform to anyone is expressly forbidden. Terms & Conditions of access and use can be found at http://www.tandfonline.com/page/terms-and-conditions

Page 2: Simultaneous resource scheduling with batching to minimize weighted flow times

lIE Transactions (1995) 27, 587-598

Simultaneous resource scheduling with batching to minimizeweighted flow times

GREGORY DOBSON I and INDER KHOSLA2

1The William E. Simon Graduate School of Business Administration, University of Rochester, Rochester, NY 14627, USA20perations and Management Sciences Department, Curtis L. Carlson School of Management, University of Minnesota, 271 19thAvenue South, Minneapolis, MN 55455, USA

Received January 1990 and accepted March 1993

This paper examines scheduling problems in which individual tasks require several resources concurrently. We analyze the situationwhere, in addition to the need to schedule resources concurrently, it is possible to choose the batch sizes of the tasks. Although suchsituations arise in both manufacturing and service firms, the likely application of these results will be to repetitive batch manu­facturing situations. Several formulations for this problem are presented. Both a lagrangian relaxation and a surrogate relaxationare developed. Heuristics based on these relaxations as well as extensive computational experiments are discussed. The simultaneousresource scheduling problem without batching is quite difficult because jobs need to be synchronized so that individual jobs cancapture their required simultaneous resources. Nevertheless, if batch size is introduced as an additional variable, we show that theresulting problem is in some sense easier because of the added flexibility provided by the ability to adjust production batch sizes,which allows us to eliminate 'gaps' in the schedule.

Introduction

This paper addresses two issues in scheduling: the first isthe scheduling of jobs that require the use of multipleresources simultaneously; the second is deciding on thebatch sizes and the sequence of the jobs. Both aspectshave been addressed before, but not simultaneously.Simultaneous resource scheduling has been analyzed byDobson and Karmarkar (1989) and the batching andsequencing issue was studied by Dobson et al. (1987,1989) and Santos and Magazine (1985). For the problemof scheduling a set of part types each of which requires asingle operation, we capture the aspects associated withbatching and the simultaneous resource scheduling in asingle formulation, develop lower bounds and propose aset of heuristics.

It is clear that if modeled accurately enough, mostscheduling problems will require the simultaneous sche­duling of many resources. For example in manufacturinginvolving metal cutting and bending, a worker, a machineand a tool must all be present to execute a task. In batchchemical manufacturing, the resources could be tanks ofparticular sizes, a dryer of specified capacity, a centrifuge,monitoring equipment and a worker with specific knowl­edge of the process. The fact that the scheduling literaturedeals almost exclusively with problems with only oneresource per job is almost certainly a statement of theeconomics of practical scheduling problems. Let us con­sider the economics involved. Scheduling the concurrentuse of resources will usually reveal inefficiencies caused

0740·817X © 1995 "UE"

by one resource's being idle because a necessary secondresource is unavailable at that time. However, for mostrealistic scheduling problems, one usually finds that onetype of resource has high utilization and another type haslow utilization. The first is relatively expensive and thesecond is relatively inexpensive. Thus, through an 'over­supply' of the cheaper resources, these inefficiencies canbe alleviated, leading to what are essentially single-re­source scheduling problems. Hence, single-resource sche­duling formulations may capture a variety of schedulingphenomena simply because the economics cause theconcurrent scheduling problem to disappear.

On the other hand, there will be problems in which,even with appropriate allocations of resource capacity,two or more resources will be nearly equally constrained.In such situations, scheduling only one resource withoutthe others would result in infeasible schedules. That is,producing a schedule for one resource, and then attempt­ing to find a feasible assignment of the other resourcesthat will meet this schedule, will be unsuccessful. Produc­ing independent schedules for all the resources and thenattempting to merge these schedules will be equallyunsuccessful. In such situations it is necessary to schedulethe resources simultaneously. These are the situations wemodel here.

In addition to scheduling simultaneous resources, wealso model batching. Before we discuss this aspect let usreview the literature on simultaneous resource schedulingwithout batching.

The literature on simultaneous resource scheduling is

Dow

nloa

ded

by [

Vir

gini

a T

ech

Lib

rari

es]

at 2

0:31

18

Oct

ober

201

4

Page 3: Simultaneous resource scheduling with batching to minimize weighted flow times

588

concentrated in the area ofcomputer and communicationsystems in which the emphasis has been on real-timescheduling rules and the avoidance of deadlock. Exam­ples include Leinbaugh (1984), FIe and Roucairol (1984),Murata (1980), Lomet (1980), and Young (1982). We willfocus on the manufacturing context, where the work todate has concentrated on either solving the two-resourceversion of the problem, often referred to as the 'dualresource constrained' problem (see Treleven (1989) for arecent review) or showing that they are NP-hard (seeLloyd, 1981; Johnson and Monma, 1985).

Dobson and Karmarkar (1989), by contrast, formulatethe problem of scheduling a set of jobs that use multiplemachines simultaneously as an integer linear program­ming problem and show how a lagrangian relaxationleads to a view of the problem as one of jobs dividinginto sub-jobs, one sub-job for each of the machines itrequires and in which jobs compete for positions in theprocessing sequence. The choice of Lagrange multiplierscan be viewed as each job choosing how much of its'weight' or priority it should allocate to each requiredresource, so that its position in the sequence will besimilar across its sub-jobs. In addition, their paper pre­sents a surrogate relaxation that yields a single-machineview of this multi-machine problem. Their proposedheuristics, which are based on the intuition and informa­tion from the relaxations, work reasonably well. How­ever, given the discrete nature of the jobs and the fact thatmultiple resources need to be scheduled simultaneously,the schedules generated as solutions did contain gaps ofidle time. We suspected that if the problem were such thatbatch sizes were also decisions, then the processing timeand number of jobs could be adjusted by selecting batchsizes so as to reduce some of the gaps in the schedule, thusleading to substantially better results. This leads us todiscuss the batching problem.

The second aspect of the problem captured in themodels presented here is batching. This aspect of sche­duling has been examined by a number of researchers.The papers fall into several categories. First there is thedeterministic, stationary view of the world, epitomized bythe ELSP literature (see, for example, Dobson, 1987;Elmaghraby, 1978; Inman and Jones, 1989; Maxwell,1964; Roundy, 1989; Zipkin, 1991). In the ELSP, demandis assumed to be constant for all products and rawmaterial is deliverable at any time. The objective is tominimize the long-run average of setup and holding costs.These models provide a good estimate of how frequentlya part should be produced, but do not provide informa­tion on the sequence in which the parts should beproduced, in the short term. A second view, closelyaligned with the traditional scheduling literature, is onein which the entire set of jobs to be scheduled is availableat time 0 and one wishes to optimize the schedule forthese jobs only: no other arrivals are allowed. Onecommon objective function is to minimize (weighted)

Dobson and Khosla

flow time. Papers that take this approach and allowbatching are Dobson et al. (1987, 1989), Santos andMagazine (1985), and Naddef and Santos (1984). Finallythere is the stationary stochastic view of the world, thathas its roots in the queueing literature. Examples of thisinclude Karmarkar (1987a,b), Karmarkar et al.(1985a,b), and Zipkin (1986).

Our analysis will refer extensively to the results of,Dobson et al. (1987). Their paper considers the batchingproblem with multiple part types on a single machinewith the objective of minimizing the sum of weighted flowtimes of the parts. They define two versions of theproblem, based on whether a part can leave the machineimmediately after processing (the item-flow problem) orwhether it must wait until all the parts of its batch havecompleted processing (the batch-flow problem). Theypresent optimal solution methods for the item-flow prob­lem and the single-part-type batch-flow problem. For thegeneral case of the multiple-part-types batch-flow pro­blem, they propose a lower bound and a set of heuristics.

Thus, this paper builds on the work of Dobson andKarmarkar (1989) and Dobson et al. (1987) by modelingaspects of the scheduling problem considered in boththese papers, in a single model. The outline of this paperis as follows. In Section 1 we describe our problem,introduce notation and present a formulation. Section 2modifies this formulation and develops a lagrangianrelaxation. Section 3 presents a slightly different formu­lation and develops a surrogate relaxation. Our heuristicalgorithms are presented in Section 4 and a computa­tional study is discussed in Section 5. Section 6 concludesthe paper.

1. The model

There is a given set of part types, {I, ... ,n}, and each parttype b requires a quantity db to be produced. Each parttype requires only a single operation. There are severalmachines or resources and each machine is unique. Eachpart type b requires a particular subset of the resources,Ri, concurrently in order to complete its operation. Thatis, in order to complete a batch of parts of type b, thenecessary set of resources for parts of type b must besimultaneously set up and then simultaneously used toproduce each part of type b. After the resources have beenset up, any number of parts of that type may be produced.For simplicity we assume that the setup times for a parttype b depend only on the part type and not on theresource or the sequence. All the data for the problem areassumed to be known and deterministic. In particular, weknow, for each part type, the setup time, the processingtime per unit, the quantity required, and the set ofresources needed. Finally, we assume that all parts areavailable for processing at time zero.

The objective is to minimize the sum of the weighted

Dow

nloa

ded

by [

Vir

gini

a T

ech

Lib

rari

es]

at 2

0:31

18

Oct

ober

201

4

Page 4: Simultaneous resource scheduling with batching to minimize weighted flow times

Simultaneous resource scheduling with batching 589

In the objective, the flow time for each part is thefinishing time for the batch that contains that part. Theflow times for parts of type a are weighted by the term ha .

Constraint (1.2) ensures that the total quantity producedof part type a is the amount required. Constraint (1.3)forces Xka to be I if the size of batch k of part type a ispositive, thus ensuring that the setup time for part type awill be added to the flow time in constraint (1.4). Con­straints (1.4) and (1.5) are the sequencing constraints.The first indicates that if batch j of part type b is toprecede batch k of part type a (i.e., yjba = I) then thestarting time (i.e., the finishing time minus the processingtime) of the batch k of part type a must be later than thefinishing time of batch j of part type b. The secondindicates that given two batches, one must precede theother; that is, batch j of part type b precedes batch k ofpart type a or vice versa. The constant M must besufficiently large, which means larger than any conceiv­able flow time for a part. If we define M = I:a da(sa + fa)

this would be sufficient. This formulation is actuallyrather terse and we will see in the next two sections thatan extended formulation is more useful for the purposesof relaxation.

Va,

Vk,j,a,b.

Vk,j,a,b,

(1.3)

(1.2)

(1.4)

( 1.5)

(1.6)

(1.7)

(1.8)

vk,«,Vk,a,

Vk,j,a,b,

Lqka = d ak

qka :::; daXka Vk, a,

fka - (SaXka + taqka) 2

jjb - M(I - yjb)ka jb I

Yjb + Yka =fka 2 (SaXka + faqka)

qka 20ka 0 IYjb' Xka = ,

Data:

flow times for all parts. We feel that this is the appro­priate objective for the problem because flow time accu­rately captures the notion of manufacturing lead time,and lead time is an excellent surrogate for a number ofmanufacturing performance measures. It represents thetime period for which a firm must have inventory of rawmaterial or work-in-process (WIP) and thus must pay forthat inventory. Longer lead times result in a largerforecast variance which, in turn, requires firms to carrymore safety stock. Finally, long lead times result in longerfeedback loops in the manufacturing process that makedealing with quality problems more difficult. We considerweighted flow time to allow the modeler to distinguishbetween part types whose delay costs may differ.

The formulation of the problem is as follows:

i indexes the set of machines from I to m.a, b index the part types from I to n.j, k index the batches of each part type from I to K. One

should think of K as a large number. Only the firstfew batches will have any parts and the remainingones will have no parts.

S, the set of part types that require machine i.Ra the set of machines required to complete part type a.da the quantity of part type a to be producedfa the unit processing time for part type a once the

machine is set upSa the time required to set up the machines, R a , to

produce part type a. This time could be dependenton the sequence of part types assigned to the ma­chines, but we do not consider such cases here.

h; the relative cost of delaying a part of type a for onetime unit.

Variables:

Ji ajb

the finishing time of batch k of part type a.the quantity produced in batch k of part type a.= I if batch k of part type a is not vacuous, 0otherwise.= I if batch j of part type b precedes batch k of parttype a, 0 otherwise. Note that for this formulationthese variables are only defined for a and b such thata -=J. band s, n Rb -=J. 0.

2. A second formulation and a lagrangian relaxation

In the previous section we described a fairly compactformulation of the problem. In this section we consideran alternative formulation. The advantage of this for­mulation is that it has a lagrangian relaxation thatconsists of m separate single-machine problems. Thisformulation mimics Dobson and Karmarkar (1989). Webegin by introducing several new sets of variables.

Formulation:

(Pi)

subject to

Minimize L L hafkaqkak a

(1.1)

New variables:fkai the finishing time of batch k of part type a on

machine i. These will be set equal to the finishingtime of batch k, of part type a, fka, in the ensuingformulation so that the resources required by parttype a, Ra , will be scheduled concurrently. Theseconstraints will be dualized in the relaxation that is

Dow

nloa

ded

by [

Vir

gini

a T

ech

Lib

rari

es]

at 2

0:31

18

Oct

ober

201

4

Page 5: Simultaneous resource scheduling with batching to minimize weighted flow times

590 Dobson and Khosla

The formulation in terms of these newly defined variablesis:

The introduction of these new variables makes theformulation more cumbersome but, as we shall see below,it allows the problem to be nicely decomposed intoseparate problems, one for each machine. In fact, onecan view the formulation given above as m separateformulations for the m machines that are bound togetherby the constraints (2.3), (2.5) and to some extent (2.6).

To obtain a Lagrangian relaxation that separates bymachine we drop constraints (2.3) and (2.5) and dualizethe definitional constraint (2.6) with multipliers {Akaihai'The lagrangian relaxation is:

(2.15)

(2.13 )

(2.14)

(2.16)

(2.17)

(2.18)

(2.19)

(2.20)Yk,j, a, b.

Yk ,a,

Yk,a,

Yk,j,a,b,

Yk,j, a, b,

Va,

Minimize L L Akafkaqkak a E S

qka ::; daXka Yk, a,

Jka - (SaXka + taqka) ~

fjb + M(I - I;nka 'b

Yib + Yka = I

Jka ~ (SaXka + laqka)

qka ~ 0ka 0 IYib' Xka = ,

III

+ L L L Aka/ka;qkai'i=l k aES,

L(A) = min L L (ha - L Akai) Ukak a i ERa

If this is the case, then the first term is equal to zero andwe could simply write (2.12) as a dual constraint. Theminimization problem now separates by machine. If wedrop the subscripts i (for notational simplicity) then theproblem for each machine is

Recall that we defined S, as the set of part types thatuse machine i. We can rearrange the objective to:

Notice that, in the first term of L(A), since Uka is anunconstrained variable, for the dual to take on a finitevalue we must require that A be chosen so that

!Ia = L Akai (2.12)i ERa

This is the batch-flow problem with multiple part typeson a single machine as described in Dobson et al. (1987).Although there is no known fast algorithm for even thisproblem, there are good heuristics based on the single­part-type version of the problem. In addition, a lowerbound on this problem was derived in Dobson et al.(1987), namely:

BF' ~ IF' + LL ~~(pk)2 (2.21)a k 2 Aka

where BF' denotes the value of the optimal solution tothe single-machine, multiple-part-type batch-flow pro­blem, IF' is the value of the single-machine, multiple­part-type item-flow problem, and Pk is the size of batch kin the batch-flow problem with only a single part type a.We refer the reader to that paper for the precise defini­tions of those problems and a proof of the lower bound.

subject to

(2.1 )

(2.3)

(2.4)

(2.5)

(2.6)

(2.2)

(2.7)

(2.8)

(2.9)

(2.10)

(2.11 )

vi, k, a, b, i,

vi. k, a, b, i,

vi, k, a, b, t,

Yk,a,

Yk,a,i,

Yk,a, i.

Lqkai = d.,k

Minimize L L haukak a

qkai = qka Yk, a, i,

qkai :::; daXkai Yk, a, i,

Jka =Jkai Yk, a, i,

Uka = qka/kai Yk, a, i,

Jkai - (SaXka; + laqkai) ~

!jbi - M( I - Y;hl)ka ,ib I

Yibi + Yka; =ka 0 IYibi' Xka; = ,

Jka; ~ (SaXka; + taqka;)

qkai ~ 0

subject to

subsequently developed.qkai the quantity produced in batch k of part type a on

machine i. Again, these will be set equal to thequantity produced in batch k of part type a, qka, inthe ensuing formulation, and these constraints will bedropped in the subsequent relaxation.

Xkai = I if batch k of part type a on machine i is notvacuous, 0 otherwise.

Y~~i = I if batch j of part type b precedes batch k of parttype a on machine i, 0 otherwise. Note, for thisformulation these variables are only defined fordistinct part types a and b that use a commonresource, i.e., a and b such that a i= b, i E Ra

nRb i= 0.Uka == q/wJkai. This definition is useful strictly for the

relaxation, as we shall see below.

subject to (2.2), (2.4) and (2.7) through (2.11).

Dow

nloa

ded

by [

Vir

gini

a T

ech

Lib

rari

es]

at 2

0:31

18

Oct

ober

201

4

Page 6: Simultaneous resource scheduling with batching to minimize weighted flow times

Simultaneous resource scheduling with batching 591

Now, by defininglka == 1:,7'= I It!kai, we can rewrite (3.11)to be

d - ",man fa = L.Ji= 1 Ili fai·

Note that, since Sai = Sa for i E Ra and 0 otherwise, wecan define Ila == 1:,i E R

aIti and so write

Sa = (1:,i ERa lli)Sa = Ilasa. For example, if the weightswere equal, i.e., Ili = 1/m, then a part type a that requiresa third of the resources simultaneously will require ~ fatime per unit and ~Sa for a setup on the aggregatemachine.

More precisely, we form the surrogate relaxation byselecting tu >0, such that 1:,7'= I Ili = I. Form theweighted sum of the sequencing constraints (3.6) toobtain

3. A third formulation and a surrogate relaxation

In this section we modify the formulation given in Section2 slightly 1.0 allow us to generate a surrogate relaxation.Here we introduce a variable for the flow time of batch kof part type a for every machine rather than just for themachines that part type a will use. Thus, we can think ofevery part type using every machine. For the machinesthat are not required by part type a, the processing timeand setup time are zero. Thus, we define the following:fai is the unit processing time for part type a on machine

i; this is equal to fa if i E R a and 0 otherwise;similarly,

Sai is the time required to set up machine i for part typea; this is equal to Sa if i ERa' 0 otherwise.

The formulation is:

(3.1 )

subject to

t. ~!k"; - (t. ~;S";Xk" +t. ~;t";qk") >m

LIlJjbi - M(I - y;n·i= I

(3.11)

Lqka = d; Va,k

qka :::; daXka Va,

fka ?:. lkai Va,Vi (j. Ra,

lka =lkai Va,Vi ERa,

lkai - (Sa;}~ka + faiqka) ?:.

libi - M( I - yin Vi,k .j, a, b,

Ykba + I!,b = I Vk' a b} ' "a ,J, , ,1:,;',= I It!kai = lka so that substituting lka for fka in theobjective gives a relaxation, namely

(3.12)Minimize L L hJkaqkak a

thatNotice

Similarly, sum the constraints (3.8) to get

lka ?:. (SaXka + laqka)'

subject to

(3.2)

(3.3)

(3.4)

(3.5)

(3.6)

(3.7)

(3.8)

(3.9)

(3.10)

Vk,a,i,

Vk,a,

Vk,j,a, b.

Fai?:. (SaiXka + faiqka)

qka ?:. 0

y;/:, Xka = 0, I

Problem (R 3) is a single-machine, batch-flow problem.To compute a lower bound to (R 3) we use the lower

bound on the single-machine, batch-flow problem, asgiven by (2.21).

In the surrogate relaxation, the data of the problem,la, Sa, for all a, are functions of u, In order to optimizeover Il we need to find the subgradient of (2.21) withrespect to u,

Vk,a,

Vk,a,

Note that in this formulation we create a single com­plete ordering on the jobs for all machines via thevariables )7;'. These variables are defined for all a =I- b.Notice that if i (j. R; then the flow time lkai does notrepresent the flow time of a real part because part type adoes not use machine i. The formulation merely con­strains the fictitious execution of batch k of part type a onmachine i to be smaller than lka via constraint (3.4).

We now create a surrogate relaxation of the formula­tion (P3)' Intuitively, this relaxation is a way to aggregatethe set of machines into a single machine and adjust theprocessing times of the job types so that the flow time forthis set of new fictitious job types on this new fictitiousmachine is less than that for the actual problem. Weaggregate the machines in the following way (cf. Dobsonand Karmarkar, 1989): Choose non-negative weights Itifor the machines i = I, ... .m, that sum to one. Giventhese, we can define the fictitious setup and unit proces­sing times for the aggregate machine as Sa = 1:,;',= I lliSai,

Lqka = dak

qka ::; daXka- - - - kafka - (SaXka + faqka) ?J;"b - M(I - Yib)

ka 'b_Yib +Yka - I

i: ? (SaXka +(aqka)

qka ? 0

y;/:,Xka = 0, 1

Va, (3.13)

Vk, a, (3.14)

Vk,j, a, b, (3.15)

Vk,j, a, b, (3.16)

(3.17)

(3.18)

Vk,j, a, b. (3.19)

Dow

nloa

ded

by [

Vir

gini

a T

ech

Lib

rari

es]

at 2

0:31

18

Oct

ober

201

4

Page 7: Simultaneous resource scheduling with batching to minimize weighted flow times

592 Dobson and Khosla

or

11(/1,) = ~,in 2: /I,a (2: ((Sa + lada)dbhbYab) + (Sa + !lada)daha) ,. a bia

and by defining Ta(y) as the term in parentheses, we obtain:

Here Yab means that part type a is processed some­where in the sequence before part type b.

Written in terms of JL, the objective is:

I/(IL) = min L L JLa(sa + lada)dbhbYab +Y a b-=/=a

+ L JLa(Sa + !tada)da!laa

First, we show that the second term of (2.21) is actuallylinear in IL since PI. is independent of JL. To see this, we usethe expression for PI. from Dobson et al. (1987), namely

a daha Saha (n + 1) .(Saha)Pk=--+- -- -I - ,n la 2 la

where n= I ~+2da(la/Sa)+!I. Notice that the data,Sa, and la, afways appear as a rano. Thus, if we substitutethe data from the surrogate relaxation we obtain

Sa JLaSa Safa ILala la

and the solution is independent of JL. Thus, defineWa == '2:d (pk)2 and the second term of (2.21) becomes'2:aIl'(ta/ ha)wa.

Next we look at the first term in (2.21). Dobson et al.(1987) show that the solution to the item-flow problemhas the property that for each part type there is exactlyone batch. Thus, to solve the item-flow problem simplycreate one batch for each part type and sequence thesebatches so as to minimize the weighted flow time. Becausewe only need to determine the order of the batches, wewrite this sequencing problem as a linear ordering pro­blem. The particular formulation that appears here canbe found in Dobson and Karmarkar (1984).

Minimize L L (sa + fada)dbhbYab + L(Sa + !fada)dahaJ' a bi'a a

subject to

Yab + Yba = 1

Yab +Ybe :::; 1+ Yae

Yab = 0,1

Va,b,

Va,b,c,

Va,b.

respect to JL is a vector g E OIl(JL) where

s. = L (L (sa + lada)dbhbYab+a E S, b i a

+ (Sa +!lada)daha + (la/ha)Wa).

In the previous two sections we have presented twodifferent formulations of the problem. Each has led to arelaxation. These relaxations will provide lower boundsby which we can test the heuristics. The dual variableswill also provide useful information for the heuristics.

For the sake of brevity we refer the reader to Dobsonand Karmarkar (1989) for the computational detailsinvolved with solving these two dual problems.

4. Heuristics

In this section we describe two heuristics to solve thesimultaneous resource scheduling problem with batching.We are resorting to heuristics for two reasons. First, thisproblem is NP-hard because the concurrent resourcescheduling problem without batching is NP-hard; thus,optimal polynomial algorithms are unlikely to exist.Second, for such short-term problems, branch-and­bound procedures would be too time-consuming to bepractical.

Our heuristics will rely heavily on being able to solvethe single-machine, multiple-part-type batch-flow pro­blem. Dobson et al. (1987) have proposed good heuristicsfor this problem. Thus, we use the basic idea behind theirheuristics for constructing heuristics for our problem aswell. Essentially, their approach is as follows. The batchsize decisions are made sequentially until all the partshave been scheduled. At each iteration a batch size isproposed for each of the part types for which partsremain to be scheduled. The calculation of this batch sizeis based on their Cormula that shows that the batch size isapproximately proportional to the square root of thetotal (summed across part types) amount of work re­maining. To choose the part type whose batch is to bescheduled next, an index is calculated for each part type.The index measures the average processing time per unitfor the parts in the batch. The batch corresponding to thepart type with the smallest index is then selected to bescheduled next. We refer the reader to their paper forfurther details.

Thus, for a given optimal Y, the subgradient with

nunJ' a 4.1. The job heuristic

The first heuristic is an attempt to apply the aboveapproach to our problem. In order to do this we needan estimate of the workload on which to base the decisionabout batch size. By workload we mean the total time todo the work waiting. For a given part type a, the loads on

Dow

nloa

ded

by [

Vir

gini

a T

ech

Lib

rari

es]

at 2

0:31

18

Oct

ober

201

4

Page 8: Simultaneous resource scheduling with batching to minimize weighted flow times

Simultaneous resource scheduling with batching

machines i E Ra differ because not all part types requirethe same subset of the resources. We choose the batch sizefor a part type a based on the largest load among the setof resources Ra .

The intuition that came from Dobson and Karmarkar(1989) suggests that one can split jobs requiring manyresources into sub-jobs, one for each resource, divide theweight for job across the sub-jobs and schedule the sub­jobs. The sub-jobs compete for scheduling position ontheir individual resources. The weights can be adjusted sothat the sub-jobs are executed at (approximately) thesame time. We used this idea for determining the loadon each machine that was then used in the batchingdecision.

Although the lagrangian relaxation has multipliers{Akaihai' i.e., one for each part type, each machine andeach batch, we solved the relaxation by restrictingAkai = Aai. [n other words we assumed that the weightswere identical across all batches for each machine and foreach part type. To understand why this restriction wasnecessary t o 'solve' the lagrangian relaxation, recall thatwe made a second relaxation from the batch-flow single­machine problem to the item-flow single-machine pro­blem. The item-flow solution has only one batch per parttype. The identity of the distinct batches in the batch-flowsolution was lost in this second relaxation. Thus, therewas no information in the solution to the (double)relaxation to update a batch specific multiplier in thesingle relaxation. With the solution to the lagrangianrelaxation, {Aai}ai» we estimated the load for machine ias D i = 2::'1 E s, Aaid'~ where d,: is the remaining unsched­uled work of part type a.

Thus, roughly speaking, the heuristic works as follows.Batching decisions are made sequentially until all thework has been scheduled. Each time a batching decisionhas to be made, a batch size and an index is proposed foreach part type a. The computation of the batch size andthe index is done based on the machine h, h ERa, that hadthe maximum work remaining, Dh = maxi ERa {D i } . Thebatch corresponding to the part type with the smallestindex value: is then selected for scheduling. The index issimply the standard 'time over cost' rule, in this case thetime to process the batch of size q, S + tq, compared withthe cost of the batch, q. This rule would sequence a givenset of batches to minimize weighted flow time. Thedemand, Di, is measured in dollars rather than units,because it has been scaled by Aai. Thus, the processingtime, t, and the batch size, batch [a], must be scaled aswell to give us correct units. The current partial scheduleis first scanned for any gaps where the batch could bescheduled; if such a gap is found on all the machinesrequired by the part type, the batch is scheduled in thegap so that it begins processing as soon as possible. If nosuitable gap is found then the batch is added to the end ofthe current schedule. This process is then repeated untilall the parts of the different part types have been sched-

593

REPEATfor i : = 1 to m do Di: = La E S, da)..ajfor a : = 1 to n do

BEGINd: = max{D;}

i E s;h:= argmax{D;}

t e RQ

t : = tal )..ahs: = Sa

p : = lv1 + 2dtI S +!Jq:= min {dIP+s(p-l)/2t,da)..ah}

batch[a]: = qI )..ah

. d [] S + tqIn exa :=--q

ENDa» : = argmin {index[a]}

a

sequence part type a" with batch size batch [a*];da* : = d., * - batch [a*].UNTIL (da = 0 for all a)

Fig. l. Description of job heuristic.

uled. A pidgin Pascal description of this heuristic appearsin Fig. 1.

The selection and scheduling of the batches in the jobheuristic does not explicitly consider any coordinationamong the machines. In other words, when batches arescheduled on a subset of the machines, there is noconsideration given to the issue of what should bescheduled on the remaining machines during that time.Instead it is left to the Lagrange multipliers to implicitlyforce some coordination among the machines so as toreduce gaps in the schedule. We therefore decided toconstruct another heuristic, called the combination heur­istic, in which the machines would be coordinated ex­plicitly.

4.2. The combination heuristic

The combination heuristic begins by enumerating allpossible combinations of part types that can be scheduledsimultaneously. By scheduling a combination of parttypes simultaneously (instead of a single part type), itseemed that the machines would be utilized more effi­ciently. Although, theoretically, the number of suchpossible combinations could be very large, we felt thatfor realistic problems this number should be of a manage­able size, making this a viable approach to consider.

The heuristic proceeds iteratively, scheduling a combi­nation of part types at each iteration. At each iteration aschedule proposal is prepared for each combinationwhose part types still remain to be scheduled. First, abatch size is calculated for each part type in the combina­tion, exactly as in the job heuristic. Because we are

Dow

nloa

ded

by [

Vir

gini

a T

ech

Lib

rari

es]

at 2

0:31

18

Oct

ober

201

4

Page 9: Simultaneous resource scheduling with batching to minimize weighted flow times

594

scheduling a combination of part types at a time, we needto ensure that these batches complete processing simul­taneously. To this end, the batch that would completeprocessing the soonest is identified and the remainingbatches are then truncated so that they all completeprocessing at the same time. The question that remainsis what to do with the unscheduled portion of eachtruncated batch. In the next iteration, if the combinationselected for scheduling includes a part type whose batchhad been truncated in this iteration of the heuristic, then,rather than compute a new batch size, the unscheduledportion of the truncated batch is made available forscheduling. In this way we tried to retain the 'correct'batch sizes as much as possible.

We also need a way to choose among competingcombinations at each iteration of the heuristic. For thispurpose, we define an index that measures the value (asmeasured by the delay costs) of work per unit time beingdone by the combination. Formally, for a combination C

. [] '" '" [batch[a] x ha ]Index C := L.J L.J tl ; b h[]'E C . E R Sa + faX ate aa I a

For each part type in the combination, the above indexcalculates the average number of parts processed per unittime and then weights that with the holding cost multi­plied by the sum of the surrogate multipliers for eachmachine used by the part type. We introduced the

Dobson and Khosla

surrogate multipliers in the index because it was a wayto distinguish among the values of work done by thedifferent machines. The batch size used in the calcula­tions depends on what had transpired in the previousiteration of the heuristic.

If a batch corresponding to a part type has beentruncated in the previous iteration, then if the same parttype were scheduled in this iteration as well, no setup timewould be involved. Because the objective is batch flowand not item flow, the second batch is appended to thefirst and the flow time for all parts in both batches is thecompletion time for the final part in the latter batch. Theuse of the original batch size in the index serves to spreadthe implicit cost of the time for the setup across the entirebatch. An alternative is to ignore the setup and to use, forthis item, a, the ratio halfa, which is identical to the indexbatch[a] x hal(sa + t«> batch[a]) with the setup time setto O. The difficulty with using the latter index is that thefirst part of the batch was initially scheduled based on theindex obtained from assuming that the entire (joint)batch would be scheduled. If the latter index is used forthe second batch, it would be necessary to retroactivelycharge the first batch for the entire setup because it wasoriginally scheduled under a different assumption aboutthe batch size. The possibility of retroactive charge wouldseverely complicate the scheduling decision, so we chooseto avoid it. Fig. 2 describes the combination heuristic ingreater detail.

Generate the combinations of part types that could be scheduled simultaneously, {C,}for a : = 1 to 11 do truncate[a] : = false;

REPEATfor i : = 1 to 111 do D, := L:a E S, da)..a;for a : = 1 to 11 do

if not truncate[a] thenBEGIN

compute batch[a]; (as in job heuristic)sched[a] : = 0;

END;for each part type combination C, do

BEGINTC, : = min {completion time of batch[a] if it is scheduled next};

aE~ .. ._'" [ batch a x ha ].Index[C']·-L..JaEcL:;ER~L; +f bth ., a Sa a X a ca'

END;C' : = argmaxc,{index [C,]};for each a E C' do

batch[a, C'] : = amount of batch[a] that can be completed by time Tc-;sequence each part type a E C* with batch size batch [a, C'];for each a E C' do

BEGINsched[a] : = sched[a] + batch[a, C'];if (batch[a]- sched[a] > 0) then truncate[a] : = true

else truncate[a] : = false;d; : = da - batch[a, C'];

END;UNTIL (da = 0 for all a).

Fig. 2. Description of combination heuristic.

Dow

nloa

ded

by [

Vir

gini

a T

ech

Lib

rari

es]

at 2

0:31

18

Oct

ober

201

4

Page 10: Simultaneous resource scheduling with batching to minimize weighted flow times

Simultaneous resource scheduling with batching

An alternative to the heuristics suggested here wouldbe to compute a joint batch size for a combination, sothat we explicitly match the completion times. In princi­ple this is possible. It raises the following issue: if we pickjoint batch sizes, based on intuitive arguments, do wepick them so that a batch of one completes at the sametime as one batch of the other, or more than one batch ofthe other? Lacking a theoretical foundation for choosinga joint batch, we did not pursue this avenue.

5. Compu tational experience

To test the heuristics, a large number of experiments wererun. We describe first the method for generating randomproblems, next the set of experiments, and finally theresults from those experiments.

5.1. Gener uion ofprohlem data

To generate a problem instance, we began by specifyingthe following information: the concurrency probability,p, i.e., the probability that a job would require a parti­cular machine; the number of part types, n; the number ofmachines, 111; the demand distribution for the part types;the maximum setup time for each part type, s; and, themaximum processing time per unit for each part type, f.

For each of the part types, each machine was consid­ered independently and selected as a required resourcewith probability p, the only proviso being that each parttype required at least one machine. In addition, for eachof the part types, a setup time was selected from thecontinuous uniform distribution on [3,s] and a processingtime per unit was selected from the continuous uniformdistribution on [I, z]. As in our theoretical analysis, it wasassumed that the setup time and the processing time perunit were identical across all the machines used. Finally,the amoun t of each part type to be scheduled was selectedfrom a given demand distribution.

5.2. Set of experiments

We ran the following set of experiments. The demanddistribution for the part types was taken to be the discreteuniform distribution on [50,100]. The number of ma­chines, m, was set at 6. The number of part types, 11,

was 8, 12 or 16. The maximum setup and per-unitprocessing times (s, f) were (3,1), (6,2) or (9,3). Theconcurrency probability parameter was 0.1, 0.3, 0.5, 0.7or 0.9. It was determined early on that p = 0.1 led toproblems for which there was not much overlap ofrequirements among the machines and so these problemsusually reduced to independent parallel-machine pro­blems. We felt that these results were not very interestingand so they are not reported here, although, as we wouldexpect, the heuristic's performance was quite good.

595

A concurrency of 0.9 resulted in problems that wereessentially single-machine problems. The reason for thiscan be explained as follows. Observe that a randomlygenerated problem is identical to a single-machine pro­blem if any of the machines is required by all part types.Observe that a particular machine would be required byall n part types with probability p". Thus, the machinewould not be required by at least one part type withprobability I - p". All m machines would not be requiredby at least one part with probability (I - pl1)111 and thecomplementary event is that at least one machine out ofm would be required by all n part types, which occurs withprobability SI1,111 = I - (I - p")II1. The probability that arandomly generated problem is solvable as a one-ma­chine problem is SI1,II1, and for p = 0.9 we have S8,6 = 0.9,S12,6 = 0.86, and S16,6 = 0.71. Thus, withp = 0.9, there is ahigh probability that the generated problems are equiva­lent to one-machine problems, and for this reason we donot report related results.

After eliminating the two extreme values of the con­currency, we are left with 3 x 3 x 3 types of problems torun. For each case, 20 instances were generated and thetwo lower bounds and the two heuristics were run. Wedescribe next the statistics that were recorded for theseexperiments. As an overall measure of the performance ofthe heuristics, we computed the ratio of the better of thelower bounds to the better of the heuristic solutions. Wealso computed the ratio of the better lower bound to eachof the heuristics, to evaluate them separately. As anadditional comparison of the two heuristics, we measuredthe percentage of instances in which the combinationheuristic outperformed the job heuristic. To compare thetwo lower bounds, we measured the percentage of in­stances in which the lagrangian bound was better than thesurrogate bound.

We were also interested in the degree of improvementobtained by considering the batching problem simulta­neously with the concurrent resource scheduling pro­blem, as opposed to a more straightforward approachin which equal-sized batches were created for each parttype and the concurrent resource scheduling problem wasthen solved. For this we ran a separate experiment, inwhich we solved the problems with our heuristics and alsosolved the problems by first fixing the number of batchesof each part type and then applying the simultaneousresource scheduling heuristic of Dobson and Karmarkar(1989) to the these problems. We compared the twooutcomes. The details of these experiments are describedin the next subsection.

5.3. Computational Results

Although we tested our heuristics for 27 different sets ofparameter settings, the results were quite similar for allsetup and processing time ranges. For the sake of brevity,we present only the case with the highest diversity,

Dow

nloa

ded

by [

Vir

gini

a T

ech

Lib

rari

es]

at 2

0:31

18

Oct

ober

201

4

Page 11: Simultaneous resource scheduling with batching to minimize weighted flow times

596 Dobson and Khosla

Table I. Computational results for combination and job heuristics

Number of Concurrency (p) Best l.b. / Best l.b. / Best l.b. / % comb. % lagrangianpart types (11) Best heur. Comb. heur. Job heur. heur. better lower bound

Mean Mean betlerMean Std. dev,

8 0.3 0.86 0.05 0.83 0.80 0.65 1.000.5 0.82 0.07 0.81 0.80 0.65 0.500.7 0.85 0.08 0.84 0.84 0.75 0.10

12 0.3 0.83 0.05 0.80 0.79 0.70 1.000.5 0.76 0.06 0.74 0.74 0.45 0.650.7 0.79 0.09 0.77 0.76 0.60 0.20

16 0.3 0.82 0.05 0.79 0.79 0.50 1.000.5 0.76 0.04 0.74 0.74 0.65 0.300.7 0.75 0.06 0.73 0.73 0.40 0.15

namely (s, t) = (9,3). Table I presents the results. Wecomputed the ratio of the better of the lower bounds toeach heuristic value and report the mean of these values.The reported heuristic values are for the combinationheuristic, the job heuristic and the better of these two oneach problem. Some general trends can be observed.First, the problems with concurrency of 0.5 seem to bethe 'hardest' although it is difficult to distinguish whetherthis is because the lower bounds are weaker for theseproblems or because the heuristic performance is poorer,or both. Secondly, the value of the lagrangian boundexceeds that of the surrogate bound on problems withlow concurrency. This is to be expected because thesurrogate bound uses a poor approximation of the setupand processing times when the concurrency is low. Thisfact suggests that the bound provided by the better of thetwo lower bounds may be weak with concurrency valuesaround 0.5 and this may account for the weaker resultsfor this category. The combination heuristic generallyperformed better for problems with higher concurrency.For higher concurrency problems, each job requires moreof the resources and so the likelihood that, once a set ofresources is committed for at a given time, a randomlypicked job could be scheduled with the remaining re­sources, becomes smaller. Thus the job heuristic wouldhave difficulty scheduling these problems effectively. Co­ordination across part types is required and the combina­tion heuristic does this coordination first and thebatching next.

One additional comment should be made about the jobheuristic. The procedure described in the last section useda gap-filling method. We experimented with the jobheuristic, with and without this addition. Use of theexisting gaps in the schedule at each stage wheneverpossible rather than simply adding the proposal to theend of the current schedule was found to improve theheuristic performance by 3-13% in the experiments.

The question that remained in our minds after review­ing the results in Table I was whether the gap between the

heuristic and the lower bounds was due to the perfor­mance of the heuristic or to the performance of the lowerbound. Although the heuristic in Dobson and Karmarkar(1989) gave similar results for the simultaneous resourcescheduling problem (without batching) we expected toimprove on their results because determining the batchsize allowed us to set the processing times so that largegaps would not occur in the schedule. However, a directcomparison of their results with ours is not very mean­ingful. The reason for this is that, in their study, the gapbetween the lower bound and the heuristic is due torelaxing the concurrent resource requirements. On theother hand, in this paper, the gap between the lowerbound and the heuristic is due to both a relaxation of theconcurrency requirement and a relaxation of the batch­flow problem to the item-flow problem. We empiricallyestimated the impact of the additional batch-flow to item­flow relaxation in the following way. Once the dualmultipliers {Aai} corresponding to the best lagrangianlower bound had been determined, we considered theindividual machine problems separately, ignoring thesimultaneous resource constraints. For the batch-flowproblem on each machine, we calculated a batch-flowsolution (via a batch-flow heuristic) for each of theseproblems, added them, and compared this value with thebest heuristic. A similar calculation could be performedfor the batch-flow problem obtained in the surrogaterelaxation. Admittedly, what we are calculating is not aprovable lower bound because we are not solving theseparate batch-flow problems optimally. However, itdoes provide us with an estimate about how much ofthe gap between the best lower bound and the bestheuristic is due to the weakness introduced by using alower bound to the batch-flow problem as opposed tosolving the batch-flow problem optimally. These resultsare presented in Table 2. If one believes that the batch­flow heuristic works well, say within a few percent of theoptimal, then, roughly speaking, about half the gap (forthe results in Table I) is accounted for by the batch-flow

Dow

nloa

ded

by [

Vir

gini

a T

ech

Lib

rari

es]

at 2

0:31

18

Oct

ober

201

4

Page 12: Simultaneous resource scheduling with batching to minimize weighted flow times

Simultaneous resource scheduling with batching 597

Table 2. Comparison of the batch-flow heuristic values with best heuristic values

Number ofpart Concurrency (p) Best l.b. / Best batch-flow /types (n ) Best heur. Best. heur.

Mean Std. dev. mean

8 0.3 0.86 0.05 0.940.5 0.82 0.07 0.890.7 0.85 0.08 0.92

12 0.3 0.83 0.05 0.900.5 0.76 0.06 0.820.7 0.79 0.09 0.84

16 0.3 0.82 0.05 0.890.5 0.76 0.04 0.810.7 0.75 0.06 0.80

to item-flow relaxation.To complement these results we ran the following set

of experiments. For each part type, we fixed the numberof batches and divided the demand for the part typeequally a nong these batches. With these fixed-sizebatches, the problems were solved via the simultaneousresource scheduling heuristic that appears in Dobson andKarmarkar (1989). We computed the ratio of the betterheuristic value (between the combination and the jobheuristic) with the value obtained from solving theseproblems. Our objective was to observe whether the'dynamic' batching performed in our heuristics wouldimprove on the fixed-batch-size heuristics. For the pur­poses of our numerical experiments, the number ofbatches (N) was varied from I to 5. This range of valueswas selected based on our observations of the number ofbatches selected by our two heuristics. The results appearin Table 3. Our heuristics generally performed better. Theaverage improvement ranged from 2% to 19% dependingon the batch size and the type of problem.

6. Conclusions

This paper has considered the issue of scheduling the useof multiple resources simultaneously and the issue ofdynamically setting batch sizes in a single model. Wehave presented a mathematical programming formula­tion for this problem. The two relaxations developed forthe (non-batching) simultaneous resource scheduling

problem by Dobson and Karmarkar (1989) have beenextended to this problem. The information obtained fromthe dual multipliers from these relaxations was used bythe heuristics to generate feasible solutions based onintuition similar to that derived for the single-resourcebatching problem and the simultaneous resource schedul­ing problem. The computational results suggest that ifthere is some coordination between jobs as in the combi­nation heuristic, improvements can be made by consider­ing both the concurrent scheduling and the batchingtogether rather than batching first and sequencing later.

An aspect of the problem that is left open by thisresearch is the question of how batching would beaffected by simultaneous resource scheduling in the pre­sence of machine centers. In this formulation each ma­chine was unique. If there were machine centers withmany machines of a given type, how would one scheduleand batch? Unfortunately the question of how to batch ina dynamic multi-item multi-machine environment hasnot been studied extensively.

The following effect was suggested in Dobson andKarmarkar (1989). When jobs require more resources,then batch sizes increase, all other aspects of the problembeing held constant. An analogy that makes this plausibleis the following: think about how large meetings (of saythe entire faculty of a school or department) tend to beconvened less frequently and for longer periods thansmall meetings (of say two or three people). The coordi­nation costs result in 'larger setups'. Because of the detailinvolved with producing schedules and because of the

Table 3. Comparison of fixed versus dynamic batching heuristics

Number ofpart Concurrency (p) Best heuristic/types (n) Best fixed-batch-size heuristic

N= 2 3 4 5

8 0.3 0.81 0.92 0.93 0.91 0.910.5 0.92 0.97 0.96 0.95 0.920.7 0.94 0.98 0.97 0.95 0.92

Dow

nloa

ded

by [

Vir

gini

a T

ech

Lib

rari

es]

at 2

0:31

18

Oct

ober

201

4

Page 13: Simultaneous resource scheduling with batching to minimize weighted flow times

598

small size of the problems solved here we were not able todemonstrate such an effect convincingly in this model. Amore effective way to demonstrate this phenomenonwould be to use a stationary queuing model and observethe impact on flow time of adjusting the (batch) size ofarriving jobs and their frequency while holding the rate ofeach part type constant.

The other important point to note is that in a realsituation, in which events would not follow a scheduleexactly, it would be necessary to have some procedure fordynamically collecting the resources. For example, asequential procedure could be employed, where a workerwould collect the tool and then wait for the necessarymachine to become free. An understanding of the impactof the collection procedure on resource utilization wouldbe very useful. These aspects of the problem are underinvestigation.

References

Dobson. G. (1987) Economic lot scheduling problem: a resolution offeasibility, using time-varying lot sizes. Operations Research, 35,764-771.

Dobson. G. and Karrnarkar, U. S. (1984) Greedy ranking and sequen­cing. The William E. Simon Graduate School of Business Admin­istration, Working Paper Series No. QM 84-16, University ofRochester, Rochester, NY.

Dobson, G. and Karmarkar, U. S. (1988) Large scalejob scheduling byLagrangian Decomposition. chapter 2, in Optimization Modelsand Concepts in Production Management edited by P. Brandi­mate and A. Villa, Gordon and Breach Publishers, Switzerland.

Dobson. G. and Karmarkar U. S. (1989) Simultaneous resourcescheduling to minimize weighted flow times. OperationsResearch 37 4, 592-600.

Dobson, G., Karmurkar, U.S. and Rummel. J. L. (1987) Batching tominimize flow times on one machine. Management Science, 33 (6).784-799.

Dobson. G., Kurmarkur, U. S. and Rummel, J.L. (1989) Batching tominimize flow times on parallel heterogeneous machines. Man­agement Science, 35 (5), 607-613.

Elmaghraby, S.E. (1978) The economic lot scheduling problem(ELSP): review and extensions. Management Science. 24. 587­598.

Fie, M.P. and Roucairol, G. (1984) Multiserialization of iteratedtransactions. Inform, Proc. Lett. 18,243-247.

Inman R. R. and Jones, P.c. (1989) When is the economic lotscheduling problem easy? liE Transactions, 21, 11-20.

Johnson, D.S. and Monmu, c.L. (1985) Scheduling with simultaneousresource requirements. Working Paper, Bell Laboratories.

Karmurkar, U. S. (1987a) Lot sizes, lead times and in-process

Dobson and Khosla

inventories. Operations Research, 33, 409--418.Karrnarkar, U. S. (1987b) Lot-sizing and sequencing delays. Opera­

tions Research, 33, 419--423.Karmarkar, U. S., Kekre, S. and Kekre, S. (1985a) Lotsizing in multi­

item multi-machine job shops. liE Transactions, 17 (3),290-298.Karmarkar, U. S., Kekre, S., Kekre, S. and Freeman, S. (1985) Lot

sizing and lead-time performance on a manufacturing cell.Interfaces, 15 (2), 1-9.

Leinbaugh, D.W (1984) Selectors: high-level resource schedulers.IEEE Transactions on Software Engineering. 18, 810-825.

Lloyd, E.L (1981) Concurrent task systems. Operations Research. 29,189-201.

Lornet, D.B (1980) Subsystems of processes with deadlock avoidance.IEEE Transactions on Software Engineering. 6, 297-304.

Maxwell, W. L. (1964) The scheduling of economic lot sizes. NavalResearch Logistic Quarterly, 11, 89-124.

Murata, T (1980) Synthesis of decision-free concurrent systems forprescribed resources and performance. IEEE Transactions onSoftware Engineering. 6, 525-530.

Naddef, D. and Santos, D. (1984) Batching algorithms for singleoperation problems. Department of Combinatorics and Optimi­zation, University of Waterloo, Waterloo, Ontario, Canada.

Roundy, R. (1989) Rounding off to powers of two in continuousrelaxations of capacitated lot sizing problems. ManagementScience, 35 (12), 1433-1442.

Santos, C. and Magazine, M. (1985) Batching in single operationmanufacturing systems. Operations Research Letters, 4, (october)99-103.

Treleven, M. (1989) A review of the dual resource constrained systemresearch. liE Transactions, 21, 279-287.

Young, J.W., Jr (1982) Prevention techniques ease concurrent proces­sing snags. Computerworld, 16, 27~28.

Zipkin, P. (1991) Computing optimal lot sizes in the economic lotscheduling problem. Operations Research, 39, 56-63.

Zipkin, P.H. (1986) Models for design and control of stochastic, multi­item batch production systems. Operations Research, 34, 91-104.

Biographies

Inder S. Khosla is an Assistant Professor in the Operations andManagement Science Department at the Carlson School of Manage­ment, University of Minnesota. His current research interests focus onthe impact of competition on a firm's operations decisions. He teachescourses in introductory operations management, production planningand control systems, operations scheduling and combinatorial optimi­zation.

Gregory Dobson is an Associate Professor of Operations Managmentat the William E. Simon Graduate School of Business Administrationat the University of Rochester. His research interests include manu­facturing planning and control, job shop scheduling, planning andscheduling in service operations and the interface of operations andmarketing related to product line pricing and design.

Dow

nloa

ded

by [

Vir

gini

a T

ech

Lib

rari

es]

at 2

0:31

18

Oct

ober

201

4