MILP Models for Scheduling of the Batch Annealing Process: The Deterministic Case

Size: px
Start display at page:

Download "MILP Models for Scheduling of the Batch Annealing Process: The Deterministic Case"

Transcription

1 MILP Models for Scheduling of the Batch Annealing Process: The Deterministic Case MACC, Dept. of Chem. Eng. McMaster University Sungdeuk Moon and Andrew N. Hrymak

2 Outline of Presentation Introduction Batch Annealing Process Consideration of the Process Minimize the Makespan of the Process Formulation of MILP scheduling model Solution Methods Examples of the Batch Annealing Process Conclusions 1

3 Introduction Scheduling of Batch Annealing Process Heat-treatment step in the steel industry Equipment is shared between certain bases. Crane, Covers, Furnaces, and Coolers Scheduling objective to maximize utilization of the shared equipment To decide a processing sequence with minimum total processing time (makespan) 2

4 In this study The original batch annealing process is modified as a general scheduling problem. Two MILP models for scheduling of the batch annealing process are formulated. Solution methods are developed. Definition of two groups of the equipment Definition of time windows in the time horizon of the crane For large size problems, optimal or near-optimal scheduling solutions can be obtained. 3

5 Batch Annealing Process Annealing An important step for heat treatment Effects remove stresses soften steel by altering mechanical properties refine the grain structure produce a definite microstructure 4

6 Utilities used in the process Overhead crane - to move coils and all utilities Several tools Hook to move a furnace or a cooler Coil tongs to move a coil Magnet to move a convector plate Hood lifter to move a cover Steel cover - to prevent oxidation and increase heat transfer Furnace - to heat the covered coil stack Cooler The steel coils, cover, furnace, and cooler are placed on a Base 5

7 Job Orders Bases Equipment Covers N S To Other Process Coil Stacks... Convector Plates 5 6 N -1 B... N B Furnaces 1,..., N F Coolers 1,..., N C Figure 1. Processing flow of a batch annealing process. 6

8 Overhead Crane Coil Tongs Hook Hood Lifter Furnace Coil Cover Empty Base Loading Coils and Plates Loading Cover Adding Inert Gas Loading Furnace Heating and Soaking Unloading Furnace Cooler Convector Plate Magnet Natural Cooling Loading Cooler Forced Cooling Unloading Cooler Unloading Cover Unloading Coils and Plates Empty Base Figure 2. General cycle of batch annealing operations. 7

9 The operating recipe in the batch annealing process 20 stages for a complete annealing cycle for a three-coil stack Time Base Adding Inert Gas Natural Cooling Loading or Unloading of : Coil : Plate : Cover : Furnace : Cooler Status of : Heating and Soaking : Cooling Figure 3. Gantt chart of the processing recipe to complete a batch annealing cycle in which a stack of three coils is annealed. 8

10 Consideration of the Process Example two bases, two covers, a crane, a furnace, and a cooler 9

11 It is difficult to consider status of all bases and equipment (the crane, the furnace, the cooler) Transform the real operations into a suitable scheduling problem Bases (fixed) as Materials (movable) Equipment as Processing Units (fixed) Crane Furnace Cooler Time Adding Inert Gas Natural Cooling Loading or Unloading of : Coil : Plate : Cover : Furnace : Cooler Status of : Heating and Soaking : Cooling : Changing Crane Tool 10

12 Modified process The same as the original batch annealing process Characteristics Re-entered flow (re-use the crane) Sequence-dependent setup time (crane tools must be changed with depending on the next stage to be operated) Transfer time (during the movement of the furnace and the cooler) Easy to understand and analyze all process steps Easy to formulate a mathematical model 11

13 Minimize the Makespan Idle time in each unit Waiting time in each base Need an effective scheduling algorithm to get the minimum makespan 12

14 Formulation of An MILP Scheduling Model (MILP-1) Why do we use an MILP model? Which stage must be operated now? LP cannot treat a production sequence Ts i Te 0 j Ts j Te i 0 Two equations must be simultaneously considered 13

15 Introduce binary variable X ij 1 if stage j is followed by stage i X ij = 0 otherwise If X ij = 1 and others zero Ts j Te i 0 Express as an MINLP eq. Not guarantee the optimal Express as an MILP eq. ( Ts Te ) X Ts j j Te i i ij 0 U ( 1 X ij ) 14

16 Define time slots in each unit To get a suitable production sequence in each unit Two coordinates are defined. (i, l) coordinate - stage l of base i (j, k) coordinate - time slot k in unit j The idea is very simple. The sequence of the time slots in each unit Two heating stages of bases in a furnace (i, l) coordinate Base 1 Base (1, 3) (2, 3) Furnace (j, k) coordinate (F, 1) (F, 2) 15

17 Define binary variable X iljk To assign a stage l of base i to a time slot k in the corresponding unit j X iljk 1 if stage l of base i is operated at time slot k in unit j = 0 otherwise 16

18 Definition of start and end times Te = Ts + il il P il i I, l Timing between stages for each base L i Ts 0 or A( i, il+ 1 Teil l ) i I, l L i 17

19 Timing between stages of bases in each UNIT i' l' Teil U ( 2 X iljk X i' l ' jk + 1) SU ll' Ts + i, j,, i' I, l Lij, l' Li ' j { crane} k K { k } j j Slot assignment j k K J il j i I l L i X iljk X iljk = 1 = 1 i I, l j J, k L i il K j 18

20 Ts Movement of the furnace or cooler the furnace (l = 3, j = F) for each base Te U ( 2 X 3F X '3F 1) i' 2 i4 i k i k + i, i' I, k K F 19

21 Consider several furnaces and coolers modify the slot assignment constraint i I l L i X iljk 1 j J, k il K j Add an assignment for earlier slot i I l L i X iljk i' I l' L i ' X i' l' jk + 1 j J, { crane} k K { } j k j 20

22 The case of the operations with two furnace 4 operating configurations 2 time slots for each furnace 21

23 The Proposed MILP Model (MILP-1) The objective function: minimize the makespan min MS Te il i I, l = Last subject to j k K J il j i I l L il i X iljk X iljk = 1 1 i I, l j J, k L i il K j = Tsil Pil i I, l Li Te + Ts i I il+1 l L i X Te iljk il A il Ts + Ts i' l ' Teil U ( 2 X iljk X i' l ' jk + 1) SU ll' Te i' I l' L i, j, i ', i' I, l Lij, l' Li ' j U ( 2 X iljk X i' l' jk 1) i', l' 1 i, l+ 1 + X { } i I, l L i l i { crane} k K { k j } { heating, cooling}, j J { crane} k K j { k j } i' l' jk + 1 j J { crane}, k K j { k j} i, i' I, i i', l, l', j 22

24 Solution Methods The proposed MILP-1 model slow for small size problem (2 bases and 5 units). Solution algorithm Divide the crane and equipment into two groups The first group - the crane. The second group - all equipment except the crane. Solve the scheduling problem of the second group By a new MILP (MILP-2) model Divide the whole time horizon of the crane into several time windows according to the scheduling solution for the second group Solve the problem of each time window By the proposed MILP-1 model 23

25 Definition of two groups Definition of time-windows in the crane 1 2 Time window Group 1 Crane Solve by MILP-1 Model Group 2 Furnace Cooler 2 Solve by MILP-2 Model 24

26 Formulation of the MILP-2 Model Obtain sequences in each furnace and cooler 4 possible paths for heating and cooling Two furnaces and two coolers Furnace 1 Furnace 2 Cooler 1 Cooler 2 (a) Path 1 (b) Path 2 Furnace 1 Furnace 2 Cooler 1 Cooler 2 (c) Path 3 (d) Path 4 Define a new binary variable Y ikp 1 if base i is assigned to slot k which has path p = 0 otherwise 25

27 The Objective Function: to minimize the makespan min MS TUe k, j k K, j J subject to k K p P k Y ikp =1 i I i I p P k Y ikp =1 k K TUe k, j TUsk, j = Yikp Pij k K, j J i I p P k TUs k, j i I p P k Y ikp A i, j k K, j J F TUs k j' TUek, j U Yikp + Yikp Ai, i i k K, j J, j' J, p P, 1 j F C k + 1, j k, j TUs k TUe 0 k K, {} k j J 26

28 Solution Method for solving MILP1 problems Pre-Assignment of each slot k to a specific path p Furnace 1 Furnace 2 Cooler 1 Cooler 2 Slot k=1 k=2 k=3 k=4 k=5 k=6 Path p=1 p=4 p=2 p=3 p=1 p=4 The optimal or near-optimal solutions can be obtained. 27

29 28 Start Define space of the batch annealing problem Define production paths in furnaces and coolers Pre-ordering paths to event slots, such as 1'-2'-1'-2'-... or 1'-1'-...-2'-2'-... Solve MILP-2 for these problems Decompose overall time horizon of the crane into smaller sub-horizons (Intervals) (H -> h(n), n = 1) Solve the proposed MILP model (MILP-1) for an interval h(n) of the crane (n = n+1) Select the best integer solution among the problems NO n = N? YES Interpret the solution based on the balance of the interval expansion End NO Terminal condition? YES

30 Examples of the Batch Annealing Process Processing and Setup times are deterministic. Crane has two hooks A coil and a plate can be moved simultaneously. To reduce the number of total operating stages The process consists of a crane, 2-3 furnaces, 2-3 coolers, 12 bases. 29

31 Setup time l l Coil and Plate Cover Furnace Cooler Coil and Plate Cover Furnace Cooler Processing time Loading or Unloading for Coil and Plate Bases Gas Addition Heating and Soaking Natural Cooling Forced Cooling A B C D E F G H I J K L *The loading or unloading times for equipment can be applicable to all bases as following: Covers - 0.3, Furnaces - 0.4, Coolers

32 Comparison with a similar model (Pinto and Grossman, 1995) - two bases Model no. of eq. No. of var. Discrete var. Iterations CPU time (sec)* Makespan Proposed , Pinto ,249 5, * Seconds on IBM RS/6000C with GAMS/OSL. Computational effort was very small. Pinto s model could not obtain the optimal solution within the computational limit, 5000 CPU seconds. The proposed model is quite efficient 31

33 Example 1; 12 bases, 2 furnaces and 2 coolers Makespan = hrs. Crane (Unit 1) Furnace (Unit 2) Furnace (Unit 3) Cooler (Unit 4) Cooler (Unit 5) Base A Base B Base C Base D Base E Base F Base G Base H Base I Base J Base K Makespan = Base L 32

34 Example 2; 12 bases, 3 furnaces and 3 coolers Makespan = hrs. Crane (Unit 1) Furnace (Unit 2) Furnace (Unit 3) Furnace (Unit 4) Cooler (Unit 5) Cooler (Unit 6) Cooler (Unit 7) Base A Base B Base C Base D Base E Base F Base G Base H Base I Base J Base K Makespan = Base L 33

35 Stochastic Effects On-line scheduling (Ishii and Muraki, 1997)! Process Data! Control System! Scheduler! Control Parameters! Process! On-line Data 34

36 Stochastic Effects - Rolling Horizon Reactive scheduling, rolling horizon approach (Rodrigues et al, 1996; Cott and Macchieto, 1989) Perturbation in process steps requiring rescheduling Retain a subset of operations, recalculate the rest of the schedule. Shift start times. Look ahead to maintain feasibility - feedforward to predict batch times Problem of infeasibilities if horizon not long enough 35

37 Stochastic Effects - Other approaches Global optimization (Harding and Floudas, 1997) Multiple simulation replicates to develop robust schedules (Honkomp, Mockus, Reclaitis, 1997) Rule-based reactive rescheduling (Kim and Lee, 1997) Stochastic optimization with probabilistic uncertainties (Orcun et al, 1996) 36

38 Conclusions We reviewed the characteristics of the batch annealing process. To model the process, each base is considered as a material and utilities (crane, furnaces, and coolers) as the process units. The changing time for the crane tools is considered as a setup time 37

39 MILP models for the scheduling of the batch annealing process are developed. The performance of the proposed model is better than it of the Pinto s model. Good solution methods are proposed to obtain a feasible solution as fast as possible. To develop a scheduling model for the batch annealing process of the stochastic case, based on the knowledge obtained from the study of the deterministic case 38

40 Comparison of Makespan and CPU times 2 furnaces and 2 coolers Time limitation of the CPU usage Makespan Makespan CPU Time Model w/o solution methods Model with solution methods CPU time (seconds) No.of Bases 39

41 Comparison of Makespan and CPU times 3 furnaces and 3 coolers 240 Time limitation of the CPU usage Makespan Makespan CPU Time CPU time (seconds) 140 Model w/o solution methods Model with solution methods No.of Bases 40