Discrete events simulation and genetic algorithm-based manufacturing execution Content of the presentation Introduction and context Problem Proposed solution Results Conclusions and perspectives Keywords discrete-event simulation, genetic algorithm, multicriterion optimization 1
Introduction and context Overview Manufacturing context: assembly of mixed models Stage of preparation of the release of a campaign How to determine a «good» value of control parameters? Coupling DES and optimization algorithm 2
Introduction and context Manufacturing system Free automated transfer with belt conveyors Manual or automated assembly operations Workstations layout in: series or parallel Workstation #3 Downstream accumulation Workstation #2 Workstation #1 Upstream accumulation Loading workstation Product to assemble Belt conveyors Unloading workstation Pallet Workstation #4 Workstation #5 Workstation #6 Loop section Coding system 3
Introduction and context Flow of pallets Non-permutable phases Non-redundant phases = generalized flow-shop In case of saturation of one of the bypass workstations: = loop on the central conveyor 3 2 1 3 2 1 4 5 6 4 5 6 4
Problem Assembly campaigns planning Example of a campaign with 5 orders Assembly order Finished product reference Quantity Load. WS 1 WS 2 WS 3 WS 4 WS 5 WS 6 Unload. 1 A 10 3 4 2 3 5 2 C 5 3 1 4 3 2 5 3 E 8 4 3 4 5 5 4 B 15 3 4 5 5 F 6 3 1 2 3 5 Release sequencing Mixed process Sequence 10 products A 6 products F 15 products B F F F F F F 8 products E B B B B B B B B B B B B B B B 5 products C E E E E E E E E C C C C C A A A A A A A A A A Time 5
Problem Assembly campaigns planning 25 20 15 WIP 10 5 65 69 73 Line is empty Line is empty 0 1 5 9 Implementation of values of control parameters for campaign n RampUp Steady state RampDown Preparation and optimization of control parameters for campaign n+1 6
Problem Flow control parameters Release sequence of k assemby orders k! combinations 1 2 3 AAAAAAAAAAAA BBBBB CCCCCCCC CCCCCCCC BBBBB AAAAAAAAAAAA BBBBB CCCCCCCC AAAAAAAAAAAA 120 combinations for 5 orders (without splitting) sequencing Inter-release Time (IrTi) [max IrTi -min IrTi +1) k combinations 371.293 combinations for 5 orders 2 sec.<irti<16 sec. 7
Problem Flow control parameters Capacity of upstream conveyor on j workstations [max StAm -min StAm +1) j combinations StAm 46.656 combinations for 6 workstations 0<StAm<7 Number of pallets to be used (Np) 0<Np<26 8
Problem Flow control parameters Capacity of downstream conveyor Priority rule on the exit of workstation Splitting of the sequence of the assembly orders Etc. With only the 3 most sensitive parameters : Inter-Release Time (IrTi) Capacity of upstream conveyor (StAm) Number of pallets (Np) More than 10 11 combinations What combination to be used? 9
Proposed solution Use of Simulation Simulation is a frequently used tool during stage of: Design Improvement of manufacturing systems (existent or to be built) Proposal: use of simulation during stage of: preparation the execution of a campaign to provide a decision-making aid for the choice of the values to fix at the flow control parameters 10
Proposed solution Use of Simulation Simulation of a k order campaign on j workstations Control parameters 0 sec.<irti(k)<13 sec. 0<StAm(j)<7 19<Np<36 Campaign to release Objective function Assembly order Finished product reference Quantity Load. WS 1 WS 2 WS 3 WS 4 WS 5 WS 6 Unload. 1 A 10 3 4 2 3 5 2 C 5 3 1 4 3 2 5 3 E 8 4 3 4 5 5 4 B 15 3 4 5 5 F 6 3 1 2 3 5 Simulation model designed with Witness 11
Choice of the objective function Optimization criteria Proposed solution Total Lead Time of the campaign (Lt) between the release of the first pallet and the delivery of the last. Average Work in Process (WIP) between the loading workstation and the unloading workstation Total number of Setup (Set) corresponding to the change over from one product to another Multicriterion weighted objective function Relative Weights Lead t. WIP Setup Lead time 1 2 3 Wip 0,5 1 1 Setup 0,3333 1 1 Summ 1,8333 4 5 0,5455 0,5 0,6 0,2727 0,25 0,2 0,1818 0,25 0,2 Normalised weights Lead t. WIP Setup 1 0,55 0,24 0,21 To minimize F(x) = 0,55. Lt(x) + 0,24. WIP(x) + 0,21. Set(x) Normalised criterion 12
Choice of the objective function Running a simulation Proposed solution Control parameters IrTi(1) IrTi(2) IrTi(3) IrTi(4) IrTi(5) 9 9 5 5 2 StAm(1) StAm(2) StAm(3) StAm(4) StAm(5) StAm(6) 2 1 5 6 2 3 Rp 20 Campaign to release Objective function Assembly order Finished product reference Quantity Load. WS 1 WS 2 WS 3 WS 4 WS 5 WS 6 Unload. 1 A 10 3 4 2 3 5 2 C 5 3 1 4 3 2 5 3 E 8 4 3 4 5 5 4 B 15 3 4 5 5 F 6 3 1 2 3 5 LeadTime WIP SetUp F(x) 724,918 13,41 32 0,645 13
Proposed solution Coupling Simulation with Optimization Control parameters Algorithm parameters Campaign to release Simulation model Objective function Optimization Algorithm = Genetic Algorithm From the algorithm (coded in Delphi) Witness is an Object Linked Embedding (OLE) Why a Genetic Algorithm? High-performance for complex problems Exploration of parallel solutions Easy to program 14
Proposed solution Evolution and Genetic Algorithm Chromosome Generation Individual Gene For m generations For n individuals Evaluation Selection Crossover Mutation 15
Proposed solution Coding our problem with GA a chromosome = a combination of control parameters Gene 1 Gene 2 Gene 3 Gene 4 Gene 5 Gene 6 Gene 7 Gene 8 Gene 8 Gene 10Gene 11 Gene 12 IrTi(1) IrTi(2) IrTi(3) IrTi(4) IrTi(5) StAm(1)StAm(2)StAm(3)StAm(4)StAm(5)StAm(6) Rp For generations = 1 to 30 For individual = 1 to 9 IrTi(1) IrTi(2) IrTi(3) IrTi(4) IrTi(5) StAm(1) StAm(2) StAm(3) StAm(4) StAm(5) StAm(6) Rp LeadTime WIP SetUp F(x) 2 7 11 5 6 4 6 5 4 3 2 24 695,212 14,45 37 0,633 1 5 6 10 2 4 4 3 3 1 3 3 33 657,152 19,05 40 0,696 2 8 9 10 12 3 6 3 2 1 5 3 28 758,946 13,89 21 0,68 3 9 9 5 5 2 2 1 5 6 2 3 20 724,918 13,41 32 0,645 4 8 4 7 8 5 5 1 5 5 4 4 30 629,772 17,8 44 0,615 5 2 12 8 10 9 5 1 4 3 1 4 25 701,466 15,98 56 0,798 6 9 2 1 6 7 2 3 3 3 5 5 29 541,246 17,8 41 0,387 7 1 9 6 2 10 4 1 3 6 3 3 33 655,946 19,36 55 0,785 8 11 7 12 10 9 1 1 2 2 5 4 21 700,332 13,5 32 0,589 9 9 2 1 6 7 2 3 3 3 5 5 29 541,246 17,8 41 0,387 1 11 7 12 10 9 1 1 2 2 5 4 21 700,332 13,5 32 0,589 2 9 2 1 6 9 1 1 2 2 5 4 21 698,266 14,07 42 0,656 3 11 7 12 10 7 2 3 3 3 5 5 29 718,346 13,73 24 0,594 4 9 7 12 10 9 1 1 2 2 5 4 21 676,726 13,77 27 0,513 5 11 2 1 6 7 2 3 3 3 5 5 29 604,172 17,93 40 0,536 6 9 2 1 6 7 2 3 3 3 5 4 21 724,452 13,91 31 0,653 7 11 7 12 10 9 1 1 2 2 5 5 30 672,166 14,41 32 0,548 8 6 8 5 4 8 4 5 2 2 3 5 25 593,712 15,41 28 0,369 9 6 8 5 4 8 4 5 2 2 3 5 25 593,712 15,41 28 0,369 1 9 2 1 6 7 2 3 3 3 5 5 29 541,246 17,8 41 0,387 2 Next generation Next individual 1- Evaluation 2- Elitist selection parent #1 2- Elitist selection parent #2 3- Crossover (crossing point) 4- Mutation (mutant) 16
Proposed solution Running simulation and GA 17
Results obtained by coupling simulation and GA Objective function 1 Genetic algorithm results Objective function 0,9 0,8 0,7 0,6 0,5 0,4 0,3 0,2 0,1 0 Moving Average Obj. funct. min(obj. fct.) 1 14 27 40 53 66 79 92 105 118 131 144 Iterations 157 170 183 196 209 222 235 248 261 274 18
Results obtained by coupling simulation and GA Normalized criteria Minimal values of the objective function and normalized criteria 0,8 0,8 0,7 0,7 Obj. funct. 0,6 0,5 0,4 0,3 0,6 0,5 0,4 0,3 Lead T. / WIP / Setups 0,2 0,2 0,1 0,1 min(obj. fct.) 0 1 21 41 61 81 101 121 141 161 181 201 221 241 261 Iterations 0 Lead Time WIP Setup 19
Results obtained by coupling simulation and GA Best solution found by the GA 1,00 1,00 0,80 0,80 Best of WIP WIP 0,60 0,40 WIP 0,60 0,40 Best of Setup 0,20 0,20 0,00 0,00 0,20 0,40 0,60 0,80 1,00 Lead Time 0,00 0,00 0,20 0,40 0,60 0,80 1,00 Setup 1,00 0,80 0,60 Best of Lead Time Setup 0,40 0,20 0,00 0,00 0,20 0,40 0,60 0,80 1,00 Lead Time The best solution is (at the 264th iteration after 5 minutes) : IrTi(1) IrTi(2) IrTi(3) IrTi(4) IrTi(5) StAm(1) StAm(2) StAm(3) StAm(4) StAm(5) StAm(6) Rp LeadTime WIP SetUp F(x) 6 9 5 9 8 6 5 5 4 3 3 22 552 13.6 22 0,072 20
Conclusions and perspectives Conclusions GA finds a «good» solution in less than 5 minutes allowing its use during the preparation time (idle time) Simulation coupled with GA provides a decisionmaking aid to the manager. Perspectives Take into account other parameters: sequencing and orders splitting Take into account other constraints : scheduling on each workstation 21