A batch sizing and scheduling problem... ...on parallel machines with different speeds, maintenance operations, setup times and energy costs. IESM, 24 octobre 2015, Seville, Spain M. Nattaf1, C. Artigues1, P. Lopez1, R. Medina2, V. Parada3 and L. Pradenas2 LAAS,CNRS – Toulouse, France Universidad de Concepción, Chile 3 Universidad de Santiago, Chile 1 2 Outline ● Problem description ● A simple example ● Mixed Integer Linear Program ● A simplified model ● A matheuristic ● Experimental results 2 Problem Definition ● ● Chilean steelball factory where metal bars are turned into balls with different diameters. Each ball type has a demand that should be fullfilled before the common deadline. 3 Line 1 Large size Line 2 Line 3 Medium size Small size Production Lines ● 3 Production lines producing different ball types. ● Each line has a different speed for each diameter. 4 Batch sizing D1 Line 1 Line 2 Line 3 ● D2 D4 D3 D5 D3 D2 D5 D1 D4 Each demand can be divided in batches and scheduled on different production lines (possibly at the same time, e.g. D2). 5 Setup times ● Sequence dependent setup times : D4 Line 2 0 2 D4 Line 2 0 ● S34 2 D3 S32 3 5 S42 D2 4 D2 7 D5 9 10 S23 6 S25 D3 8 D1 13 14 S35 10 S51 D5 11 S51 14 15 16 D1 17 Exchanging D2 and D3 increases the production end time. 6 Maintenance Operation ● One maintenance operation has to be scheduled on each machine, it can not be splitted. ● No setup times between batches and maintenance. ● Maintenance are considered as batch : Maintenance Duration Authorized machine Speed Number of batch Setup time Batch Demand Only 1 Equal to 1 1 authorized Equal to 0 7 Electrical cost D1 Line 1 Line 2 Line 3 D2 D4 D3 D3 D2 D5 D5 D1 D4 Peak 1 Peak 2 Deadline ● Minimize maximum demand during peak hour. ● Minimize tardiness and then total consumption. 8 Electrical cost D1 Line 1 Line 2 Line 3 D4 D2 M2 D3 D5 M1 D3 D2 D5 M3 Peak 1 D1 D4 Peak 2 Deadline ● Minimize maximum demand during peak hour. ● Minimize tardiness and then total consumption. 9 Literature review ● Batch sizing and scheduling problem in a Chilean steelball factory with: – ● Unauthorized machines, non-uniform parallel machines, setup times, maintenance operation and energy costs minimization. Literature : – [Xiao et al., 2013]: no machine speed consideration – [Xing and Zhang, 2000] : no setup time – [Beraldi et al., 2008]: no energy related objective – [German et al., 2015] : no batch sizing 10 A simple example ● Three ball types on two lines ● D₁=10, D₂=12 and D₃=6 ● M₁=2 and M₂=1 D1 Line 1 Line 2 For D₁, the prod. on line 1 is 4 and 6 on line 2 M1 D1 0 ● D2 M2 2 D3 3 Peak 1 4 6 Common deadline T=6 11 A simple example ● Machine consumption : 10 MW ● Total consumption: 90 MW ● – On line 1 : 2.10+2.10 = 40 MW – On line 2 : 2.10+3.10 = 50 MW Maximum demand on peak hour: 10 MW D1 Line 1 Line 2 M1 D1 0 D2 M2 2 D3 3 Peak 1 4 6 Common deadline T=6 12 Motivation of the MILP ● MILP vs heuristic – ● Time-indexed formulation vs event-based – ● Propose a correct formulation and then design a matheuristic Large planning horizon and possible non integer values Sequencing and affectation variables vs event variables – Difficult to model consumption peak 13 Mixed Integer Linear Formulation ● Event-based formulation : scheduling variables – corresponds to the time of event e. – is equal to 1 iff batch on line k and 0 otherwise. starts at event e – is equal to 1 iff batch on line k and 0 otherwise. ends at event e M1 L1 L2 M2 14 Mixed Integer Linear Formulation ● Event-based formulation : production and consumption variables – is the production of batch – is the electrical consumption of batch . M1 L1 L2 . M2 15 Mixed Integer Linear Formulation ● Event-based formulation : peak variables – is equal to 1 iff machine k is on at event e. is equal to 1 iff event e occurs before the end of – peak hour h. ● – is equal to 1 iff event e+1 occurs before the beginning of peak hour h. – is equal to 1 iff event e is in a peak hour on machine k. Maximum demand computation : 16 Some constraints of the formulation ● Setup time constraints : with : – – – ● the set of events the set of machine the set of batches To model the setup times, we need constraints. 17 Disadvantages of the formulation ● The model is VERY big. For, 5 ball types, 2 batches, 3 lines and 2 peak hours the model has : ● – More than 150.000 constraints – More than 1400 variables (more or less 1240 binary variables) We need a simpler model. 18 A simplified model ● Idea 1: remove all peak variables and constraints. – ● Idea 2: replacing the global events events . – ● minimization of the total consumption and tardiness only by local machine Reduces the number of constraints used to model setup time, task duration… For the same instances, only 1430 constraints and 630 variables (300 binary). 19 A Matheuritic ● Step 1 : Uses a simple heuristic to obtain a feasible solution. – ● ● 1 batch, schedule the next batch on the least loaded machine Step 2 : Gives this solution to the simplified model to optimize consumption. Step 3 : Uses this solution as a basis for the « global » model to optimize both consumption and maximum peak. 20 Experimental Results ● ● ● Instance of 10 different ball types with number of authorized batches of 2, 3 and 4 per ball type. Solve with CPLEX 12.6 Objective : minimization of tardiness and total consumption (simple model, TL: 50s) t.w. maximum demand during peak hour (exact model, TL : 3000s). 21 Experimental Results ● ● ● Instance of 10 different ball types with number of authorized batches of 2, 3 and 4 per ball type. Solve with CPLEX 12.6 Objective : minimization of tardiness and total consumption (simple model, TL: 50s) t.w. maximum demand during peak hour (exact model, TL : 3000s). 22 Conclusion and perspectives ● Two models introduced. – ● ● One exact and one optimizing only a part of the objective A matheuristic was presented. – Using the simplifed model together with an exact model – Obtain energy consumption and tardiness reduction on real-life instance Perspectives : – Column generation model – Better heuristics to find the first solution – Exact method based on CP or on a dedicated Branch-andBound 23
© Copyright 2026 Paperzz