Ind. Eng. Chem. Res. 2002, 41, 1249-1260
1249
Optimal Short-Term Scheduling of Multiproduct Single-Stage Batch Plants with Parallel Lines Chang-ling Chen,* Chang-ling Liu, Xiao-dong Feng, and Hui-he Shao Institute of Automation, Shanghai Jiao Tong University, Shanghai 200030, People’s Republic of China
The short-term scheduling of multiproduct single-stage batch plants with parallel lines involves the constraints concerning the release times and due dates of orders, as well as the sequencedependent setup times and forbidden subsequences of production orders and the ready times of units. Taking the above constraints into consideration, this paper develops a short-term scheduling model for the multiproduct single-stage batch plants with parallel lines using the continuous-time domain representation and the notation of time slot. When the model is developed, the allocation of orders and units to time slots is represented by two sets of binary variables. The model is formulated as a mixed-integer linear programming (MILP) problem. It not only involves fewer binary variables than any other model based on the notation of time slot (Pinto, J. M.; Grossman, I. E. Ann. Oper. Res. 1998, 81, 433) but also can be used to optimize several types of objective functions. Based on the characteristics of the model and multiproduct single-stage batch plants, some heuristic rules are introduced. The rational employment of these heuristic rules can cut down the size of the model and has no effect on the optimality of the scheduling problem. A number of computational examples show that the optimal scheduling can be obtained by solving the MILP model in reasonable CPU time, especially when the scheduling problem involving several identical orders is considered. 1. Introduction Batch processing has been widely practiced since long before the development of the modern chemical industry.1,2 It is suitable for manufacturing a relatively large number of low-volume, high-value-added products. In many chemical industries, such as pharmaceuticals, paints, and petrochemicals, batch mode has been used in many operations. The effective scheduling for batch plants can not only increase customer services, lower inventories, and reduce the need for excess capacities of corporations but also provide the potential of identifying key data and mechanistic understandings of processes.3 So, it is significant to do further research on scheduling for batch plants. Scheduling for batch processing is an optimal decision concerning the demands and supplies of the market and the throughput of the plant. In mutiproduct facilities, like polymer and specialty chemicals plants, where a wide range of tailor-made products are manufactured in small amounts for few customers, the short-term scheduling is often used. In such a case, scheduling is used to rationally organize production activities and effectively utilize the units and resources in consideration of the categories, quantities, and due dates of products in demand, as well as production constraints within the scheduling horizon. Production constraints4 comprise unit ready times and sequence-dependent setup times when different products are processed on the same unit. Moreover, to improve the quality of the products and the availability of the units, a specific product can never be processed right after another one, so production constraints also include forbidden subsequences. Time representation is very important for a mathematical scheduling model.5 This is because the overall * Corresponding author. E-mail:
[email protected].
profile of resource utilization is discontinuous. The model has to track such discontinuities within the scheduling horizon; i.e., the profile is compared with the resource availabilities to ensure feasibilities. Discreteand continuous-time representations are two existing approaches to deal with such complexity. The main drawback of the model6-9 based on uniform discretetime representation is that the time representation is approximate, and the model comprises a large number of binary variables and linear constraints when the problem of industrial size is considered. Hence, the continuous-time representation is widely used in research of batch process scheduling now. Pinto and Grossmann10 studied the scheduling of multistage batch plants. The model is handled by two parallel time coordinates as follows. One coordinate represents orders, whereas the other handles units; then they are matched by enforcing equality when a stage of an order is assigned to a slot of a unit. The objective function in the model is to minimize earliness. Moon and Hrymak11 and Kim et al.12 extended the representation scope of this model. On the basis of the notation of time slot, Karimi and Mcdonald13 proposed two models for parallel semicontinuous processes considering the sequence-dependent setup times, orders, and their corresponding due dates in order to minimize the inventory. Ierapetritou and Floudas14-16 built models for the batch, continuous, and semicontinuous processes represented in STN framework. They also took the due dates of products and intermediates into consideration. Cerda´ et al.17 developed a short-term scheduling model for the single-stage multiproduct batch plants with parallel lines to minimize makespan, total tardiness, or number of tardy orders. They also considered the positive release times of orders and ready times of units, as well as sequence-dependent setup times and forbidden processing subsequences. Me´ndez et al.4 reformu-
10.1021/ie010465d CCC: $22.00 © 2002 American Chemical Society Published on Web 02/08/2002
1250
Ind. Eng. Chem. Res., Vol. 41, No. 5, 2002
lated this model by separately handling assignment and sequencing decisions through different sets of binary variables to get a reduction in the number of 0-1 variables. They also addressed a model to optimally select both batch sizes and number of batches of each size for every product to be processed along the production horizon according to the sizes of orders and plant capacity. Me´ndez and Cerda´18 extended the notation of direct predecessor to predecessor and addressed a mathematical scheduling model for a two-stage multiproduct batch plant where a number of intermediate products are processed to deliver to nearby end product facilities. The number of binary variables affects the computational effort of a mixed-integer linear programming (MILP) problem directly. To get a significant savings in binary variables, the following two approaches are used frequently: (1) representing binary variables more effectively; (2) decomposing the existing binary variables. The first approach was used widely in scheduling formulations,6,10,17,18 and the second one was used in the past few years. For instance, Cerda´ et al.17 handled assignment and sequencing decisions through one set of binary variables, while Me´ndez et al.4 separately handled them through different ones so that the number of 0-1 variables is greatly reduced. Ierapetritou and Floudas14-16 decoupled the task events from the unit events, and the mathematical model is much smaller and simpler than the previously presented continuoustime scheduling formulation19,20 in STN framework. Heuristic rule is a widely used technique cutting down the size of an MILP model. Pinto and Grossmann21 greatly cut down the size of the model10 for multistage batch plants through imposing the preordering constraints (heuristic rules) into it. The formulation of the simplified model involves only decisions of assignment of orders to units and timing of each processing task. However, the preordering constraints affect the optimality of the scheduling model. Cerda´ et al.17 reduced the size of the scheduling model17 for single-stage multiproduct batch plants with parallel lines by introducing some heuristic rules, so that the feasible predecessors of an order are pruned. These heuristic rules are also used by Me´ndez et al.4,18 and Hui and Gupta.22 However, if these heuristic rules are used, the optimal solution cannot be obtained, especially when makespan is minimized. So far, the scheduling problem involving several identical orders has received little research interest. In fact, some products need to be produced several batches within the scheduling horizon to satisfy customer demands. This paper develops a short-term scheduling MILP model for single-stage mutiproduct batch plants with parallel lines based on the notation of time slot. It can deal with the scheduling problem involving several identical orders. To get a savings in binary variables, the assignment of orders and units to time slots is handled separately. This paper is organized as follows. Sections 2 and 3 present respectively the assumptions and basic idea. Afterward, some mathematical symbols for the mathematical scheduling model are defined. Based on sections 2-4, section 5 develops the basic model in detail. It can accommodate the release times and due dates of orders, as well as the sequence-dependent setup times and forbidden subsequences of production orders and the ready times of units. Moreover, several types of objective functions
can be optimized when the model is used. To further cut down the size and computational effort of the basic model, section 6 introduces some heuristic rules. They are embedded into the basic model in section 7. Section 8 gives some details pertaining to the model proposed in this paper. Finally, section 9 studies some examples to illustrate the effectiveness and applicability of the model and heuristic rules. 2. Model Assumptions The following assumptions are used to derive the short-term scheduling formulation for multiproduct single-stage batch plants with parallel units in this paper: A1. The model parameters are all deterministic. A2. Each order represents one batch. A3. Each order features a due date and release time. A4. Each unit features a ready time. A5. Transition times are not only unit-dependent but also sequence-dependent. A6. The orders of a product featuring identical release times, due dates, and processing times are taken for the same category. A7. No resource constraints except unit are considered. Very often, the same product is ordered by several customers and the demand of each customer is in a small amount. In such a case, the same product ordered by different customers within the scheduling time horizon can be merged into one or several batches in order to run the batch plant at full capacity. On the other hand, a product is ordered by a single customer and the quantity in demand is large. In such a case, the product has to be split into several batches. Taking the above situations into consideration, Me´ndez et al.4 proposed a batching model according to the capacity of plant and the quantities and due dates of customer demands. When the model is used, the number of batches of each product, as well as the due date and size of each batch and the units in which each batch can be processed, is determined. According to assumption A1, each order represents one batch. Assumption A2 indicates that each order features a due date and release time. The release time of the order represents the earliest time when the production of the order can be started. It is an important datum for products that can spoil. Very often, some units are still processing orders from the prior schedule at the beginning of the new production horizon, so their ready times have to be considered. The processing times of orders may be related to their batch sizes. If so, the batches of the same product featuring identical release times, due dates, and sizes are grouped under the same category; otherwise, the batches of the same product featuring identical release times and due dates are sorted out into the same category. So, in this paper, a category may comprise several orders. 3. Basic Idea The scheduling of multiproduct single-stage batch plants with parallel units is a combinatorial problem.3 It involves decisions of assigning orders to units, sequencing orders in each unit, and timing each order. These kinds of problems can be tackled by using the notation of time slot. Pinto and Grossmann10 and
Ind. Eng. Chem. Res., Vol. 41, No. 5, 2002 1251 Subindices i, i′ ) manufacturing orders j ) processing unit hj ) the last unit k, k′ ) time slots k h ) the last time slot Sets
Figure 1. Assignment of orders and units to time slots.
Figure 2. Allocation of units to time slots.
Sahinidis and Grossmann23 handled the assignment and sequencing decisions through a set of binary variables. However, the models feature a large number of binary variables and great computational efforts. So, we decouple the assignment of units from the allocation of orders in this paper. The basic idea is as follows. Consider the multiproduct single-stage plant with parallel lines defined in set J which has to process orders defined in set I. The number of time slots that should be predefined in set K is equal to the total number of orders. The elements of sets I, J, and K should be numbered 1, 2, ..., beforehand. Only an order and a unit have to be assigned to each time slot at the same time. If so, an operation occurs. As shown in Figure 1 (in which only one order belonging to each category is illustrated), an order belonging to category i and unit j are assigned simultaneously to time slot k, so that the order is processed in unit j. The assignment of units must meet the following requirements. Unit j must be allocated to the time slots with consecutive numbers before unit j + 1, and the times of assignment of unit j are determined by optimization. The allocation of unit j to time slot k forbids the assignment of units 1, 2, ..., j - 1 to time slots k, k + 1, ..., as shown in Figure 2. Decoupling the assignment of units from the allocation of orders leads to the proposed model involving less binary variables than any other existing model based on the notation of the time slot (see section 9.1). The assignment requirements of units stated above feature three advantages. First, the assignment possibilities of units are greatly reduced and the computational effort of the proposed model is cut down. To clarify this point, a simple example is given. Suppose 3 units are assigned to 4 time slots. If only one unit is assigned to each time slot, there are 34 assignment possibilities. However, if the unit assignment requirements are met, there are only 15 assignment possibilities. Second, the sequencedependent setup time between different orders processed in the same unit can be easily modeled. Last, the heuristic rules can be introduced based on the assignment requirements of units (see section 6). 4. Nomenclature Before introducing the proposed mathematical models for the scheduling of orders processed in a single-stage multiproduct batch plant with units in parallel, the following sets and parameters are defined first.
I ) set of manufacturing orders J ) set of units K ) set of time slots Ij ) set of orders which can be processed in unit j Ji ) set of units which can process order i Kj ) set of time slots to which unit j can be allocated Jk ) set of units that can be assigned to time slot k FS ) set of forbidden processing sequences (orders i and i′ belong to the set FS only if order i′ can never be processed right after order i in a particular unit) Integer Variables and Parameters Xi,k ) binary variable denoting that one order belonging to category i is assigned to time slot k Yj,k ) binary variable denoting that unit j is allocated to time slot k Wi,j,k ) binary variable denoting that one order of category i and unit j are assigned to time slot k simultaneously (it can be defined as a continuous variable restricted to the range [0,1]) NTk ) binary variable denoting that the order assigned to time slot k is tardy ni ) integer parameter denoting the number of orders belonging to category i Time-Related Variables and Parameters MS ) makespan Di ) due date of order i Ek ) earliness of order that is assigned to time slot k Tk ) tardiness of order that is assigned to time slot k RTPi ) release time of orders belonging to category i RTUj ) ready time of unit j Tsk,j ) starting time in unit j during time slot k Tek,j ) finishing time in unit j during time slot k Pi,j ) processing time of each order belonging to category i in unit j τi,i′,j ) sequence-dependent setup time when an order of category i is processed followed by one order of category i′ All of the time-related variables and parameters are greater than or equal to 0 Others U, M ) positive numbers with sufficiently large values
5. Mathematical Model In this part, an MILP mathematical model for multiproduct single-stage batch plant scheduling is developed based on the notation of time slot and continuous-time representation. When the model is built, the assignment of orders and units to time slots is handled separately through two sets of binary variables. 5.1. Assignment of Orders and Units to Time Slots. 5.1.1. Assignment of Orders to Time Slots.
Xi,k ) 1 ∑ i∈I
∑ Xi,k ) ni
k∈K
∀k∈K
(1)
∀i∈I
(2)
1252
Ind. Eng. Chem. Res., Vol. 41, No. 5, 2002
Equation 1 states that only one order in set I is assigned to each time slot, whereas eq 2 specifies that the times of assignment and the number of orders belonging to category i are equal to each other. 5.1.2. Allocation of Units to Time Slots.
Yj,k ) 1 ∑ j∈J
∀k∈K
(3)
∀ j, j′∈ J, k, k′ ∈ K, j′ < j, k′ g k (4)
Yj,k + Yj′,k′ e 1
Equation 3 specifies that only one unit is allocated to each time slot. Equation 4 states that the allocation of units to time slots has to satisfy the requirements in section 3. The assignment of unit j to time slot k (Yj,k ) 1) means that units 1, 2, ..., j - 1 cannot be allocated to time slots k, k + 1, ..., k h . For example, as shown in Figure 2, because unit 3 is allocated to time slot 4, units 1 and 2 cannot be assigned to time slots 4-6. 5.1.3. Relation between Orders and Units.
Xi,k -
∑Yj,k e 0
∀ i ∈ I, k ∈ K
(5)
j∈Ji
Yj,k -
Xi,k e 0 ∑ i∈I
∀ j ∈ J, k ∈ K
∀ k ∈ K, j ∈ J (10)
It is known according to eqs 1, 3, 8, and 9 that if no order or unit is assigned to time slot k, Wi,j,k is equal to 0; i.e., the right-hand side (rhs) of eq 10 is equal to 0. If unit j is allocated to time slot k, one order of category i in set Ij is assigned inevitably to that time slot and vice versa. In such a case, eq 10 specifies that the difference between the starting and finishing time of slot k in unit j is equal to the processing time of order i. 5.2.3. Constraints of Different Orders Processed in the Same Unit.
Tsk+1,j - Tek,j g
∑
Wi′,j,k+1τi,i′,j - U(1 - Wi,j,k)
∑
Xi′,k+1 + Yj,k+1 e 3
Equation 7 states the constraints of forbidden subsequences. If order i is assigned to time slot k and unit j is allocated to time slot k and k + 1 (Xi,k ) 1, Yj,k ) 1, and Yj,k+1 ) 1), any order belonging to forbidden subsequence (i, i′) ∈ FS cannot be assigned to time slot k + 1. 5.2. Time-Related Constraints. 5.2.1. Definition of Binary Variable Wi,j,k. To model sequence-dependent setup times and processing times, it is necessary to define binary variable Wi,j,k according to Xi,k and Yj,k. The following formulation is used:
∀ i ∈ I, k ∈ K
(8)
Wi,j,k ∑ i∈I
∀ j ∈ J, k ∈ K
(9)
j∈Ji
j
Wi,j,k max (RTUj, RTPi) ∑ i∈I
∀ j ∈ J, k ∈ K
j
(13) If unit j is allocated to time slot k, one order is inevitably assigned to this time slot. In such a case, eq 13 states that the starting time of time slot k in unit j has to be greater than the ready time of unit j and the release time of order i. Otherwise (Wi,j,k ) 0), the constraints in eq 12 are redundant. 5.3. Objective Functions. 5.3.1. Minimum Makespan.
MS g Tekh ,j
∀j∈J
Min MS
Wi,j,k
(12)
Equations 11 and 12 specify the time constraints of different orders manufactured in the same unit. If unit j is allocated to two consecutive time slots k and k + 1, two orders i and i′ in set Ij are inevitably assigned to these time slots. In such a case, eq 11 can be formulated as Tsk+1,j - Tek,j g τi,i′, j, that is to say, the rhs of eq 11 is equal to the sequence-dependent setup time between products i and i′. However, eq 11 does not completely represent the time constraints relating to two consecutive time slots in unit j. For example, if unit j is not assigned to time slot k and k + 1, it can be easily derived that eq 11 is Tsk+1,j - Tek,j g -U; thus, eq 12 must be introduced. Equation 12 specifies that the starting time of time slot k + 1 must be greater than or equal to the finishing time of time slot k in unit j. 5.2.4. Constraints of Order Release Times and Unit Ready Times.
Tsk,j g
h } (7) ∀ j ∈ J, i ∈ Ij, k ∈ K\{k
∑
∀ j ∈ J, i ∈ Ij, k ∈ K\{k h } (11) h} Tsk+1,j - Tek,j g 0 ∀ j ∈ J, k ∈ K\{k
i′∈Ij,(i,i′)∈FS
Yj,k )
Wi,j,kPi,j ∑ i∈I j
(6)
Equations 5 and 6 represent that order i can only be processed in unit j ∈Ji. Equation 5 specifies that if one order of category i is assigned to time slot k, one of the units in set Ji has to be allocated to this time slot. Equation 6 states that if unit j is allocated to time slot k, one of the orders in set Ij has to be assigned to this time slot. Numeric experiments show that eq 5 or eq 6 can guarantee the relation between orders and units. However, it is found that the incorporation of the above two constraints into the model can improve the computational performance of the proposed formulation when large size scheduling problems are considered. This is because the effective increase in the number of hard constraints relating to the binary variables in a model can directly cut down the search space;24 i.e., the computational effort of the MILP model is reduced. 5.1.4. Constraints of Forbidden Subsequences.
Xi,k )
Tek,j - Tsk,j )
i′∈Ij,(i,i′)∉FS
j
Xi,k + Yj,k +
This formulation proposed by Sahinidis and Grossmann23 and used by Karimi and Mcdonald13 has two advantages. First, Sahinidis and Grossmann23 proved this to be tighter than any other one. Second, Wi,j,k can be considered as a continuous variable (guaranteed by eqs 1 and 3). 5.2.2. Constraints of Processing Times.
(14) (15)
Equation 14 represents that the makespan must be greater than or equal to the finishing time of the last time slot in each unit. Equation 15 is the objective function of minimizing makespan.
Ind. Eng. Chem. Res., Vol. 41, No. 5, 2002 1253
5.3.2. Minimum Mean Earliness.
Tek,j e M +
∀ j ∈ J, k ∈ K
(16)
∀ j ∈ J, k ∈ K, i ∈ Ij
(17)
objective function (20) subjects to constraints (1)-(13) and (19) if total tardiness is minimized; objective function (22) subjects to constraints (1)-(13), (19), and (21) if the number of tardy orders is minimized; objective function (23) subjects to constraints (1)-(13), (17), and (19) if the lateness is minimized.
∑ Ek
(18)
6. Heuristic Rules
(Di - M)Wi,j,k ∑ i∈I j
Tek,j + Ek g Di Wi,j,k Min
k∈K
If unit j and order i are allocated to time slot k (Wi,j,k ) 1), eq 16 states that the finishing time of time slot k is less than or equal to the due date of order i; eq 17 can be reformulated as Tek,j + Ek gDi; i.e., the earliness of the order assigned to time slot k is defined. If unit j is not allocated to time slot k (Wi,j,k ) 0, ∀ i ∈ I), constraints in eq 16 are relaxed and constraints in eq 17 are redundant. Equation 18 is the objective function of minimizing mean earliness. 5.3.3. Minimum Mean Tardiness.
Tek,j e (Di - M)Wi,j,k + Tk + M ∀ j ∈ J, k ∈ K, i ∈ Ij (19) Min
∑ Tk
(20)
k∈K
If unit j and order i are allocated to time slot k (Wi,j,k ) 1), eq 19 can be reformulated as Tek,j e Di + Tk; i.e., the tardiness of the order assigned to time slot k is defined. Otherwise (Wi,j,k ) 0), constraints in eq 19 are relaxed. Equation 20 specifies the objective function of minimizing mean tardiness. 5.3.4 Minimum Number of Tardy Orders.
∀k∈K
Tk - MNTk e 0 Min
∑ NTk k∈K
(21) (22)
If the order assigned to time slot k is tardy (Tk > 0), NTk has to be 1. Equation 22 specifies the objective function of minimizing the number of tardy orders. 5.3.5. Minimum Lateness. Generally, there are several alternative schedules featuring the least weighted tardiness, but some of them show a rather large average earliness and a costly work-in-process inventory. The objective function (23) favors “just-in-time” schedules with minimum lateness.
Min
(
∑ k∈K
Tk +
Ek ni + 1 ∑ i∈I
)
(23)
where the earliness penalty includes a weight factor always smaller than 1, equal to (N + 1)-1, while the weighting coefficient for the tardiness penalty is just equal to 1. This is because customer satisfaction is the most important cost term. By completing the production orders as close to their due dates as possible, one is implicitly minimizing changeover times, inventory costs, and penalties for missed demands at the same time. The model given by eqs 1-23 corresponding to a scheduling problem is very simple. Objective function (15) subjects to constraints (1)-(14) if makespan is minimized; objective function (18) subjects to constraints (1)-(13), (16), and (17) if total earliness is minimized;
To cut down the size of the proposed model, some heuristic rules are introduced in this part. It can be found in Figure 2 that each unit is allocated to some of the time slots with consecutive numbers. So, the set of time slots that each unit is allocated to can be reduced by introducing some heuristic rules. However, heuristic rules must meet the following requirements: (1) The total number of time slots that each unit may be allocated to has to be greater than or equal to the number of orders. This can be formulated as follows:
|Kj| g ∑ni ) |K| ∑ j∈J i∈I
(24)
where Kj is the set of time slots that unit j can be allocated to and |‚| is cardinality operator. (2) The total number of time slots that the orders of category i can be assigned to must be greater than or equal to the number of those orders.
∑|Kj| g ni
∀i∈I
(25)
j∈Ji
According to the above requirements, two heuristic rules can be introduced. The definitions of the proposed heuristic rules involve the following variables and parameters: kb,j ) smallest time slot that unit j can be allocated to ke,j ) largest time slot that unit j can be allocated to b Pi,j ) number of orders belonging to category i processed in units j, j + 1, ..., hj e Pi,j ) number of orders belonging to category i processed in units 1, 2, ..., j b Ni,j ) number of units among j, j + 1, ..., hj that can process orders belonging to category i e Ni,j ) number of units among 1, 2, ...,j that can process orders belonging to category i µ ) number that is greater than or equal to 1
Heuristic Rule 1.
kb,j ) max (j, |K| -
∑
ni + 1)
∀j∈J
i∈(Ij∪Ij+1∪...∪Ihj )
(26) ke,j ) min (|K| - |J| + j,
∑
n i)
∀j∈J
i∈(I1∪I2∪...∪Ij)
(27) Equations 26 and 27 specify respectively the smallest and largest time slots that each unit can be allocated to. If each unit can be allocated to at least one time slot, the smallest time slot that unit j can be allocated to should be greater than or equal to j and the largest time slot should be less than or equal to |K| - |J| + j. On the other hand, the number of orders that units j, j + 1, ..., hj can process is less than or equal to ∑i∈(Ij∪Ij+1∪...∪Ihj)ni, while the number of orders that units 1, 2, ..., j can process is less than or equal to ∑i∈I1∪I2∪...∪Ijni. So, the
1254
Ind. Eng. Chem. Res., Vol. 41, No. 5, 2002
smallest time slot that unit j can be allocated to is |K| - ∑i∈(Ij∪Ij+1∪...∪Ihj)ni + 1, and the largest one is ∑i∈I1∪I2∪...∪Ihjni. From the above two aspects, eqs 26 and 27 are obtained and the set of time slots Kj ) [kb,j, ke,j] that unit j can be allocated to is determined. It is noted that the number of binary variables can be cut down at least by 2(1 + 2 + ... + hj - 1) ) hj(jh - 1) if heuristic rule 1 is used. Furthermore, if each unit can be allocated to at least one time slot (this is the general case), this heuristic rule does not damage the optimality of the model. Heuristic Rule 2. The smallest and largest time slots that unit j can be allocated to estimated in eqs 26 and 27 are very conservative, so set Kj ) [kb,j, ke,j] involves a large number of time slots. However, heuristic rule 1 can be improved as follows: b Pi,j )
e ) Pi,j
{
b Ni,j ) |Ji| b b µNi,jni/|Ji| Ni,j * |Ji| ∀ i ∈ (Ij ∪ Ij+1 ∪ ... ∪ Ihj ), j ∈ J (28)
ni
{
e Ni,j ) |Ji| e Ni,j * |Ji| ∀ i ∈ (I1 ∪ I2 ∪ ... ∪ Ij), j ∈ J (29)
ni e ni/|Ji| µNi,j
(
kb,j ) max j, |K| -
(
∑
∑
) +1
j
∑Xi,k ) 1
∀k∈K
(32)
∀ i∈ I
(33)
i∈Ik
∑ Xi,k ) ni
k∈Ki
Allocation of Units to Time Slots
∑ Yj,k ) 1
∀k∈K
(34)
j∈Jk
Yj,k + Yj′,k′ e 1 ∀ k, k′∈ K, j ∈ Jk, k′ g k, j > j′ ∈ Jk′ (35) Relation between Orders and Units Xi,k -
∀ j ∈ J (30)
Yj,k -
∑
Yj,k e 0
∀ i ∈ Ik, k ∈ K
(36)
∑
Xi,k e 0
∀ j ∈ Jk, k ∈ K
(37)
j∈Ji∩Jk
i∈Ij ∩Ik
Constraints of Forbidden Subsequences
e n i, Pi,j ∑ ∑ i∈I ∪I ∪...∪I ) i∈I ∪I ∪...∪I 2
Assignment of Orders to Time Slots
ni + 1, |K| -
i∈(Ij∪Ij+1∪...∪Ihj ) b Pi,j i∈(Ij∪Ij+1∪...∪Ihj )
ke,j ) min |K| - |J| + j, 1
Ki ) ∪j∈JiKj. In other words, if time slot k belongs to set Ki, Xi,k may be equal to 1; otherwise (k ∈ K\Ki), Xi,k is inevitably equal to 0. It is noted that if set Kj denoting the set of time slots that unit j can be allocated to is defined, set Jk denoting the set of units that can be allocated to time slot k is also defined. In the similar way, set Ik can be derived from set Ki. Based on the above idea, the model developed in section 5 can be reformulated as follows. Assignment of Orders and Units to Time Slots.
1
2
∀ j ∈ J (31)
Xi,k + Yj,k +
where ‚ denotes the operator rounding a real number to the nearest integer toward infinity. Equations 28 and 29 estimate that the number of orders belonging to category i processed in units j, j + 1, ..., hj and 1, 2, ..., j b e and Pi,j , respectively. If orders of catis equal to Pi,j egory i can only be processed in some of the units j, j + b b ) |Ji|), Pi,j has to be equal to ni; otherwise 1, ..., hj (Ni,j b b b ni/|Ji|. In the same way, (Ni,j * |Ji|), Pi,j is equal to µNi,j e Pi,j can be estimated. Based on eqs 28 and 29, the smallest and largest time slots that each unit may be allocated to can be computed, and the concrete formulation is shown in eqs 30 and 31. Apparently, eqs 30 and 31 meet the requirements in eqs 24 and 25. Moreover, when this heuristic rule is used, the estimated number of time slots that each unit can be allocated to is generally less than or equal to that when heuristic rule 1 is used. Furthermore, if each unit can be allocated to at least one time slot and an appropriate value is assigned to µ, this heuristic rule has no effect on the optimality of the model. 7. The Reformulated Model If heuristic rules presented in section 6 are used, the set of time slots that each unit may be allocated to is determined, and accordingly the number of binary variables Yj,k can be cut down. If some orders cannot be processed in all units, the number of binary variables Xi,k can also be reduced. This is because a given order belonging to category i can only be allocated to time slots
∑
Xi′,k+1 + Yj,k+1 e 3
i′∈Ij ∩Ik+1,(i,i′)∈FS
j
∀ j ∈ J, i ∈ Ij ∩ Ik, k ∈ Kj\{k h j} (38) Time-Related Constraints.
Definition of Binary Variable Wi,j,k Xi,k ) Yj,k )
∑
Wi,j,k
∀ i ∈ Ik, k ∈ K
(39)
∑ Wi,j,k
∀ j ∈ Jk, k ∈ K
(40)
j∈Jk∩Ji
i∈Ij∩Ik
Constraints of Processing Times Tek,j - Tsk,j )
∑ Wi,j,kPi,j
i∈Ij∩Ik
∀ j ∈ J, k ∈ Kj (41)
Constraints of Different Orders Processed in the Same Unit Tsk+1,j - Tek,j g
∑
Wi′,j,k+1τi,i′,j - U(1 -
i′∈Ij∩Ik+1,(i,i′)∉FS
Wi,j,k)
∀ j ∈ J, i ∈ Ij ∩ Ik, k ∈ Kj\{k h j} (42)
Tsk+1,j - Tek,j g 0
∀ j ∈ J, k ∈ Kj\{k h j}
(43)
Constraints of Order Release Times and Unit Ready Times Tsk,j g
∑ Wi,j,k max (RTUj, RTPi)
i∈Ij∩Ik
∀ j ∈ J, k ∈ Kj (44)
Ind. Eng. Chem. Res., Vol. 41, No. 5, 2002 1255
Objective Functions.
is minimized,
M ) max {Di, ∀ i ∈ I} + M′
Minimum Makespan ∀j∈J
MS g Tekh j,j
Min MS
(46)
Minimum Mean Earliness Tek,j e M +
∑ (Di - M)Wi,j,k
∀ j ∈ J, k ∈ Kj (47)
i∈Ij∩Ik
∀ j ∈ J, k ∈ Kj, i ∈ Ij ∩ Ik (48)
Tek,j + Ek g DiWi,j,k
Min
∑ Ek
(49)
k∈K
Minimum Mean Tardiness Tek,j e (Di - M)Wi,j,k + Tk + M ∀ j ∈ J, k ∈ Kj, i ∈ Ij ∩ Ik (50) Min
∑ Tk
(57)
(45) where M′ is a positive number with a sufficiently large value. (ii) The value for µ has to be decided if heuristic rule 2 is employed. The larger the value for µ is, the smaller the model size is reduced. Generally, when µ is greater than or equal to 1 and less than or equal to 1.5 (1 e µ e 1.5), the optimal solution can be derived if the differences among unit ready times and the number of orders processed in each unit are small. (iii) If the total sum of the processing times in a unit is smaller than the makespan, the schedulers cannot sequence the orders of different categories assigned to the same unit by the minimum sum of sequencedependent setup times when the makespan is minimized. For this purpose, the objective function can be changed as follows:
(51)
Min MS +
k∈K
Tekh ,j ∑ j∈J j
(58)
Minimum Number of Tardy Orders ∀k∈K
Tk - MNTk e 0 Min
∑ NTk
(52) (53)
k∈K
Minimum Lateness Min
∑
(
k∈K
Tk +
Ek ni + 1 ∑ i∈I
)
(54)
It can be found in sections 6 and 7 that the characteristics of single-stage batch plants with parallel units and the basic idea of this paper are sufficiently employed to introduce the heuristic rules. The reformulated model not only comprises less binary variables, continuous variables, and constraints but also is much tighter than the basic one. Section 9 will demonstrate that the computational effort of the model embedded with heuristic rules is much less than the basic model (presented in section 5) through some examples. Significantly, if each unit has to process at least one order, the rational employment of heuristic rules 1 and 2 has no effect on the optimality of the model.
where is a positive parameter with asmall value. Apparently, not only the makespan but also the processing time in each unit is minimized in objective function (58). (iv) When the total earliness is minimized, one important aspect in the solution is the potential source of degeneracy in the model,10 mainly because of the fact that parallel units may generate a large number of very similar solutions. Another source of degeneracy is the equivalence of time slots in the same unit. So, the following term is added to the objective function to reduce degeneracy.
Min
∑ Ek + k∈K ∑ j∈J ∑ i∈I∑∩I Wi,j,k
k∈K
k
Tek,j + Ei g DiWi,j,k
∀ j ∈ J, k ∈ Kj, i ∈ Ij ∩ Ik (60) Min
U ) max {τi,i′,j, ∀ i, i′ ∈ Ij, j ∈ J, (i, i′) ∉ FS}
Min
If total tardiness, number of tardy orders, or lateness
(61)
piTi ∑ i∈I
Min
Min
(
(63) ∀i∈I
Ti - MNTi e 0
(55)
(56)
piEi ∑ i∈I
Tek,j e (Di - M)Wi,j,k + Ti + M ∀ j ∈ J, k ∈ Kj, i ∈ Ij ∩ Ik (62)
If total earliness is minimized, M can be decided as follows:
M ) max {Di, ∀ i ∈ I}
(59)
j
(v) The above definitions of Ek and Tk can be applied to the scheduling problems involving several identical orders, but the orders cannot be weighted in objective functions. If each category of the scheduling problem involves only one order, eqs 48-54 can be correspondingly changed as follows.
8. Remark (i) Values for U and M must be decided when the proposed model is used. However, as is well-known, tight values are desirable. The difference between the starting time of time slot k + 1 and the finishing time of slot k in each unit has to be greater than or equal to the largest sequence-dependent setup time; thus,
k
NTi ∑ i∈I Ei
(64) (65)
)
Ti + ∑ |I| + 1 i∈I
(66)
where Ei and Ti are the earliness and tardiness of order
1256
Ind. Eng. Chem. Res., Vol. 41, No. 5, 2002
Table 1. Processing Times and Unit Ready Times (in Days) for All Examples order 1 unit 1 unit 2 unit 3 unit 4
2
1.70
3
4
5
6
1.40
2.40 1.80
1.25 1.70 0.90
1.10
7
1.05 1.65
0.85
8
9
10
1.60
2.60 1.90
11
12
13
14
15
unit ready time
1.60
1.48
1.75 0.55
2.10
0.85 0.70
0 3 2 3
1.00 1.39
Table 2. Sequence-Dependent Setup Times and Release Times (in Days) for All Examples order 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
2
3
4
5
6
FS 1.10 1.00
0.05 1.80
0.30 FS
0.95 FS 0.55
1.25 0.60 FS 0.80 1.30
2.10 1.50 0.30
8
0.65
0.15
1.40
7
0.30 0.70
0.75
FS FS 0.70
FS 0.85 FS 0.50
0.80 FS
0.90
10 0.4
1.60 0.60 1.20
0.20 0.50 FS FS
0.45
11 0.25 0.50
1.30 0.50 0.40
12
13
FS 0.75
0.35 0.70 FS
1.00
1.10 1.05
0.65 0.70 FS 1.00 1.55
0.20
0.15
1.20
0.30
0.25
1.15 0.35 0.80
14
0.90
1.65 0.80 FS
0.40 1.45 0.20
FS 0.30
9 0.85
0.60 1.40
1.20 FS 0.85 1.15 0.15 FS
15
0.70 0.80 0.55
0.45 FS 0.20 FS 0.10
1.30
0.95
release time
1.30
0.40 0.75 0.30
1.05
0.0 1.2 0.0 1.4 0.0 2.0 3.0 0.0 2.0 1.8 0.0 1.5 0.0 0.0 2.5
Table 3. Model Sizes and Computational Requirements for Scheduling Problems Involving the First 8, 9, 10, 12, and 15 Orders problem 8 orders
9 orders 10 orders
12 orders 15 orders a
model
binary var.
cont. var.
constraints
MS
CPU timea
iterations
Kj (unit 1-unit 4)
M1 M2 M3 M3 M1 M2 M3 M3 M1 M2 M3 M3 M2 M3 M3 M3 M3
96 52 52 32 117 60 60 39 140 75 68 53 99 85 74 135 102
161 71 71 52 190 80 80 49 257 101 88 67 132 106 93 165 118
661 227 227 131 799 257 257 158 994 334 292 222 437 356 308 564 408
6.45 6.45 6.45 7.20 7.20 7.20 7.20 7.20 7.20 7.20 7.20 8.65 7.85 7.85 8.65 9.25 10.20
6.88 0.44 0.44 0.13 22.63 0.79 0.79 0.45 114.16 2.74 0.82 0.73 17.04 6.49 7.63 867.39 260.57
151 106 106 16 227 190 190 26 507 455 187 261 1939 356 2210 78311 55264
1-8; 1-8; 1-8; 1-8 1-3; 2-5; 4-7; 6-8 1-3; 2-5; 4-7; 6-8 1-2; 3-4; 5-6; 7-8 1-9; 1-9; 1-9; 1-9 1-4; 3-6; 5-8; 7-9 1-4; 3-6; 5-8; 7-9 1-3; 4-5; 6-7; 8-9 1-10; 1-10; 1-10; 1-10 1-5; 3-7; 6-9; 8-10 1-4; 4-7; 6-9; 8-10 1-4; 4-6; 7-8; 9-10 1-5; 3-7; 6-11; 9-12 1-4; 4-7; 6-10; 10-12 1-4; 4-6; 7-10; 10-12 1-5; 4-9; 8-13; 12-15 1-4; 5-8; 9-12; 13-15
µ
1.1 1.0 1.1 1.0 1.1 1.0 1.1 1.0 1.1 1.0
Seconds on a Pentium III (733 MHz) with LP PROC.
i, respectively, NTi indicates that order i is tardy (0-1 variable), and pi is the weight for order i. 9. Numeric Results and Discussion In this section, some examples are studied, and some numeric results and discussion are presented. As implied in the title of this paper, the model is suitable for short-term scheduling of multiproduct single-stage batch plant with parallel lines. It can deal with the scheduling problem involving identical orders. Consider the single-stage multiproduct batch plant given by Cerda´ et al.17 The plant involves four parallel units and has to process orders belonging to 15 categories in all of the following examples. Data for scheduling is shown in Tables 1 and 2. Information about each production order including processing times and unit ready times is provided in Table 1, in which a blank indicates that the order cannot be processed in the related unit. Table 2 shows the sequence-dependent setup times for each production order, regardless of the unit in which it is processed. The prohibited subse-
quences (i, i′) ∈ FS are also reported in Table 2. Subsequence (order 1, order 3) is such a case whose related cell is marked with “FS”. Moreover, the release time of each order is presented in Table 2. All of the following scheduling problems are solved on a 733 MHz, 128 MB Pentium III PC using the MILP solver LP PROC25 of SAS 8.0. The branch and bound technique is employed to solve all examples in this paper. 9.1. Scheduling Problem of Each Category Involving One Order. The effectiveness of the model and heuristic rules is studied in this part through some examples. To simplify narration, the basic model and the models embedded with heuristic rules 1 and 2 are respectively denoted by M1, M2, and M3. They are respectively used to optimize the makespan of scheduling problems involving the first 8, 9, 10, 12, and 15 orders. The model sizes and computational requirements for the scheduling problems are reported in Table 3. Moreover, Figure 3 and Table 4 show the Gantt chart
Ind. Eng. Chem. Res., Vol. 41, No. 5, 2002 1257
Figure 3. Gantt chart for optimal scheduling involving 15 orders.
Figure 4. Gantt chart for optimal scheduling involving 12 orders. Table 4. Results for Optimal Scheduling Involving 15 Orders
unit unit 1
unit 2
unit 3
unit 4
time processing transition slot order time time 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
1 13 9 6 4 14 10 2 11 12 3 7 5 8 15
1.70 1.75 1.60 2.40 1.70 1.55 1.90 0.90 0.55 0.85 1.10 1.05 0.85 2.10 1.39
0.35 0.25 0.80 0.75 0.35 0.25 0.15 0.80 0.30 0.60 0.10
processing processing initial completion time time 0.00 2.05 4.05 6.45 3.00 5.45 7.35 2.00 3.15 3.85 5.50 6.90 3.00 4.45 6.65
1.70 3.80 5.65 8.85 4.70 7.00 9.25 2.90 3.70 4.70 6.60 7.95 3.85 6.55 8.04
and results of the scheduling problem involving 15 orders. It can be found in Figure 3 and Table 4 that the results for optimal scheduling satisfy the constraints presented in section 5 and orders processed in each unit are sequenced by the minimum sum of transition times. If each category comprises only one order and heuristic rules are left out of consideration, the number of binary variables in the model is equal to |I|2 + |J||I|. In the same case, the model proposed by Pinto and Grossmann10 comprises |I|2|J| binary variables. Apparently, the model addressed in this paper involves fewer binary variables when the problems of industrial size are considered. As stated in the Introduction, the number of binary variables affects the computational effort of an MILP problem directly. The fewer binary variables a model comprises, the smaller the computational effort is recurred under the same conditions. It can be found in Table 3 that the basic model can be solved in a rather
short time. For example, using model M1 to solve the scheduling problem involving 10 products only requires 114.16 CPU s. It can be found in Table 3 that the heuristic rules not only reduce the number of binary variables, continuous variables, and constraints but also cut down the computational efforts. Significantly, the optimal solutions can be derived from the model embedded with heuristic rules. For instance, model M1 for the scheduling problem involving 10 orders comprises 140 binary variables, 257 continuous variables, and 994 constraints. It requires 114.16 CPU s and 507 iterations to obtain the optimal solution of 7.20 days. However, model M2 for the same scheduling problem involves 75 binary variables, 101 continuous variables, and 334 constraints. Optimal solution is found only in 2.74 CPU s and 455 iterations. Model M3 with µ equal to 1.1 further reduces the number of binary variables, continuous variables, and constraints. The solution time is 7.2% as long as that of model M1 and 29.9% as long as that of model M2. When the scheduling problems involve a small number of orders, heuristic rules 1 and 2 are equivalent to each other if a large value is assigned to µ. For example, the sets of time slots to which each unit is allocated are identical when the models M2 and M3 with µ equal to 1.1 are applied to the scheduling problem involving 8 and 9 orders. However, when the scheduling problems involve a large number of orders, heuristic rule 2 is more efficient to reduce the size of the model than heuristic rule 1. Such a case can be observed in Table 3 when models M2 and M3 with µ equal to 1.1 are applied to scheduling problems involving 10 and 12 orders. However, if a too small value is assigned to µ, the optimal scheduling cannot be derived from the model embedded with heuristic rule 2. However, even if 1.0 is assigned
1258
Ind. Eng. Chem. Res., Vol. 41, No. 5, 2002
Table 5. Results for Optimal Scheduling Involving 12 Orders (“-” Denotes Earliness)
unit
time slot
order
1 2 3 4 5 6 7 8 9 10 11 12
1 10 9 6 4 3 7 11 2 12 5 8
unit 1 unit 2 unit 3
unit 4
processing time
transition time
processing initial time
processing completion time
due date
lateness
1.70 2.60
0.40 0.70 0.05 0.30 1.00 0.95 0.40 0.60
0.00 2.10 5.40 3.00 5.50 2.00 3.40 5.45 7.10 3.05 4.15 5.90
1.70 4.70 7.00 4.80 7.20 3.10 4.45 6.00 8.00 3.75 5.00 8.00
2 5 7 5 7 3 4 6 8 4 5 8
-0.30 -0.30 0.00 -0.20 0.20 0.10 0.45 0.00 0.00 -0.25 0.00 0.00
1.80 1.70 1.10 1.05 0.55 0.90 0.70 0.85 2.10
Table 6. Number of Orders Belonging to Each Category for Examples 1 and 2
Table 8. Results for Optimal Scheduling of Example 1 unit
order example 1 example 2
1
2
3
4
5
6
7
8
9
10
2 1
2 2
3 3
2 1
2 4
2 2
3 4
2 2
1 1
1 2
unit 1
to µ, the difference between the optimal and suboptimal makespans in Table 3 is acceptable. The model and heuristic rules proposed in this paper can not only minimize makespan but also optimize total earliness and tardiness, number of tardy orders, and lateness. An example for minimizing lateness is given in the following contents. It involves the first 12 orders shown in Table 1. The model embedded with heuristic rule 2 is used, where µ and M are equal to 1.1 and 9, respectively. In such a case, the scheduling problem comprises 85 binary variables, 129 continuous variables, and 498 constraints and requires 114.16 CPU s to obtain the optimal solution. The Gantt chart and results for optimal scheduling of this problem are shown in the Figure 4 and Table 5. 9.2. Scheduling Problem Involving Several Identical Orders. This part demonstrates the effectiveness of applying the model and heuristic rules to the scheduling problems involving identical orders. Examples 1 and 2 involve 10 categories of orders. The number of orders belonging to each category is presented in Table 6. Examples 1 and 2 are to minimize makespan and total earliness, respectively. The model sizes and com-
unit 2
unit 3
unit 4
time processing transition processing processing slot order time time initial time completion time 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
3 1 1 10 9 6 6 4 4 2 2 3 3 7 7 7 5 5 8 8
1.25 1.70 1.70 2.60 1.60 1.80 1.80 1.70 1.70 0.90 0.90 1.10 1.10 1.05 1.05 1.05 0.85 0.85 2.10 2.10
1.00 0.00 0.40 0.70 0.00 0.70 0.00 0.00 1.10 0.00 0.30 0.00 0.00 0.00 0.60 0.00
0.00 2.25 3.95 6.05 9.35 3.00 4.80 7.30 9.00 2.00 2.90 4.90 6.00 7.40 8.45 9.50 3.00 3.85 5.30 7.40
1.25 3.95 5.65 8.65 10.95 4.80 6.60 9.00 10.70 2.90 3.80 6.00 7.10 8.45 9.50 10.55 3.85 4.70 7.40 9.50
putational requirements corresponding to each example are shown in Table 7. The results for optimal scheduling are reported in Figure 5, Table 8, Figure 6, and Table 9. If the scheduling problem involves several identical orders and each category of orders can be processed in all units, the number of binary variables in the model is equal to |I|∑i∈Ini + |J|∑i∈Ini when the heuristic rules are left out of consideration. In the same case, the model proposed by Me´ndez et al.4 comprises ∑i∈Ini(∑i∈Ini - 1)
Figure 5. Gantt chart for example 1. Table 7. Model Sizes and Computational Requirements for Examples 1 and 2 example 1 example 2 a
binary var.
cont var.
constraints
obj.
CPU timea
iterations
Kj (unit 1-unit 4)
memo
133 140
175 194
602 776
10.95 26.35
483.62 469.62
41020 3033
1-8;5-12;10-17;15-20 1-7;5-12;10-18;15-22
µ ) 1.4 µ ) 1.4, M ) 12
Seconds on a Pentium III (733 MHz) with LP PROC.
Ind. Eng. Chem. Res., Vol. 41, No. 5, 2002 1259
Figure 6. Gantt chart for example 2. Table 9. Results for Optimal Scheduling of Example 2 unit
unit 1
unit 2
unit 3
unit 4
time slot
order
processing time
transition time
processing initial time
processing completion time
due date
earliness
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
1 9 3 3 10 6 6 4 10 2 2 3 7 7 7 7 5 5 5 5 8 8
1.70 1.60 1.25 1.25 2.60 1.80 1.80 1.70 1.90 0.90 0.90 1.10 1.05 1.05 1.05 1.05 0.85 0.85 0.85 0.85 2.10 2.10
0.85 1.25 0.00 0.20 0.00 0.70 0.70 0.00 1.10 0.30 0.00 0.00 0.00 0.00 0.00 0.00 0.60 0.00
0.30 3.40 6.70 7.95 9.40 3.00 4.80 7.30 10.10 2.20 3.10 5.40 6.80 7.85 8.90 9.95 3.60 4.45 5.30 6.15 7.80 9.90
2.00 5.0.00 7.95 9.20 12.00 4.80 6.60 9.00 12.00 3.10 4.00 6.50 7.85 8.90 9.95 11.00 4.45 5.30 6.15 7.00 9.90 12.00
2 5 11 11 12 7 7 9 12 4 4 11 11 11 11 11 7 7 7 7 12 12
0.00 0.00 3.05 1.80 0.00 2.20 0.40 0.00 0.00 0.90 0.00 4.50 3.15 2.10 1.05 0.00 2.55 1.70 0.85 0.00 2.10 0.00
+ |J|∑i∈Ini binary variables. Apparently, the model addressed in this paper involves fewer binary variables when the problems of industrial size are considered. The heuristic rules are also very effective in reducing the model sizes and computational efforts of scheduling problems involving several orders belonging to each category. It can be found in Table 7 that it respectively takes only 483.62 and 469.62 CPU s for models embedded with heuristic rule 2 to obtain the optimal scheduling for the problems involving 20 and 22 orders. Comparing the example involving 15 orders in Table 3 with examples in Table 7, one can find that the model sizes are slightly different, but the computational effort for the former example is about twice as much as those of the latter ones. There are two reasons for this. The first one is that the combinatorial space of the scheduling problem involving identical orders is much smaller than that of the scheduling problem involving the same number of different orders. The other is that the model tackles the scheduling problem involving identical orders skillfully. So, the model proposed in this paper reveals a good computational performance when scheduling problems involve several orders belonging to each category. 10. Conclusion A new MILP formulation for the short-term scheduling of multiproduct batch plant involving a processing stage with several units in parallel has been presented.
It is based on continuous-time domain representation and the notation of time slot. To get a significant savings in binary variables, assignment of orders and units to time slots are handled separately. Moreover, the time slots do not need to be overestimated and preassigned to units, and their number is equal to the total number of orders. The model can not only accommodate many constraints but also optimize several types of objective functions. To reduce the size of the model, two heuristic rules are introduced. These heuristic rules can not only save the number of binary variables, continuous variables, and constraints but also cut down the computational efforts. Furthermore, the optimal solution can be derived from the model embedded with heuristic rules. Many examples have been tackled successfully by solving MILP models in a rather small computing time. The computation shows that the model reveals a good computational performance, especially when the scheduling problem involving identical orders is considered. The time representation in this paper is simple, and accordingly the proposed model benefits from it. However, the time representation cannot be applied to the scheduling of multistage batch plants. Moreover, this paper considers no resource constraints except unit. Further study will focus on extending the time representation and the scope of the model and taking more resource constraints into consideration.
1260
Ind. Eng. Chem. Res., Vol. 41, No. 5, 2002
Acknowledgment The authors acknowledge the support from Project “973” of the State Key Fundamental Research under Grant G1998030415. Finally, the authors thank SAS Corp. for providing SAS 8.0 Literature Cited (1) Pinto, J. M.; Grossmann, I. E. Assignment and Sequencing Model for the Scheduling of Process Systems. Ann. Oper. Res. 1998, 81, 433. (2) Rippin, D. W. T. Batch Process Systems Engineering: A Retrospective and Prospective Review. Comput. Chem. Eng. 1993, 17, s1. (3) Pekney, J. F.; Reklaitis, G. V. Towards The Convergences of Theory and Practice: A Technology Guide for Scheduling/ Planning Methodology. AIChE Symp. Ser. 1998, 94, 75. (4) Me´ndez, C. A.; Henning, G. P.; Cerda´, J. Optimal Scheduling of Batch Plants Satisfying Multiple Product Orders with Different Due-Dates. Comput. Chem. Eng. 2000, 24, 2223. (5) Shah, N. Single and Multisite Planning and Scheduling: Current Status and Future Challenges. AIChE Symp. Ser. 1998, 94, 75. (6) Kondili, E.; Pantelides, C. C.; Sargent, R. W. H. A General Algorithm for Short-Term Scheduling for Batch OperationssΙ. MILP Formulation. Comput. Chem. Eng. 1993, 17, 211. (7) Shah, N.; Pantelides, C. C.; Sargent, R. W. H. A General Algorithm for Short-Term Scheduling for Batch OperationssII. Computational Issues. Comput. Chem. Eng. 1993, 17, 229. (8) Papageoriou, L. G.; Pantelides, C. C. Optimal Campaign Planning/Scheduling of Multipurpose Batch/Semicontinuous Plants. 1. Mathematical Formulation. Ind. Eng. Chem. Res. 1996, 35, 488. (9) Papageoriou, L. G.; Pantelides, C. C. Optimal Campaign Planning/Scheduling of Multipurpose Batch/Semicontinuous Plants. 2. A Mathematical Decomposition Approach. Ind. Eng. Chem. Res. 1996, 35, 510. (10) Pinto, J. M.; Grossmann, I. E. A Continuous Time Mixed Linear Programming for Short-Term Scheduling of Multistage Batch Plants. Ind. Eng. Chem. Res. 1995, 34, 3037. (11) Moon, S.; Hrymak, A. N. Scheduling of the Batch Annealing Process-Deterministic Case. Comput. Chem. Eng. 1999, 23, 1193. (12) Kim, S. B.; Lee, H.; Lee, I.; Lee, E. S.; Lee, B. Scheduling of Non-Sequential Multipurpose Batch Process Under Finite Intermediate Storage Policy. Comput. Chem. Eng. 2000, 24, 1703. (13) Karimi, I. A.; Mcdonald, C. M. Planning and Scheduling
of Parallel Semicontinuous Processes. 2. Short-Term Scheduling. Ind. Eng. Chem. Res. 1997, 36, 2701. (14) Ierapetritou, M. G.; Floudas, C. A. Effective ContinuousTime for Short-Term Scheduling. 1. Multipurpose Batch Processes. Ind. Eng. Chem. Res. 1998, 37, 4341. (15) Ierapetritou, M. G.; Floudas, C. A. Effective ContinuousTime for Short-Term Scheduling. 2. Continuous and Semicontinuous Processes. Ind. Eng. Chem. Res. 1998, 37, 4360. (16) Ierapetritou, M. G.; Floudas, C. A. Effective ContinuousTime for Short-Term Scheduling. 3. Multiple Intermediate Due Dates. Ind. Eng. Chem. Res. 1999, 37, 3446. (17) Cerda´, J.; Henning, G. P.; Grossmann, I. E. A MixedInteger Linear Programming Model for Short-Term Scheduling of Single-Stage Multiproduct Batch Plants with Parallel Lines. Ind. Eng. Chem. Res. 1997, 36, 1795. (18) Me´ndez, C. A.; Cerda´, J. Optimal Scheduling of a ResourceConstrained Multiproduct Batch Plant Supplying Intermediates to Nearby End-Product Facilities. Comput. Chem. Eng. 2000, 24, 369. (19) Schilling, G.; Pantelides, C. C. A Simple Continuous-Time Process Scheduling Formulation and A Novel Solution Algorithm. Comput. Chem. Eng. 1997, 20, s1221. (20) Xueya, Z.; Sargent, R. W. H. The Optimal Operation of Mixed Production Facilities-A General Formulation and Some Approaches for the Solutions. Proceedings of the 5th International Symposium on Process Systems Engineering, Kyongju, Korea, 1994; p 171. (21) Pinto, J. M.; Grossmann, I. E. A Continuous-Time MILP Model for Short-Term Scheduling of Multistage Batch Plants with Pre-Ordering Constraints. Comput. Chem. Eng. 1996, 20, S1197. (22) Hui, C.-W.; Gupta, A. A Novel MILP Formulation for Short-Term Scheduling of Multistage Multi-Product Batch Plants. Comput. Chem. Eng. 2000, 24, 1611. (23) Sahinidis, N. V.; Grossmann, I. E. MINLP Model for Cyclic Multiproduct Scheduling on Continuous Parallel Lines. Comput. Chem. Eng. 1991, 15, 85. (24) Raman, R.; Grossmann, I. E. Integration of Logic and Heuristic Knowledge in MINLP Optimization for Process Synthesis. Comput. Chem. Eng. 1992, 16, 155. (25) SAS Institute Inc. SAS/OR User’s Guide, Version 6, 1st ed.; SAS Institute Inc.: Cary, NC, 1989.
Received for review May 24, 2001 Revised manuscript received November 1, 2001 Accepted November 29, 2001 IE010465D