Copyright © IFAC Intelligent Manufacturing Systems. Bucharest. Romania. 1995
PRODUCTION SCHEDULING PROBLEMS MODELLING AND HEURISTICS IN TEXTILE INDUSTRY.
V. Botta-Genoulaz, A. Guinet
Laboratoire d'lnformatique des Systemes de Production lndustrielle (LISPl), Groupe Productique et Informatique des Systemes Manufacturiers (PRlSMa). lNSA, Bat 403, 20 Avenue A lbert Einstein. 69621 VilIeurbanne Cedex. France.
Abstract: In the factory of the future, scheduling problems must be considered on the whole production system. Production system control and production scheduling in textile industry are specially difficult and complex problems. These problems have been identified and modelled in an hybrid flowshop organization form, considering technological constraints on jobs, resource constraints and various scheduling objectives, like makespan or maximum tardiness. After many experiments, four algorithms have been selected according to their capability to solve single flowshop problems. Very efficient and flexible, they can take into account a lot of additional constraints; They are at the root of presented heuristics. Keywords: Production control, Scheduling algorithms, Modelling, Flexible Manufacturing System, Industrial Production System.
to minImIZe can be either maximum completion time or makespan (C max ) in the aim to optimize resource utilisation, or maximum tardiness (T max), to respect prescribed deadlines. This kind of problems can be encountered in electronic or pharmaceutical industries.
I. INTRODUCTION Classical scheduling theory has tended to consider scheduling problems in isolation from higher levels of production planning and control function. In the factory of the future, scheduling problems must be considered on the whole production system. Production system control and production scheduling in textile industry are specially difficult and complex problems. A multi-model approach (Carlier, 1992) has been used to solve these problems: it associates discrete event simulation with classical scheduling theory, to evaluate and validate production planning.
The problem to solve is made up of two characteristics: scheduling and resource assignment. Given that the problem is NP-hard, a set of list algorithms is developed to solve it. Previous works have been adapted to take into account both objectives with same heuristics. Four algorithms have been selected after many experiments according to their capability to solve single flowshop problems minimizing such criteria. They are very efficient and flexible enough to take into account a lot of additional constraints.
Scheduling problems of textile industry have been identified and modelled, considering technological constraints on jobs, resource constraints and various scheduling objectives. The flow pattern is an hybrid flowshop: W serial workshops consisting of M(w) identical or different machines. Following restrictions are considered: release dates, job precedence constraints, time lags, set-up and removal times, limited intermediate storage. Criteria
2. STUDIED PRODUCTION SYSTEM In our pilot textile plant. the production is made up of two manufacturing stages: grey manufacturing and finishing. The input to the plant is yarns, and 227
the output is dyed cloth. Due to the environment, the former is stock management oriented, the latter order management oriented. They consist in several continuous or discontinuous processes in series, with different processing units. Management is interested in optimizing the performance of the plant and customer service.
warping process
weft twisting process
lowtwilting
pim-winding
+
+ high twilting + !teaming
warping
.t
=g
+
+
winding
This section describes for both stages, manufacturing processes, constraints and objectives.
beaming
~=rg~ weavmg
+
2. I grey manufacturing process
drying
weaving process
A grey fabric is made from yarns, depending on production planning and manufacturing orders. Due to its duration (from three to five weeks) and to supply constraints (at least three months), workshop planning of the grey manufacturing process are made from a production plan which is sprung from medium- and long-dated sale forecasts; the planning horizon is six months. The physical production system is made up of three processes: weft twisting, warpmg and weaving. The train of the different operations is given on figure I.
Fig. I. Grey manufacturing process During the sizing operation chemical coating are applied to yarns to give them consistency and added strength. It can be done on one of the two sizing machines. The input to a sizing machine is a primary beam, and the output is from five to fourteen sectional beams. The beaming operation consists in beaming together the five to fourteen sectional beams to make from two to eight warps, on loom beams. It is done on the single beaming machine.
A majority of grey materials are woven with high twisted weft yarns. The weft twisting process consists of four operations: pirn-winding, high twisting, steaming, and winding. The pi rn-winding operation which is realized on a single machine, consists in transferring yarns from the bobbins in which they are supplied to aluminium bobbins each weighted around one kilogram (the input ~ins weight between two and four kilograms). This machine can wind up to 160 aluminium bobbins in parallel, two, three or four times per batch. The high twlstmg operation consists in twisting the yarn up to 2000 to 2800 rounds per meter. It can be done on one of the ten identical high twisting machines; each machine can twist up to 256 flanged bobbins in parallel. Flanged bobbins of twisted yarns are set in an autoclave (up to 256 per batch) to fix the twisting; thiS IS called the steaming operation. To be used on weaving looms, yarns must be wound again on Jumbo bobbins (5 flanged bobbins make I jumbo bobbin). This operation is done on one of the four identical winding machines; each machine can wind twelve jumbo bobbins in parallel.
Leases are made on warps and drawing in / sleying operation is possibly done to prepare warps for the weaving machines. The weaving operation is done on one of the one hundred and twelve water jet looms; it consists in perpendicularly interlacing weft and warp yarns. Grey pieces are dried and kept in stock. Job units and average duration of each operation are given in table I. Some operations are subject to set-up or removal times: for low twisting and high twisting operations, if the job j follows the job i with i non identical to j, there is a set-up time on the machine (around eight hours); for the sizing operation, a cleaning must be done after every job processing; for the weaving operation, a sequence dependent set-up time IS required on the looms (from two to ten hours).
Table 1 Job units and average durations
For the warping process, four operations are done in sequence: low twisting, warping, sizing, and beaming. The low twisting operation consists in twisting the yarn up to 600 rounds per meter. It can be done on one of the twenty four identical low twisting machines; each can twist up to 160 bobbins in parallel. The warping operation consists in parallel rolling up on a beam, called primary beam, thousands of flat or low twisted yarns set out on a creel. It is done on the single warping machine. One creel unit (up to 1200 bobbins) makes from two up to eight primary beams.
operation pim winding
job unit !> 256 bobbins
hil#l t"i&ing !teaming winding
lowtwilting warping sizing beaming 1= making drawing in/sJeying weaving
228
5 flanged bobbins 160 bobbins
1 creel unit I primary beam I warp
average duratiQll 11 hours 192 hours 2 hours 4 hours 96 hours 38 hours 21 hours 9 hours 2 hours 23 hours 468 hours
Minimum WcUtmg times may exist between some operations: after steaming, jobs must wait at least one hour before processing next operation; in the same way after low twisting, jobs must wait at least forty-eight hours, and at least twenty-four hours after sizing.
.., 1cthin iOin
. . ' ". ···desizing
relaxing ... · .' /dying
l..,
The grey manufacturing process is characterized by many limited buffer storage: the buffer storage capacities between pim-winding and high twisting, high twisting and steaming, steaming and winding are respectively limited to four, four and twenty-five job units. There is other storage constraints due to the limited number of supports which are needed for several consecutive operations: Oanged bobbins from the beginning of the high twisting operation to the end of the winding operation, jumbo bobbins from the beginning of winding to the end of weaving, primary beams from the beginning of warping to the end of sizing, and warp beams from the beginning of beaming to the end of weaving.
UIItwiUg
L drying
l.., pre-sdting / final Sdling iru.pea.icn
~ ..... '"
lv.Tapping
" . weigllt redudicn
Fig. 2. finishing process Some operations are subject to set-up or cleaning times depending on the sequence of jobs: for relaxing / dying operations, if the job j follows the job i with the colour of product i darker than colour of j, a two hours cleaning time is required on the machine. In the same way, sequence-dependant setup times exist for the drying operation, the presetting / final setting operation and weight reduction operation.
The grey manufacturing process scheduling objectives are to optimize resource utilisation and to minimize intermediate stocks. The former objective squares with makespan criterion, the latter with the average completion time criterion.
Maximum waiting times are required between some consecutive operations: after desizing or untwisting, wet fabrics must not wait more than twelve hours before processing the next operation, otherwise defaults may arise.
2.2 finishing process The finishing process consists in two processes, preparation and dying, which share common resources. Workshop planning of the preparation process is made from medium-dated sale forecasts ' dying process planning is made from custome; orders. The planning horizon is around two months. The train of the different operations is given on figure 2 (dotted arrows represent preparation process flows, full arrows represent dying process flows).
Minimum required time between two consecutive operations can be important: after continuous processes like desizing or weight reduction, a job (a fabric) must wait until the others jobs from the same roller are completed. This duration can be equal to three times the operation processing time.
In the beginning of both processes, pieces are cut or sewn in order to make fabric pieces with a correct length, according to relaxing and dying machine capacities which are respectively around 1000 meters and 400 meters. For this operation, two machines are available. In the preparation process, pieces are possibly desized to be able to absorb chemicals during next operations, on a single desizing machine. Depending on the followed process, pieces are relaxed or dyed in one of the fourteen jets, which have different capacities. Then, fabrics are untwisted on the untwisting machine, and dried without tension, on the drying machine. The next operation, pre-setting, or final setting, consists in stabilizing warp and weft perpendicularly; it is done on one of the two identical machines. The last operation of the preparation process consists in a weight reduction of the fabric . Prepared fabrics are kept in stock until their loading in dying section. About dying process, the last operation consists in inspecting and wrapping fabrics .
The finishing process scheduling objective is to minimize maximum and average tardiness of jobs.
3. SCHEDULING PROBLEM MODELLING An object-oriented approach which identifies the resources and the organization features of the studied system (Guinet and Bona, 1995) has been used to analyse the production system. Results of this analysis, supplying constraints and planning horizons induce us to break down the scheduling problem, in a sequential manner.
3. 1 Scheduling problems identification Overall process are evidently a flow process over parallel machines, i.e., an hybrid flowshop (or flexible flowshop) .
229
About the grey manufacturing scheduling problem, precedence constraints have been used in order to model the different manufacturing units: batch of 256 flanged bobbins, jumbo bobbin, batch of 160 bobbins, creel unit, primary beam, warp ... A manufacturing order i will be decomposed into six jobs: job i I for the first three weft twisting operations, i2 for winding operation, i3 for low twisting operation, i4 for warping operation, i5 for sizing and beaming operations, i6 for weaving operations. Each job will be processed by one machine in each workshop. Some processing times will be equal to zero. If i«j denotes the fact that j can not start in the first workshop before the ending of i in the last workshop, the precedence constraints are: i I « i2, i3 « i4, i4 «i5, i5 « i6 and i2 « i6. The combinational characteristic of this scheduling problem allow us to break down this problem into two sub-problems: the former, called PI, consists in scheduling of warping and weaving processes with makespan criterion. The beginning date of the weaving operation will give the corresponding weft twisting due-date. The latter, called P2, consists in scheduling of weft twisting process with maximum tardiness and maximum earliness criteria, to respect prescribed deadliness, and in order to limit the number of jumbo bobbin supports used.
production control system complexity. This classification consists of six parameters. The first one represents the number of jobs, the second one represents the number of workshop, the third one workshop organization, the fourth one machine characteristics, the fifth one possible assumptions or restrictions of the organization, and the sixth one the optimality criterion to minimize. According to this classification, the three previously identified scheduling problems can be written as follow. PI: N I W stages I F, m(w)~1 identical parallel machines, r(i)~O, minimu~ time lags, R.u.!, Sod, Sl od , BwIP, precedence/C""", or C .
P2: N I W stages I F, m(w)~ 1 identical parallel machines, r(i)~O, d(i)~O, R,oo, Sod, bw.W+-1. Bw.wlPlT max orE""",. P3 : N I W stages I F, m(w)~1 identical parallel machines, r(i)~O , d(i)~O, minimum & maximum time lags, Sod, precedencelT max.
4. RESOLUTION TOOLS
About the finishing scheduling problem, called P3, precedence constraints have been introduced in order to reduce the jobs hop organisation into a flows hop organisation of resources (machine or set of machines): the succession of preparation process and dying process will be modelled by two jobs i and j , the former for the preparation process and the latter for the dying process, with the following precedence constraint: j can not start in the first workshop before the ending of i in the last workshop.
The problem to solve is made up of two characteristics: scheduling and resource assignment. Due to the problem computational difficulty, heuristics seem to offer the most promising results for solving realistic size problems. Such an approach is developed in this section. About the makespan criterion, for W equal to I and M(w) greater than I, this problem is NP-complete. Therefore, for W and M(w) greater than I, it is NPhard. Regarding the maximum tardiness criterion, for Wequal to 2 and M(w) equal to I, the problem is NP-complete. Therefore, for W and M(w) greater than I, it is NP-hard.
In every case, the problem is to schedule N jobs (from 1000 to 3000) on W serial workshops (between 5 to 9) consisting of identical parallel machines M(w); each job is processed by one machine in each workshop. Job pre-emption is not allowed. The workshop environment is called a flows hop environment. Each job has its own duedate (except for P2) and its own release date. Job processing are subject to machine set-up and/or removal times (respectively noted S and R) which are either sequence dependent (sd), or non sequence dependent (nsd). These times immobilize only the machine, only the job, or both. Job processing can also depend on buffer limited storage capacity, noted b(jj+ I), or on limited number of supports noted B(jj+rn. Some operations hang on minimum and/or maximum time lags.
4.1 The NIW stageslF. m(w)cl identical parallel machineslTmax or Cmax Problem Given that the studied problem is NP-hard, a set of list algorithms has been developed to solve it. Firstly, jobs are scheduled according to single flowshop heuristics with W machines. In order to take into account workshop machine number, processing times have been divided by the machine number, for each workshop. The second step consists in assigning jobs on machine in each workshop. After many experiments, four algorithms have been selected according to their capability to solve single flowshop problems minimizing makespan or maximum tardiness. They are very efficient and flexible and can take into account a lot of additional
3.2 Problem modelling An extension of the classification of Conway, et al (1967) has been done in order to show the
230
Note that indices i an j correspond to jobs, machines are indexed by k, k' and k", and workshop by w.
constraints. The heuristic of Campbell et al. (1970) is based on Johnson's rule (1954) which gives the optimal solution to the two-machine flowshop problem for makespan criterion. It solves M-I twofictitious machine problems and retains the best of the M-I solutions to solve the M-machine problem. Szwarc (1983) uses the same approach with another definition of the two fictitious machines to solve the M-machine flowshop problem with time lags. The heuristic of Nawaz et al. (1983) progressively constructs the solution to the flowshop problem for makespan criterion. It is based on the idea which hypothesizes that greater attention must be given to jobs with large processing times. Townsend (1977) suggests a branch and bound algorithm to solve the M-machine single flowshop problem for the maximum tardiness criterion.
4.3 Constraints integration Constraint integration has been done into the C.... calculation. They are presented for a permutation flowshop environment without taking into account the workshop machine number in processing time expressions. Formula are more complicated for a real flowshop which allows job passing. Release date constraint. This constraint concerns only the first workshop. Completion time of job i depends on its release date and on machine availability.
For maximum tardiness criterion, the tardiness of a job i is equal to its last workshop completion date C(i) minus its due-date d(i) which can be represented by a negative data, i.e. a negative processing time. This property has been retained to adapt some previous works which minimized C""",; a W+ I workshop with processing time equal to -d(i) has been introduced to minimize T max .
C(i, k,l) = Mcufr(i}, C(i - L k,l)] + p.,i, k,l)
(I)
Minimum time lags. Completion time of job i depends on machine availability, and completion time of the previous operation increased by the time lag.
AI,
-1.2 Parameters and Variables Before presenting constraints integration, required parameters and variables are defined.
1
1
C(i,k, w) =
C(i - Lk, w), C(i,k', w -1) + p.,i,k, w) + a(i, w- I)
(2)
Maximum time lags. Completion time of job i depends on machine availability, on completion time of the previous operation of i, and on completion time of i-Ion the next workshop decreased by the time lag.
N = number of jobs, W = number of workshop, M(w) = number of machines in the workshop w, P(i,~ w) = processing time of the wth operation of job i processed on machine k in workshop w, d(i) = due-date of job i, r(i) = release date of job i, a(i,w) = minimum time between the ending of job i on workshop w and its beginning on workshop w+-I, A(i,w) = maximum time between the ending of job i on workshop w and its beginning on workshop w+-I, S(i,w) = machine set-up time in workshop w, before the beginning of job i, S(ij,w) = machine set-up time in workshop w, before the beginning of job j, when the job i comes before the job j on the same machine (machine immobilizing), S I(ij ,w} = set-up time of job j on one machine of workshop w, when the job i comes before the job j on the same machine (job immobilizing), R(i,w) = machine removal time in workshop w, after the ending of job i, b(w,W+-1) = buffer storage capacity between the output of workshop w and the input of workshop w+-I , B(w,W+-P) = number of supports between the input of workshop w and the output of workshop w+-p, C(ij,k) = completion time of the wth operation of job i on machine k in workshop w.
C ·k
(I, ., w)
1
C(i -I,k, w), C(i, k',w-I), C(i -I,k" , w + I)
= AI,
1
.
+ p.,1 , k , w) (3)
-A(I, w) - p.,1,k, w)
Non sequence dependent removal time. Completion time of job i depends on machine availability increased by the removal time, and on completion time of the previous operation of i.
1
C(i -I,k,w)
C(i, k,w)= .U
1
+R~~-I, w), +p.,i,k,w)
(4)
C(1,k ,w- I)
Sequence dependent machine set-up time. This time immobilizes only the machine. Completion time of job i depends on machine availability increased by the set-up time, and on completion time of the previous operation of i.
C(i,k, w)
231
1
=M
1
C(i - I,k, w) + S(i - I,i, w), + p.,i,k, w) C(i,k', w -I)
(5)
5. CONCLUSION
Sequence dependent job set-up time. This time immobilizes only the job. Completion time of job i depends on machine availability, and on completion time of the previous operation of i increased by the set-up time.
a{
C(i , k,w)=M
1
C(i -1,k , w), C(i,k',w - l) +p(i , k , w) + SI(i - l, i, w)
About single flowshop problems with a limited machine number (two or three), some authors have noticed and tested this possibility for minimum time lags, or for set-up and removal times. Works presented in this paper consist in generalizing such an approach with multiple constraints encountered in textile industry, what ever the machine number may be, and in integrating hybrid aspect. The possible impact of zero processing times is also studied.
(6)
Precedence constraints. If job i precedes job j, then i must be ended in workshop W before the beginning of j in workshop 1. i «j
~
C(i,k,U') $C(j,k',l)-p(j,k',l)
Next steps of this work will be the validation of the resolution tools presented and their extension to hybrid flowshop organisation with identical or different parallel machines in each stage.
(7)
Next constraints have been modelled for single machine workshop. 6. ACKNOWLEDGEMENTS
Buffer intermediate storage capacity constraint. Completion time of job i depends on machine availability, on completion time of the previous operation of i, and on the beginning date of job ib(w,W+ I) on the next workshop.
This work is supported by Region Rhone-A1pes grant and by INOSET A grant.
REFERENCES
C(i, w) = M
C(i -1, w), C(i, w -1), C(i - b(w, w + I), w + 1) + P(i, w) (8) - P(i - b( w, w + I), w + 1) - P(i, w)
Campbell, H. G., R. A. Dudek and M. L. Smith (1970). A heuristic algorithm for the n job, m machine sequencing problem. Mgmt. Sci., 16, B630-B637. Carlier, 1. and M. C. Portmann (1992). Machine scheduling problem. In: Summer School on Scheduling Theory and its Applications Proceedings, pp. 240-248, Bonas, France. Conway, R. W., W. L. Maxwell and L. W Miller (1967) . Theory of scheduling. Addison-Wesley Publishing Company, Reading, Massachusetts. Guinet, A. and V. Botta (1995). Object-oriented Analysis with Structured and Integrated Specifications and Solutions for production system control. In: IEPM'95 Proceedings, pp. 171-182. FUCAM, Belgique. Johnson, S. M. (1954). Optimal two- and three-stage production schedules with set-up times included. Nav. Res. Log. Quart., 1, pp. 61-68. Nawaz, M., E. Enscore and I. Ham (1983) A heuristic algorithm for the m machine, n job flowshop sequencing problem. Omega, 11, pp. 91-95 . Szwarc, W. (1983). Flowshop problems with time lags, Mgmt. SCi., 29, W4 , pp. 477-481. Townsenci, W. (1977). Sequencing n jobs on m machines to minimize maximum tardiness: a branch-and-bound solution. Mgmt. Sci., 23, pp. 1016-1019.
Limited support number constraint. Completion time of job i depends on machine availability, on completion time of the previous operation of i, and on the beginning date of job i-B(w,w+[3) on the workshop w+[3 .
C(i,w) = M
a{
1
C(i - I, w), C(i,w-l), + P(i ,w) (9) C(i - B(w, w + b), w +b)
Some refinements are actually studied to model the two last constraints together, to be able to calculate
job completion times in sequence, without knowing which will job i-b(w,w+ 1) or job i-B(w,w+[3) be. All these constraints have been modelled into the completion time calculation. Every permutation of a set of unscheduled jobs, calculated with previous formula gives an admissible solution of the problem. Selected heuristics are partial or complete enumeration methods of solutions or solution sulr sets. An evaluation of these partial or complete solutions according to the formula satisfies constraints, and avoids a come back to previous decisions.
232