5960
Ind. Eng. Chem. Res. 2001, 40, 5960-5967
A Bi-index Continuous-Time Mixed-Integer Linear Programming Model for Single-Stage Batch Scheduling with Parallel Units Chi-Wai Hui* and Avaneesh Gupta Chemical Engineering Department, Hong Kong University of Science and Technology, Clear Water Bay, Hong Kong
This paper presents a mixed-integer linear programming formulation for the short-term scheduling of multiproduct batch plants with parallel nonidentical production units. The formulation efficiently determines the optimal order sequencing and order allocation to various processing units. This scheduling problem is highly combinatorial in nature especially because of the order sequence-dependent changeover constraints. To formulate this type of problem, traditionally tri-index discrete decision variables are applied to represent the order assignments. This approach requires a large number of discrete decision variables and consequently makes the model very time-consuming to solve. To overcome this problem, the proposed formulation applies bi-index discrete variables instead. This reduces the overall number of discrete decision variables to a great extent while still keeping the generality of the model. For handling largescale problems, pre-ordering heuristics were imposed to further reduce the solution time. Examples with various numbers of units and orders illustrate the effectiveness of the formulation either with or without the pre-ordering constraints. 1. Introduction Batch processing is widely practiced in the modern chemical industry. The major factors that favor batch production are volatile product demands, short product life cycles, seasonal demand for certain products, and the need to manufacture products to specific customer requirements. Typical examples of batch processing are the processing of food, fine and specialty chemicals, pharmaceuticals, and biochemicals. In the planning of batch plant operations, the specification of the demand plays an important role. This paper will focus on a shortterm scheduling problem in a volatile market. There is a vast body of literature concerning the shortterm scheduling of batch plants. Kondili et al.1 presented a general algorithm for short-term scheduling of batch plants. They introduced the concept of a state task network (STN) to represent the batch process with a variety of complexities. The novel feature of the representation was that both the individual batch operation (tasks) and the feedstocks, intermediates, and final products (states) were included explicitly as network nodes. Their formulation was based on a discretization of the time horizon into a number of time intervals of equal and fixed duration that gave rise to a mixed-integer linear programming (MILP) model. This approach incorporated different types of storage policies, sharing of raw materials and intermediates, batch splitting and mixing and recycling of materials, sequencedependent cleaning, temporary unavailability of equipment, limited availability of utilities and manpower, and a variety of objective functions. The main disadvantage of the MILP model that resulted from the above formulations was the large number of binary variables. Shah et al.2 improved the formulation of the STN, which resulted in the reduction of the integrality gap and the shortening of the solution time. * To whom correspondence should be addressed. E-mail:
[email protected].
Pantelides3 proposed a resource task network (RTN) for the scheduling of batch processes. In a RTN, “resources” include process materials as well as facilities and manpower. The essential idea of RTN is to model a mixed production facility as a collection of facilities performing a variety of tasks that consume some resources and generate others. Similar to a STN, a RTN also requires a large number of binary variables. Zhang and Sargent4 presented a continuous-time representation of the RTN with a reduced number of binary variables. Reklaitis and Mockus5 proposed a nonuniform time discretization model, in which binary variables were applied to represent the start and stop events for the various recipe tasks. They used the randomized heuristic approach6 to reduce the number of binary variables. Pinto and Grossmann7 presented a continuous-time MILP model for short-term scheduling of multistage batch production with parallel production lines. They used the concept of parallel time coordinates for units and tasks. Furthermore, Pinto and Grossmann7 proposed an alternate model in which the pre-ordering of orders was imposed explicitly by applying an alternative representation of the time slots for the units. This resulted in a significant reduction in the computational time consumed. Cerda et al.9 proposed a continuous-time MILP model for short-term scheduling of a single-stage multiproduct batch plant with parallel units. They used tri-index decision variables as well as the concept of predecessor and successor to describe the order assignment to various production units while taking into account sequence-dependent changeover constraints. To deal with large-size problems, they proposed heuristics, such as the order preordering, to reduce the number of feasible predecessors for each order. Recently, Ierapetritou and Floudas10 presented an effective continuoustime formulation for short-term scheduling of multipurpose batch plants. The novel feature of this formula-
10.1021/ie990911l CCC: $20.00 © 2001 American Chemical Society Published on Web 11/07/2001
Ind. Eng. Chem. Res., Vol. 40, No. 25, 2001 5961
tion was the decoupling of task events from unit events, which greatly reduced the number of decision variables. The major limitation of this formulation was that it required pre-ordering of all of the orders in advance, which restricted its application to specific problems. Furthermore, the model has difficulty in accounting for order sequence-dependent constraints. This paper presents a general formulation for shortterm scheduling of single-stage multiproduct batch plants with nonidentical parallel units. The proposed formulation applies three sets of bi-index variables to handle order sequence-dependent constraints either with or without imposing pre-ordering heuristics. The main advantage of this formulation compared to the other recently proposed formulations is the significant reduction in the number of binary variables and consequent shortening of the solution time, making it suitable for handling large-size industrial problems. 2. Problem Definition A fixed number of production units are available to process all customer orders. Each order involves a single product, requiring a single processing step, has a predetermined due date, and can only be processed in a subset of the units available. The production capacity of a unit depends on the order processed. The size of an order may be larger than the size of a batch, requiring several batch jobs to satisfy an order. Batch jobs of the same order are processed consecutively in the same unit. A production unit processes only one batch job at a time. The batch time of an order is fixed and production unit dependent. During the transition of production orders, time is required for the preparation of the unit for the changeover. The preparation time is sequence or production unit dependent. The objective of the scheduling is to minimize the total tardiness or schedule makespan by the assignment of orders to units while satisfying all of the above constraints. 3. Bi-index Formulation To formulate the problem of short-term scheduling of multiproduct single-stage batch plants, traditional approaches rely on the application of tri-index variables, such as Xiju, to represent the assignment of order j after order i to unit u. One example of such an approach is the MILP formulation proposed by Cerda et al.9 The proposed bi-index formulation is given in this section. Results of this new formulation will be compared with those of this tri-index model in later sections. 3.1. Definition of Sets and Parameters. The notations used for the sets and parameters in the mathematical formulation are as follows. (a) Indices i, j, k ) order u, v ) unit (b) Problem Sets I ) orders to be processed Iu) orders to be processed in unit u U ) units available Ui ) units available to process order i Uij ) units available to process a order i with successor j PRiu ) feasible predecessors of order i in unit u PRi ) feasible predecessors of order i
SUiu ) feasible successors of order i in unit u SUi ) feasible successors of order i PSi ) orders processed either just before or immediately after order i (c) Parameters NI ) number of orders NU ) number of units Qi ) size of order i (RTO)i ) release time of order i τi ) due date of order i (RTU)u ) release time of unit u (d) Order/Unit Parameters NBiu ) number of batch orders of order i processed in unit u TPiu ) processing time for a batch job of order i in unit u Liu ) total processing time of order i in unit u Ciju ) time required for the changeover from order i to j in unit u Biu ) batch size of order i processed in unit u
3.2. Problem Variables. In the formulation the binary variables used are as follows: Xij ) assignment of order j after order i Wju ) assignment of order j to unit u Siu ) first assignment of order i to unit u
In addition, the positive variables used in the formulation are the following: Tis ) starting time of order i in the unit Tif ) finish time of order i in the unit Di ) delay in the processing of order i H ) makespan
The proposed model applies the continuous representation of the time domain and three sets of bi-index decision variables, Xij, Wiu, and Siu, to represent respectively the order succession, order assignment to a unit, and first-order assignment to a unit. 3.3. Problem Constraints. (a) Assignment of Consecutive Orders in a Unit. This is the most important constraint in the formulation. The logic applied in formulating the constraint is as follows: if order i and order j are consecutive orders and order i is assigned to unit u, then order j is not processed in any other unit than unit u. This constraint ensures the assignment of
Wiu +
∑ Wjv + Xij + Xji - 2 e 0,
v∈Uj v*u
∀ i ∈ I, j ∈ PSi, u ∈ Ui (1)
consecutive orders to the same unit. (b) Each Order Containing at the Most One Unique Successor. Each order has a unique successor provided that it is not the last order to be processed in the unit.
∑
j ∈ SUi
Xij e 1,
∀i∈I
(2)
In the case that order i is the last order to be processed in the unit, the inequality holds. (c) Each Order Containing at the Most One Unique Predecessor. A unit processes exactly one
5962
Ind. Eng. Chem. Res., Vol. 40, No. 25, 2001
order. This order either is the first order to be processed in a unit or is preceded by a unique order.
∑ Xji + u∈U ∑ Siu ) 1, i∈PR i
unit
∀i∈I
(3)
i
In the case that order i is the first order in unit u, a variable Siu is equal to 1. In the case that order i is not the first order, order i is preceded by a unique order j and a variable Xji is equal to 1. (d) Each Unit Containing a Unique Starting Order. It is assumed that each unit processes at least one order. This is accomplished by assigning a unique first order to each unit.
∑Siu ) 1,
∀u∈U
(4)
i∈Iu
(e) Each Order Processed. Each order must be processed by one of the processing units. This is enforced by the constraint
∑ Wiu ) 1,
∀i∈I
(5)
u∈Ui
For each order i, the summation over the elements of Ui is equal to 1. (f) Relation between the Starting Times of the Consecutive Orders in a Unit. During the transition of production orders, time Cij is required for the preparation of the unit for the changeover. s
s
(1 - Xij)M + Tj g Ti +
Cij, ∀ i ∈ I, j ∈ SUi (6)
In the case that order j is following order i, the starting time of order j must be greater than or equal to the summation of the starting time and the processing time of order i and the changeover time from order i to order j. The overall processing time Liu of order i in unit u is obtained by multiplying the number of batches required, NBiu, with the batch processing time, TPiu. This constraint is enforced only when order j is followed by order i. If this is not the case, a large M is added to the starting time of order j to make sure that the constraint is feasible in all cases. (g) Starting Time of the First Order in the Unit. The starting time of the first order in a unit can be expressed by the following constraint: s
Ti g
∑ Wiu{Max [(RTU)u, (RTO)i]},
∀i∈I
(7)
u∈Ui
In the case that order i is assigned as the first order to unit u, the order starting time is the latest of the release time of order i and the release time of unit u. In the case that the release time of both the unit and order is zero, the constraint is not required. (h) Relation between Variables Wiu and Siu. Variable Wiu is always greater than or equal to Siu. In the case of consecutive assignments, variable Siu is equal to 0 and Wiu is equal to 1. In the case that order i is the first order in unit u, the equality holds. The mathematical form of this constraint is written as follows.
Wiu g Siu, ∀ i ∈ I, u ∈ Ui
unit
order
U1
U2
U3
U4
order
U1
U2
U3
U4
I1 I2 I3 I4 I5
100 140 -
120 90
210 170 -
130
I6 I7 I8 I9 I10
280 200 250
210 270
390 -
290 120 -
This is a crucial constraint that forces the continuous variable Wiu to a binary solution with the Xij and Siu binary variables. The demonstration of this is given in Appendix A. (i) Tardiness in the Completion of Order. Tardiness indicates the delay in the completion of the order at the due date. This is the same constraint as constraint (1.8) shown in the tri-index formulation.
Di g {Tis +
∑ WiuLiu} - τi,
∀i∈I
(9)
u∈Ui
The expression in the brackets on the right-hand side of the constraint is the completion time of order i. (j) Schedule Makespan. The makespan of a schedule is denoted by the symbol H:
H g {Tis +
∑ WiuLiu} - Max [(RTO)i,
u∈Ui
Min [(RTU)u]], ∀ i ∈ I (10) u∈Ui
∑ (WiuLiu) +
u∈Ui
Table 1. Batch Size (Biu) of the Orders in the Various Units Used in Example 1
(8)
The negative term on the right-hand side represents the latest release time of the order i and the earliest release time among the units available to order i. 3.4. Objective Function. In both the model with triindex variables and the model with bi-index variables, the objective of the scheduling is the minimization of the makespan or the total tardiness given by the following expressions:
Minimize Tardiness Min
∑i Di
(Obj.1)
Minimize Makespan Min H
(Obj.2)
4. Working Example Three working examples (examples 1-3) with various problem sizes and complexities demonstrate the capabilities and effectiveness of the bi-index model. These example problems are solved by applying both the triindex and the bi-index models. The models are formulated in GAMS11 and solved by OSL12 on a 300 MHz Pentium PC. 4.1. Example 1. Example 1 taken from Cerda et al.9 involves 10 orders and 4 units. The unit batch sizes of the orders are given in Table 1. The changeover times required for the transition between orders are provided in Table 2. The en-dash shown in these tables represents an infeasible unit assignment or order transition. Table 3 shows the processing time of the orders in the units and unit release times. The size, due date, and release time of the orders are provided in Table 4.
Ind. Eng. Chem. Res., Vol. 40, No. 25, 2001 5963 Table 2. Cleaning Time (Ciju) of Order Pairs Used in Example 1 I1 I2 I3 I4 I5 I6 I7 I8 I9 I10
I1
I2
I3
I4
I5
I6
I7
I8
I9
I10
1.0 1.4 2.1 1.5
0.15 1.8 -
1.1 0.30 1.25 0.6
0.30 0.70 0.75
0.05 0.85 0.50
0.65 0.70 0.80 -
0.3 0.90 1.65 -
0.60 0.45 -
0.85 1.6 1.2 0.7
0.4 0.2 0.5 0.65 -
Table 3. Processing Time and Unit Release Time (RTU) Used in Example 1 unit
unit
order
U1
U2
U3
U4
order
U1
U2
U3
U4
I1 I2 I3 I4 I5 I6
1.7 1.25 2.4
1.7 1.4 1.8
0.9 1.1 -
0.85 -
I7 I8 I9 I10 RTU
1.6 2.6 0.0
1.9 3.0
1.05 2.0
1.65 2.1 3.0
Table 4. Order Size (Qi), Order Due Date (τi), and Order Release Time (RTO) Used in Example 1 order
Qi
τi
(RTO)i
order
Qi
τi
(RTO)i
I1 I2 I3 I4 I5
550 850 700 900 500
10 22 25 20 28
0 5 0 6 0
I6 I7 I8 I9 I10
1050 950 850 450 650
30 17 23 30 30
2 3 0 2 6
In this example, two cases are considered, namely, (a) zero release time for all orders and units and (b) finite release time for all orders and units. Both the tri-index and the bi-index models are applied for optimizing the production schedule by minimizing either the makespan or the total tardiness. Comparisons of the number of binary and continuous variables, objective values, CPU times, nodes, and iterations required for both models are given in Table 5. Note that the number of equations of the tri-index model is less than that reported by Cerda et al.9 because of the elimination of redundant constraints. Surprisingly, both the tri-index and the bi-index models require the same number of binary variables, namely, 47. This is because the assignment of orders to units is highly restricted in this example. There is no order pair that can be processed by more than one unit. Besides the number of binary variables, the number of continuous variables and constraints of the bi-index model is higher than the tri-index model. Both models obtain the same relaxed solution and reach the same optimum for respectively the case of minimizing tardiness and makespan with and without considering order and unit release times. The difference in the solution time of the two models
was insignificant in this particular example. The Gantt charts of the optimal schedule for cases a and b are shown respectively in Figures 1 and 2. 4.2. Example 2. It is not often that the assignment of orders to units is as highly restricted as that in the previous example. To address a more general problem, the following examples allow any order to be processed by any unit in any consecutive order order. Data such as processing times, batch sizes, and changeover times are shown respectively in Tables 6-8. Due dates and order sizes are given in Table 9. In all of the coming examples, both the order and unit release times are set to zero. The computational results of parts a and b of example 2 involving 8 orders and 4 units are shown respectively in parts a and b of Table 10. The results show that the number of binary variables in the tri-index model is nearly 3 times as many as that in the bi-index model. The number of binary variables of the two models can be calculated using the following formulas:
Tri-index model: (NI × NI - NI)NU + NI × NU Bi-index model: (NI × NI - NI) + NI × NU where NI and NU are respectively the number of orders and units. In the case of minimizing tardiness, finding the global optimum is relatively easy for these small problems. In the case of example 2a,b, both the bi-index and the triindex models reach the optimum of 0 tardiness within 5 s of computing time. The bi-index model finds the solution faster than the tri-index model in both of these example problems. Finding the minimum makespan is much more difficult. In the case of example 2a, the bi-index model reaches the optimum of 14.0 within 6 s of computing time. The tri-index model reaches the optimum not within 100 000 iterations. In the case of example 2b, both models reach the optimum not within 100 000 iterations; however, a better optimum is found with the bi-index model after 100 000 iterations. The Gantt chart of the optimal schedules generated with the bi-index model are shown in Figure 2a-d. 4.3. Example 3. To shorten solution times, heuristics are often applied to reduce the number of decision variables by eliminating some unlikely combinations of order assignments. In this example, a simple heuristic is applied to force orders to be processed in a sequence of increasing due dates; i.e., an order with an earlier due date is processed first if assigned to the same unit. With this heuristic, some order assignments and sequences are eliminated and consequently a reduction in the number of decision variables and a shorter solution time is accomplished. When the solution space is reduced with the heuristic, the optimum of the original problem can, however, not be guaranteed.
Table 5. Results of Example 1 (Case a, Null Release Time; Case b, Finite Release Time) model 1a (bi-index) 1a (tri-index) 1b (bi-index) 1b (tri-index)
binary variables, cont. variables, no. of rows
objective function
relaxed solution
optimum solution
CPU time (s)
node
iteration
47, 36, 125 47, 26, 124 47, 31, 102 47, 21, 101 47, 36, 140 47, 26, 139 47, 31, 102 47, 21, 101
tardiness makespan tardiness makespan tardiness makespan tardiness makespan
0.2 16.8 0.2 16.8 0.2 19.6 0.2 19.6
0.2 23.9 0.2 23.9 1 26.25 1 26.25
0.6 5.43 .5 6.8 2.2 2.9 1.3 2.8
139 1104 104 1768 524 680 327 700
1116 8043 636 9173 3523 5160 1884 3772
5964
Ind. Eng. Chem. Res., Vol. 40, No. 25, 2001
Figure 1. (a) Optimal schedules for example 1a (minimum makespan). (b) Optimal schedules for example 1a (minimum tardiness). (c) Optimal schedules for example 1b (minimum makespan). (d) Optimal schedules for example 1b (minimum tardiness). Table 6. Batch Size (Biu) of the Orders in the Various Units Used in Examples 2 and 3 I1 I2 I3 I4 I5 I6 I7 I8 I9 I10
U1
U2
U3
U4
100 150 140 130 100 280 240 130 200 250
200 180 210 120 90 210 300 140 210 270
300 210 170 140 110 120 390 110 190 240
100 200 160 150 130 260 290 120 220 260
I11 I12 I13 I14 I15 I16 I17 I18 I19 I20
Table 7. Processing Time (TPiu) of the Orders in the Various Units Used in Examples 2 and 3
U1
U2
U3
U4
110 115 120 125 135 145 110 155 165 175
250 220 200 115 130 120 110 160 205 120
190 140 155 120 100 185 180 150 170 110
170 150 120 150 145 135 165 145 155 145
Parts a-d of example 3 involve respectively 4 units and 8, 10, 15, and 20 orders. The bi-model and tri-model solution results are compared in Table 11a-d. The Gantt chart of the optimal schedules of example 2d are shown in Figure 3a,b. When the pre-ordering heuristic is applied, the number of binary variables of the two models is further reduced by 25-40%. Both models were solved by limiting the number of iterations to 100 000. In example 3a, both of the models reach the same optimum of 15.2 in the case of minimizing the schedule makespan. This
I1 I2 I3 I4 I5 I6 I7 I8 I9 I10
U1
U2
U3
U4
1.7 1.2 1.25 1.6 1.8 2.4 1.9 2 1.6 2.6
1.2 2.1 1.3 1.7 1.4 1.8 1.5 2.1 1 1.9
2.1 0.9 1.1 2.2 0.95 1.2 1.05 2.1 2.1 1.6
1.8 0.95 1.02 2.01 0.85 1.1 1.65 2.1 1.23 2.42
I11 I12 I13 I14 I15 I16 I17 I18 I19 I20
U1
U2
U3
U4
1.3 1.4 1.75 1.8 1.9 1.7 0.65 1.2 1.6 1.0
1.2 1.6 1.9 1.6 1.48 2.5 2.5 1.45 1.85 1.2
0.5 0.85 1 1.2 1.9 1.3 1.1 1.0 0.95 1.0
1.0 0.7 1.2 1.5 1.39 1.8 1.05 1.9 1.1 1.3
solution is worse than the optimum of 14.0, as found in example 2a. In example 3b, the solutions of minimum makespan are improved for both models by the application of the heuristic in comparison with example 3a. Both models were, however, unable to reach the optimum within 100 000 iterations. The bi-index model required approximately one-third of the number of binary variables used by the tri-index model. For this reason, the performance of the bi-index model is, in general, better than the tri-index model and considerably better for the large and difficult problems.
Ind. Eng. Chem. Res., Vol. 40, No. 25, 2001 5965
Figure 2. (a) Optimal schedules for example 2a (minimum makespan). (b) Optimal schedules for example 2a (minimum tardiness). (c) Optimal schedules for example 2b (minimum makespan). (d) Optimal schedules for example 2b (minimum tardiness). Table 8. Cleaning Time (Ciju) of Order Pairs Used in Examples 2 and 3 I1 I2 I3 I4 I5 I6 I7 I8 I9 I10 I11 I12 I13 I14 I15 I16 I17 I18 I19 I20
I1
I2
I3
I4
I5
I6
I7
I8
I9
I10
I11
I12
I13
I14
I15
I16
I17
I18
I19
I20
0.00 1.80 1.00 1.20 0.10 1.40 1.20 1.30 2.10 1.50 1.20 1.30 0.30 0.50 0.60 0.70 1.10 0.40 1.00 2.00
1.00 0.00 0.15 0.02 0.20 0.80 1.80 1.40 2.00 1.20 0.95 0.70 0.55 0.70 1.20 0.25 0.50 1.80 0.70 0.80
0.15 1.10 0.00 0.10 0.30 0.30 1.30 1.50 1.25 0.60 1.10 0.80 1.30 0.80 1.10 1.05 0.80 1.60 0.80 0.60
1.10 1.30 1.20 0.00 0.30 0.70 0.90 1.40 1.35 0.75 1.20 0.60 0.50 0.90 0.20 0.90 0.60 0.50 0.90 0.15
2.00 1.40 1.50 0.05 0.00 2.00 0.85 1.20 1.45 0.50 0.90 0.40 0.60 1.45 1.00 0.50 0.30 0.45 0.65 0.60
0.65 0.90 2.10 1.60 0.70 0.00 0.80 1.30 0.80 0.40 0.30 0.50 1.30 0.80 0.40 1.30 0.90 1.50 0.85 0.90
0.30 0.20 0.30 1.20 0.90 0.90 0.00 1.65 1.60 0.90 0.90 0.10 1.55 0.50 1.20 1.80 1.10 1.20 0.80 0.55
1.20 1.20 1.80 2.00 0.60 1.20 0.45 0.00 0.80 0.60 0.80 0.20 0.70 1.00 0.30 0.50 0.50 1.00 1.00 0.45
.85 0.40 1.60 1.20 1.00 1.20 1.20 1.30 0.00 0.70 2.00 1.20 0.25 1.10 0.90 0.80 0.70 0.35 1.20 1.30
0.40 0.30 0.20 0.50 0.90 1.60 1.30 0.80 0.65 0.00 1.50 1.30 1.15 1.20 0.80 0.90 0.75 0.60 0.40 0.40
0.50 0.25 0.50 1.20 1.50 0.20 1.00 1.70 0.20 1.90 0.00 0.60 1.40 0.20 1.80 0.50 1.20 0.70 0.70 1.20
0.60 0.50 0.75 0.80 0.90 0.40 1.10 1.05 0.40 1.00 0.15 0.00 0.40 0.40 0.30 0.85 1.00 0.80 0.90 1.10
0.35 0.70 1.10 1.00 1.30 1.20 0.70 1.50 0.85 1.15 0.15 1.50 0.00 0.60 1.50 0.20 0.45 0.90 0.70 1.00
0.70 0.75 1.90 0.70 0.80 0.55 0.80 1.30 0.60 1.30 2.00 1.40 1.00 0.00 1.05 0.60 0.80 0.65 0.50 0.40
0.80 1.00 1.80 0.45 1.70 0.20 0.90 1.10 0.80 0.95 1.50 1.30 0.90 0.75 0.00 0.70 0.20 0.55 1.05 0.90
0.90 0.25 0.90 1.70 1.00 1.00 0.80 1.10 1.20 0.50 0.35 1.00 0.50 0.80 1.20 0.00 0.60 1.00 0.75 0.80
1.00 1.25 0.60 1.30 0.50 0.35 0.50 0.90 0.15 0.40 1.00 0.80 0.25 1.00 0.60 0.80 0.00 0.30 0.90 0.70
0.65 1.00 0.20 0.50 0.70 0.90 1.00 0.70 1.20 1.00 0.90 1.30 0.80 0.55 0.30 0.90 0.15 0.00 0.45 0.60
1.20 0.30 0.40 1.90 1.30 0.90 0.80 0.50 1.00 0.30 0.20 0.95 0.35 0.50 0.90 0.15 0.40 0.60 0.00 0.50
1.40 0.50 0.70 0.75 0.80 0.80 0.25 0.30 0.80 0.10 0.80 1.20 0.70 0.65 0.60 1.00 0.30 0.45 0.01 0.00
5. Conclusions This paper proposes a novel continuous-time MILP formulation for the scheduling of the single-stage parallel-unit batch production with order sequence-dependent
constraints. The model calculates the assignment of orders to processing units and the order starting and completion time while minimizing either the schedule makespan or total tardiness. To reduce the number of decision variables, the formulation applies three sets of
5966
Ind. Eng. Chem. Res., Vol. 40, No. 25, 2001
sizes demonstrate the effectiveness of the proposed model. In comparison, the bi-index model requires considerably less binary variables than the tri-index model, which overwhelms the increased number of constraints, resulting in shorter solution times. However, the proposed formulation requires more constraints and continuous variables that may offset the performance of the formulation. For large problems, a pre-ordering heuristic was used to further reduce the number of binary variables, resulting in better solutions within a shorter time. The optimum can, however, not be guaranteed, because the pre-ordering heuristic might have to eliminate an order sequence from the original problem resulting in the optimum.
Table 9. Order Size and Due Date Used in Examples 2 and 3 order
Qi
τi
order
Qi
τi
I1 I2 I3 I4 I5 I6 I7 I8 I9 I10
550 850 700 900 500 1050 950 850 450 650
10 22 25 20 28 30 17 23 30 21
I11 I12 I13 I14 I15 I16 I17 I18 I19 I20
350 650 500 700 300 850 750 650 250 450
30 28 15 29 12 19 30 27 30 24
bi-index variables, Xij, Wiu, and Siu, to represent for a order i respectively the succeeding order j at the same unit, the unit u assignment, and the first unit u assignment. Wiu variables naturally become integers at the final solution and therefore are treated as continuous variables in the model. Example problems of various
Appendix A With Xij and Siu as binary variables, the continuous variable Wiu becomes binary in the final solution. Demonstration: Assuming orders i, j, and k are three consecutive orders being processed at unit u, i and
Table 10. Results of Examples 2a (8 Orders and 4 Units) and 2b (10 Orders and 4 Units) model bi-index tri-index
bi-index tri-index
binary variables, cont. variables, no. of rows
objective function
objective value
CPU time (s)
node
iteration
88, 49, 237 88, 41, 236 256, 25, 133 256, 17, 132
Example 2a tardiness makespan tardiness makespan
0 14.0 0 14.3
0.5 6.6 3.5 103
49 767 320 7450
587 7691 4167 100000
130, 61, 355 130, 51, 354 400, 31, 185 400, 21, 184
Example 2b tardiness makespan tardiness makespan
0 18.75 0 19.3
1.8 273 7.3 220
74 6140 390 5028
1338 100000 7439 100000
Table 11. Results of Examples 3a (8 Orders and 4 Units; Heuristics Applied), 3b (10 Orders and 4 Units; Heuristics Applied), 3c (15 Orders and 4 Units; Heuristics Applied), and 3d (20 Orders and 4 Units; Heuristics Applied) Example 3a model NI ) 8, NU ) 4 bi-index tri-index
binary variables, cont. variables, no. of rows
objective function
objective value
CPU time (s)
node
iteration
60, 49, 208 60, 41, 207 144, 25, 104 144, 17, 103
tardiness makespan tardiness makespan
0 15.2 0 15.2
0.4 6.7 0.6 19.6
39 913 44 1734
416 8793 528 19 887
Example 3b model NI ) 10, NU ) 4 bi-index tri-index
binary variables, cont. variables, no. of rows
objective function
objective value
CPU time (s)
node
iteration
88, 61, 313 88, 51, 312 232, 31, 143 232, 21, 142
tardiness makespan tardiness makespan
0 18.2 0 18.8
0.6 272 0.5 102
8 7318 11 5873
199 100 000 220 100 000
Example 3c model NI ) 15, NU ) 4 bi-index tri-index
binary variables, cont. variables, no. of rows
objective function
objective value
CPU time (s)
node
iteration
172, 91, 656 172, 76, 655 508, 46, 251 508, 31, 250
tardiness makespan tardiness makespan
0.12 27.75 0 32.3
122 153 99 139
4390 3794 2015 1950
100 000 100 000 84 290 100 000
Example 3d model NI ) 20, NU ) 4 bi-index tri-index
binary variables, cont. variables, no. of rows
objective function
objective value
CPU time (s)
node
iteration
280, 121, 1125 280, 101, 1124 880, 61, 385 880, 41, 384
tardiness makespan tardiness makespan
0.19 35.45 2.2 42.3
204 211 206 184
2901 2920 1243 1336
100 000 100 000 100 000 100 000
Ind. Eng. Chem. Res., Vol. 40, No. 25, 2001 5967
Because Wiu + Xij equals to 2,
∑ Wjv ) 0
(iv)
v∈Uj v*u′
From eq 2.5,
∑ Wju ) 1,
∀j∈I
(2.5)
u∈Ui
Order j is not processed by any other unit than unit u.
∴ Wju ) 1
(v)
Because Xjk ) 1 and Wju ) 1, from eqs 2.1 and 2.5,
Wku ) 1
(vi)
Acknowledgment The authors acknowledge financial support from the Research Grant Council of Hong Kong under Grant HKUST6036/98P and HKUST6104/99P. The help from Harke A. J. van der Meulen of Yokogawa (Singapore) Engineering Ltd. in providing valuable suggestions and improving the manuscript is greatly appreciated. Literature Cited
Figure 3. (a) Optimal schedules for example 3d (minimum makespan for 20 orders and 4 units). (b) Optimal schedules for example 3d (minimum tardiness for 20 orders and 4 units).
k are the first and last orders respectively at the unit. Then,
Siu ) 1
(i)
Xij ) 1
(ii)
Xjk ) 1
(iii)
From eqs 2.5 and 2.8,
∑ Wiu ) 1,
∀i∈I
(2.5)
u∈Ui
Wiu g Siu, ∀ i ∈ I, u ∈ Ui
(2.8)
∴Wiu ) 1
(iii)
From eq 2.1,
Wiu +
∑ Wjv + Xij + Xji - 2 e 0,
v∈Uj v*u
∀ i ∈ I, j ∈ PSi, u ∈ Ui (2.1)
(1) Kondili, E.; Pantelides, C. C.; Sargent, R. W. H. A General Algorithm for Short-Term Scheduling of Batch Operaionss1. MILP formulation. Comput. Chem. Eng. 1993, 17, 211-227. (2) Shah, N.; Pantelides, C. C.; Sargent, R. W. H. A General Algorithm for Short-Term Scheduling of Batch OperationssII. Computational issues. Comput. Chem. Eng. 1993, 17, 229-244. (3) Pantelides, C. C. Unified Frameworks for Optimal Process Planning and Scheduling. Proceedings Second Conference on Foundations of Computers Aided Operations; CACHE Publications: Austin, TX, 1994; pp 253-274. (4) Zhang, X.; Sargent, R. W. H. The Optimal Operation of Mixed Production FacilitiessA General Formulation and Some Approaches for the Solution. Comput. Chem. Eng. 1996, 20, 897904. (5) Reklaitis, G. V.; Mokus, L. Mathematical Programming Formulation for Scheduling of Batch Operations Based on Non Uniform Time Discretization. Acta Chim. Slov. 1995, 42, 81-86. (6) Mockus, L.; Reklaitis, G. V. Continuous Time Presentation in Batch/Semicontinuous Process Scheduling: Randomized Heuristic Approach. Comput. Chem. Eng. 1996, 20, S1173-S1177. (7) Pinto, J. M.; Grossmann, I. E. A Continuous Time Mixed Integer Linear Programming Model for Short-Term Scheduling of Multistage Batch Plants. Ind. Eng. Chem. Res. 1995, 34, 30373051. (8) Pinto, J. M.; Grossmann, I. E. A Continuous Time MILP Model for Short-Term Scheduling of Batch Plants with Preordering Constraints. Comput. Chem. Eng. 1996, 20, S1197S1202. (9) Cerda, J.; Henning, P.; Grossmann, I. E. A Mixed Integer Linear Programming Model for Short-Term Scheduling of SingleStage Multiproduct Batch Plants with Parallel Lines. Ind. Eng. Chem. Res. 1997, 36, 1695-1707. (10) Ierapetritou, M. G.; Floudas, C. A Effective Continuous Time Formulation for Short-Term Scheduling. 1. Multipurpose Batch Processes. Ind. Eng. Chem. Res. 1998, 37, 4341-4359. (11) Brooke, A.; Kendrick, D.; Meeraus, A. GAMSsA User’s Guide, Release 2.25; The Scientific Press: San Francisco, CA, 1992. (12) IBM. OSL (Optimization Subroutine Library) Guide and Reference, Release 2; Kingston, NY, 1991.
Received for review December 20, 1999 Accepted July 3, 2001 IE990911L