Continuous-Time Modeling for Short-Term ... - ACS Publications

An efficient short-term scheduling, mixed integer programming model for a ... models for the pipeless plants with discrete time representation requiri...
0 downloads 0 Views 136KB Size
3652

Ind. Eng. Chem. Res. 1998, 37, 3652-3659

Continuous-Time Modeling for Short-Term Scheduling of Multipurpose Pipeless Plants Jin-Kwang Bok and Sunwon Park* Department of Chemical Engineering, KAIST, Taejon 305-701, Korea

An efficient short-term scheduling, mixed integer programming model for a multipurpose pipeless plant over a continuous-time domain is addressed. In contrast to the conventional scheduling models for the pipeless plants with discrete time representation requiring a large number of 0-1 variables, the continuous-time model where each product has deterministic processing stage blocks with duration for unit allocation and each processing unit has a corresponding time slot is built. Jobshop features such as re-entrant production flows and diverse processing directions are effectively modeled by identifying the stage number of products in an invariant way regardless of processing sequence or recipe. The performances of the model and the solution method are illustrated through two examples. Introduction Chemical industries all over the world are faced with the challenge of effectively responding to regulatory changes in markets. These changes are becoming more demanding as the 1990s unfold. Stricter environmental rules, product specifications, and narrow profit margins are forcing many companies to seek better ways to run their operations in order to remain more competitive. In addition, these considerations are applied to new facilities being planned and extensively affect the existing plants to be revamped for operating flexibility with minimization of the environmental harm. That is why the pipeless plants have been focused on as a major innovator in chemical industries. Niwa1,2 evaluated the pipeless plants in terms of operation and investment cost, flexible operation, and operation time. He also emphasized less wasteful production and cleaner working conditions, which are more important than marketshare or profit for the manufacturers who already have achieved worldwide competitiveness. Regarded as the most important task that decides the success of a pipeless plant, the short-term scheduling has been intensively and widely studied. Pantelides et al.3 provided a multiperiod mixed-integer programming model using a systematic and rigorous approach to the optimal short-term scheduling of pipeless plants. They presented a scheduling model that maximizes the total profit during a given scheduling horizon manipulating the finite resources in a discrete time domain. However, computational complication was caused by describing the flexibility of units, especially moving vessels transported by AGV (automated guided vehicles). It is because the time representation was discrete that events are assumed to occur at the boundaries of uniform time slots. A large number of binary variables are inevitably used to represent the events at the boundaries of every time interval. In addition to the scheduling issue, equipment selection and configuration of plants were outlined as a framework for operation strategy.4,5 Liu and McGreavy4

presented a prototype framework for the operation of a pipeless batch plant, and Realff et al.5 offered a mixedinteger programming model simultaneously integrating design, layout, and scheduling of pipeless plants. However, the discrete time representation is still computationally expensive. To overcome such a severe shortcoming of the discrete time domain, continuous-time representation has been widely used in scheduling problems.6,7 Pinto6 reviewed major literature on trends of time representation and proposed a novel twocoordinate representation for multistage batch processes. With the incorporation of several solution strategies such as the decomposition algorithm and preordering constraints, the efficiency was illustrated through a large-scale problem. Mockus and Reklaitis7 proposed a continuous-time representation in batch scheduling, especially using a randomized heuristic approach based on the Bayesian approach. The common motive that the continuous-time representation has been pursuing is to build models capable of handling the real-scale scheduling problems. The objective of this work is to develop a continuoustime mixed-integer linear programming (MILP) optimization model for the short-term scheduling of pipeless batch plants. The continuous-time domain model emphasizes representation of the various directions of production including re-entrant flows in the production line compared to the previous literature. The main effort is focused on reducing the computational difficulty previous works3,5 have encountered. This paper is organized as follows. First, a theory for continuous-time domain representation is presented. The two-coordinate system proposed by Pinto6 is briefly described and modified, and how we can represent the re-entrant flow in a stage-based coordinate is presented. Next, the short-term scheduling for multipurpose pipeless plants where products have optional units in a stage is modeled as an MILP problem. Finally, numerical results of example problems demonstrate the effectiveness of the proposed model. Two-Coordinate Representation

* To whom correspondence should be addressed. Phone: 8242-869-3920. Fax: 82-42-869-3910. E-mail: swpark@ convex.kaist.ac.kr.

Figure 1 shows one of the typical layouts of the multistage pipeless plant with parallel units. The

S0888-5885(98)00070-0 CCC: $15.00 © 1998 American Chemical Society Published on Web 07/23/1998

Ind. Eng. Chem. Res., Vol. 37, No. 9, 1998 3653

Figure 1. Layout of a pipeless plant.

vehicle to which a vessel is attached moves on the rail and drops by each station to carry out unit operations. During a scheduling horizon that is specified or not, multiple products should be produced with minimal earliness for due date or minimal makespan. A moving vessel that goes through a specified production should be washed in a cleaning station for the next production job. Each product may have its own processing sequence depending on individual recipe. The main idea in this model is the use of the continuous-time domain for scheduling of pipeless plants. The scheduling formulation presented here is based on that of Pinto,6 i.e., two-coordinates for the product and unit, respectively. Pinto6 assumed that the products have similar recipes with the same processing sequence and go through one unit of every stage only once. He did not consider re-entrant flows that indicate the production line visiting unit repeatedly. However, reentrant flows and diverse processing directions should be considered to represent the time domain for shortterm scheduling of pipeless plants. Therefore, we need to introduce a modified concept of the two-coordinate representation where stage numbering in a product coordinate is not continuously increasing due to the differences in production flow for each product. From the viewpoint of a product, each processing of it on a unit can be described as a stage block with duration that equals the processing time, transferring time, and setup time. Therefore, the series of unit operations the products go through can be described as the same number of stage blocks in a product coordinate. Meanwhile, each processing of the product can be viewed as a time slot with duration in a unit coordinate. Thus, each product has the deterministic processing stage blocks defined as time intervals for unit allocation with unknown duration, and each processing unit has the corresponding time slot as shown in Figure 2. Figure 2 is the motivating example of scheduling results for the pipeless plant depicted in Figure 1. Suppose three products are processed through eight units that comprise seven production stages {charging A in u1, charging B in u2, blending in u3 or u4, reaction in u5 or u6, blending (re-entrant flow) in u3 or u4, discharging in u7, and cleaning in u8}. Each product has an individual production recipe: products 1-3 go through {charging A (1)-charging B (2)-blending (3)-reactionblending (reentrant) (5)-discharging (6)-cleaning (7)}, {charging B (2)-blending (3)-reaction-blending (reentrant) (5)-discharging (6)-cleaning (7)}, and {charg-

Figure 2. Two-coordinate time representation.

ing A (1)-blending (3)-reaction-discharging (6)cleaning (7)}, respectively. The number within parentheses represents the stage number that is represented in each stage block in Figure 2. Note that the two gray stages with number 5 in a solid circle are reentrant flows where the same units as in stage 3 are involved and the arrow stands for matching the stages to time slots in Figure 2. Each stage block is composed of a setup time and a processing time. Even though the units used in stage 5 are identical to those used in stage 3 from the product point of view, we assign different stage numbers to the blocks in the circle for discrimination. While the coordinate presented by Pinto6 assigns stage numbers that uniformly increase by one according to the sequence of production, this coordinate gives the invariant numbers regardless of processing sequences. As the product coordinate shows, products 1-3 are given stage numbers {1-2-3-4-5-6-7}, {2-3-4-5-6-7}, and {1-3-4-6-7}, respectively. The reason we use this coordinate is to overcome the shortcoming caused by the assumption that all the products follow the same production route.6 Decision of the processing sequence means matching the stage block of each product to the time slot of a unit by defining a binary variable Wijkl such that the objective function is minimized. When stage l of product i in a product coordinate is assigned to slot k of unit j in a unit coordinate, Wijkl equals 1. Every stage block of a product must be assigned to one time slot of a unit, not vice versa. The rationale is that the number of stages of each product can be exactly known in contrast to the number of time slots because of the units not participating in the particular processing in a parallel multistage unit system. Computational expense can be reduced by removing superfluous time slots not matching to any stage of a product; therefore, it is recommended that a certain number of time slots be Kj determined in advance to avoid overestimating the number of time slots postulated for each unit. Mathematical Formulation In this section, the mathematical mixed-integer programming model for pipeless scheduling based on the

3654 Ind. Eng. Chem. Res., Vol. 37, No. 9, 1998

stage-based coordinate is presented. The formulation is similar to that proposed by Pinto,6 but it is capable of describing the flexibility of moving vessels and diverse flows including re-entrant flows. The following are the main assumptions the proposed model is based on: A1. The process layout for processing units is fixed. A2. The number of moving vessels is fixed. A4. Due dates, processing times, the transferring time between the units, and the setup time are deterministic. A5. The task sequence for each product is deterministic. A6. A vehicle is attached to a vessel to compose a moving vessel. Thus, a vessel changes over the product after completing the previous job of a product. A7. All the transferable vessels play a role of the same function. Every product has the same priority for any moving vessel. A8. There in no preemption. A9. There are no resource constraints and no failure in units. A10. All vessels have the same capacity. A11. Sufficient raw materials are always available. A12. One batch is required of each product. Traditional approaches have optimized the utilization of vehicles in the aspect of the total cost for processing. However, the proposed continuous-time model is mainly for developing an efficient scheduling model where cost is not considered. So we target the problem with a fixed number of vehicles (A1). The material balance for each product is not needed due to A11. The following are the subscripts in the proposed formulation:

L ) set of stages Li ) set of stages involved in product i Lj ) set of stages corresponding to unit j M ) number of units MS ) makespan N ) number of products pi ) penalty against violating the due date di Suj ) setup time in unit j Tijl ) processing time of stage l of product i in unit j Teiil ) start time for product i in stage l Tejjk ) start time in unit j during time slot k Tsiil ) start time for product i in stage l Tsjjk ) start time in unit j during time slot k Trijl ) transferring time of product i to unit j which corresponds to stage l U ) upper bound on start times V ) number of moving vessels Wijkl ) binary variable that assigns stage l of product i to time slot k of unit j

di ) due date of product i

yjk ) slack variable denoting time slot k of unit j not matching any stage block

i, i* ) product

 ) very small number

I ) set of products Ij ) set of products which can be processed in unit j

The model for the short-term scheduling of pipeless batch plants consists of the following constraints:

j ) unit

(a) assignment constraints

J ) set of units

∑ ∑ Wijkl ) 1

Ji ) set of units which can process product i Jl ) set of units which belongs to stage l

∀ i, l ∈ Li

(1)

j∈(Ji∩Jl) k∈Kj

∑ ∑ i∈I j

Wijkl + yjk ) 1

∀ j, k ∈ Kj

(2)

I∈(Li∩Lj)

k ) time slot for equipment kj ) last time slot defined for unit j K ) set of time slots

(b) calculation of end times Tejjk ) Tsjjk +

∑ ∑ i∈I j

I∈(Li∩Lj)

Kj ) set of time slots for unit j l, l* ) processing stage for a product li ) last stage for product i

Teiil ) Tsiil +

Wijkl(Tijl + Trijl + Suj) ∀ j, k ∈ Kj (3a)

∑ ∑ Wijkl(Tijl + Trijl + Suj)

j∈(Ji∩Jl) k∈Kj

∀ i, l ∈ Li (3b)

Ind. Eng. Chem. Res., Vol. 37, No. 9, 1998 3655

(1) minimize the total processing time

(c) time matching between a product and a unit -U(1 - Wijkl) e Tsiil - Tsjjk

∀ j, k ∈ Kj ∀i, l ∈ Li

minimize makespan

(4a) U(1 - Wijkl) g Tsiil - Tsjjk

∀i, l ∈ Li ∀j, k ∈ Kj (4b)

where

U)(

i

subject to constraints (1)-(5) and (7)-(12) (2) produce orders as close as possible to their deadline

∑ ∑ max {Tijl} with objective [MILP1] i∈I j∈J I∈(L ∩L ) i

(MILP1)

MS g Teiili

Minimize earliness ) due date finishing time for product

j

)

max {di} with objective [MILP2]

∑i pi[di - Teiil ] i

i∈I

(MILP2)

subject to (d) sequence of stages and s lots ∀ j, k ∈ Kj - {kj}

(5a)

∀ i, l ∈ Li, |l| < |l*|

(5b)

Tejjk e Tsjj,k+1 Teiil e Tsiil

constraints (1)-(12) Equations 1-6 are so similar to the model presented by Pinto6 that a detailed description for those is omitted in this paper. Equation 2 can be replaced with eq 2a if we can postulate the number of time slots exactly.

∑ ∑ i∈I j

(e) due date constraint ∀i

(6)

∀ j, k ∈ Kj - {kj}

(7a)

Teiili e di (f) assignment of earlier slots yjk e yj,k+1

∑ ∑

Wi*j,k+1,l* e

i*∈Ij I*∈(Li*∩Lj)

∑ ∑ i∈I j

Wijkl

I∈(Li*∩Lj)

∀ j, k ∈ Kj - {kj} (7b) (g) constraint on number of moving vessels TejMk e Tsj1,k+1

(∀ k ∈ Kj) ∧ (|k + V| e |kj|)

(8)

where |‚| is the cardinality operator. Note that eq 8 is only valid when the number of moving vessels is less than that of products.

(a) binary and continuous specifications Wijkl ) 0 or 1

∀ i, j ∈ (Ji ∩ Jl), k ∈ Kj, l ∈ Li

(9)

∀ j, k ∈ Kj

(10)

yjk g 0 Tsjjk, Tejjk g 0

∀ j, k ∈ Kj

(11)

Tsid, Teiil g 0

∀ i, l ∈ Li

(12)

Wijkl ) 1

∀ j, k ∈ Kj

(2a)

I∈(Li∩Lj)

Equation 3 expresses the relation between the start time and the end time of two-coordinate blocks. The processing time, setup time, and transferring time are added to the start times, Tsjjk and Tsiil, for time slot and stage, respectively. When stage l of product i is assigned to time slot k of unit j (Wijkl ) 1), we calculate the end times, Tejjk and Teiil. Note that setup times for products are only unit dependent. However, processing and transferring times are affected by not only which unit the product goes through but also whether it is the re-entrant case or not. The processing and transferring times may be different depending on which production is earlier. Stage information with product and unit indices can represent the transferring time of re-entrant flows. For instance, a series of units for production {j1-j2-j3-j2-j1} requires two transferring times taken from unit 1 to unit 2 and from unit 3 to unit 2, although in either case the moving vessel is toward the same processing unit. Adding stage indices to discriminate stages, i.e., Tri22 and Tri24, respectively can resolve such a complication. Equations 5a and 5b represent sequencing relationships between slots and stages, respectively. Since the stage numbering is not increasing by 1, the constraint depicting the end time of the former stage should be earlier than the latter one is represented as eq 5b. Equations 7a and 7b are concerned with the precedence of time slot matching. Time slot k + 1 can be used only in the case when time slot k has already been matched. In the case when the exact postulation of the number of time slots is made that yjk is no longer necessary, eq 7b only stands for the assignment of earlier slots. The number of moving vessels may be restricted to finite; the availability constraints for moving vessels should be imposed as in eq 8. When all moving vessels are used, the remaining products have to wait until any moving vessels become available. In the case when the number of moving vessels is greater than that of the products constraint,

3656 Ind. Eng. Chem. Res., Vol. 37, No. 9, 1998

Figure 3. State task network for example 1.

eq 8 is not needed (see example 1). If we relax the assumptions (A6) and (A8), we can optimize the utilization of vehicles. In that case, the vehicles should appear at the two-stage coordinate with the corresponding number of time slots. Moreover, products should have as many additional stage blocks as the increased number of time slots. Consequently, the problem size will increase significantly so that the solution will be possible only for problems with a small number of vessels. MILP1 expresses that the objective function representing the minimal makespan or total processing time is the earliest end time of the last time slot of the last unit. In some cases, batch flexibility requires minimizing earliness as an objective function that is formulated as MILP2. To resolve the degeneracy problem caused by the binary variables as mentioned by Pinto,6 the following term is added to the original objective function:



∑ ∑ i∈I j

∑ ∑ Wijkl

I∈(Li∩Lj) j∈(Ji∩Jl) k∈Kj

where  is a parameter with a very small value (10-3 in this model).

Table 1. Relation between Units and Tasks task

unit

task

unit

charging A charging B blending

1 2 3, 4

reaction discharging cleaning

5, 6 7 8

The modeling system GAMS8 is used for setting up the optimization model, and the number of variables and constraints are reduced by considering the data structure of the problem. The problems are solved by OSL9 on a SUN SPARC 10. Examples Example 1. A Three-Product Plant with the Same Production Sequence. Consider the pipeless plant with six stages and eight units that have to process three products as fast as possible. The layout of the pipeless plant is shown in Figure 1, and the recipe is shown as the state task network (STN) in Figure 3. White circles and squares stand for states and tasks of moving vessels, respectively. The relations between production tasks and units are shown in Table 1. Every product has the same production path: charge-chargeblend-reaction-blend-discharge-cleaning. Units {1},

Ind. Eng. Chem. Res., Vol. 37, No. 9, 1998 3657

Figure 4. Processing sequence for a finite moving vessel ()2). Table 2. Processing Time and Transferring Time of Example 1 Processing Time (h) unit product

1

2

3

4

5

6

7

8

1 2 3

0.6 0.5 0.5

0.5 0.5 0.6

0.5 0.7 0.5

0.85 0.75 0.65

0.85 0.75 0.65

0.6 0.5 0.6

0.5 0.5 0.5

0.5 0.5 0.5

Transferring Time (h) stage product

1

2

3

4

5

6

7

1 2 3

0.05 0.05 0.05

0.06 0.06 0.06

0.05 0.05 0.05

0.06 0.06 0.06

0.07 0.07 0.07

0.05 0.05 0.05

0.1 0.1 0.1

Table 3. Computational Results for Example 1 0-1 continuous type variable variable constraints MS 207 207

340 340

442 441

CPU (s)

8.2 16.17 5.66 270.0

no. of iterations 6375 100751

{2}, {3, 4}, {5, 6}, {7}, and {8} correspond to the series of operations, respectively. In the stage-based coordinate, units 3 and 4 are matched to either stage 3 (first flow) or 5 (re-entrant flow) or both. The products are allowed to be processed in any one of the parallel units in the same stage. As the recipe shows, all products have the same processing sequence which contains reentrant flows. Processing and transferring times are shown in Table 2. Setup times are included in the transferring times. For simplicity, the transferring time is determined by the product and the stage, irrespective of units that lie in the same stage. The example is considered in two cases: (1) when the number of moving vessels is greater than or equal to the number of products (V g |I|); (2) when the number of moving vessels is less than the number of products (V < |I|). The computation results are shown in Table 3. It is interesting to note that the computation time is reduced in the case where the number of moving vessels is less than the number of products, while the objective value is degraded. The operation guide for the case (V ) 2 < |I|) is shown in Figure 4. We can observe that the operation for product 3 starts soon after processing product 2 since product 3 cannot be processed while all the available moving vessels are busy. Note that the minimum required number of binary variables amounts to as many as 100 time units per hour × 8 h × 3 products × 8 units ) 19 200 in the discrete time

Figure 5. State task network for example 2.

domain. Typically, the number of time units is determined by the minimum length of time interval that can adequately describe the processing time and transferring time by its integer multiples. Example 2. A Six-Product Plant with Different Processing Sequences. In this example, a large problem that has diverse production flows, which are dependent on the recipe of each product, is presented. Consider the pipeless plant that produces six products, each of which has individual processing routes as shown in Figure 5. Products P1-P6 should be produced from raw materials R1-R3 through each individual recipe. Every task and state is represented as a solid square and a circle, respectively. The contents of tasks are as follows: T1, charging A; T2, charging B; T3, blending; T4, reaction; T5, discharging; T6, cleaning. The relations between units and tasks are the same as those shown in Table 1, and processing data are given in Table 4. In the discrete time domain, the minimum required number of binary variables is 100 time units per hour × 6 h a day × 6 products × 8 units ) 28 800, which will result in enormously expensive computation for discrete time domain. To decrease the number of binary variables due to the overestimated number of time slots, Kj is postulated in advance, through the following equation as proposed by Pinto.6

Kj )

[ ]

|Ij| f |Jl| j

∀ j ∧ l ∈ Lj

where [‚] is the upper integer part operator and fj is a safety factor. The computational results are shown in Table 5. One important aspect in the solution method is that we can employ SOS1 structure where at most one variable (integer or continuous) within a set of variables is equal to 1 (see eq 1). Beal et al.10 introduced the notion of SOS to which the SOS1 class belongs. While the number of products is larger and the processing routes are more complex than example 1, the computational complication is lessened by eliminating the unnecessary variables with exact postulation of the number of time slots. A Gantt chart for the results is given in Figure 6. Conclusions The short-term scheduling problem of pipeless plants was discussed in this paper. While the conventional

3658 Ind. Eng. Chem. Res., Vol. 37, No. 9, 1998 Table 4. Processing Time and Transferring Time for Example 2 Processing Time (h) product stage p1-s1 p2-s1 p3-s1 p4-s1 p5-s1 p6-s1 p1-s2 p2-s2 p3-s2 p4-s2 p5-s2 p6-s2 p1-s3 p2-s3 p3-s3 p4-s3 p5-s3 p6-s3 p1-s4 p2-s4 p3-s4 p4-s4 p5-s4 p6-s4 p1-s5 p2-s5 p3-s5 p4-s5 p5-s5 p6-s5 p1-s6 p2-s6 p3-s6 p4-s6 p5-s6 p6-s6 p1-s7 p2-s7 p3-s7 p4-s7 p5-s7 p6-s7

unit u1

u2

u3

u4

0.5 0.6 0.4 0.5 0.5 0.6

0.75 0.65 0.45 0.75 0.65 0.75

u5

u6

0.75 0.55 0.75 0.65 0.75 0.65

0.75 0.55 0.75 0.65 0.75 0.65

u7

u8

0.5 0.6 0.4 0.3 0.5 0.5 0.5 0.4 0.6 0.6 0.4 0.6

0.5 0.6 0.4 0.5 0.5 0.6

Figure 6. Processing sequence for example 2.

0.75 0.65 0.45 0.75 0.65 0.75

Table 5. Computational Results of Example 2 with SOS1 0-1 continuous variable variable constraint makespan 0.6 0.5 0.6 0.7 0.5 0.5

138

0.7 0.5 0.6 0.5 0.7 0.5 Transferring Time (h)

product stage p1-s1 p2-s1 p3-s1 p4-s1 p5-s1 p6-s1 p1-s2 p2-s2 p3-s2 p4-s2 p5-s2 p6-s2 p1-s3 p2-s3 p3-s3 p4-s3 p5-s3 p6-s3 p1-s4 p2-s4 p3-s4 p4-s4 p5-s4 p6-s4 p1-s5 p2-s5 p3-s5 p4-s5 p5-s5 p6-s5 p1-s6 p2-s6 p3-s6 p4-s6 p5-s6 p6-s6 p1-s7 p2-s7 p3-s7 p4-s7 p5-s7 p6-s7

u1

u2

u3

unit u4 u5

u6

u7

u8

0.05 0.05 0.05 0.05 0.05 0.05

292

461

5.8

CPU time (s)

no. of iterations

574.5

50411

model uses multiperiod optimization with a large number of discrete variables, the proposed model reduces them using a continuous-time domain representation. The proposed model is similar to Pinto’s model,6 but it is capable of handling re-entrant flows and diverse flows depending on multiproduct recipes. The proposed MILP model was applied to two examples classified by the number of products and processing routings and showed good performance. Acknowledgment Partial financial support from Korea Science Engineering Foundation through Automation Research Center at POSTECH is greatly appreciated. J.-K.B. is also grateful to Dr. Sungdeuk Moon at McMaster University for helpful comments.

0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05

0.05 0.05 0.05 0.05 0.05 0.05

Literature Cited 0.05 0.05 0.05 0.05 0.05 0.05

0.07 0.07 0.07 0.07 0.07 0.07

0.05 0.05 0.05 0.05 0.05 0.05

0.08 0.08 0.08 0.08 0.08 0.08 0.05 0.05 0.05 0.05 0.05 0.05 0.1 0.1 0.1 0.1 0.1 0.1

(1) Niwa, T. Pipeless plants boost batch processing. Chem. Eng. 1993, June, 103. (2) Niwa, T. Evaluation of pipeless process and recipe-based operation. Proc. Fourth PSE 1994, 497. (3) Pantelides, C. C.; Realff, M. J.; Shah, N. Short-term scheduling of pipeless batch plants. Chem. Eng. Res. Des. 1995, 73, 431. (4) Liu, R.; McGreavy, C. A framework for operation strategy of pipeless batch plants. Comput. Chem. Eng. 1996, 20, Suppl., S1161. (5) Realff, M. J.; Shah, N.; Pantelides, C. C. Simultaneous design, layout and scheduling of pipeless batch plants. Comput. Chem. Eng. 1996, 20, 869. (6) Pinto, J. M. Mixed integer and logical based optimization techniques for scheduling of multistage chemical processes. Ph.D. Thesis, Carnegie Mellon University, Pittsburgh, PA, 1995. (7) Mockus, L.; Reklaitis, G. V. Continuous-time representation in batch/semicontinuous process scheduling: randomized heuristics approach. Comput. Chem. Eng. 1996, 20, Suppl., S1173.

Ind. Eng. Chem. Res., Vol. 37, No. 9, 1998 3659 (8) Brooke, A.; Kendrix, D.; Meeraus, A. GAMS: User’s Manual; Scientific Press: Redwood City, CA, 1992. (9) OSL (Optimization Subroutine Library) Guide and reference, release 2; IBM: Kingston, NY, 1991. (10) Beale, E. M. L.; Tomlin, J. A. Special facilities in a mathematical programming system for nonconvex problems using ordered set of variables. In Proceedings of the fifth international

conference on operational research; Lawrence, J., Ed.; Tavistock Publications: London, England, 1970; pp 447-454.

Received for review February 5, 1998 Revised manuscript received May 29, 1998 Accepted May 31, 1998 IE9800703