incorporating scheduling in the optimal design of multiproduct batch plants

21

Click here to load reader

Upload: db-birewar

Post on 21-Jun-2016

217 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Incorporating scheduling in the optimal design of multiproduct batch plants

Computers chem. EngngVol. 13, No. 1/2, pp. 141-161, 1989 0098-1354/89 $3.00+0.00 Printed in Great Britain. All rights reserved Copyright © 1989 Pergamon Press plc

INCORPORATING SCHEDULING IN THE OPTIMAL DESIGN OF MULTIPRODUCT BATCH PLANTS

D. B. BIREWAR and I. E. GROSSMANN'~ Department of Chemical Engineering, Carnegie-Mellon University, Pittsburgh, PA 15213, U.S.A.

(Received 19 May 1988; received for publication 24 June 1988)

Abstraet--Anticipating the impact of scheduling at the design stage can result in significant savings in the capital cost of multiproduct batch plants. In this paper this idea is applied to multiproduct batch plants with one unit per processing stage. Efficient scheduling models are developed for minimization of cycle time for unlimited intermediate storage (UIS) and zero wait (ZW) policies in mixed product campaigns that may or may not involve clean-up times. Based on these models, it is shown that simplified constraints that account for these scheduling policies can be incorporated in the optimal design problem. Numerical examples are presented for both scheduling and design problems.

INTRODUCTION

Incorporating constraints that account for scheduling effects in the optimal design of multiproduct batch plants is a very difficult task. Thus, previous pro- cedures for design of these plants have assumed only the simplest type of scheduling policy, namely campaigns of single products with no intermediate storage. In this policy it is assumed that the products will be produced in a sequence of campaigns each devoted to a single product. In this way the schedul- ing is characterized through cycle times for each product which are then included into a single time constraint for the optimal design problem. This type of assumption, which greatly simplifies the design problem, is the one that has been used in previous methods (e.g. Sparrow et al., 1975; Grossmann and Sargent, 1979; Flatz, 1980, Yeh and Reklaitis, 1985).

The important limitation in these methods, how- ever, is that the simplified scheduling policy that is assumed at the design stage can overestimate the time requirements. Therefore, this can have the effect of producing large overdesigns for the equipment when a fixed time horizon is considered for specified pro- duction requirement. It would be clearly desirable to consider at the design stage potentially more efficient scheduling policies such as mixed product campaigns. Aside from providing a more steady supply of prod- ucts (Klossner and Rippin, 1984), the sequencing of batches of different products in mixed campaigns can reduce idle times to increase the utilization of equip- ment. It is precisely the purpose of this paper to accomplish this objective. As an initial step, the case of multiproduct batch plants with one unit per stage will be considered.

The problem that is specifically addressed in this paper is as follows. Given is a plant with M batch stages with one unit per stage. Production rates for a

tAuthor to whom all correspondence should be addressed.

given time horizon, processing times and size factors for Np products that are to be manufactured are given. Cleanup times may in general also be specified. It is assumed that the plant is of the multiproduct type (Rippin, 1983) in which all the products follow the same processing route through the M stages. The problem then consists in determining sizes of batch equipment, the production scheduling, and the possi- ble use of intermediate storage that will minimize the investment cost of the plant.

For the scheduling aspect, mixed product cam- paigns will be considered for the two following cases: unlimited intermediate storage (UIS) and zero wait (ZW) policy. As is well-known (Ku and Karimi, 1986) these correspond to limiting cases with the former being the more efficient, and the latter the more conservative scheduling policy. The proposed strategy will consist of developing for these two policies simplified expressions for time constraints that can be readily incorporated into the design problem. The detailed scheduling is obtained at a second stage.

In order to handle the scheduling problem effectively, new formulations are proposed for the UIS case, and the ZW policy, and where the objective that is considered is the minimization of cycle time. In the former policy the optimal objective function value can be obtained by a simple analytical expres- sion for the case of zero cleanup times. The latter policy involves the solution of a 0-1 minimax assign- ment problem that is based on time slacks for any two consecutive batches, and which can be solved as an LP in most cases. This formulation can easily be extended for both UIS and ZW policies for nonzero cleanup times. Using as a basis the proposed formu- lations, the derivation of simplified constraints for design are then presented. It is then shown that these constraints can be incorporated into the NLP model that has been reported previously in the literature for multiproduct batch plants.

141

Page 2: Incorporating scheduling in the optimal design of multiproduct batch plants

142 D. B. BIREWAR and I. E. GROSSMANN

Table I. Data for Example 1. Processing times (h)

A B C Stage 1 2 4 3 Stage 2 5 1 2 Stage 3 4 2 5

Production task--to produce one batch each of products A, B and C in 3 cycles.

Examples are presented first to illustrate the efficiency of the proposed formulations for the scheduling of the UIS and the ZW policies. Ex- amples are then also presented to illustrate how these two scheduling policies can be incorporated at the design stage with the proposed simplified constraints.

COMPARISON OF SEQUENCING POLICIES

In order to illustrate the difference of scheduling a multiproduct batch plant with single-product campaigns as opposed to using mixed-product cam- paigns, consider Example 1 in Table 1 involving 3 products and 3 stages, where one batch of each product must be manufactured in 3 cycles.

First consider the case of zero cleanup times. If we do not allow for intermediate storage, the lowest total time (makespan) that is required for single-product campaigns using the sequence C-A-B is 44 h as shown in Fig. la. Note that the cycle time of products A, B, C are 5, 4 and 5 h, respectively, yielding an overall cycle time of 14 h. To reduce the makespan, we could consider mixed-product campaigns (MPC) where the three products A, B, C, are produced in 3 cycles. The most conservative policy would be the ZW policy where a batch upon completion in a stage must be transferred immediately to the following stage. The shortest makespan we can obtain is of 42 h by using the sequence C-A-B as seen in Fig. lb. Note that in this schedule the cycle time for a single sequence of C-A-B is 13 h. Also note that stage 1, which limits the cycle time, involves slack times of 4 h between products A and B. To further reduce the makespan, we could consider the use of intermediate storage in a mixed campaign. In particular, with the UIS policy, the shortest makespan that we obtain is of only 38 h with the sequence C-A-B as seen in Fig. lc. Note that in this case the cycle time of a single sequence C-A-B is reduced to 1 l h and that stage 3 limits this cycle time.

Stage 1

Stage 2

Stage 3

C A B 3 2 ,<14-1~

(a) 44 Hr

3 2 4 ~ 1 3 Hrs . - -~C A B

StageStage 23 I . . . . . . 1 l . { ' , 1 . . . . . .

w !

(b) 42 Hr

3 2 4 C A B C A B

Stage 3 ..5. . . . . 4 . . . . . . . . . . .

1 Hrs. ---4)

(c) 38 Hr

Product A Product B Product C Intermediate Storage

Fig. I. Scheduling policies for Example i with zero cleanup times: (a) single-product campaigns; (b) ZW policy (MPC); and (c) U1S policy (MPC).

Page 3: Incorporating scheduling in the optimal design of multiproduct batch plants

Scheduling in the optimal design of batch plants 143

Thus, from the above example we can conclude that for the case of zero cleanup times, sequencing the batches of different products in a mixed campaign can significantly decrease the makespan when com- pared to using single-product campaigns with no intermediate storage. Furthermore, the UIS and the ZW policies are limiting cases for sequencing, with the former providing the shortest makespan, and the latter with the longest. For the design problem, where a fixed horizon time is considered (typically 1 yr), it then follows that the UIS policy requires the smallest equipment sizes at each stage, while the single- product campaigns requires the largest. The ZW policy will in general require equipment sizes that lie in between.

In the case of nonzero cleanup times, however, the above conclusion may not necessarily hold. Assume that in Fig. 1 the cleanup times between any two different products at the three stages is 1 h. Then the schedules are modified as shown in Fig. 2. Note that for single-product campaigns the makespan increases from 44 to 46 h. In the case of mixed-product

campaigns with ZW policy it increases from 42 to 50 h, while for the UIS policy the increase is from 38 to 46 h. The increase in cycle times for these two policies is from 13 to 16 h and 11 to 14 h, respectively. Thus, if cleanup times are significant it is possible that for both scheduling and design the single-product campaigns might prove to be superior to the mixed- product campaigns.

For simplicity in the presentation of this paper, it will be first assumed that cleanup times are negligible. This assumption, however, will be relaxed later in the paper. Also, in order to derive appropriate time constraints for sequencing in the optimal sizing prob- lem, it is useful first to present general MILP formu- lations for minimizing the makespan with the unlimited storage and ZW policies. It will be shown that the difficulty involved in solving these formula- tions can be circumvented by replacing the minimiza- tion of the makespan by the minimization of the cycle time. This objective, which is suitable for long-range horizons, will then be used as a basis for deriving the simplified time constraints for the design problem.

Stage 1

Stage 2

Stage 3

C A B 3 1 2 44.11,,

(a) 46 Hr

Stage 1

Stage 2

Stage 3

16 Hrs. 3 1 2 1 4 I ~ C. A B

IB I I I I . . . . .

5 -1- ==, ==

(b) 50 Hr

Stage 1

Stage 2

Stage 3

14 Hrs 3 2 4 vJ C A B

(C) 46 Hr

LEGEND: %

Product A Product B Product C Intermediate Storage Clean-up Times

Fig. 2. Scheduling policies for Example 1 with 1 h cleanup times: (a) single-product campaigns; (b) ZW policy (MPC); and (c) UIS policy (MPC).

Page 4: Incorporating scheduling in the optimal design of multiproduct batch plants

144 D.B. BIREWAR and I. E. GROSSMANN

M I L P M O D E L S F O R M I N I M I Z I N G M A K E S P A N

The problem of determining the product sequen- cing with zero cleanup times that leads to the shortest makespan for the UIS and ZW policies, will be formulated as MILP problems in this section. In order to derive the corresponding models, Arc identi- cal cycles will be assumed for the production. Each cycle consists of N batches involving Np products. As an example consider the manufacture of 6 products (Np = 6) in 5 cycles (Arc = 5) each involving 2 batches of A, B, C, D, and one batch of E and F; i.e. 10 batches (N = 10) per cycle.

Since we do not know a priori the sequencing of the N batches in each cycle, we will consider a sequence of N production slots where the assignment of each batch to each of these slots must be determined. The potential assignment of a batch i, i = 1 , . . . , N, to a production slot l, l = 1 . . . . . N, will be denoted by the 0-1 variable }Tit, where a value of one implies that batch i is assigned to production slot l. The following constraints must be satisfied for these 0-1 variables:

Every slot l must be assigned exactly to one batch i:

N

Yi,=l / = I . . . . . N. (1) i=1

Every batch i must be assigned to exactly one slot l:

N

Y u = l i = l . . . . . N. (2) l=1

As seen ~in Fig. 3, the following variables are required to model the times associated at each stage j, j = 1 . . . . . M, of the production slots /, l = 1 . . . . . N :

TFj~ = time at which processing in time-slot 1 of stage j is finished.

T~t = time at which processing in time-slot 1 of stage j is started.

Given the fixed processing times t o. of batch i in stage j, the two above variables are related in terms of the assignment variables Y,~, by the equation:

N

TFjt= Tljt+ E Yittu i ~ l

l = 1 , . . . , N ;

where

j = 1 . . . . . M. (3)

T / l l ~ 0 .

From Fig. 3, it is clear that the start time of slot l + 1 at every stage j requires that the processing of slot l be finished. That is:

TFjI<~TIjj+I I = I , . . . , N - 1 ; j = l . . . . . M.

(4)

As for the completion and start time relations for two successive stages, these depend on the sequencing policy that is used:

(a) For the UIS policy where there is the possibil- ity of storing the batch produced in stage j, the start time of s tagej + 1 can be performed any time after the completion of stage

TFjl<~TIj+Ij l = 1 . . . . . N;

j = l . . . . . M - l ; (5a)

(b) For the ZW policy where no intermediate storage is available, and no idle times are allowed for the processing between stages, the start time of s tagej + 1 has to coincide exactly with the completion time of stage j :

TFj t=TI j+I j l = 1 . . . . . N;

j = l . . . . . M - 1 . (5b)

In order to define the total convenient to define first the with each stage j :

CTj = TFj~ v -- T/j1 j

time (makespan), it is cycle time associated

= 1 . . . . . M . (6)

The total time must then be greater or equal to the total processing time required for each stage. Since N c cycles are considered, this leads to the inequality:

7", >1 [TIj, -- TIll ] + NcCTj + [TFMN -- TFju]

j = 1 . . . . . M, (7)

Stage 1

Stage j

Stage M

Th I TFu [ I

Tll t I

TI1/+I TF1/+I : : : : : : : : : : : : : : : : : : : : : : : :

"rill TII h.l T~ik. '

TIM/ TFMI TIM/,f TFM/+f I I I::::::::::::::::1

Time

I I Slot I ~ Slot I+1

Fig. 3. Start and completion times for production slots 1 and I + 1.

Page 5: Incorporating scheduling in the optimal design of multiproduct batch plants

Scheduling in the optimal design of batch plants 145

Stage 1

Stage 2

Stage 3

Stage 4

Head for t S~ego 2 a Tail 1o~ Stag* 1 , , ~ 1 3 I I

r / / / / / / / / / / ' ¢ : :::::: ::::::: !:: [ "tr2s

L, : :

Head tot ~t I 4 [

Fig. 4. Heads and tails in schedule for ZW policy.

where the first and third term in the right-hand-side, correspond to head and tail times, respectively (for example, see Fig. 4).

Finally, the minimization of the makespan implies the objective function,

rain T,. (8)

This objective function subject to the constraints (1-7) defines problems MILP1 and MILP2 with which one can determine the optimal sequencing for the UIS and ZW policies, respectively. Note that MILP1 involves constraint (5a) while MILP2 in- volves constraint (5b).

In order to provide some insight into the computa- tional requirements of these MILP models consider the example given in Table 2. For the UIS case the optimal sequence for each cycle is (E-A-B-F-D-C) with a total makespan of 427 h and a cycle time of 80 h, as shown in Fig. 5a. The predicted optimal sequence for the ZW policy is (E-D-B-A-F-C) as shown in Fig. 5b, with a total makespan of 505 h and a cycle time of 97 h. In Table 3 the problem sizes and computational statistics for minimization of make- span are presented. Note that both MILP1 and MILP2 have a nonzero gap in the objective function with respect to the LP solution where the integrality constraints on the 0-1 variables are relaxed. Hence, both problems require a lelatively substantial effort in the branch and bound procedure.

Since solving problems MILP1 and MILP2 can clearly become computationally expensive for larger problems, it is convenient to exploit some of the features of the design problem. In particular since the horizon time H is usually long (e.g. operating time for 1 yr) the number of cycles Nc that is necessary for total production will be typically rather large. This would suggest that an alternative criterion for the scheduling could be the minimization of cycle times since the contribution of heads and tails for the total time as given by constraint (7), will be negligible for a large number of cycles Ne. In the next two sections

Table 2. Data for Example 2. Processing times (h)

A B C D E F

Stage 1 10 15 20 14 6 13 S tage2 20 8 7 6 11 7 Stage 3 5 12 9 15 5 17 S tage4 30 10 5 10 15 10

Production task-- to produce one batch each of products A, B, C, D, E, and F in 5 cycles.

it will be shown that considerable simplifications are possible by considering the minimization of cycle times (instead of total makespan) of the UIS and ZW policies.

MINIMIZATION OF CYCLE TIME FOR THE

UIS POLICY

Consider equation (6) which defines the cycle time for each stage. If we add (3) over the l slots and substitute (1) and (2) into this equation, then by considering the inequality in (4) we obtain:

N N

CTj >1 TF m - Tljl = E E YittG i ~ l / = l

= ~ [ ~ Yi,lto=~ti j. (9) i= i l l = 1 i= 1

If we neglect the first and third term of the right-hand-side in (7) as Arc can be assumed to be large, then the minimum cycle time is given by:

CT~a = 7", = m a x {C~}. (10) N C j= I,...,M

From (9) it then follows that:

CTmin= max ~'~ tu~. (11) J=l'"'M (i=l )

This theoretical minimum for the cycle time is always attainable for the UIS case with zero cleanup times. The constraints in (4) are automatically satisfied by (11). Constraints (5a) can also always be satisfied by shifting the upstream times to the left and the downstream times to the right with respect to the bottleneck stage j* that defines the cycle time in (11). This is possible due to the fact that stages are effectively decoupled with the intermediate storage. Furthermore, what (11) implies is that for UIS with no cleanup times the minimum cycle time is indepen- dent of the sequencing of batches. Thus, the deriva- tion of a schedule for UIS with minimum cycle time reduces simply to selecting any sequence of batches, and setting slack times of bottleneck stages(s) to zero. This then also implies that if we solve the following problem:

min CT,

s.t. CT>I CTj j = I , . . . ,N, (MILP3)

and constraints (l-5a) and (6),

Page 6: Incorporating scheduling in the optimal design of multiproduct batch plants

46 D . B . BIREWAR and I. E. GROSSMANN

t n

t ~

CD

0

co

LLI .o

0 r~ r - eD -s

O " 0

E

0

q..

0 1-

0 0

0

o

M

0 i

t

ILl . .

0 c

0

E

0

A I

I

I

I I

I

O e'~

t'q

; .= O e . .

?;

It . '-O

LLI eq (D

0. i

e-.) t.(

i= a. --~

o

a. .~

© eet

,d "d ,0

0.

"6

Q.

Page 7: Incorporating scheduling in the optimal design of multiproduct batch plants

Scheduling in the optimal design of batch plants

Table 3. Computational results for Example 2 Makespan Cycle time

minimization minimization UIS ZW UIS ZW

Formulation MILP 1 MILP2 MILP3 MILP4 MILP solution (h) 427 505 80 97 LP solution (h) 423.4 423.4 80 97 0-1 variables 36 36 36 30 Continuous variables 53 53 49 1 Rows 87 87 83 18 Branches 40 23 5 0 Pivots 1167 1921 479 25 CPU time ~ (s) 154 135 26 0.93

]Using LINDO on DEC-20.

147

it will have a zero gap between the relaxed LP and the integer solution. With the solution of MILP3 the timings of the schedule for the UIS policy can be obtained. MILP3 has been applied to one cycle of the problem in Table 2 that involves production of batches for 6 different products in a plant with four production stages. As seen in Table 3, MILP3 has zero gap with respect to the LP relaxation; the minimum cycle time of 80 h is obtained which is also predicted by equation (11). As will be shown later in the paper, equation (11) can be used as a basis to derive time constraints for the optimal design prob- lem with UIS policy.

MINIMIZATION OF CYCLE TIME FOR THE

ZW POLICY

In the case of the ZW policy with zero cleanup times the equation in (l l) provides only a lower bound to the cycle time. The reason is that the equality constraints in (5b) may not be satisfied, since for the ZW policy there is no freedom of shifting times upstream and downstream as was the case in the UIS policy. Furthermore, stages that limit the cycle time will contain in most cases nonzero slacks. This then means that if we were to solve problem MILP3, with constraint (bb) instead of (5a), there would be a nonzero gap in the MILP, which would still make it computationally expensive to solve. For this reason, a new MILP formulation for the ZW policy will be developed which exhibits zero gap, and in most cases can be solved as an LP problem.

The basic idea behind the new formulation is as follows. For the ZW policy the optimal cycle time will, in general, not be equal to the minimum cycle time of UIS (i.e. CTmin) because all the stages inclu- ding the ones that define the bottleneck will often exhibit idle times (slacks) between some of the con- secutively produced batches (e.g. see Figs 1 and 5). It should be noted that these slacks are only a function of consecutive pairs of batches (Wismer, 1972). As an example consider the two batches in Fig. 6a. It can be seen that the slack in stage 1 is 1 h, in stage 2 it is zero, in stage 3 it is 2 h. Therefore, the slacks for each pair of batches can be easily computed a priori (see also Appendix A).

Based on the observation that in the ZW policy two consecutive batches define the minimum slack time at each stage, it is possible to use this insight to develop a method for sequencing that is considerably faster that the previous ones. It is then natural to define the

A B

Stage 1 L"': 5 h 1 h

Stage 3 3 h

A B

=, h 1 ~ SLAB 1 1 Hr Stage 1 i = I~h l 5 h

Stage 2 J ' ' " " ~ , l . SLAB2 = 0 Hr

Stage 3 ~ SI~B3 = 2 Hr

Fig. 6a. Slack times between two consecutive batches with zero cleanup times.

Clean*up A Times B

5h 2h lh

L :, 7 Stage 2 ~ ....S.h. . . . .

3.~, . 1.., [ 3.h.. Stage 3

A B 2 h Stage 1 5 h f - ' ~ l h SLAB ~ = 2 Hr

Stage 2 h SLAe 2 . 1 Hr

Stage 3 . 3 h . ~ SLAB 3 = 3 Hr

Fig. 6b. Slack times between two consecutive batches with 1 h cleanup times.

Page 8: Incorporating scheduling in the optimal design of multiproduct batch plants

148 D.B. BmEWAR and I. E. GROSSMANN

following binary variable for any two successive batches i # k:

10 if batch k is produced after batch i YCi~, = otherwise

(12)

As every batch is produced exactly once in each cycle, it will appear exactly once in the first place and exactly once in the second place in the pairs (i, k) of batches that are produced during a production cycle. Therefore the following two assignment constraints must apply?,

N

YC,k= 1 i = 1 . . . . . N, (13) k = l

N

YC~k=I k = l . . . . . N. (14) z = l

The cycle time of any stage is composed of the batch processing times of each batch produced in that stage and the slacks that are forced to exist between some of the two consecutive batches. Since the overal cycle time CT must be greater than or equal to the cycle time associated with each stage, the following constraint must be satisfied:

N N N

CT>I ~. E YC,kSL,kj+ E t• j = l . . . . . M, iffi l k = l i = l

(15)

where SLe~j defines the slack (or forced idle time) in stage j when batches i and k are produced in succes- sion, in that order. The data for the slacks SL,kj can easily be generated a priori by examining every pair of batches i, k as was explained previously. As an additional example, consider the three products and three stages in Table 1. Using the procedure described in Appendix A, examination of each pair of product yields the slack times given in Table 4a.

By considering the minimization of cycle time for the ZW policy, the problem:

min CT, (MILP4)

s.t. constraints in (13-15),

CT >i O, YCik = O, 1

i = I , . . . , N , k = l , . . . , N , i # k ,

corresponds to a 0-1 minimax assignment problem. In Appendix B it is proved that if there is only one stage that limits the cycle time, pure integer solutions in MILP4 can be obtained through the solution of the relaxed LP where the YC~k variables are treated as continuous between values of zero and one. For the case of two or more stages that limit the cycle time, it is proved that the relaxed LP has zero gap with respect to the optimal MILP solution. This means that MILP4 can often be solved as an LP problem or

tFor simplicity the condition i # k is not stated in the equations.

else requires the examination of few branches in a branch and bound procedure.

The formulation MILP4 has been applied to Example 2. As seen in Table 3 the cycle time of 97 h was obtained by simply solving the relaxed LP where an integer solution was obtained. Thus, the CPU time is much smaller than in MILP2. The optimal se- quence that was obtained is E - D - B - A - F - C which is same as in Fig. 5b. It should be noted that actual implementation of this sequence can be performed by starting at any product; that is:

E -D-B-A-F-C , D-B-A-F-C-E , B -A-F-C-E-D ,

A - F - C - E - D - B , F -C-E-D-B-A, C -E-D-B-A-F ,

all have the same cycle time. The selection of the sequence with to minimum makespan among the minimum cycle time solutions, can be chosen by direct examination of the alternatives or with the formulation presented in Appendix C.

Another important point in the model MILP4 is that in principle it is possible to obtain a sequence with subcycles of batches. For example, given one batch each of the six products (A, B, C, D, E, F) the constraints in (13) and (14) would satisfy the assign- ment of variables for which the sequence is given by the subcycles (A-B-C) and (D-E-F). If each of these subcycles is performed a large number of times one after the other, then the error introduced by such a solution would only be the slack times for the tran- sition from one subcycle to the other. Also, subcycles could be eliminated by the introduction of subtour elimination constraints as in the travelling salesman problem, but this can greatly increase the difficulty of solution of the problem (Papadimitriou and Steiglitz, 1982). There are in fact also advantages for allowing the occurrence of subcycles; for instance, single- product campaigns can also be obtained in MILP4 by redefinition of the slacks as will be shown in the next section.

E X T E N S I O N F O R C L E A N U P T I M E S

In the formulations that have been presented in the previous sections zero cleanup times have been as- sumed. However, as was shown in the beginning of this paper, the scheduling may be affected if cleanup times are significant. This section will show that the 0-1 minimax problem MILP4 can easily be extended to accommodate cleanup times by suitably modifying the slacks. Furthermore, it will be shown that a similar treatment can be applied to the UIS policy.

The cleanup times will be assumed to be constant, and in general sequence-dependent. They will be defined by Vikj to denote the time for cleaning the unit in stage j when switching from batch i to batch k. If these batches correspond to the same product the cleanup time is in general zero.

In the case of the ZW policy the computation of slacks with cleanup times will be illustrated with the

Page 9: Incorporating scheduling in the optimal design of multiproduct batch plants

Scheduling in the optimal design of batch plants

Table 4. Slacks for Example 1 SL~j(h)

j ik A-B A~C B-A B-42 C-A C-B

(a) with zero cleanup times Stage 1 4 3 0 0 0 2 Stage 2 3 2 1 3 0 4 Stage 3 0 0 4 3 0 0

(b) with cleanup times of 1 h Stage 1 5 4 1 I 1 3 Stage 2 4 3 2 4 1 5 Stage 3 1 1 5 4 1 1

149

example in Fig. 6b, which is similar to Fig. 6a except for the cleanup times. Note that a slack of 2 h is assigned to stage l since that idle time is forced by the 2 h for the cleanup time. Stage 2 is then forced to have 1 h of slack which is exactly absorbed by the 1 h cleanup time. Finally, stage 3 gets shifted so as to have a slack of 3 h which accommodates the required 1 h of cleanup time. The values of these slacks can also be verified with the procedure given in Appendix A for cleanup times. As an additional illustration Table 4b presents the slacks for example 1 with cleanup times 7ekj= 1, i # k , 7i0=0, i,

j = l . . . . . 3. Since the slacks SL,k j can also be easily computed

a priori with nonzero cleanup times, it follows that formulation MILP4 can be applied to the ZW policy with cleanup times so as to minimize the cycle time. Furthermore, the property of zero gap for the MILP will still hold since no special structure in the slacks was assumed for the proof in Appendix B.

As for the UIS policy, one can also use the 0-1 minimax formulation to minimize cycle time with cleanup times. First, note that if all SLik j = 0, the cycle time C T in MILP4 trivially reduces to equation (11). Further, by analyzing Fig. 2 it is clear that the cycle time in the UIS policy is just simply augmented by the addition of cleanup times to the cycle times CTj defined in (9). Hence, the cycle time for this case will be given by:

C T = m a x ~ t , j + ~ T i k j Y C i ~ , (16) j = 1,.,M(, = IL I, - 1

where YCik = 1 for the successive batches i and k that are present in the particular sequence.

From (16) it is clear that if we simply set SL,k j = 7,kj, problem MILP4 can be applied to the UIS policy to find a sequence with minimum cycle time involving cleanup times. Thus, the 0-1 minimax problem MILP4 can be applied to the ZW policy (with and without cleanup times), as well as to the UIS policy with cleanup times.

To illustrate, consider cleanup times of 3 h between the batches of any two dissimilar products for Ex- ample 2. The slacks are computed using the pro- cedure described in Appendix A. Problem MILP4 applied to one cycle predicts a cycle time of 115 h for the ZW policy and 98 h for the UIS policy. Thus, both the ZW and UIS policy require 18 h more than the case of zero cleanup times. Furthermore, the

sequences remain the same because each cycle con- tains only one batch of each product.

To exploit the advantage of zero cleanup times between the batches of similar products, consider the case where instead of having 5 identical cycles, all the 30 batches of the 6 products are scheduled through one overall cycle with MILP4. With 3 h of cleanup times the cycle time for ZW is 551 h as compared to ( 9 7 x 5 = ) 485h for zero cleanup times, and ( 1 1 5 x 5 = ) 575h for the production through 5 identical cycles with cleanup times. For the UIS policy the schedule corresponds to single-product campaigns with intermediate storage. The cycle time is 418 h as opposed to (80 x 5=) 400 h for the case of zero cleanup times. The corresponding sequences are shown in Table 5. For cleanup times of 5 h and higher MILP4 predicts single-product campaigns for ZW. For UIS with any nonzero cleanup times, single-product campaigns are obtained (see Table 5). It should be noted that MILP4 predicted single- product campaigns because the solutions consisted of subcycles, each of which involved batches of the same product.

DESIGN AND SIZING OF BATCH PLANTS

Having considered the scheduling in mixed product campaigns with the UIS and ZW policies, the optimal design problem will be considered next. The formula- tion NLP1 for designing multiproduct batch plants with one processing unit in each stage, with single- product campaigns and no intermediate storage is as follows (Grossmann and Sargent, 1979):

M min ~ ~jV~j, (NLP1)

/=1

s.t. Vj>>,SoB , j = l . . . . . M; i = 1 . . . . . Np,

t~.l ~QiTL' <~ H,

B,>~O i = 1 . . . . . Nr, Vj>>,O j = 1 . . . . . M ;

and where

TL = max {tv} i = l . . . . . Np. J j ~ I,....M

In the above formulation the objective consists of minimizing the investment cost in terms of the vol- umes Vj of the units at each stage. The first constraint defines the volume requirements at each stage in

Page 10: Incorporating scheduling in the optimal design of multiproduct batch plants

150 D. B. BIREWAR and I. E. GROSSMANN

Table 5. Optimal schedules for Example 3 with various cleanup times

Total Scheduling policies Optimal schedule CT (h)

Zero cleanup times ZW policy E - D - B - A - F - - C - - E - D - B - A - F ~ C - - E - D - B -

A - F - C - - E - D - B - A - F ~ C - - E - D - B - A - F ~ 485 UIS policy E - A - B - F - D - C - - E - A - B - F - D - C - - E - A - B -

F - D ~ E - - E - A - B - F - D ~ 2 - - E - A - B - F - D ~ 400 Cleanup times of 3 h

ZW policy F - C - E - - F ~ 2 - E - - F ~ 2 - E - - F ~ - E - - F ~ 2 - E - - D - D - D - D - D ~ B - B - B - B - B - - A - A - A - A - A 551

UIS policy E - E - E - E - E - - A - A - A - A - A - - B - B - B - B - B - - F - F - F - F - F - - D - D - D - D - D - - C ~ E - C ~ 2 418

Cleanup times of 5 h or more ZW policy E - E - E - E - E - - D - D - D - D - D - - B - B - B - B - B - - 585

A - A - A - A - A - - F - F - F - F - F - - C ~ C - C - C or more UIS policy E - E - E - E - E - - A - A - A - A - A - - B - B - B - B - I ~ - 430

F - F - F - F - F - - D - D - D - D - ~ C - C ~ 2 ~ S or more

terms of the size factors S,j and the batch sizes B~ for each product i, i = 1 . . . . , Np. The second inequality is the horizon constraint for single-product cam- paigns; namely, the sum of cycle times TL, multiplied by the number of batches [QJB~] must be less-than or equal-to the horizon time H, where Q~ are the fixed production demands for each of the products. Finally, the cycle time TLi, for each product i, is equal to the maximum of the processing times t,j of that product over all the stages. Note that neglecting cleanup times in the above horizon constraint intro- duces only a small error since for single-product campaigns there are only Np -- 1 product changeovers (see Fig. 2a).

It is clear that in order to consider scheduling policies different from single-product campaigns, the second constraint (horizon constraint) in NLP1 must be replaced by other suitable expression. In the case of the UIS policy with zero cleanup times this can be accomplished as follows.

Consider the definition of the minimum cycle time in (11). By defining a cycle to extend over the horizon time H so as to include all the batches i ' = 1 . . . . , N that are required to satisfy the total production demand, the total cycle time for each stage j is given byt:

N

CTffI> ~ t~7 j = l . . . . . M, (17) il = 1

where N is the number of batches in a cycle. Since the cycle extends over the whole horizon time, N repre- sents the total number of batches for all products that will be produced in the time horizon H. In terms of individual products, N is given by:

Np

N = ~ ni, (18) i~ l

where the number of batches ng of each product i is in turn given by:

Qi n ~ = - - i = 1 . . . . . Np. (19)

Bi

tin this section i' corresponds to the index of batches, i for the products.

From (17-19) it then follows that:

N, Np Q, CTjn >>" ,= IE nitij = i=lE -ffii t° j = 1 . . . . , M. (20)

Since the horizon time H must be greater-than or equal-to the total cycle time of each stagej (neglecting the heads and tails), then from (20), the simplified horizon constraints for UIS policy reduce to:

~to<<.H j = l . . . . . M. (21) i~ l i

Replacing the second constraint in NLP1 by the inequalities in (21), leads to the nonlinear program NLP2 for the optimal design of multiproduct batch plants with UIS policy and zero cleanup times:

M

min E ~jV:j, (NLP2) j ~ l

s.t. Vs>>.So.B ~ j = l . . . . . M; i = 1 . . . . . Np,

i=l Bi <~H j = l . . . . . M,

Vj>~0 j = l . . . . . M; Bi~>0 i = 1 . . . . . Np.

Note that this formulation requires M horizon constraints as opposed to the single-horizon con- straint in NLP1. In all, NLP2 requires [M*Np + M] constraints compared to [M*Np + 1] in NLPI. The number of variables in NLP2 and NLP1 is the same since only Vs. and B~ are involved. Also note that in NLP2 the investment cost of the intermediate storage is neglected, and that the batch sizes for each product are assumed to be the same at each stage. This assumption can easily be relaxed by replacing the variables Bi in NLP2 by variables B,j to denote batch sizes of product i in stage j. This formulation can achieve 100% utilization of equipment in all the stages as will be shown in Example 3.

For the ZW policy and UIS policy with cleanup times, the scheduling information can be embedded at the design stage with MILP4 as follows. Consider the assignment constraint (13):

N YC:k'= I i '= l . . . . . N,

k '= l

Page 11: Incorporating scheduling in the optimal design of multiproduct batch plants

Scheduling in the optimal design of batch plants 151

where there will be N equations, one for each of the batches i'. Since n~ is the number of batches for each product i, and defining S~ as the set of batches belonging to product i, then by adding the above equations gives:

N

~ YC,,k, = n~ i = 1 . . . . . Np, (22) i '~S~ k ' = 1

N

~ YC,,k, = ni i = 1 . . . . . Ne, (23) k" = 1 i ' r S t

which leads to:

N

NPRS~ k, = n, i = 1 . . . . . Np. (24) k ' = l

where NPRS,k, is the number of times a batch of product i is followed by the batch k ' during the production run over the horizon period. By regroup- ing in (24) the domain of k ' ( k ' = 1 . . . . . N) into various products (k = 1 . . . . . Np) leads to:

Z = n i i = 1 . . . . . Np, (25) k = l k

Np

NPRS~k = n~ i = 1 . . . . . Np. (26)

Similar manipulation of the assignment constraints (14) leads to:

Np NPRS~k = nk k = 1 . . . . . Np, (27)

i = 1

where in both (26) and (27) NPRS~k represents the number of times the batches of products i and k occur in pairs.

From the cycle time constraint in (15) for the ZW policy, and by defining the total cycle over the time horizon H for each stage j, we get:

CT~ >1 ~= SLrkTYCi,k, j = 1 . . . . . M. t' 1 1

(28)

From (18), (24) and (27), equation (28) can be expressed as:

CT~ 1 >1 ~ SL~kjNPRS,k j = 1 . . . . . M. i = l 1

(29)

Since this cycle time must be smaller than the horizon time H for each stage, the constraints that apply are:

~ nit~+ ~ SLikINPRSik ~ H j = l . . . . . M. i = 1 k ~ l

(30)

Thus, replacing the horizon constraint in NLP1 by constraints (19), (26), (27) and (30) leads to the nonlinear program NLP3 for the optimal design of

multiproduct batch plants with ZW policy or with UIS policy involving cleanup times:

M

min ~ ctjV~J, (NLP3) j ~ l

s.t. Vj>~SuB ~ j = l . . . . . M; i = 1 . . . . . N F,

Or i = 1 . . . . . Np, ni = B-~

Np

~ NPRSik=n, i = l . . . . . Np, k = l

Np

~ N P R S e = n k k = l . . . . . Np, i ~ l

~=1 nitO + ~ SL~kjNPRS~k <~ H i ~ k ~ l

~>~0 j = l . . . . . M ni, B~>~O

j = l . . . . . M,

i = 1 . . . . . Np,

NPRS,k>~O i , k = l . . . . . Np.

Note that when compared to the model NLP1 for single-product campaigns, the formulation NLP3 is somewhat larger as it involves N ~ M + 3 N p + M constraints. Also, there are an additional Np(Np) + Np = N 2 + Np variables [NPRSa and n,]. However, note that except for (19), all the additional constraints are linear. Finally, note that the variable NPRSe< is defined for all i and all k since the case i = k represents the number of successive batches of the same product i in that sequence.

R E M A R K S

The formulations NLP1, NLP2 and NLP3 pre- sented in the previous section exhibit a unique local optimum solution. The proof for NLP1 can be obtained by transforming the problem to a geometric programming problem (e.g. see Grossmann and Sargent, 1979). The proof for NLP2 is identical. For NLP3 an outline of a proof is given in Appendix D.

It is important to note how problem NLP3 relates to problems NLP1 and NLP2. Firstly, if we set all SL~kj= O, the constraint in (30) reduces to (21) by substituting (19). Furthermore, equations (26) and (27) become redundant with which NLP3 reduces to NLP2. Thus, in this case, NLP3 would predict solu- tions corresponding to the UIS policy with zero cleanup times. Secondly, if we set the cleanup times ~)ikj to large values for products i ~ k, and zero for i = k, the slacks SLik j for the ZW policy will be large for i ¢ k. This will have the effect driving the vari- ables NPRS~k, i ~ k , to zero due to the horizon constraints of NLP3 which will in turn result in NPRSi~ = n~, i = 1 , . . . , Np. Thus, for this case the solutions of NLP3 would correspond to single- product campaigns with ZW policy which is precisely

Page 12: Incorporating scheduling in the optimal design of multiproduct batch plants

152 D.B. BIREWAR and I. E. GROSSMANN

the solution that is obtained with NLP1. Moreover, following a similar reasoning, if one were to apply NLP3 to the UIS policy with ~'~kj > 0 for i 4= k, 3'~,j = 0, since SLjk j = 7~ks, the schedule would also reduce to single-product campaigns but with intermediate stor- age (see Example 3). Finally, it is also interesting to note that if production of different products with overlap is not allowed in the ZW policy, this can be accomplished by setting the cleanup times in stage 1 as:

M

7 ~ = ~ t,j, i ~ k . j = 2

It should also be noted that any of the three models NLP1, NLP2, NLP3 can easily be extended as multi- period models to account for product demands that vary over different time periods.

The formulations NLP2 and NLP3 have the im- portant feature of considering for the optimal design mixed product campaigns with the UIS and the ZW scheduling policies, respectively. Since these limiting policies can increase the utilization of the equipment, formulations NLP2 and NLP3 will produce for the case of small cleanup times designs that exhibit smaller equipment sizes than the formulation NLP1 for single-product campaigns. It should be noted that from the solutions of NLP2 and NLP3, one can derive with the predicted number of batches for each product one or several detailed schedules with equiv- alent cycle time. In simple cases this can be done by inspection, but generally through the use of formula- tions MILP3 and MILP4. However, formulations NLP2 and NLP3 can in principle produce schedules which change continuously over the specified time horizon H (e.g. 1 yr). This follows from equations (20) and (29) where the cycle times for each stage were defined for the total number of batches that are to be produced over the horizon time H.

In the case where the formulations predict number of batches n i that are in integer ratios, the above difficulty can be easily circumvented so as to produce schedules that involve cycles of relatively short dur- ation that are repeated periodically. For example, assume that 100 batches are predicted for product A, 200 for product B and 150 for product C. Then, the simplest alternative to deriving a detailed schedule would be to consider cycles consisting of 2 batches of product A, 4 of B and 3 of C. Alternatively, one might consider cycles consisting of 4 batches of A, 8 of B and 6 of C. As shown in Appendix E the cycle time of the shorter cycles multiplied by the number of cycles Nc is equal to the total cycle time C T H over the horizon time H. Hence, neglecting for the effects of switchover times, the alternative schedules are equivalent.

In a number of instances, however, formulations NLP2 and NLP3 may predict number of batches ni that are not in integer ratios, which would then imply that the resulting schedule would have to change

continuously over the time horizon H. In order to obtain schedules that are more convenient to imple- ment, although not necessarily optimal, one can resolve NLP2 and NLP3 by rounding-off the ratio of number of batches so as to force the schedules to have multiple identical subcycles in the given time horizon. This can be accomplished as follows:

denote by q the product with the fewest number of batches; that is,

nq<,n i i = 1 . . . . . Np, i # q . (31)

If the total number of batches of product q to be produced in the horizon time H is r/q, then the ratio of number of batches that is to be rounded to a rational number will be given by:

ni Riq =. - - i = 1 . . . . . Np, i ~ q. (32)

nq

In this way, by resolving NLP2 or NLP3 with constraint (32), schedules involving shorter cycles with integer number of batches can be obtained by considering at each cycle Riq × NCq batches for product i, where Nq c and Riq × N c are integer num- bers. Also the number of cycles will be given by N C = rlq/SCq.

As an example suppose that either NLP2 or NLP3 predict 124 batches of A, 186 batches of B and 380 batches of C. Here product q (the product having least number of batches) corresponds to product A. Then a suitable choice of the ratios in (32) would be RBA = 1.5, RcA = 3. By resolving the NLP problem with these constraints, shorter cycles containing each only 11 batches (2 of A, 3 of B and 6 of C) can be obtained by specifying NA c = 2. Since the simpler schedule will require increased equipment sizes, the designer would need to establish the tradeoff between simplicity in the scheduling and investment cost of the units. This point will be illustrated in Example 4. Finally, it is clear that other alternative schemes for handling noninteger ratios of batches are also possible.

EXAMPLES FOR DESIGN AND SCHEDULING

E x a m p l e 3

This design problem consists of products A and B that are to be produced in a batch plant with 3 stages. Data on the size factors, processing times and eco- nomics are given in Table 6. The case of zero cleanup times will be considered first. This problem was solved with formulation NLP1 (single-product cam- paign), NLP2 (UIS) and NLP3 (ZW) with MINOS 5 (Murtagh and Saunders, 1985) through the computer code GAMS (Meeraus and Brooke, 1985). NLP1 required 5 variables and 7 constraints, NLP2, 5 and 9, NLP3, 11 and 15. The computer times were 1.03, 1.53 and 3.59 s of CPU time, respectively on an IBM 3083.

Page 13: Incorporating scheduling in the optimal design of multiproduct batch plants

Scheduling in the optimal design of batch plants

Table 6. Data for Example 3

Production" requirements: QA = 40,000 kg, Qs = 20,000 kg. Cost coefficients: % = $250 flj = 0.6 Horizon time: H = 6000 h

Size factors (1 kg-i) . Batch processing times (h)

S,j A B t~ A B

Stage 1 2 4 Stage 1 8 16 Stage 2 3 6 Stage 2 20 4 Stage 3 4 3 Stage 3 8 4

Table 7. Cleanup times for Example 3

Y~j j ik A-A A-B B-A B-B

(a) small cleanup times (h) Stage 1 0 0.7 1.6 0 Stage 2 0 1.9 1.0 0 Stage 3 0 0.2 0.6 0

(b) large cleanup times (h) Stage I 0 5.8 5.2 0 Stage 2 0 4.4 4.2 0 Stage 3 0 4.1 5.2 0

153

As seen in Table 8, the optimal design with UIS involves the lowest investment cost, $30,185.60, which is 21% lower than the one with single-product campaigns. If storage vessels are assumed to cost one-fifth the cost of manufacturing units (i.e. ctj = 50 in Table 6), then with the two storage tanks which require volumes of 320 and 4801, the difference reduces to 12%. As for the design with ZW, the investment cost of $35,973.50 is 7% lower than for the case of single-product campaigns. Note from Table 8 that these reductions are due to the fact that with UIS and ZW the equipment sizes are significantly smaller and the number of batches is higher. Also note from Table 8 that the ratio of the numbers of batches of A and B is one for both UIS and ZW policies. From the solutions to NLP2 and NLP3 it is easy to derive the schedules which involve alternating one batch of A and one batch of B as shown in Fig. 7 Also, note that the total makespan is not exactly 6000 h due to rounding in the number of batches and to the approximations with the cycle times.

It is interesting to note that if unequal batch sizes for various stages are allowed in NLP2 for the UIS case, then the cost of equipment reduces from $30,185.6 down to only $25,038. The reason is that in this case, full utilization of all the units is achieved. In particular, the batch sizes in stage 3 change from 160 and 80 kg, to 63.3 and to 84.4 kg for A and B, respectively. With this, the volume in stage 3 is of 253.31 instead of 6401. However, in this design the storage requirement increases substantially.

Also, to verify the observations in the remarks section on the effect of cleanup times, problem NLP3 was resolved for ZW and UIS policies. As shown in

Table 7, small and large cleanup times were consid- ered. For the case of the ZW policy, the smaller cleanup times still required alternating between batches of A and B (see Fig. 8a). As seen in Table 8, this design is cheaper than single-product campaigns. For large cleanup times, the solution for the ZW policy corresponds to single-product campaigns (see Fig. 8b). For the case of the UIS policy, both small and large cleanup times lead to single-product cam- paigns (see Figs 8c,d). Also, as seen Table 8, the design for UIS remains invariant to cleanup times when the cost of intermediate storage is not consid- ered. This is due to the fact that, except for the effect of product changeovers (which is negligible), the schedule in Figs 7c, 8c and 8d are all equivalent. The cost differences, however, would arise in the require- ments for intermediate storage. In particular, it can be seen that the storage requirement in Figs 8c and d will be much larger than for the schedule in Fig. 7c.

Example 4

This design problem consists of 6 products: A, B, C, D, E and F in a plant involving 4 production stages. The data are given in Table 9 where zero cleanup times are assumed. NLPI required 10 vari- ables and 25 constraints NLP2, 10 and 28, NLP3, 52 and 46. The computer times required were 4.385, 6.005 and 7.470 s of CPU time, respectively on an IBM 3083.

As seen in Table 10, when no roundoff constraints are imposed on the ratios for the number of batches, the design with UIS has only an investment cost of $159,198 (neglecting intermediate storage). The de- sign with ZW has a cost of $183,208 and the one with single-product campaigns costs $206,812. However,

Table 8. Optimal design for Example 3

Volumes (1) No. of batches Batch sizes (kg)

Sequencing policies V1 V2 V3 n^ nB BA Ba Capital cost ($)

With zero cleanup times Single product 480 campaigns ZW 429 UIS 320

With small cleanup times ZW 450 UIS 320

With large cleanup times ZW 480 UIS 320

720 960 167 167 240 120

643 857 187 187 214 107 480 640 250 250 160 80

676 901 178 178 224 112 480 640 250 250 160 80

720 960 167 167 240 120 480 640 250 250 160 80

38,499.80

35,973.50 30.185.60 l

37,070.10 30,185.601

38,499.80 30,185.601

ICost of intermediate storage is not included.

Page 14: Incorporating scheduling in the optimal design of multiproduct batch plants

54 D.B. BIREWAR and I. E. GROSSMANN

0•I 2 , 8 6 . [ 167 times ] ..

8

3336 5992

( a ) Tt - 6016

0 16

28 40

5952 5966 5984

~ ' 1 ~ 5~5 ..[187 times].. I i1~1

5960 ! 5980 Tt / 5992

( b )

5976

.[ 250 times ]

40

6000

28 T t . 6016

( c )

, ~ Produc t A . . . . . . . . P roduc t B

Fig. 7. Optimal schedules for Example 3 with zero cleanup times: (a) single-product campaigns; (b) ZW policy (MPC); and (c) UIS policy (MPC).

5982.6 5998.8 6014.8 0 16.2

| ! • ~ ..[178 times]..

v

28 40.2 Tt - 6022.8 ( a )

.. [ 167 times ] .. 6

5996.1 3340.1

( b ) 3360.1 "It. 6020.1

000.7 6.7 5009.9 6000.7

- - _ 1 0139 . . . . . . "% 28 36 46 s006 I's0162 - - "It - 6016.2

( C ) 5016

2005.8 ~ .8 6005.8 6 5012.4 . . . . . . . . J

.... / 5016.4 ~ . . . . . . . . ~ [ 250jimes ] ... I _ . ~ [25Oti~'~°s]'77'" - - - - - ....j ,

28 as 48 6006 I ;020.1 T1.e020.1 5016

(d)

, , Product A ~ Product B mm Clean-up T imes

Fig. 8. Optimal schedules for Example 3 with cleanup times: (a) ZW policy (small cleanup); (b) ZW policy (large cleanup); (c) UIS policy (small cleanup); and (d) UIS policy (small cleanup).

Page 15: Incorporating scheduling in the optimal design of multiproduct batch plants

Scheduling in the optimal design of batch plants

Table 9. Data for Example 4

155

Q [production requirements (kg)] Product A 300,000 Product B 200,000 Product C 400,000 Product D 300,000 Product E 100,000 Product F 100,000

Cost coefficients: ct, = $250 flj = 0.6 Horizon time: H = 6000 h

Size factors (1 kg - ~ )

S,j A B C D

Stage 1 2 7 1 5 1 Stage 2 3 3 4 5 6 Stage 3 2 1 3 2 3 Stage4 6 2 2 6 2

Batch processing times ( h )

F t,l A B C D E F

4 Stage 1 6 1 2 8 4 3 1 Stage 2 2 5 7 1 l 6 1 Stage 3 4 3 3 5 2 2 4 Stage 4 1 5 7 2 2 4

the n u m b e r of batches in UIS and Z W exhibit noninteger rat ios which implies tha t the correspond- ing schedule would change cont inuously over the t ime hor izon of 6000 h.

In order to obta in more reasonable schedules, the roundof f const ra in ts (32) can be imposed. Fo r in- stance, in the case of Z W policy where 251,234, 264, 251, 100 and 67 batches were obta ined (see Table 10) the computed ratios are as follows:

nA = 3.746; n_~a = 3.493; nc = 3.94; nF nF nF

n~o = 3.746; n~ = 1.493. nv nv

It should be recognized tha t the pattern o f the scheduling is critically dependent on these ratios. Thus, in order to minimize the penalty in capital cost incurred by the rounding-off procedure, it is impor- t an t to change the above ratios by the least extent possible. The selected ratios in (32) for the first level of roundof f were as follows:

RAF = 3.667, RBF = 3.333, RCF =- 3.333,

RDF = 3.667, REF = 1.333

F r o m the solut ion of NLP3 with these rat ios and by setting NF c = 3, results in a design with a schedule

tha t consists of 24 identical cycles, each involving the processing of 49 batches (11 of A, 10 of B, 10 of C, 11 of D, 4 of E and 3 of F). In order to obta in a schedule tha t will repeat with higher frequency, the rat ios have to be rounded-off further. For the next level of roundof f the selected ratios were:

RAF = 3, RaF = 3, RCF = 3.5,

RDF ~-- 3, REF = 1.

F r o m the solut ion of NLP3 and by setting N c = 2, 40 cycles are ob ta ined each involving 29 batches (6 each of A, B and D, 7 of C, 2 of E and 2 of F). The capital cost for the design resulting f rom first roundof f is $186,017 (savings of 10.1% as compared to single-product campaigns) , which increases to $190,820 (savings of 7 .7%) after the second roundoff.

The detailed schedules for the above two designs (see Fig. 9a,b) were derived using M I L P 4 pre- sented earlier on in this paper. The design after first rounding leads to a schedule consist ing of 24 cycles, each involving 45 batches of products A, B, C, D, F, followed by 4 batches of p roduc t E. The cycle t ime for the opt imal schedule was 249 h. The scheduling problem MILP4, consist ing of 2401 integer variables and 1 con t inuous variable, gave integer solut ion when solved as an LP on an IBM 3083 using M P S X th rough G A M S . The C P U times

Table 10. Optimal design for Example 4

ZW Single- product No roundoff 1st roundoff 2nd roundoff

campaigns 1 cycle 24 cycles 40 cycles

UIS

No roundoff 1 cycle

Rounded off 24 cycles

Volumes (1) V1 7407.4 V2 7352.9 V3 5504.6 V4 8823.5

No. of batches[batch size (kg)]

5982.9 5833.3 6250.0 5128.2 5555.6 6060.6 6666.7 7500.0 5102.0 5208.3 4545.5 5000.0 4285.7 2666.7 2631.6 7171.3 6818.2 7500.0 6122.5 6250.0

Produet A 204 [1470.6] 251 [1195.2] 264 [1136.4] 240 [1250.0] Product B 191 [1047.1] 234 [854.7] 240 [833.3] 240 [833.3] Product C 218 [1834.9] 264 [1515.2] 240 [1666.7] 280 [1428.6] Product D 204 [1470.6] 251 [1195.2] 264 [1136.4] 240 [1250.0] Product E 82 [1219.5] 100 [1000 ] 96 [1041.7] 80 [1250.0] Product F 54 [1851.9] 6711492.5] 72 [1388.9] 80 [1250.0]

Cost (S) 206,812 183,208 186,017 190,820 Savings over single-product - - 11.4% 10.1% 7.7% campiagn

294 [1020.41 275 [727.3] 450 [888.9] 294 [1020.41 118 [847.5] 78 [1282.1]

159,198 t

23.0% L

288 [1041.71 264 [757.6] 456 [877.2] 288 [1041.7] 120 [833.3] 72 [1388.9]

162,147 ~

21.6% I

~Cost of intermediate storage not included.

C.A.C.E. 13/I-2--K

Page 16: Incorporating scheduling in the optimal design of multiproduct batch plants

56 D .B . BIREWAR and I. E. GROSSMANN

o . . ~ . W

m I -

• O~

~ Do ~

i~ Do

Page 17: Incorporating scheduling in the optimal design of multiproduct batch plants

Scheduling in the optimal design of batch plants 157

-r

-r

tTr-7"..

.9.o

e- tD r~ O~ ¢q e-

c-

O

O

8 t,D

II

I-- to

°.

n

LK

E] " '

~ O

0 0

D O

.9 e~ o

e~ 8

o e~

.9

"O

e~

E e~

©

Z kU

Page 18: Incorporating scheduling in the optimal design of multiproduct batch plants

158 D. B. BIREWAR and I. E. GROSSMANN

required were 3.71 min for generation and execution of the model and writing the output in a file. The design after the second rounding leads to a schedule consisting of 40 identical cycles each containing 29 batches. The optimal cycle time was 150h. The scheduling problem, MILP4, consisting of 841 integer variables and one continuous variable, gave integer solution when solved as an LP on an IBM 3083 using MPSX through GAMS. The CPU times required were 25.73 s for generation and execution of the model writing the solution in a file.

For the UIS policy the following ratios were selected:

RAF = 4, RBF = 3.667, RCF = 6.333,

RDV = 4, REF = 1.667.

With N c = 3, the resulting design involves a sched- ule with 24 cycles each involving 62 batches (12 of A, 11 of B, 19 of C, 12 of D, 5 of E and 3 of F) with a cycle time of 247 h. The increase in the capital cost for having this simpler schedule is of only $2949. Clearly the final selection from the designs in Table 10 will depend on the cost of intermediate storage and the preference given to simple schedule over lower capital investments.

CONCLUSIONS

This paper has presented new NLP formulations for the optimal design of multiproduct batch plants that account for the UIS and ZW scheduling policies in mixed-product campaigns that may or may not involve cleanup times. These formulations rely on the use of simplified constraints that were derived from effective scheduling models that minimize the cycle time. For the case of UIS policy with no cleanup times, the minimum cycle time can be obtained from an analytical expression. The scheduling model for the ZW policy and~ UIS with cleanup times has the interesting feature that it can be formulated as a 0-1 minimax problem which exhibits 0-1 solutions for the cases where one unit limits the cycle time. Otherwise it has zero gap which implies that it can be solved as an LP problem in most cases. The 0-1 minimax model can also predict single- product campaigns (e.g. when cleanup times are involved).

Two numerical examples have been presented for scheduling, and two examples for the optimal design problem. The former have shown that scheduling solutions that minimize cycle time can be obtained very efficiently. The latter have shown that substan- tial economic savings can often be obtained in the investment cost of multiproduct batch plants by anticipating efficient scheduling policies. Further- more, a simple rounding scheme has been proposed to control the complexity of the schedule in the design problem.

Acknowledgements--The authors would like to acknowl- edge financial support from the National Science Founda- tion under grant CPE-8351237 and for partial support from the Engineering Design Research Center at Carnegie Mellon University. The helpful comments by Professor Rippin and the reviewers are greatly appreciated.

REFERENCES

Flatz W., Equipment sizing for multiproduct plants. Chem. Engng 87, 71-80 (1980).

Garfinkel R. S. and G. L. Nemhauser, Integer Programming. Wiley, New York (1972).

Grossmann I. E. and R. W. H. Sargent, Optimum design of multipurpose chemical plants. Ind. Engng Chem., Process Des. Dev. 18, 343-348 (1979).

Klossner J. and D. W. T. Rippin, Combinatorial problems in the design of multiproduct batch plants---extension to multiplant and partly parallel operations. Paper 104e AIChE Annl Mtg, San Francisco (1984).

Ku H.-M. and I. A. Karimi, Scheduling in multistage serial batch processes with finit intermediate storage---Part I: MILP formulation; Part II: Approximate algorithms. AIChE Annl Mtg, Miami (1986).

Meeraus A. and T. Brooke, GAMS. Development Research Department, The World Bank, Washington (1985).

Murtagh B. A. and M. A. Saunders, MINOS User's Manual. Stanford University, Palo Alto (1985).

Papadimitriou. C. H. and K. Steiglitz, Combinatorial Optimization: Algorithms and Complexity. Prentice-Hall, Englewood Cliffs, New Jersey (1982).

Rippin D. W. T., Simulation of single and multiproduct batch chemical plants for optimal design and operation. Comput. chem. Engng 7, 137-156 (1983).

Sparrow R. E., G. J. Forder and D. W. T. Rippin, The choice of equipment sizes for multiproduct batch plants: heuristics vs branch and bound. Ind. Engng Chem. Process Des. Dev. 14, 197-203 (1975).

Wismer D. A., A solution of the flowshop scheduling problem with no intermediate queues. Op. Res. 20, 689~97 (1972).

Yeh N. C. C. and G. V. Reklaitis, Synthesis and sizing of batch/semicontinuous processes. AIChE Annl Mtg, Chicago (1985).

APPENDIX A

Determination of Slack Times for MILP4

Formulation MILP4 requires the determination of the slacks of all stages (j) for all possible combinations of pairs of the N batches of Np products. The total number of permutations of batches that is possible when two are taken at a time is given by, N 2 - N. For example, consider the data given in Table l. Here the total number of combinations of batches is 6(N = 3). They are:

A-B, A-C

B-A, B-C

C-A, C-B (A1)

In order to determine the slacks SLik j for zero cleanup times, the following simple procedure can be applied for each pair of product batches i, k.

1. Set the final times 0~ for batch i in the M stages ( /= I . . . . . M) by the equations:

- ~ t u j = l . . . . . M. (A2) 00.- / = 1

Page 19: Incorporating scheduling in the optimal design of multiproduct batch plants

Scheduling in the optimal design of batch plants

2. Set the initial times 0~j for batch k in the M stages (j = 1 . . . . . M) by the equations:

y 0~t 0,~; 0 ' 0 ~ + Z tk, J = l , M--1. k d + l ~ , • • ,

/ = 1

(A3)

3. (a) Calculate the differences between initial and final times:

m 1 F d, kj--Okj--O U j = l . . . . . M;

(b) set the time violation d~kto:

(A4)

dik= min {d, kj}; (A5) J - l , . . , M

(c) set the slacks SL~ks to:

SLig j = ---d,k + d,k j j = 1 . . . . . M. (A6)

It can be easily verified that for the example in Table 1 the above procedure yields the slacks shown in Table 4a.

For the case when the cleanup times, )'~kj, are nonzero, the above slack times must be modified as follows:

(d) denote by SL~j the slacks computed in step 3c, and set:

6ikj = max{0, ?~y - SL;kj}; (A8)

(e) set the slack increase 3,k to:

3,k= max {6,kj}; (A9) y = l . . . . . M

(f) set the slacks SL,ks to:

SL~j = SL;~j + ~,k" (A10)

The slacks obtained using above procedure for example in Table 1 with cleanup times of 1 h are shown in Table 4b.

APPENDIX B

On the LP Relaxation of Problem MILP4

Problem MILP4 for minimizing the cycle time with ZW policy corresponds to the following problem [see equations (12-15)1:

mi~ CT, (MILP4)

s.t. + t,j-- CT <~ O j = l, M, 1 S L i k j Y C ' k " " " ' t i = l

i = l . . . . . N, YCik = I

~ YC,k=I k = l . . . . . N, t = l

YC,k=0,1 i = I . . . . . N; k = l . . . . . N

i # k ; CT>~O.

The following proposition establishes the relation of above MILP with its LP relaxation.

Prolmsition---The LP relaxation of problem (MILP4) ex- hibits: (a) 0-1 solutions for the case of one stage that limits the cycle time; (b) zero-gap for the case where 2 or more stages limit the cycle time.

Proof

1. Consider the case when the optimal solution of MILP4 is defined by a single stage; say the element j* of the

159

inequalities that define the cycle time CT. MILP4 then reduces to:

N N N

s.t. min ~ ~ SL,*kjYC~ + ~ t*, (B1) i = l k = l i = 1

YC~ = I i = l , . . . , N , k = l

N

YCo,=l k = l . . . . . N, i = 1

YC~=O, 1 i = l . . . . . N; k = l . . . . . N, i e k .

Since (BI) corresponds to an assignment problem, it is well known (see Garfinkel and Nemhauser, 1972) that due to the unimodularity of its constraints, its LP relaxation yields 0-1 values for the variables YCu,. Furthermore, since j* has the largest cycle time it follows that for:

M

0~<aj~<l, j = l . . . . . M, j v ~ j *, 0<~ay<l , ~ a j = l , J = l

Z Z S L ~ j + t * > Z aj SLik,+ Z t , (B2) (*,k) e l ' t = 1 ) = 1 k ( i . k ) e l ' t = 1 _1

where I ' = {(i, k)l YC~ = 1 from the solution of (B1)}. That is, the cycle time of stage j* is strictly greater than a linear combination of cycle times of all the stages with aj < 1.

2. Consider the case when the optimal solution of MILP4 is defined by more than one stage; that is by the inequalities y~sA where ISA/> 2.

Problem MILP4 then reduces to:

min CT, (B3)

N N N

s.t. ~ E SL~,sYCe, + ~ t , j - C T = O j e J A, (B3) t = l k - I i = l

YC,k = I i = l , . . . , N , k = l

~ YCe,=I k = l . . . . . N, i = 1

YC,k=O, 1 i = l . . . . . N; k = l . . . . . N,

i # k ; CT>~O.

Incorporating the complicating constraints on CT in the objective function through the Lagrangian L, and relaxing the 0-1 constraints yields:

min L = ~ SL,kjYC,k + ~ t,l j E J k t I k I t = 1

s.t. i YC, k = I i = l . . . . . N, (B4) k = l

N

YC,k= I k = l . . . . . N, t - I

0~<YC,k=I. i = 1 . . . . . N; k = l . . . . . N, iq :k;

where ~.j are the nonnegative Lagrange multipliers for the constraints j e JA in (B3). These multipliers satisfy the equation:

Z ~j=l, ~ J A

which follows from the stationary condition of the Lagran- gian in (B3) with respect to CT.

The LP problem (B4) is also an assignment problem, and hence its solution yields 0-1 values for the variables YC,k. The optimal Lagrangian in (B4) will then be given by:

L* = ~ 2 * [ ~ ~ SL,kjYCik + L t,j], (B5) ~ J A L ( i , k ) E/" i = 1

Page 20: Incorporating scheduling in the optimal design of multiproduct batch plants

160 D. B. BIREWAR and I. E. GROSSMANN

where I" = {(i, k)l YCik = 1 from the solution of (B4)}, and 2* are the optimal Lagrange multipliers in the LP relaxation of (B3).

It remains to be proved that there is no dual gap between L* and the solution of MILP4. If there is a gap, there will exist at least one stage j*eJA, for which:

E SL,kj+ E t S L b + t*. J~JA I = 1 _]O,k) ~r' t = 1

(B6)

But from (B2) this would then imply that only one stage j* defines the active constraint for the cycle time in MILP4, which contradicts the assumption that IJA] ~> 2. Therefore, for IJAI >/2 the LP relaxation of MILP4 has no dual gap.

(QED) It should be noted from the above proposition that ~ 1

solutions from the relaxed LP of MILP4 will always be obtained if there is only one stage that limits the cycle time. For the case of two or more stages, the dual gap will be zero. Since there is no unimodularity of the constraints in MILP4 in this case, MILP4 may require a branch and bound search for the 0-1 solutions but with zero-gap. Most cases in practice however, will yield (~1 solutions when solved as an LP.

A P P E N D I X C

Solution of Minimum Makespan with Minimum Cycle Time

Problem MILP4 will determine a sequence of N batches, S = {Pt, P2 . . . . . PN}, that minimizes the cycle time. The alternative sequences

SZ= {PI, Pl+l . . . . . PN, el , P2 . . . . . P,-1);

l = 1 . . . . . N , I # I ,

wiil also exhibit, the same cycle time since the same ordering of batches is maintained for the cycle. In order to schedule and select among the sequences S I, 1 = 1 . . . . . N, the one that minimizes the makespan the following formulation can be applied:

let the stk be the elements of the ordered sequence,

S I = {Sil, s12 . . . . . SIN} = { P I , P I+I . . . . . P N , PI , P2, P I - I }

l = 1 . . . . . N (C1)

and define the binary variables Z *,

where Zk f l if sequence S k is selected

= [0 otherwise k = 1 . . . . . N. (C2)

Then, from equations (3-18), the minimization of the makespan leads to MILP problem:

min T, N

s.t. TF,, = TI,, + ~ Zkt(~,,)s l = 1 . . . . . N; k - I

j = I , . . . , M ,

TFyI~TIj.I+ t 1=1 . . . . . N; j = l . . . . . M,

UIS:TFj/~<T/j+Is l = 1 . . . . . N; j = l . . . . . M - l ,

ZW:TFj~=TIj+t j l = 1 . . . . . N; j = l . . . . . M - l ,

CTj = TFjN - TFjL j = 1 . . . . . M,

T~ >f (T!,, -- TI,~) + NcCTj+ (TFMN -- TFjN)

j = l . . . . . M,

~ Z k = l , Z ~ = 0 , 1 k = l , . . . , N . k=l

Note that the above MILP involves only N 0-1 binary variables. Solution of this MILP will then select among the schedules with minimum cycle time the one that leads to minimum makespan.

A P P E N D I X D

On the Uniqueness of the Solution of N L P 3

Only an outline of the proof will be presented here. First consider the valid relaxation of (19):

Q, ni>~ ~ i = 1 . . . . . Np. (DI)

By defining b, = ln(B,), the above reduces to:

Qiexp(-bl)-n~<~O i = 1 . . . . . Np, (D2)

while the constraint on volumes with vj = ln(Vj) leads to:

S~exp(b,-vs)<~l j = l . . . . . M; i = 1 . . . . . Np. (D3)

By substituting (19) into (30) and applying the transforma- tion on B,, leads to:

~_,{Q, exp(-bf)-k~=SLi~sNPRSu,}<~H

j = 1 . . . . . M. (D4)

Finally, the objective can be expressed as

min ~ a s exp(flsvl). (D5) j= l

Thus, since (D5) involves a convex objective function subject to a set of convex constraints [(D2), (D3), (26), (27), (D4)] NLP3 has a unique local optimal solution.

A P P E N D I X E

On the Relation of Cycle Times for Schedules Involving Fewer Number of Batches

Proposition---Let CT n be the cycle time of a schedule involving nj batches of each product i. Also let CT be the cycle time of a schedule involving N c shorter cycles with R,qN c batches of each product i (see remarks section for

c notation), where R,qNq <~ n,. Then C T n = N c C T for the UIS and ZW policies.

e ~ o o f

1. UIS policy: we have from (18),

CTU= max _ _ t~ , (El) j= l , . ~M(l= 1

since nl = Riqnq,

C T ~ = max ~ ~ nit,.'~ = n. max ~ ~ R,qt,j}. (E2) s= t . . . . . M(~--l ~) ~s= l,...M(,__'yl

Also , s ince nq = gcNCq :

CTtt = N c max ~ ~ NCR,qto~. (E3) J=~, . .Mb=~ .)

But NCR,q is the number of batches cycles. Thus it follows that:

CT n = N c CT. (E4)

Page 21: Incorporating scheduling in the optimal design of multiproduct batch plants

Scheduling in the optimal design of batch plants

2. ZW policy: where: following a similar reasoning from (15) we have:

CTn= max ~ ~ SL,kj+ ~ t , 1 , (E5) J=l, " M L t = l k = l i=1

CT n= max _ ~ -- n,~SL,k j+ n,t , (E6) J=f,.. M(j=--ik=l

Np Np

C T H = l , q max ~ ~ RiqkSLikjdf - ~ Rtql t j t , J = l ' ' " M [ j = l k = l i=1 )

( Np Np Np ..j CTn=Nc max , ~ ' S" NCRikSL~.+ S" NCR t I,

I M ~ ~ q q J ~ q tq tJ 1 . . . . . ~,=lk=l i=1 J

CT n = N c CT, (E7)

161

Np Np Np

E nik=n,; En~=n~; R,q= E R~q and k-I t=l k=l

n - * c (E8) q - - N C N q .

QED

Thus, if the ratio among the number of batches of various products is maintained, minimizing the cycle time of a cycle containing a smaller number batches will result in a cycle time that is equivalent to that of the global cycle containing all the product-batches in the larger time hori- zon. Note that this result is only valid for the case of zero cleanup times.