A New Approach for Efficient Rescheduling of Multiproduct Batch

In this paper, a novel solution approach to addressing the problem of efficient reactive scheduling in multiproduct batch plants is presented. The app...
0 downloads 4 Views 132KB Size
4228

Ind. Eng. Chem. Res. 2000, 39, 4228-4238

A New Approach for Efficient Rescheduling of Multiproduct Batch Plants Jeetmanyu P. Vin and Marianthi G. Ierapetritou* Department of Chemical and Biochemical Engineering, Rutgers University, 98 Brett Road, Piscataway, New Jersey 08854

In this paper, a novel solution approach to addressing the problem of efficient reactive scheduling in multiproduct batch plants is presented. The approach is based on a two-stage solution procedure whereby, at the first stage, the deterministic schedule is established on the basis of data at the current time and, at the second stage, the optimal reschedule is obtained from the solution of a proposed formulation that systematically incorporates all different rescheduling alternatives. Two kinds of disturbances are consideredsmachine breakdown and rush order arrival. The rescheduling problem is formulated as a mixed integer linear programming (MILP) problem using a continuous time formulation, which leads to a smaller number of binary variables for both the deterministic and the rescheduling problems thus, resulting in reduced computational times. It is shown that the proposed approach results in an efficient utilization of the plant capability as it allows the optimal selection among all rescheduling alternatives in a systematic way without the use of any heuristics. Moreover, the objective function used allows the decision maker to determine the optimal reschedule in terms of profitability and plant operability by allowing the selection of a rescheduling policy close to the original schedule. The effectiveness of the proposed approach is illustrated through a number of case studies from scheduling literature for both single and multiple disturbances. 1. Introduction In the chemical batch processing industry, scheduling is a very important problem given the inherent flexibility of the plant. It involves the determination of the order in which different tasks are carried out on different equipment and the detailed timing of the execution of all tasks so as to optimize plant operation in terms of some specific performance criterion. A very important problem that is associated with batch plant scheduling is the variety of unexpected events that occur during plant operation, which would make the existing schedule suboptimal or even infeasible. This means that any schedule will, in practice, be subject to frequent revision. The capability of any schedule to react to unexpected events during plant operation is thus as important as the scheduling problem itself. Many approaches have been proposed in the literature to deal with this problem. These approaches either address the problem before the execution of the schedule or rely on some heuristics. Among the approaches that address the problem prior to schedule execution is the approach suggested by Karimi and Reklaitis1,2 who proposed that storage be designed between processing units and that a reserve of material be maintained in storage for the downstream processors. Another approach is to modify the process conditions in order to change the processing times so as to return the operation to the original schedule (Onogi et al.3). Approaches that deal directly with the impact of a deviation on the rest of the schedule include mainly heuristic-based procedures. Cott and Macchietto4 proposed that the remaining batches be shifted in the * Author to whom correspondence should be addressed. Tel: (732)445-2971. Fax: (732)445-2421. E-mail: marianth@ sol.rutgers.edu.

schedule in time. Kanakamadela et al.5 presented a least-impact heuristic search scheme for reactive schedule modification in multipurpose batch chemical plants. Jain and Elmaraghy6 used a genetic algorithm procedure to obtain an initial schedule and later to revise it on the basis of parameter variability. Suh et al.7 used a constraint-satisfaction approach and the utilization of heuristics in the development of an expert scheduling system. In this work, a novel solution approach is developed to address the problem of efficient reactive scheduling in multiproduct batch plants. The proposed approach is based on a two-stage solution procedure. At the first stage, the deterministic schedule is formulated on the basis of the continuous time short-term scheduling formulation proposed by Ierapetritou and Floudas.8 The deterministic model is solved to determine the optimal schedule using the data given at the current time. For the second rescheduling stage, a mathematical model is proposed that systematically incorporates all different rescheduling alternatives so as to obtain a solution that satisfies new and existing requirements. The objective includes a term for profit maximization and a penalty term that is used to minimize the deviations from the original schedule. Moreover, the procedure is sufficiently general to handle more than one disturbance during the scheduling time horizon. The applicability of the proposed approach is illustrated through a number of example problems taken from scheduling literature. 2. Review of the Deterministic Scheduling Approach For the deterministic short-term scheduling problem, the model proposed by Ierapetritou and Floudas8 is used. It is based on a continuous time representation

10.1021/ie000233z CCC: $19.00 © 2000 American Chemical Society Published on Web 09/14/2000

Ind. Eng. Chem. Res., Vol. 39, No. 11, 2000 4229

and is shown to result in smaller models in terms of binary and continuous variables and constraints. The mathematical model has the following form:

∑s ∑n price(s) d(s,n)

maximize

(1)

subject to

Allocation Constraints wv(i,n) ) yv(j,n) ∑ i∈I

∀ j ∈ J, n ∈ N

(2)

j

Capacity Constraints Vmin wv(i,n) e B(i,j,n) e Vmax if if wv(i,n) i ∈ I, j ∈ Ji, n ∈ N (3) Storage Constraints ST(s,n) e STmax(s) ∀ s ∈ S, n ∈ N

(4)

Material Balances ST(s,n) ) ST(s,n-1) - d(s,n) +

Fpsi ∑ B(i,j,n-1) ∑ i∈I j∈J

Fcsi ∑ B(i,j,n) ∑ i∈I j∈J s

s

i

∀ s ∈ S, n ∈ N (5)

i

Demand Constraints

∑ d(s,n) g r(s)

∀s∈S

(6)

n∈N

Duration Constraints T f(i,j,n) ) T s(i,j,n) + Rijwv(i,n) + βijB(i,j,n) ∀ i ∈ I, j ∈ Ji, n ∈ N (7) Sequence Constraints Same Task in Same Unit T s(i,j,n+1) g T f(i,j,n) - H[2 - wv(i,n) - yv(j,n)] ∀ i ∈ I, j ∈ Ji, n ∈ N, n * N (8) T s(i,j,n+1) g T s(i,j,n)

∀ i ∈ I, j ∈ Ji, n ∈ N, n * N (9)

T f(i,j,n+1) g T f(i,j,n) ∀ i ∈ I, j ∈ Ji, n ∈ N, n * N (10) Different Tasks in the Same Unit T s(i,j,n+1) g T f(i′,j,n) - H[2 - wv(i′,n) - yv(j,n)] ∀ j ∈ J, i ∈ Ij, i′∈ Ij, i * i′, n ∈ N, n * N (11) Different Tasks in Different Units s

f

T (i,j,n+1) g T (i′,j′,n) - H[2 - wv(i′,n) - yv(j′,n)] ∀ j, j′∈ J, i ∈ Ij, i′ ∈ Ij, i * i′, n ∈ N, n * N (12) Completion of Previous Tasks T s(i,j,n+1) g

[T f(i′, j,n′) - T s(i′, j,n′)] ∑ ∑ n′∈N,n′en i′∈I j

Time Horizon Constraints

∀ i ∈ I, j ∈ Ji, n ∈ N, n * N (13)

T f(i,j,n) e H ∀ i ∈ I, j ∈ Ji, n ∈ N

(14)

T s(i,j,n) e H ∀ i∈ I, j ∈ Ji, n ∈ N

(15)

The objective function in eq 1 represents the maximization of profit. Different objective functions such as minimization of makespan can easily be incorporated into this formulation. The allocation constraint (eq 2) expresses the requirement that only one task can take place at each unit at each time if the unit is on at that event point. Constraints 3 and 4 represent the limitation imposed on the batch sizes by the unit capacities. Constraint 5 corresponds to material balances for every material (s) at every point (n), and constraint 6 ensures that the production meets the demand imposed by market requirements r(s). Constraints 7-15 correspond to the timing requirements needed to impose the correct duration and sequence of tasks during the time horizon under consideration. 3. Reactive Scheduling Approach The first step of the rescheduling approach is the incorporation of a set of compatibility constraints between the reactive scheduling decisions and the original schedule. The formulation has been designed to handle two very commonly encountered types of disturbances in plant operation: machine breakdown and rush order arrival. Order cancellation can also be considered similar to rush order arrival. The deterministic schedule is first obtained using the continuous time formulation described earlier. Once the deterministic schedule is obtained, all binary variables corresponding to allocation of tasks to units and continuous variables corresponding to plant operation are known. If a disturbance occurs at a particular time Tdist, all variables representing the scheduling up to this point are fixed to the corresponding values from the original schedule. Then, a new set of constraints is introduced into the formulation to reflect the disturbance and to represent the transition from original schedule to reschedule. Additional terms are incorporated in the objective function (maximization of profit) to penalize any deviations from the original schedule. 3.1. Machine Breakdown. In the event that a unit (jbreak) breaks down at time Tbreak and requires repair/ maintenance time of Tmaint, the following steps are considered in the rescheduling approach: Step 1: Fix the binary variables to comply with original schedule assignments.

FOR (i ∈ I, j ∈ Ji, n ∈ N), DO IF (j * jbreak) AND (T s.l(i,j,n) < Tbreak), THEN {

yvr1(j,n) wvr1(i,n) Br1(i,j,n) T sr1(i,j,n) Tfr1(i,j,n)

) ) ) ) )

yv.l(j,n) wv.l(i,n) B.l(i,j,n) T s.l(i,j,n) T f.l(i,j,n)

}

4230

Ind. Eng. Chem. Res., Vol. 39, No. 11, 2000

IF (j ) jbreak) AND (T s.l(i,j,n) < Tbreak ) AND (T f.l(i,j,n) < Tbreak), THEN {

yvr1(j,n) wvr1(i,n) Br1(i,j,n) T sr1(i,j,n) T fr1(i,j,n)

) ) ) ) )

yv.l(j,n) wv.l(i,n) B.l(i,j,n) T s.l(i,j,n) T f.l(i,j,n)

}

Step 2: Add time constraints to shift starting times for unit in which machine breakdown occurred.

plant operation by following the original schedule as closely as possible to be examined. Thus, the result of the proposed formulation can be directed toward a complete agreement between the original schedule and the reschedule in terms of task-to-unit allocation by assigning a large value to the penalty parameter. 3.2. Rush Order Arrival. In the case of a rush order of an additional number ∆p units of product sp ∈ S at time Trush, the following procedure is proposed for addressing the rescheduling problem. Note that Trush represents the time that the additional order arrives and not the time that it is required for delivery, which should be addressed by following the ideas of scheduling with intermediate due dates as proposed by Karimi and McDonald12 and Ierapetritou et al.13

T sr1(i,j,nb) g Tbreak + Tmaint ∀ j ) jbreak, i ∈ Ij, nb ∈ Nb (R1)

Step 1: Fix the binary variables to comply with original schedule assignments.

where Nb is the set of all event points n ∈ N that satisfy the criteria

FOR (i ∈ I, j ∈ Ji, n ∈ N), DO

s

s

(T .l(i,j,n) > Tbreak) OR (T .l(i,j,n) < Tbreak AND

IF (T s.l(i,j,n) < Trush ) THEN

T f.l(i,j,n) > Tbreak) for ANY i ∈ Ij, j ) jbreak

{

Step 3: Modify the objective function to include a penalty term in order to minimize the differences between reschedule and original schedule.

∑s ∑n price(s)d(s,n) penalty( ∑ (|wvr1(i,n) - wv.l(i,n)| + i∈I,j∈J ,n∈N

maximize

i

|yvr1(j,n) - yv.l(j,n)|) (M1) It is important to note that the rescheduling problem considers the entire time horizon and not the time horizon after the disturbance occurs. This allows all of the available information from the deterministic schedule to be considered in the rescheduling, which physically implies that there will be minimal discontinuity in plant operation in the transition from deterministic schedule to reschedule at the time the disturbance occurs. This is achieved by fixing the binary variables in step 1 to ensure that (i) the new schedule is exactly the same as the original schedule for the time period that has elapsed and (ii) the tasks that are in progress at the time of machine breakdown in units other than the one that fails are allowed to proceed to completion. The batches, on the other hand, that were in progress at the time of the breakdown at the machine that failed are assumed to be discarded, and consequently, the tasks have to be repeated after the machine’s maintenance. Moreover, this step results in the reduction of the size of the problem in terms of binary and continuous variables. The additional timing constraints introduced at step 2 act in conjunction with the sequence constraints 8-12 of the deterministic schedule to shift the start time of the remaining processing tasks. This is achieved by determining the set of event points Nb that correspond to the remaining set of points after the disturbance occurs. The starting times for all of the tasks in these remaining event points are then shifted to be greater than (Tbreak + Tmaint). The penalty term introduced at step 3 allows the flexibility for the tradeoff between maximizing profit and maintaining smooth

yvr1(j,n) wvr1(i,n) Br1(i,j,n) T sr1(i,j,n) T fr1(i,j,n)

) ) ) ) )

yv.l(j,n) wv.l(i,n) B.l(i,j,n) T s.l(i,j,n) T f.l(i,j,n)

}

This step is similar to the step 1 used for machine breakdown and has the same impact for the rush order reschedule as explained earlier. Step 2: Alter the demand constraint to account for the additional order.

d(s,n) g rrush(s) ∑ n∈N

∀s∈S

(R2)

where rrush(s) is the new market requirement at the end of time horizon including the rush order [rrush(sp∈S) ) r(sp∈S) + ∆p]. Step 3: In the case of rush order, the additional order may lead to an infeasible problem if the time horizon is kept fixed to the original time horizon because of plant capacity limitations. In this case, the following objectives are considered: (a) Maximize the total profit and/or maximize the production of rush order product within the original time horizon. (b) Minimize the makespan, i.e., find the shortest time within which the additional order can be delivered. For case a, there are two important criteria that one is interested in fulfilling: (i) deliver the additional order of the product by maximizing the production of that specific product, and (ii) maximize the total profit of the plant. To achieve these goals, an objective function of the following form is used:

∑n price(s) × priority(s) × dr1(s,n) - penalty × ∑priority′(s) × slack(s) s

maximize

The first term ∑n [price(s) × priority(s) × dr1(s,n)] is used to maximize the profit in the plant. A weighting

Ind. Eng. Chem. Res., Vol. 39, No. 11, 2000 4231

parameter priority(s) is used to effectively increase the price of a state (s) and thus maximize the profit preferentially toward the product with the rush order. The second term in the objective function penalty × ∑s [priority′(s) × slack(s)] is used to maximize the production of the various states (s). This is done by introducing the slack(s) variable to maintain feasibility under rush order arrival by relaxing the demand constraint as follows:

d(s,n) g rrush(s) - slack(s) ∑ n∈N

∀s∈S

The factor priority′(s) is a weighting factor that is used to maximize preferentially the production of different states. The penalty term is used to scale the second term in the objective function to be of the same order of magnitude as the first term so that both terms drive the optimization equally. In the above function, through changes in the values of priority(s) and priority′(s), different objective functions can be obtained that correspond to different weighted instances of product and total plant profit maximization. This provides the flexibility for the decision maker to analyze the effects of the balance between the two objectives before making a decision on which reschedule to implement. For case b, the objective function needs to be modified to minimize H. In this case, the total time horizon H is made a variable. Thus, it becomes necessary to incorporate an additional constraint that will maintain the monotonicity in the task starting times. This constraint takes the form

T sr1(i,j,n) g Trush[1 - wv.l(i,n)] wvr1(i,n) (R3) and enforces the requirement that, for all tasks that have not yet started at the time of rush order arrival, their starting time (Ts) will be greater than Trush. Also, in order to avoid the introduction of nonlinear terms, an upper bound on H is used in all sequence constraints, and an additional constraint is added for variable H of the form H e Hupper. 3.3. Multiple Rescheduling. The proposed approach is also extended to consider multiple disturbances within the scheduling time horizon. For this purpose, in order to handle a second disturbance, the reschedule that corresponds to the first disturbance is treated as the original schedule, and the approach presented in section 3.1 or 3.2 is applied if the second disturbance is machine breakdown or rush order arrival, respectively. This procedure can be applied successively to handle any number of disturbances. The proposed formulation for all cases of reactive scheduling corresponds to a mixed integer linear programming (MILP) problem that can be solved efficiently utilizing available solvers such as CPLEX.9 In the next section, different rescheduling cases are considered for two different examples taken from scheduling literature that illustrate and further clarify the applicability of the proposed approach. 4. Case Studies 4.0.1. Example 1 (Ierapetritou and Floudas8). In this example, two different products are produced through five processing stages: heating; reactions 1,2, and 3; and separation of product 2 from impure E as shown in the

Figure 1. State task network for Example 1.

Figure 2. State task network for Example 2. Table 1. Data for Example 1 unit

capacity

suitability

mean processing time

heater reactor 1 reactor 2 sill

100 50 80 200

heating reactions 1, 2, 3 reactions 1, 2, 3 separation

1.0 2.0, 2.0, 1.0 2.0, 2.0, 1.0 1 for product 2, 2 for int AB

state

storage capacity

initial amount

price

feed A feed B feed C hot A int AB int BC impure E product 1 product 2

unlimited unlimited unlimited 100 200 150 200 unlimited unlimited

unlimited unlimited unlimited 0.0 0.0 0.0 0.0 0.0 0.0

0.0 0.0 0.0 0.0 0.0 0.0 0.0 10.0 10.0

STN representation of the process in Figure 1. The data for this example are presented in Table 1. 4.0.2. Example 2 (Kondili10). In this example, four products are produced through eight tasks from three feeds. There are nine intermediates in the system. In all, six different units are required for the whole process. The STN representation for this process is shown in Figure 2, and the required data are presented in Table 2. 4.1. Machine Breakdown. Both the deterministic and the reactive scheduling formulations correspond to MILP problems and are solved using GAMS/CPLEX on a Sun Ultra-60 workstation. For Example 1, the deterministic schedule was solved using the data given in Table 1 to maximize the total profit within a fixed time horizon of 8 h. The corresponding schedule is shown in the form of a Gantt chart in Figure 3. A machine breakdown is considered for reactor 2 at time T ) 3 h, which requires a maintenance time of

4232

Ind. Eng. Chem. Res., Vol. 39, No. 11, 2000

Figure 3. Gantt chart for Example 1: deterministic schedule.

Figure 4. Gantt chart for Example 1: rescheduling for the case in which reactor 2 breaks down at Tbreak ) 3 h and requires 1 h maintenance, with penalty ) 0.

Figure 5. Gantt chart for Example 1: rescheduling for the case in which reactor 2 breaks down at Tbreak ) 3 h and requires 1 h maintenance, with high penalty. Table 2. Data for Example 2

unit

capacity

suitability

mean processing time

unit 1 unit 2 unit 3 unit 4 unit 5 unit 6

1000 2500 3500 1500 1000 4000

task 1 tasks 3, 7 task 4 task 2 task 6 tasks 5, 8

1 1 1 1 1 1

state

storage capacity

initial amount

price

feeds 1, 2, 3 int 4 int 5 int 6 int 7 int 8 int 9 products 1, 2, 3, 4

unlimited 1000 1000 1500 2000 0 3000 unlimited

unlimited 0.0 0.0 0.0 0.0 0.0 0.0 0.0

0.0 0.0 0.0 0.0 0.0 0.0 0.0 18, 19, 20, 21

1 h. The approach presented in section 3.1 is applied with the objective of profit maximization and results in the schedule shown in Figure 4. The machine breakdown results in significant profit reduction from 1 498.19 units to 896.23 units (40%).

The incorporation of a large penalty term to enforce the new schedule to be similar to the original schedule results in further profit reduction to 708.29 units (52%). The corresponding reschedule obtained is shown in Figure 5. Similarly, for Example 2, the deterministic problem is solved using the data from Table 2, resulting in the schedule shown in Figure 6. Then, a machine breakdown is considered on unit 1 at time T ) 2.5 h with a maintenance time of 1 h. Rescheduling is done for a fixed time horizon of 8 h with an objective of maximizing profit and using a high penalty term to maintain smooth plant operation. The reschedule is shown in Figure 7. For this case, the profit is reduced from 226 400 units to 151 345 units (33%). The objective used allows flexibility for exploring the trade-off between reduction in profit and movement toward the original schedule through changes in the penalty parameter in the objective function. Table 3 and Table 4 illustrate this effect for Example 1 and Example 2, respectively. Note that, as the penalty increases, the number of differences in the assignment of tasks to units between original schedule and reschedule decreases (which means smoother plant operation), but the corresponding profit decreases.

Ind. Eng. Chem. Res., Vol. 39, No. 11, 2000 4233

Figure 6. Gantt chart for Example 2: deterministic schedule.

Figure 7. Gantt chart for Example 2: rescheduling for the case in which unit 1 breaks down at Tbreak ) 2.5 h and requires 1 h maintenance. Table 3. Effect of Penalty on Rescheduling for Example 1

a

penalty

profit for reschedulea

differences in assignments

0 50 100 500 100 000

896.23 896.23 826.68 708.29 708.29

7 2 1 0 0

Profit for original schedule ) 1 498.19 units.

Table 4. Effect of Penalty on Rescheduling for Example 2

a

penalty

profit for reschedulea

differences in assignments

0 100 1000 5000 50 000 500 000

192 448 192 448 192 131 180 630 151 345 151 345

11 10 8 1 0 0

Profit for original schedule ) 226 400 units.

4.2. Rush Order Arrival. 4.2.1. Results. For rush order arrival, consider a rush order of P1 for the process in Example 1. The deterministic schedule is obtained for an order of 55 units of P1 and 70 units of P2. The scheduling is done by maximizing the total profit of the plant for a fixed time horizon of 8 h. The deterministic schedule obtained is shown in Figure 3. A rush order of 60 additional units of P1 that arrives at time Trush ) 2 h is considered for the rescheduling. For the rescheduling, an objective function of type a

(refer to case a in step 3 of section 3.2) is considered. Values of priority(s) ) 0 for all states, priority′(s) ) 1 for P1 and 0 for all other states, and penalty ) 1 are considered. In this case, the objective function corresponds to maximization of the production of P1 only. The reschedule obtained is shown in Figure 8. It is found that, within the fixed time horizon of 8 h, the maximum production of P1 is only 84 units, which corresponds to only part of the total order of 115 units [slack(P1) ) 31 units], which means that the problem is infeasible, i.e., it is not possible to fulfill the rush order on P1 within the fixed time horizon of 8 h. Thus, it is better to consider alternative objective functions (section 3.2) to determine the earliest time (minimum makespan) by which the additional order can be delivered. Additional studies were carried out to investigate in detail the effects of rush order arrival on reschedule by using an objective function of makespan minimization (refer to case b in step 3 in section 3.2). It is expected that the time at which the rush order arrives largely affects the change in makespan between the original schedule and the reschedule. For Example 1, the original schedule is determined to give the minimum makespan that would satisfy a minimum demand of 55 units of P1 and 70 units of P2. The makespan for the deterministic schedule is 7.532 h. Rescheduling is carried out to support an additional order of 30 units of P1. Different cases are considered with different rush order arrival times (Trush) in order to investigate the increase in makespan with rush order arrival time. A similar study is performed to support an additional order of 30 units on P2. The results of

4234

Ind. Eng. Chem. Res., Vol. 39, No. 11, 2000

Figure 8. Gantt chart for Example 1: rescheduling for the case of rush order of 60 additional units of P1 at Trush ) 2 h.

Figure 9. Effect of rush order arrival time on makespan for Example 1.

Figure 10. Effect of rush order arrival time on makespan for Example 2.

these studies are shown in Figure 9. As expected, the proposed approach predicts a nonuniform increase in the minimum makespan depending on the time the rush order arrives. Note that, if the rush order arrives before T ) 4 h, the makespan does not change significantly. This is a result of the inherent flexibility of the plant in terms of the capability of a task to be performed on more than one unit. If the rush order arrives between 5 and 6 h, then it is possible that one additional batch of some intermediate must be performed, which adds a “constant processing time or set up time” to the makespan, thus causing the “jump” observed in Figure 9. Such a trend is observed for both products P1 and P2. This behavior depends on the production recipe and, in particular, the stage in the sequence of processing steps at which the product is being produced. For this example, as shown in the STN representation (Figure 1), both P1 and P2 are produced in the same “campaign”, which is the reason that similar trends are observed. The magnitude of the jump is a function of the ratio of the constant processing time to the total processing time for any task; thus, for tasks that have no constant time (i.e., no set up time), there would be no jumps in the makespan function. A similar study is performed for Example 2. In this case, the deterministic schedule was solved to meet a minimum demand of 520 units of P1, 1 215 units of P2, 290 units of P3, and 1 350 units of P4. The makespan for the deterministic schedule was 4.482 h. Rescheduling is performed to handle a rush order of 200 additional units of P3. Figure 10 presents the results obtained for minimizing reschedule makespan for different rush

order arrival times. Note that trends similar to those in Example 1 are followed here too. To explore further the trade-offs between makespan minimization and profit maximization, the formulation is modified to determine the minimum makespan required to achieve a certain level of production of P1 and P2 (or to achieve a certain minimum profit) utilizing the ideas of multiobjective optimization (Clark and Westerberg11). The results obtained for different production levels correspond to the Pareto optimal set of solutions for both Example 1 and Example 2 and are shown in Figures 11 and 12, respectively. It is interesting to note that the jumps tend to decrease as the minimum profit/production increases. This is because the larger the profit target, the larger the number of cycles required for the production and thus the larger the plant flexibility. 4.2.2. Importance of the Objective Function. An important issue in the determination of the optimal reschedule after a rush order arrives is the balancing of the objectives of delivering the rush order and maximizing overall plant profit. The proposed objective function presented in section 3.2 allows the flexibility for modelling different weighted instances of the two targets so that a best-possible decision can be determined. Consider, for example, a rush order of P1 in Example 1. For the deterministic schedule, a demand of 55 units of P1 and 70 units of P2 is considered for a fixed time horizon of 8 h. For the rescheduling, an additional order of 60 units of P1 that arrives different times (Trush) is considered. The following cases that correspond to different forms of the objective function presented in case a in section 3.2 are then considered:

Ind. Eng. Chem. Res., Vol. 39, No. 11, 2000 4235

Figure 11. Pareto optimal curve showing minimum makespan required to achieve a certain minimum profit in plant for Example 1. Figure 13. Effect of objective function on production versus total plant profit. Table 5. Disturbances Considered for Multiple Rescheduling

Figure 12. Pareto optimal curve showing minimum makespan required to achieve a certain minimum profit in plant for Example 2.

Case 1: For this case, the following priority values are used:

priority(s) ) 1 for all states (s) priority′(s) ) 10 for P1 ) 1 for all other states penalty ) 100 This objective function balances both targets: maximization of plant profit and attempted maximization of production of P1. Case 2: For this case, the values of priorities are the following:

priority(s) ) 0 for all states (s) priority′(s) ) 1 for P1 ) 0 for all other states penalty ) 100 This means that the first term in the objective function is zero and the objective reduces to maximizing the production of P1 only.

disturbance 1

disturbance 2

case MR1

machine breakdown on unit 4 at T ) 2.5 h with Tmaint ) 1 h

rush order of 200 units of P3 at T ) 4 h

case MR2

rush order of 200 units of P3 at T ) 2 h

machine breakdown on unit 4 at T ) 2.5 h with Tmaint ) 1 h

Figure 13 shows a plot of total P1 production [∑n dr1(P1,n)] and scaled values of the total plant profit (∑s ∑n price(s)dr1(s,n)] versus time of rush order arrival for both case 1 and case 2. This figure offers some very interesting insights. (i) Both cases result in almost the same production for P1. (ii) The plant profit determined in case 1 is significantly higher than that obtained by case 2. This is due to the fact that case 2 maximizes only the production of P1 without considering any possible profit increase due to production of P2. Thus, we can conclude that using an objective function as in case 1 that has priorities balanced equally toward profit maximization and maximum P1 production results in better total profit and can be directed toward complete satisfaction of the rush order by increasing the priority of the corresponding product. 4.3. Multiple Rescheduling. The results in the previous sections illustrate the effectiveness of the rescheduling approach for a single disturbance. The proposed formulation is also used to consider multiple disturbances in plant operation as presented in section 3.3. Table 5 shows two cases examined here, each involving two different disturbances on the process of Example 2. Figure 14 shows the Gantt chart for the original schedule (same for both cases MR1 and MR2). In both cases, the deterministic schedule is solved to maximize the total plant profit. For rescheduling corresponding to machine breakdown, an objective function that maximizes plant profit and drives the reschedule toward the original schedule is considered. For rescheduling after rush order arrival, an objective function that maximizes both plant profit and production of rush order product (refer to section 4.2.2) is used, along with

4236

Ind. Eng. Chem. Res., Vol. 39, No. 11, 2000

Figure 14. Gantt chart for deterministic schedule for cases MR1 and MR2.

Figure 15. Gantt chart for case MR1: reschedule after first disturbance (machine breakdown).

Figure 16. Gantt chart for case MR1: reschedule after second disturbance (rush order arrival).

a penalty term that drives the reschedule toward the original schedule. Figure 15 illustrates the reschedule determined from the procedure proposed in section 3.1 for the first disturbance for case MR1. Then, considering that as the original schedule, the procedure of section 3.2 is applied to determine the reschedule corresponding to the second disturbance for MR1 (Figure 16). Figure 17 illustrates the reschedule obtained by following the procedure proposed in section 3.2 for the first disturbance for case MR2. This is then considered as the original schedule, and the procedure in section 3.1 is followed to obtain the reschedule after the second disturbance shown in Figure 18.

It is interesting to note that the reschedules obtained for case MR1 are very similar. The arrival of a rush order after the machine breakdown and subsequent repair does not considerably affect the reschedule. In contrast, for case MR2, disturbance 2 (machine breakdown) results in a significant change in the reschedule, pointing to the fact that, for this problem, machine breakdown is more critical for the rescheduling compared to rush order arrival. 4.4. Computational Results. Both the deterministic scheduling approach and the rescheduling approach are based on the continuous time formulation proposed by Ierapetritou and Floudas,8 which results in a reduction in the number of binary variables and thus results in

Ind. Eng. Chem. Res., Vol. 39, No. 11, 2000 4237

Figure 17. Gantt chart for case MR2: reschedule after first disturbance (rush order arrival).

Figure 18. Gantt chart for case MR2: reschedule after second disturbance (machine breakdown). Table 6. Computational Results for Example 1a rush order

Table 7. Computational Results for Example 2a rush order

machine breakdown

deterministic reschedule deterministic reschedule binary continuous nodes CPU time (s)

40 252 18 0.1

36 252 10 0.1

40 251 99 0.32

35 251 52 0.15

a

The results presented here correspond to formulations that consider five event points for both cases.

smaller computational times for the solution of both the deterministic and rescheduling problems. Table 6 and Table 7 illustrate the number of binary and continuous variables and related computational times for representative cases for Example 1 and Example 2, respectively. 5. Conclusions In this paper, a new approach has been developed to address the problem of effective rescheduling in multiproduct batch plants. Two very common types of disturbances are considered: machine breakdown and rush order arrival. The proposed approach is based on a two-stage procedure in which, at the first stage, the deterministic scheduling problem is solved utilizing the current available information, and at the second stage after the disturbance occurs, the most optimal rescheduling policy in terms of an economic objective is determined. A new mathematical formulation has been developed for the rescheduling problem that (i) considers the entire time horizon utilizing the information available from the

machine breakdown

deterministic reschedule deterministic reschedule binary continuous nodes CPU time (s)

48 350 170 0.33

45 350 153 0.31

56 407 57 0.310

53 407 0 0.130

a The results presented here correspond to formulations that consider six event points for rush order rescheduling and seven event points for machine breakdown.

original schedule and thus ensuring operational continuity at the time of disturbance and (ii) systematically incorporates all different rescheduling alternatives that allow the determination of the optimal rescheduling policy without the use of any heuristics. Moreover, the formulation allows the flexibility for the decision maker to balance economic optimality objectives with smooth plant operation. This is achieved by incorporating a penalty term in the objective function that penalizes the differences in the reschedule from original schedule. Results obtained from different examples have been used to illustrate the applicability and efficiency of the proposed methodology. Notation Indices i ) tasks j ) units n ) event points representing the beginning of a task s ) states

4238

Ind. Eng. Chem. Res., Vol. 39, No. 11, 2000

Sets I ) set of all tasks J ) set of all units Ij ) set of all tasks that can be performed in unit j Is ) tasks that produce or consume process state s Ji ) set of units that are suitable for performing task i N ) event points within the time horizon S ) set of all involved states Parameters Vmin ) minimum amount of material processed by task i if required to start operating unit j Vmax ) maximum capacity of the specific unit j when if processing task i STmax(s) ) maximum available storage capacity for state s r(s) ) market requirement for state s at the end of the time horizon Trush ) time of arrival of an extra order Tbreak ) time of machine breakdown Tmaint ) maintenance time Fpsi, Fcsi ) proportion of state s produced and consumed, respectively, from task i Rij ) constant term of processing time of task i in unit j βij ) variable term of processing time of task i at unit j H ) time horizon Hupper ) upper bound on time horizon price(s) ) price of state s Variables wv(i,n), wvrr1(i,n) ) binary variables that assign the beginning of task i at event point n for deterministic schedule and reschedule, respectively yv(j,n), yvr1(j,n) ) binary variables that assign the utilization of unit j at event point n for deterministic schedule and reschedule, respectively B(i,j,n), Br1(i,j,n) ) amount of material undertaking task i in unit j at event point n for deterministic schedule and reschedule, respectively d(s,n), dr1(s,n) ) amount of state s being delivered to the market at event point n for deterministic schedule and reschedule, respectively ST(s,n), STr1(s,n) ) amount of state s at event point n for deterministic schedule and reschedule, respectively Ts(i,j,n), Tsr1(i,j,n) ) time that task i starts in unit j at event point n for deterministic schedule and reschedule, respectively

Tf(i,j,n), Tfr1(i,j,n) ) time that task i finishes in unit j while it starts at event point n for deterministic schedule and reschedule, respectively

Literature Cited (1) Karimi, I. A.; Reklaitis, G. V. Deterministic variability analysis for intermediate storage in noncontinuous processes. Part i: Allowability conditions. AIChE J. 1985, 31, 1516. (2) Karimi, I. A.; Reklaitis, G. V. Deterministic variability analysis for intermediate storage in noncontinuous processes. Part ii: Storage sizing for serial systems. AIChE J. 1985, 31, 1528. (3) Onogi, K.; Nishimura, Y.; Nakata, Y.; Inomata, T. An online operating control system for a class of combined batch/semi continuous processes. J. Chem. Eng. Jpn. 1986, 19, 542. (4) Cott, B. J.; Machietto, S. Minimizing the effects of batch process variability using on-line schedule modification. Comput. Chem. Eng. 1989, 13, 105. (5) Kanakamedala, K. B.; Reklaitis, G. V.; Venkatasubramanian, V. Reactive schedule modification in multipurpose batch chemical plants. Ind. Eng. Chem. Res. 1994, 33, 77. (6) Jain, A. K.; Elmaraghy, A. Reactive schedule modification in multipurpose batch chemical plants. Int. J. Prod. Res. 1997, 35, 281. (7) Shu, M. S.; Lee, A.; Lee, Y. J.; Ko, Y. K. Evaluation of ordering strategies for constraint satisfaction reactive scheduling. Dec. Sup. Sys. 1998, 22, 187. (8) Ierapetritou, M. G.; Floudas, C. A. Effective continuous-time formulation for short-term scheduling: I. Multipurpose batch processes. Ind. Eng. Chem. Res. 1998, 37, 4341. (9) CPLEX Manual, ILOG Corporation: Incline Village, NV, 1998. (10) Kondili, E.; Optimal Scheduling of Batch Processes. Ph.D. Thesis, Imperial College London, London, U.K., 1987. (11) Clark, P. A.; Westerberg, A. W. Optimization for Design Problems Having more than One Objective Function. Comput. Chem. Eng. 1983, 7, 259. (12) Karimi, I. A.; McDonald, C. M. Planning and Scheduling of Parallel Semicontinuous Processes. 2. Short-term Scheduling. Ind. Eng. Chem. Res. 1997, 36, 2701. (13) Ierapetritou M. G.; Hene, T. S.; Floudas, C. A. Effective continuous-time formulation for short-term scheduling. Multiple intermediate due dates. Ind. Eng. Chem. Res. 1999, 38, 3446.

Received for review February 15, 2000 Accepted August 8, 2000 IE000233Z