An iterative procedure for lot streaming in job-shop scheduling

An iterative procedure for lot streaming in job-shop scheduling

Computers and Industrial Engineering Vol. 25, Nos 1---4,pp. 231-234, 1993 Printed in Great Britain. All rights reserved 0360-8352/9356.00+0.00 Copyri...

274KB Sizes 13 Downloads 123 Views

Computers and Industrial Engineering Vol. 25, Nos 1---4,pp. 231-234, 1993 Printed in Great Britain. All rights reserved

0360-8352/9356.00+0.00 Copyright © 1993 Pergamon Press Ltd

AN ITERATIVE PROCEDURE FOR LOT STREAMING IN JOB-SHOP SCHEDULING Stephane DAUZERE-PERESXt Jean-Bernard LASSERREtt t Laboratory of Manufacturing and Productivity, Mamachusetts Institute of Technology 77 Mauachusetts Av., Cambridge MA 02139 tt Laboratoize d'Autom&tique et d'Anulyse des Syst&mes du CNRS 7 Avenue du Colonel Roche, 31077 Toulouse C~'dex, Prance

Abstract The issue in Lot Streamln~ is to split lots into sublots in order to improve the makespan (or some other criterion). We present a mode] and an iterative procedure in a general job-shop environment. In s first step, optima] sublot-sizes are computed given a sequence of sublots on the machines. In s second step, a better sequence is computed by solving a standard job-shop sched, lin~ problem with fixed sublot-sizes. Some computations] results on a sample (including the famous 10-10) are reported. In case of no set-up, in few iterations, the makespan approaches a lower bound with few sublots. Keywords : Lot s t r e a m i n g , Seheduling~ I n t e g e r P r o g r a m m i n g

1

Introduction.

In a job-shop scheduling problem, n jobs have to be scheduled on m machines. Each job follows a fixed routing on the machines and each machine can process at most one job at a time. This problem is more general than flow-shop scheduling in which an ordering of the machines is possible. For a good survey of problems and solutions in job-shop scheduling the reader is referred to [Lawler eta/. 89]. Here, a job is actually a lot, i.e., composed of several items. Therefore, to be processed on s machine the entire lot must have been processed on the upstream machine, which may be penalizing for large lot-sizes. Assuming that it is possible to divide a lot into different sublots, a suhlot can be processed on a machine even if the other sublots have not yet been processed on the upstream machine. L o t S t r e a m i n g considers the following issue: How much is it possible to improve the makespan (or some other criterion like mazimnm lateness) by dividing each lot into several sublotsf If there is no set-up time, then it is always optimal to consider the maximum number of sublots. However, the optimal makespan is much harder to find since the problem is larger. In case of set-up times, there is a trade-of[ between the time saved by dividing into sublots and the extra-time due to additional set-ups. Few papers have considered the lot streaming problem. Most of the literature on lotsizing considers the problem of finding the lot sizes per period of a given horizon to meet the forecast demands. There is no sequencing of lots on the machines. Given the lot sizes on a period, the issue of splitting the jobs to minimize the makespan or optimize some other criteria is different since in this case, the r o u t i n g of the products and the possible o r d e r i n g of products on the machines are essential. Actually, it is s hard combinatorial problem. [Potts and Baker 89] give conditions where consistent sublots (i.e., for a given job, the size of sublots is the same on each machine) are sufficient in the one-job case and analyze the two-machine problem with and without equal sublots. Finally, the flow-shop problem with multiple jobs is studied, and a simple numerical example shows that this problem cannot be solved by first constructing an optimal sequence and then splitting each job into optimal sublots. In fact, in the one-job case, all the sublots of a given product are produced consecutively whereas for multiple jobs, as shown by the example in [Ports and Baker 89], the optimal sequence can be such that the sublots are sequenced independently, especially when there is no set-up time. [B~ker and Pyke 90] propose an efficient algorithm for one job and two sublots. [Kropp and Smunt 90] consider also the one-job case, and present a Linear Programming formulation when the makespan is minimized, and a Quadratic Programming formulation when the mean flow time is minimized. In our study, we consider the more genera] case of multiple jobs in a job-shop environment. Actually, the problem is to compute simultaneously sublot-sizes and sequences of sublots on the machines. We 1Partially supported by a Lavoisier fellowship from the French Foreign Office

231

Proceedings of the 15th Annual Conference on Computers and Industrial Engineering

232

present an iterative procedure similar in spirit to the one proposed in [Lasserre 92] and developed in [Danzere-Peres and Lasserre 92a] for a different issue. This procedure alternates between solving • a L o t S t r e a m i n g procedure with a fixed n u m b e r of sublots and a fixed s e q u e n c e of sublots on the machines • a S c h e d u l i n g a l g o r i t h m with a fixed n u m b e r of sublots and a fixed lot size for each sublot. The convergence properties of the procedure are derived, and some computational experiments on a sample are reported in the no set-up case. They reveal that the mskespan approaches a lower bound in few iterations, indicating that the procedure is efficient and seems to yield a nearly global optimum.

2

A Lot Streaming Procedure.

The model is presented in details in [Dauzere-Peres and Lasserre 92b]. Let s be the given number of sublots per job, C the makespan, X the vector of production quantities in each sublot, and S the sequence of sublots on each machine. Solving the lot streaming problem optimally, i.e. computing simultaneously the sublot-sizes and the sequence of the sublots on the machines, is a A/'TP-hard problem and can only be done for very small instances of the problem. Hence, we propose a two-level model. In the upper level (called lot streaming level), given a fixed number of sublots and the ordering of sublots on the machines (i.e., a sequence S is fixed), o p t i m a l sizes of the sublots are determined by solving a simple Linear Programming problem LS(S) which minimizes the mskespan. Very large instances of LS(S) can be solved with any Linear Programming paclmge. In the lower level (or scheduling level), given the fixed sizes of the sublots, an o r d e r i n g of the sublots on the machines is determined by minimizing the makespan in a classical job-shop where the sublots are processed independently. A standard job-shop scheduling (noted O) problem has to be solved which still is Af79-hard, but easier to solve than LS since sublot-sizes are fixed, and an extensive literature has been devoted to this problem. An ideal iterative procedure for solving the model briefly presented above is proposed. This procedure is very close in spirit to the one described in [Lasserre 92] for a different issue. 1. I n i t i a l i z a t i o n . k = 1, Co : +oc and list : O. An initial set $1 is fixed. 2. L o t - s t r e a m i n g p r o b l e m . Solve LS(Sk) --, Ch. If Ck < Ck-t then list = Sk. If Ck = Ch-1 then list : list [3 Sk. 3. S c h e d u l i n g p r o b l e m . Search for a sequence S ~ list that minimizes the makespan in problem 0 If C(S) > Ck then S T O P . Otherwise, set k = k + 1, Sk = S and go to 1. In step 2, optimal sublot-sizes are determined for a fixed sequence (set Sh). In step 3, the goal is to find a better sequence not in list for these sublots. If this sequence does not exist, one stops, list is introduced to avoid cycles. Obviously, the sequence of mskespans Cs is decreasing and converges in a finite number of steps to a value denoted C*. Moreover, the following theorem is verified : T h e o r e m 1 : The ideal iterative procedure stops after a finite number of iterations with a final sequence

(set S'), sublot-sizes X~, and makespan C*. Moreover, C* (and the associated sublot-sizes} is a locally optimal solution of the global problem LS. See proof in [Dauzere-Peres and Lasserre 92b]. However, getting an optimal solution to the scheduling problem in step 3 is almost impossible for realistic problems, so that, for practical purposes, step 3 is replaced by: 3. S c h e d u l i n g p r o b l e m . Search for S which minimizes the makespan with a given heuristic method. Setk=k+l, Sh = S and go to 2. The procedure stops if the makespan remains constant for 2 iterations, or after a finite number of iterations. In the practical algorithm, in contrast to the ideal algorithm, a monotone decrease of the makespan is not guaranteed any more since a heuristic method may find a sequence S in step 3 with a makespan worse than

c(s~). Set-up times can also be considered in the model by introducing binary variables, and LS(S) becomes a Mixed Integer Programming problem. This case is presented and analyzed in [Danzere-Peres and Lasserre 92b], and numerical results are also reported.

DAUZERE-PERE8and LASSERRE:Lot Streaming

3

233

Computational results.

Details of the implementation are given in [Dauzere-Peres and Lasserre 92b]. Actually, the procedure is started in step 3 with given sublot-sizes. Our first run has been made with the example given in [Ports and Baker 89], with 2 jobs and 2 machines in a flow-show (i.e., both jobs are processed first on machine 1, and then on machine 2), and 2 sublots. For each product, initial sublot-sizes are equal. The procedure converges to the optimal value of 57 at iteration 4. It is important to note that optimal sequences on machines 1 and 2 alternate between sublots of product 1 and sublots of product 2.

I Mskespaa

59.50

58.33

58.33

ito..,ion3 ito,57.00 tio , I 57.75

Table 1: To show the efficiency of the procedure, and more generally of the lot-streaming process, two well-known examples given in [Fisher and Thompson 63] are tested. The first example is a 6 jobs - 6 machines problem with optimal makespan 55. The second example is the famous 10 jobs - 10 machines problem for which the faster branch-and-bound methods need some hours to compute the optimal makespan 930. In both cases, the same processing time of any operation is set to the duration of this operation and Di = 1, Vi. The number of sublots (s) varies from 1 to 6. Initial sublots have equal sizes, i.e., X~j = 1/s, Vi,j. We ran 10 iterations, and k e p t t h e best makespan. Results are given on table 2 for both problems. Problem

Lower Bound

6 jobs, 6 machines 10 jobs, 10 machines

LB 43.00 631.00

s=l

55.00 950.00

4s~--29

. 776.64

Makespan s=3 s=4 44.31 43.41

43:154 s=0 . 43.03

696.60

659.93

672.88

648.48

Table 2: Table 2 indicates that in few iterations, the makespan approaches a lower bound LB as the number of sublots is increased and therefore the improvement on the makespan tends to 0. Then, it is not necessary to have a very large number of sublots, but rather to make a trade-off between the decrease that one can expect on the makespan and the increase on computing times. Here, 3 or 4 sublots seem sufficient in both cases. That suggests that the procedure is efficient and seems to provide a (nearly) global rather than local optimal solution. The lower bound L B is given by the maximum, for each machine, of the sum of the processing times, and is induced by the fact that all parts of products that have to be processed on a machine must, sooner or later, be processed on this machine. Splitting jobs into sublots reduces waiting times in front of the machines, but does not prevent jobs from using them. The machine for which L B is attained is called critical machine. We also tested our procedure on problems where the routings and processing times are randomly generated. In every example, the processing times axe taken in the interval [10,100], and Di = 1, Vi. Problems 1 to 4 are job-shop problems (i.e., there is no ordering of the machines) with 10 jobs, and the number of machines for each job is taken in the interval [4, 8]. Like in the previous problems, initial sublots have equal sizes. The results are displayed in figure 1, where the straight line represents the lower bound L B . In all the cases, the makespan is very close to the lower bound with only 2 or 3 sublots. C ~ L B means that the critical machine k (for which the lower bound is obtained) is almost working all the time, i.e, there are practically no waiting times between two operations sequenced consecutively on machine k. This remark is further discussed in [Dauzere-Peres and Lasserre 92b], where further experiments are also reported and analyzed (flow-shop, larger processing times).

4

Conclusion.

After having presented current results on lot streaming problems, we proposed a model for the general jobshop case, and an iteratlve procedure to solve the problem. It must be noted that, even if we have considered the makespan criterion, our methodology can be easily generalized to many other types of criteria, and extended to include other constraints. Numerical experiments on a sample show the great improvements that can be achieved with lot streaming. In few iterationi, the makeJpan comes close to a lower bound with often few sublots, suggesting t h a t t h e

234

Proceedings of the 15th Annual Conference on Computers and Industrial Engineering

700

. Problem1

750

I "650 'l;" 600 ;,, 550

5oo,I

800

Problem2

~ 760l" 650 ",,

550 ""b........

",,

","2 3; 4; Number~ ~blots . Problem3

650

Pr~l©m4

7501"

,

2

;

1

;

Number ofsublots

! 2 3 4 Nmnbcrofsublots

Figure 1: procedure is efficient. Although more sublots are needed when jobs become larger, our experiments (in [Danzere-Peres and Lasserre 92b]) show that the required number of sublots is slowly increasing. Last but not least, note that most of the lot-sizing models completely ignore exact capacity constraints. They treat the machines as acting in parallel and just state that they cannot work more than 100% of their time. Our first experimental results seem to indicate that this rather naive modeling might be relevant provided one can divide the computed lots into enough sublots (not many actually) and a good scheduling algorithm is available. Further research is necessffiryto determine more precisely the best number of sublots as a tradeoff between efficiency and computing time. References [Baker and Pyke 90] K.R. BAKER, D.F. PYKE (1990). Solution Procedures for the Lot-Streaming Problem. Decision Sciences I~I, 475-491. [Dauzere-Peres and Luserre 92a] S. DAUZERE-PERES, J.B. LASSERRE (1992). Integration of Lotsizing and Scheduling Decision in a Job-shop, rapport LAAS n o 9~089, To appear in Europ. J. of Oper. Re8.. [Dauzere-Peres and Luserre 92b] S. DAUZERE-PERES, J.B. LASSERRE (1992). Lot Streaming in JobShop scheduling, rapport LAAS n ° 9~448, November 1992, Submitted. [Fisher and Thompson 63] H. FISHER, G.L. THOMPSON (1963). Probabilistic learning combinations of local job-shop scheduling rules. J.F. MUTH, G.L. THOMPSON (eds.) (1963). Industrial Scheduling, Prentice-Hall, Englewood Cliffs, NJ, 225-251. [Kropp and Smunt 90] D.H. KROPP, T.L. SMUNT (1990). Optimal and Heuristic Models for Lot Splitting in a Flow Shop. Decision Sciences ~I, 691-709. [Lasserre 92] J.B. LASSEILP~ (1992). An Integrated Model for Job-Shop Planning and Scheduling. Management Sci. 88, 1201-1211. [Lawler et a/. 89] E.L. LAWLER, J.K. LENSTRA, A.H.G. RINNOOY KAN, D.B. SHMOYS (1989). Sequencing and Scheduling: Algorithms and Complexity, Report BS-R8909, Centre for Mathematics and Computer Science, Amsterdam. [Ports and Baker 89] C.N. POTTS, K.R. BAKER (1989). Flow Shop Scheduling with Lot Streaming. Oper. Res. Letters 8, 29?-303.