job-shop resource scheduling via simulating random operations

14

Click here to load reader

Upload: dimitri-golenko-ginzburg

Post on 04-Jul-2016

216 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Job-shop resource scheduling via simulating random operations

ELSEVIER Mathematics and Computers in Simulation 44 (1997) 4 2 7 ~ 4 0

~I_.ATHEMATICS

AND

COMPUTERS

IN SIMULATION

Job-shop resource scheduling via simulating random operations • a *

Dimitri Golenko-Glnzburg ' , Aharon Gonik b

a Dept. of Industrial Engineering & Management, Ben-Gurion University of the Negev, Beer Sheva 841051, Israel b Luxembourg Industries, PO.B.. Israel, P.O.B. 205, Arad 89101, Israel

Received 10 February 1997; accepted 5 August 1997

Abstract

We are concerned with a problem of scheduling a flexible manufacturing cell with random time operations. A job-shop production section comprises a set of n jobs (orders) and a set of m machines (processors). Each order consists of a chain of operations, each of which needs to be executed during an uninterrupted period on a given processor. Each operation is carried out under random disturbances. For each order, its due date and the probability of meeting the deadline on time are pregiven. Orders are of different importance and a priority index has to be set for each order by the management, i.e. by practitioners who are responsible for the job-shop. Certain operations need additional resources to be delivered beforehand (equipment, experimental stations, etc.) to process these operations.

The problem is to obtain a deterministic schedule for feeding-in those resources which guarantees, with a chance constraint, that each order can meet its due date on time. Developing such a schedule will prevent the premature feeding-in of costly resources.

A heuristic algorithm is developed that comprises two stages. At the first stage, upper bounds of time moments of feeding-in resources are determined on the basis of providing for each order an additional time interval to obtain for that order a new due data which is shifted to the left on the time axis. In this way, we obtain an analogue of the chance constraint. At the second stage, an optimal schedule of feeding-in resources is developed. This is carried out via simulation. A numerical example is presented.

Keywords: Backwards scheduling; Chance constraint; Delivery performance; Feeding-in resources; Job-shop scheduling

1. Introduction

In recent years, the problems associated with scheduling flexible manufacturing cells with random time operations have been discussed extensively in the literature (see Refs. [1,4-10], etc.). Mostly, these publications deal with flow-shop problems or with scheduling on parallel machines. But for job-shop scheduling problems with operations of random time duration, there are very few publications e.g. [3], especially for the case of jobs (orders) of differing importance.

* Corresponding author.

0378-4754/97/$17.00 ( ) 1997 Elsevier Science B.V. All rights reserved PI1 S 0 3 7 8 - 4 7 5 4 ( 9 7 ) 0 0 0 7 4 - 8

Page 2: Job-shop resource scheduling via simulating random operations

428 D. Golenko-Ginzburg, A. Gonik/Mathematics and Computers in Simulation 44 (1997) 427-440

Operations with random time duration cover a broad spectrum of FMS. They are often used in opto- electronics and in aerospace and defense-related industries, when designing and creating new machines and installations with no similar prototype in the past. For example, in the process of designing new aircraft or missiles, operations on proving grounds are usually of random duration, as are various machining operations on numerical control machines, etc. Many random disturbances usually occur in these operations, such as repetition due to low-quality, delays in tool replacement, etc. For some operations, there are continuous stochastic changes in the processing speed during the operation. Due to such random influences, orders are not manufactured and frequently not delivered to customers on time, even when using various scheduling techniques. As a result, solving the problem of increasing the order's delivery performance for FMS with random time operations becomes essential. Our recent publication [3] deals with creating a decision-making rule to choose a job-operation from the line of jobs waiting to be processed on one and the same machine. However, the starting-time values are not calculated beforehand. Such an approach is not relevant to cases in which, at a pregiven time, certain job-operations must prepare and deliver costly equipment or supply devices for carrying out those operations. If, for example, an order is a new missile to be designed and created, the order usually incorporates an operation of testing that missile on a proving ground. In order to realize such an operation, additional resources, e.g. a dummy target to be hit by the missile, have to be prepared and delivered to the proving ground. Note that, due to random disturbances, it is unknown beforehand when the job-operation will actually be ready to begin. Nevertheless, such resources have to be fed-in at a pregiven date that has to be determined beforehand. Thus, the problem is to determine a schedule of feeding-in resources for certain job-operations that guarantees, with a chance constraint, that each order can meet its due data on time. Developing such a schedule will prevent the premature feeding-in of costly resources to carry out the job-shop operations.

The structure of the paper is as follows; in Section 2, the description of the job-shop is outlined. Section 3 considers a stochastic optimization model to obtain the deterministic schedule of feeding-in resources. In Section 4, we describe the heuristic algorithm to determine the upper bounds of such a schedule. Section 5 presents an algorithm to obtain an optimal deterministic schedule via simulation and on the basis of the results obtained in Section 4. In Section 6, a numerical example from a defence- related industry is outlined. Conclusions and future research are presented in Section 7.

2. The system

We will consider a flexible manufacturing system (FMS) that comprises n jobs (orders) and m processors.

A processor may be a machine, a proving ground, a department in a design office, etc. Each jobs consists of a chain of operations, each of which needs to be processed during an uninterrupted period of random duration on a given processor. At most, each processor can carry out one operation at a time while each operation is processed without breaks. For each job, the earliest possible time to start processing that job, as well as the due date for that job to be accomplished, are pregiven.

Jobs (orders) are of differing importance and the corresponding priority index p has to be set for each job by the management, i.e. by practitioners who are responsible for the job-shop. Besides the priority index, the management has to set two additional probability values for each job: p* - desired probability for the job to be accomplished on time, and p** < p* - the least permissible probability for

Page 3: Job-shop resource scheduling via simulating random operations

D. Golenko-Ginzburg, A. Gonik/Mathematics and Computers in Simulation 44 (1997) 427-440 429

the job to meet its due date on time.Both values p* and p** must also be set by practitioners, using expert methods. For jobs with equal priority indices, their probability values p* and p** must also be equal.

Thus, a static job-shop scheduling problem with n jobs, Ji, 1 <_i<_n, and m processors Pk, 1 <_k<m, is considered. Each job-operation Oie (the gth operation of job Ji, g= 1 . . . . . m, i= 1,2 . . . . . n) has a random time duration tie} with the average value tie and the variance V/e. It is assumed that each job Ji has to be processed on mi<m different processors in a certain order that is individual for each job. Each job Ji has its due date Di and its priority index Pi, value p~- the desired probability for job J; to be accomplished on time, and value p~*-the least permissible probability for the job to meet its due date on time. Assume, further, that certain job-operations Oi,e,, 0i292,.. . , Oia~ J, d<_mn, need additional resources to be fed-in before those job-operations can be processed. The corresponding times Ti,e,,. . . Ti,,e,~ have to be determined beforehand. It goes without saying that a job-operation which needs additional resources cannot start before the time the resources are fed-in.

A detailed notation of the job-shop model is outlined in Section 8.

3. The model

The resource scheduling problem is to obtain a deterministic schedule {Tiqeq}, 1 <<_q<<_d, that enables each job to meet its due date on time with probability not less than p**. The problem is as follows:

Determine maximal values

Max T/,~, (1)

Max Ti.~:

Max T~d{ .

subject to

Pr{Fi _< Di} >_ pT*,

Sil ~ Ei,

and

1 < i < n , (2)

(3)

while Sic is the actual moment that job-operation Oig starts processing, E i is the earliest possible time to start manufacturing order Ji and Fi is the actual time for J / to be accomplished.

Note that maximizing objectives (1) results in the following policy: the management takes all measures to feed-in costly resources as late as possible, in order to prevent resource idleness pending commencement of the operation. It can well be recognized that there is a trade-off between the time period Qiqt,q = [Siqg q -- Tiqgq] the resources are idle and the order's Ji delivery performance: although increasing value Tiqeq results in decreasing value Qiqgq, it results simultaneously in decreasing the order's confidence probability to be accomplished on time, Pr{Fi<_Di}. Moreover, optimal values Tioe~ are not independent, and increasing one of them usually results in decreasing the others. Thus, the general idea

SiF. >_ Ti.~., 1 <_ q <_ d, (4)

Page 4: Job-shop resource scheduling via simulating random operations

430 D. Golenko-Ginzburg, A. Gonik/Mathematics and Computers in Simulation 44 (1997) 427-440

of the job-shop model is to diminish values aiqgq as much as possible but honouring chance constraints (2).

Restriction (3) means that the time for a job to start manufacturing is restricted from below. Restriction (4) means that a job-operation which needs additional resources to be fed-in cannot start before obtaining those resources.

Problem (1-4) is a complicated stochastic optimization problem with several conflicting objectives and non-linear constraints. The problem is too difficult to solve in the general case. A heuristic algorithm is outlined in the following sections.

4. Timing the upper bounds of feeding-in resources

The algorithm to determine the upper bounds is based on several conceptions: (a) All orders to be manufactured are sorted beforehand in a load sequence according to their

significance. An order with a higher priority index is placed in the load sequence before any other order with a lower index. Orders with equal priority indices, i.e. orders of the same importance, are placed in the load sequence according to their delivery performance values 141,.. These are calculated beforehand by

Wi = F { D i - E i - ~'~grr~=l ~ig

where F(x) = 1 / x / ~ f x exp(- t2 /2)d t is a standard normal distribution. In a subset of orders of equal importance, a 'tense' order with a lower value IV,. is placed before orders with higher delivery performance values. Each order in the load sequence has a preference over all other orders which are placed thereafter.

(b) If jobs (orders) Ji~ and Ji2 are in the load sequence and il < i2, relations P*,I - > P~,2 and Pi*t* - > P*'*,2 hold. This means that a more significant order must have confidence probabilities p* and p** at least not lower than less important orders.

(c) Determining the upper bounds of times of feeding-in resources is based on the assumption that job-operations will not stay in lines [2]. Since the latter occurs very seldom in practice, the feeding-in moments obtained by using this assumption are always overestimated and, thus, are truly upper bounds.

The algorithm determines feeding-in moments for all job-operations entering the job-shop. If a routine order Ji starts manufacturing at Sil, the order's delivery performance, i.e. the probability of the order being accomplished on time, is calculated (see [2,3]) by

S x-',m~ } Pr{Fi < Di} = F Di --_ i___~l Z_Z.~e--i lit -

(5)

Relation (5) is based on the assumption that job-operations will not wait in lines [2]. Note that even for the case of non-normal distributed values tig relation (5) is asymptotically true

mi since, from the Central Limit Theorem, the sum ~-~e=] ti~, is asymptotically normal. It can be Clearly recognized from the Central Limit Theorem that relations

Page 5: Job-shop resource scheduling via simulating random operations

D. Golenko-Ginzburg, A. Gonik/Mathematics and Computers in Simulation 44 (1997) 427--440 431

hold.

P r{T/< T; + ATi} = p

A Ti = k v/Vi,

k = 0j),

~(X) = ~ dO e-C-/2dz

(6)

(7)

Here Ti = ~-~grn~/1 tig, Vi = Egn'i-1 gig a n d p > 0.5 is the given confidence probability for job Ji to meet its due date on time. Since Ti=Fi-Si;, relation Pr{Fi _< Sil + Ti + ATi} = p holds. Taking into account the chance constraint Pr{F;<D;}=p, we finally obtain

Di = Sil q- 7"i q - /XTi (8)

AT,. being determined by relation (7). Thus, in order to assure the desired probability of accomplishing job J; on time, we have to provide an additional time interval AT,. to begin the first operation Oi; not later than

Di - Ti - A Ti, and p = p ;

Thus, we obtain a probability constraint

Sil < _ D i - T - A Ti (9)

Restriction (9) has to be taken into account when obtaining the feeding-in schedule. This means, practically, that for each job Ji its due date D i has to be shifted to the left on time axis, namely

Di = Di - ATi (10)

with p = p~ To obtain a deterministic schedule, we suggest a heuristic algorithm (we will, henceforth, call it

Algorithm I) that is, essentially, a development of the JOBCODE procedure suggested by Hastings and White [11,12]. The idea of the algorithm is as follows:

Assume that values Ti and I/,- for each job Ji a r e predetermined and all jobs are sorted in the load sequence according to descending indices of their priorities. Subsets with equal priorities are sorted in ascending order of values Wi. The algorithm selects the jobs in the load sequence one by one and schedules each routine job Ji subject to its probability constraint (9), i.e. by relations (10) and (7), p -= p~. Using the modified due date Di-ATi , the algorithm schedules all.the job-operations backwards from that due date while honouring all technological and capacity constraints. If backwards scheduling does not meet all the constraints, i.e. S/1 < Ei holds, then job Ji is descheduled and, subsequently, rescheduled using the forwards technique. In the latter case, a similar constraint

Simi -~- fimi ~- Oi - A Ti

has to be honoured. The process of selecting jobs using both techniques is continued until all jobs have been scheduled.

Page 6: Job-shop resource scheduling via simulating random operations

432 D. Golenko-Ginzburg, A. Gonik/Mathematics and Computers in Simulation 44 (1997) 427-440

If for a routine job Jg, constraints cannot be honoured using both technique (backwards and forwards) then the procedure is as follows (see Section 8):

1. Determine subset I~ which comprises job Ji; 2. Deschedule all the previously scheduled jobs in subset I~; 3. Reduce the confidence probability Pi* for all jobs in subset I~ by Api, i.e. p*.~ ---- Pi* -- APi, VicI~; 4. Apply the scheduling procedure anew, beginning with the first sequenced job in subset I¢, using

recalculated due dates Di-AT, . , p~ = p~ - Api.

Steps 2---+3-+4 are repeated until either: (a) All jobs in subset I~ are scheduled honouring both technological and capacity constraints with

p* > p**. In this case, all the jobs with lower priorities, i.e. all the jobs in subsets I~+~, I~+2,.. . , I~, change their corresponding confidence probabilities p* and p** as follows

* = m i * * ] Pi n{pi ,Pj }

T

p;* = min{Pi* , p;* }

Later on, the foregoing scheduling continues, beginning from the first sequenced job in subset I~+l. (b) Jobs in subset I~ cannot be scheduled with Pi* = P~*, i.e. probability constraints with the least

permissible probability cannot be met. In this case: - all the jobs in subset I~ are given new confidence probability values P*z =Pi**', - all the jobs with lower priorities change their confidence probabilities to

* " * * / Pe = m,n{pe,p) }

T * * eEUK=~+1IK, j E I ~ ; pj = p i

P**e = mln{Pe,Pe }

- all the jobs in subset I~ are descheduled; - steps 2---+3--+4 are repeated over and over again for the adjacent subset with jobs of higher priority,

i.e. ( = ( - 1. Thus, in general, the algorithm first schedules the load sequence from top to bottom until either

jobs have been scheduled, or, in the course of scheduling, constraints cannot be met. In the latter case, the algorithm reduces confidence probabilities p*, deschedules the current group of jobs with equal p* and tries to meet the constraints with reduced probabilities, up to the lower limit p**. Failing again, the algorithm examines the jobs from 'bottom-to-top', deschedules the adjacent group of jobs with higher priorities and tries to meet the constraints by reducing the confidence probabilities of these jobs. Such a switching 'up-and-down' procedure is repeated until either all the jobs are rescheduled or a solution cannot be obtained even for the least permissible probabilities p~*, l< i<n .

Page 7: Job-shop resource scheduling via simulating random operations

D. G o l e n k o - G i n z b u r g , A. G o n i k / M a t h e m a t i c s a n d C o m p u t e r s in S i m u l a t i o n 44 (1997) 4 2 7 - 4 4 0 433 5. Determining an optimal feeding-in schedule

Applying Algorithm I results to obtain values Sis , it can be clearly recognized that if each job- operation actually starts at Sis and job-operations do not have to wait in line, chance constraints (2) will be met. Thus, values Sis can be regarded as the upper bounds for values Tie which have to be determined for a subset of d job-operations, namely O i t g , , 0i2S2 , . . . , OidSd" We suggest the determination of optimal values Ti, e~, 1 <q<_d, by applying Algorithm II, which is based on applying a search method to the job- shop simulation model.

The simulation model (SM) imitates the job-shop work by random sampling of the actual time durations of the job-operations. It can be clearly recognized that a simulation model is fully determined by the way a job (order) is chosen for the processor from the line of orders ready to be operated on that processor. If, at a certain moment t, several different job-operations are waiting for a certain processor, a pairwise competition between the first two competitive jobs is arranged. The winner competes with the next order in line, etc. until only one winner is left. The latter has to be chosen for the processor.

Three rules are imbedded in such a competition:

1. If two competitive orders belong to different level of importance, the order with the highest priority index is the winner.

2. If two competitive orders are of the same importance, the order's delivery performances have to be compared. A delivery performance value of order i at moment t is calculated by

I D i - t - ET/mi(t)+l tis} w/(t) = F / VZ..~S=mi(t)+l iS

(11)

where mi(t) is the number of job-operations of order i that have been fully executed at moment t. In the course of a competition, the order with the lower value Wi(t) is the winner. 3. If at moment t, a job-operation Oiqsq is ready to be operated on a processor, but t < Tiqq holds, then

Oiqe~ waits and does not compete with other orders.

By simulating the job-shop work many times, the probability Pi of completion on time for each order Ji can be evaluated.

The step-by-step procedure of Algorithm II is as follows: Step 1. Single out all job-operations that need the feeding-in of additional resources. Let them be

Oil£l , • • • , OidSd.

Step 2. Set Tiqq = Siqq, 1 <q<d, where values Siqe~ have been determined by Algorithm I. For all other job-operations Ois set T~s=0.

Step 3. Apply SM to the job-shop with values T,-s obtained on steps 2 or 4. Develop N simulation runs in order to obtain representative statistics. Denote pi,, l<_i<_n, the order's delivery performances Pr{F/<Di} obtained by using simulation modelling.

Step 4. Examine value P6. If P6 < Pi*t*, reduce Ti,s, by ATand go to Step 3. Otherwise apply the next step.

It can well be recognized that an iterative reduction of Ti~, will ultimately result in obtaining Pi, > P** Otherwise, applying SM for the job-shop with T/e=0 for all operations does not enable all the

- - i I •

orders to meet their chance constraints, and the problem has no solution.

Page 8: Job-shop resource scheduling via simulating random operations

434 D. Golenko-Ginzburg, A. Gonik/Mathematics and Computers in Simulation 44 (1997) 427-440

Step 5. Set T/,e, equal to the value obtained at the end of the iterative procedure 3--~4---,3. For further calculations value Tile, will remain fixed.

Step 6. Repeat the iterative procedure of steps 3, 4 and 5 for the next job-operation. Note that when performing this step all previously obtained values Ti~e~ remain fixed and unchanged.

Step 7. If for all job-operations Oiqe~, 1 <_q<d, the corresponding values Tioeq have been determined (via steps 3-6), go on the next step. Otherwise apply Step 3.

Step 8. Examine values Pi~, 1 <_q<_d, obtained after improving all the corresponding values {Tiqe~ }. If at least one value q satisfies Piq < Pi*f, go tO Step 4. Otherwise apply the next step.

Step 8 is necessary since values Pi~, 1 <q<_d, are not independent from each other. Therefore, after realizing steps 1-7, certain values Piq may be found to be less than p~*, in spite of that obtained earlier (by realizing steps 3---,4) all of them have been improved to exceed their lower bounds. In such a case, steps 3-7 have to be repeated, until all chance constraints (2) will be met for the final feeding-in schedule {Ti~e~ }.

Step 9. Applying this step means that we have obtained maximal values T/j~, 1 <_q<_d, which enable restrictions (2-4) to be met. Thus, problem (1-4) is solved.

Note that we have obtained values Ti~eq by shifting the feeding-in schedule to the left of the time axis (Step 4). But, for some Oi~eq values, Si~e~ = Ti~gq obtained by using Algorithm I, may result in values Piq

satisfying Piq > Pi*q*" In such cases, we may shift value Ti~e~ to the right by adding AT, until relation Pi = P~,* is met. Decision-making in this case is the sole prerogative of the job-shop management. If,

q q . . . . .

for such an operation, the resources to be fed-in are extremely costly and cannot wait, shifting to the right may be quite reasonable.

6. A numerical example

A defence related company is faced with manufacturing 16 orders on eight different processors. Priority indices Pi, together with confidence probabilities p~ and p~*, have been set by the practitioners.

Table 1 Initial data matrix of the flexible manufacturing cell

Orders Op. #1 Op. #2 Op. #3 Op. #4 Op, #5 Op. #6 Op. #7 Op. #8

J~ (140,100,3) (120,100,4) (160,100,1) (400,400,8) (300,225,6) (250,225,5) (120,100,2) (190,100,7) Je (180,100,4) (160,100,1) (500,400,8) (300,225,6) (250,100,3) (180,100,2) (170,100,7) (400,225,5) J3 (160,100,2) (190,225,5) (600,400,1) (100,100,4) (140,100,3) (150,100,7) (600,400,8) (400,225,6) J4 (180,100,1) (200,100,2) (I 40,100,4) (400,400,8) (190,225,5) (320,225,6) (170,100,7) (I 60,100,3) J5 (200,225,5) (140,100,4) (180,!00,1) (540,400,8) (280,225,6) (280,100,3) (100,100,2) (200,100,7) J6 (170,100,1) (180,100,2) (480,400,8) (380,225,5) (150,100,3) (130,100,4) (180,100,7) (290,225,6) J7 (400,225,5) (150,100,4) (580,400,1) (600,400,8) (160,100,7) (300,225,6) (200,100,3) (190,100,2) J8 (110,100,7) (500,400,8) (600,400,1) (190,100,2) (400,225,5) (100,100,4) (300,225,6) (180,100,3) J9 (100,100,1) (500,400,2) (250,100,3) (300,225,5) (210,100,4) (120,225,6) (650,400,8) (90,100,7) Jm (100,100,3) (400,400,8) (100,100,4) (400,400,1) (180,100,2) (220,225,5) (310,225,6) (130,100,7) JJl (240,225,5) (140,225,7) (400,225,8) (500,400,1) (190,225,2) (160,100,3) (170,225,4) (250,225,6) JJ2 (140,100,4) (400,400,1) (450,400,8) (170,225,7) (150,100,6) (180,225,5) (170,100,2) (100,100,3) Jl3 (120,100,3) (400,400,2) (190,225,5) (80,100,1) (450,400,8) (90,100,7) (400,400,6) (160,225,4) JJ4 (250,225,6) (110,100,3) (400,400,8) (260,225,5) (180,100,7) (400,400,2) (180,225,4) (500,400,1) Jl5 (400,400,8) (100,100,1) (400,400,7) (110,100,2) (280,225,5) (110,100,6) (280,225,4) (380,400,3) J~6 (140,100,6) (280,225,5) (380,400,1) (100,100,2) (400,400,8) (160,225,7) (180,100,3) (500,400,4)

Page 9: Job-shop resource scheduling via simulating random operations

D. Golenko-Ginzburg, A. Gonik/Mathematics and Computers in Simulation 44 (1997) 427440

Table 2 Parameters of the job shop

435

Order No. i Priority index Pi Value p~ Value p~* Earliest date Ei Due date Di

1 30 0.90 0.75 0 2450 2 20 0.75 0.60 0 9000 3 30 0.90 0.75 0 5400 4 25 0.80 0.65 0 6500 5 30 0.90 0.75 0 3900 6 20 0.75 0.60 0 10200 7 30 0.90 0.75 0 3600 8 25 0.80 0.65 0 4700 9 20 0.75 0.60 0 7250

10 25 0.80 0.65 0 7100 11 20 0.75 0.60 0 8200 12 20 0.75 0.60 0 7150 13 20 0.75 0.60 0 8800 14 25 0.80 0.65 0 5600 15 30 0.90 0.75 0 3300 16 30 0.90 0.75 0 5450

The initial data matrix is given in Table 1, while other job-shop parameters are given in Table 2. Seven job-operat ions, namely,

1 O14 (400, 400, 8) 2 037 (600, 400, 8) 3 054 (540, 400, 8) 4 073 (580, 400, 1) 5 097 (650, 400, 8) 6 Oi5.3 (400, 400, 7) 7 O16.5 (400, 400, 8)

can be processed only after feeding-in additional costly resources. The problem is to determine an

opt imal deterministic schedule of feeding-in these resources, honouring restrictions (2-4).

We have implemented Algori thms I and II (including the simulation model) on an IBM PC in the T U R B O PASCAL 7.0 p rogramming language. Applying Algori thm I with Ap/=0.05 , 1 < i < 16, results

in obtaining Table 3, where values Sie are presented. Thus, the upper bounds of the feeding-in schedule

are as follows:

T14 = 1 142

T37 = 3553

T54 = 1557

T73 = 1517

T97 = 6457

T15,3 = 1582

T165 = 4153

Page 10: Job-shop resource scheduling via simulating random operations

436 D. Golenko-Ginzburg, A. Gonik/Mathematics and Computers in Simulation 44 (1997) 427-440

Table 3 Values Sie after applying Algorithm 1

Orders Op. #1 Op. #2 Op. #3 Op. #4 Op. #5 Op. #6 Op. #7 Op. #8

Ji 722 862 982 1142 1542 1842 2092 2212 J2 6573 6753 7133 7633 7985 8235 8415 8585 J3 32 192 382 2257 2357 3403 3553 4947 J4 3493 3853 4573 5217 5617 807 6155 6325 J5 767 1097 1237 1557 2107 2497 3552 3652 J6 7885 8055 8575 9055 9435 9585 9715 9895 J7 967 1367 1517 2097 2697 2857 3157 3357 J8 132 242 2567 3167 3704 4104 4204 4504 J9 4977 5077 5577 5827 6127 6337 6457 7107 J10 4404 4817 5754 5854 6254 6434 6654 6964 Jll 2773 3013 3153 6913 7413 7603 7763 7933 JI2 4433 4577 5884 6334 6504 6684 6864 7034 J~3 6205 6464 7412 7602 7682 8132 8222 8622 J14 1857 2247 2733 3133 4133 4313 4713 5082 J15 742 1417 1582 1982 2107 2387 2497 2777 JI6 3253 3393 3673 4053 4153 4553 4713 4893

Set AT=50. Applying Algorithm II together with the simulation model results in the iterative procedure which is presented in Table 4.

If additional resources for the job-operations are fed-in at t--0, i.e. T/~ = 0, 1 _<q_<7, the confidence probabilities for all orders to be accomplished on time are very high (see column 1 in Table 4). Moreover, for several orders, these probabilities exceed their upper bounds Pi*- Applying the simulation model for the case Ti~e~ = Sioeo (e.g. when additional resources are fed-in at the latest moment in time) results in very low delivery performances for the corresponding orders (see column 2 in Table 4). Thus, we have to apply Algorithm 2 to improve them. After reducing TI4 by AT--50 seven times, we obtain probability value p1=0.79 (see column 3) which exceeds the lower bound p]'* = 0.75 for that order. Applying the iterative procedure (see steps 3 4 4 - - , 3 of Algorithm 2) for job-operations 037, 054 . . . . . O16,5 results in obtaining delivery performances on the basis of improved feeding-in schedules. It can well be recognized that after looking through all the seven operations, one of the orders, namely order #1, has a delivery performance value of 0.70 which is less than the least permissible value p~* = 0.75 (see Step 8 of Algorithm 2). After improving value T14 (see column 10 in Table 4) another value T54 for order #5 has to be improved (P5 = 0.73 < p;* = 0.75). After improving the last value T73, we obtain the final table of delivery performance values (column 12). The table comprises values Pi, all of which exceed their lower bounds PT* and are based on the optimal feeding-in schedule:

T14 = 692

T37 = 3353

T54 = 1457

T73 = 1117

T97 = 6307

Page 11: Job-shop resource scheduling via simulating random operations

D. Golenko-Ginzburg, A. Gonik/Mathematics and Computers in Simulation 44 (1997) 427-440 4 3 7

.rt-

c q - ' ~

~.=~

t-.-

- t - O

o o

t~ - ~

t-.-

" q ~t)

it .=.

o

e q

II "2

~D

II

Page 12: Job-shop resource scheduling via simulating random operations

438 D. Golenko-Ginzburg, A. Gonik/Mathematics and Computers in Simulation 44 (1997) 427--440

T15,3 : 1282

T~6,5 : 3593

Such a schedule enables both the minimal idleness of fed-in resources and the chance constraints (2) to be met on time.

7. Conclusions and future research

The following conclusions can be drawn from the study:

1. The heuristic algorithms outlined above can be used for scheduling flexible manufacturing cells in cases when processing certain job-operations is based on feeding-in costly resources that cannot be idle for a long time. Such schedules have to be determined beforehand. The algorithms are, in essence, a combination of heuristic procedures, simulation modeling and coordinate optimization.

2. The algorithms are easy to handle and can be implemented on a PC. 3. The developed software can be used for dynamic problems too. If a new job (order) Jq with a priority

index pq enters the system at moment t (with a due date Dq and the earliest time Eq) then the load sequence for the remaining jobs has to be rescheduled at moment t. New values Sie and Tie can be determined according to Algorithms I and II and the process of operating the orders proceeds.

4. Applications areas for the developed algorithms cover a broad spectrum of FMS with random time operations, e.g. various R&D projects, long-term projects in the construction industry, information technology projects, defence related installations, etc. Most of them are high technology projects, defence related installations, etc. Most of them are high technology projects that are carried out under random disturbances.

5. Future research can be carried out in two main directions. First, to apply the developed software to other optimal FMS problems, e.g. with the objective of maximizing the net profit gained by performing the job-shop orders. With pregiven costs of idleness per time unit for various job- operations that need the feeding-in of resources, with penalty costs for not delivering the order on time, together with penalties for each time unit of delay after the due date, etc., we can solve the optimal problem of timing the fed-in resources to minimize the job-shop's expenses. Second, to create a more flexible simulation model that will comprise other job-shop scheduling procedures, e.g. the method of pairwise comparison for operations of random duration [3].

8. List of symbols

///

m

Oig tie tig Vie mig

number of jobs (orders) Ji, 1 <_i<n; number of processors Pk, 1 <k<m; gth operation of Ji, 1 ~g~mi; random processing time of Oie with a normal distribution N(tie, Vie); expected value of tie; variance of tie; index of the processor on which Oie is operated, 1 <<_mie<m;

Page 13: Job-shop resource scheduling via simulating random operations

D. Golenko-Ginzburg, A. Gonik/Mathematics and Computers in Simulation 44 (1997) 427-440 439

vie, mill] Pi Ei Di p?

S~e

Oiqgq d Ti~ Fi Ti=Fi-Sil Xpi AT

7"

initial data matrix; priority index of job Ji to indicate the level of the job's importance (pregiven); the earliest possible time to start processing job Ji (pregiven); due date for job to be accomplished (pregiven); desired probability for job Ji to be accomplished on time (pregiven); the least permissible probability for job Ji to meet its due date on time (pregiven); note that jobs with equal values Pi also have equal values p~ and Pi**, the time job-operation Oit, has to start to enable order J~ to meet its due date on time honoring the chance constraint (on condition that order Ji does not wait in lines); job-operation which can be processed after feeding-in additional resources, l<_q<d; number of job-operations that need additional resources; time of feeding-in resources for operation Oi,?~, 1 <_q<_d (to be determined); actual time for job Ji to be accomplished; total processing time for job J~ including the waiting time in lines; unit value by which desired probability p, can be decreased when necessary; time value by which values of resource schedule may be decreased or increased; subset of jobs with equal priority indices, 1 <~_<'r; number of subsets; it is assumed that subsets are sorted in descending order of their priorities, i.e. if subset I~ comprises jobs with higher priority indices than subset l&, relation ~1<~2 holds. Within a subset, orders are sorted according to their delivery performance values; orders with smaller values W, are considered to be more significant; delivery performance of order J~

Wi : F ( D i - Ei - ~-~tgn~-l ~i~ } ,

V Z_~-i i~

l X

F(x) - ~ f ~ exp ( - t 2/2)dt.

Acknowledgements

This research has been partially supported by the Paul Ivanier Center of Robotics and Production Management, Ben-Gurion University of the Negev. The authors are very thankful to Dr. J. Sims for fruitful discussions in the research area.

References

[ 1] E.G. Coffman, M. Hofri, G. Weiss, Scheduling stochastic jobs with a two-room distribution on two parallel machines, Probab. Engnr. Informat. Sci. 35 (1989) 164-176.

[2] D. Golenko-Ginzburg, Sh. Kesler, Heuristics in industrial stochastic job-shop scheduling, Proceedings of the 8th Conference of Industrial Engineering and Management, April 20, Ben-Gurion University of the Negev, Beer-Sheva, 3.2.1., (1994), pp. 1-6.

Page 14: Job-shop resource scheduling via simulating random operations

440 D. Golenko-Ginzburg, A. Gonik/Mathematics and Computers in Simulation 44 (1997) 427-440

[3] D. Golenko-Ginzburg, Sh. Kesler, Z. Landsman, Industrial job-shop scheduling with random operations and different priorities, Int. J. of Prod. Econ. 40 (1995) 185-195.

[4] C.C. Huang, G. Weiss, On the optimal order of M machines in tandem, Oper. Res. Lett. 9 (1990) 299-303. [5] M. Pinedo, Minimizing the expected makespan in stochastic flow shops, Oper. Res. 30 (1982) 148-162. [6] M. Pinedo, Stochastic scheduling with release dates and due dates, Oper. Res. 31 (1983) 559-572. [7] M. Pinedo, G. Weiss, Scheduling of stochastic tasks on two parallel processors, Naval Res. Logistics Quarterly 26 (1979)

527-535. [8] M. Pinedo, G. Weiss, The largest variance first policy in some stochastic scheduling problems, Oper. Res. 35 (1987)

884-891. [9] R.R. Weber, P. Varaiya, J. Warland, Scheduling jobs with stochastically ordered processing times on parallel machines to

minimize expected flow time, J. Appl. Probab. 23 (1986) 841-847. [10] R.R. Weber, Scheduling jobs with stochastic processing requirements on parallel machines to minimize makespan of

flow times, J. Appl. Probab. 19 (1982) 167-182. [11] C. White, N.A.J. Hastings, Scheduling the factory of the future. Paper presented to the 27th International Meeting of the

Institute of Management Sciences (TIMS), July 1986. [12] C. White, Factory control systems. Graduate School of Management, Faculty of Economics and Politics, Monash

University, Clayton, Victoria, Australia (internal report).