A Bi-index Continuous-Time Mixed-Integer Linear Programming

Nov 7, 2001 - This paper presents a mixed-integer linear programming formulation for the short-term scheduling of multiproduct batch plants with paral...
1 downloads 9 Views 78KB Size
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