Ind. Eng. Chem. Res. 2010, 49, 8657–8669
8657
Single-Stage Scheduling of Multiproduct Batch Plants: An Edible-Oil Deodorizer Case Study Songsong Liu,† Jose M. Pinto,‡ and Lazaros G. Papageorgiou*,† Centre for Process Systems Engineering, Department of Chemical Engineering, UniVersity College London, Torrington Place, London WC1E 7JE, U.K., and Process Systems R&D, Praxair Inc., 39 Old Ridgebury Rad, Danbury, Connecticut 06810
This article considers the short-term scheduling of a single-stage batch edible-oil deodorizer that can process multiple products in several product groups. Sequence-dependent changeovers occur when switching from one product group to another. Based on the incorporation of products into product groups, mixed integer linear programming (MILP) models are proposed for two scenarios, with and without backlogs. Then, the models are successfully applied to a real-world case with 70 product orders over a 128-h planning horizon. Compared with a literature model developed for a similar problem, the proposed models exhibit significantly better performance. 1. Introduction In the past decade, a large number of optimization models and approaches have been proposed for batch scheduling and planning. A number of reviews on the planning and scheduling of batch processes have been presented in the literature.1-6 Initially, discrete-time formulation models using the state-task network7 (STN) or resource-task network8 (RTN) were used for batch scheduling problems. Because discrete-time formulations become extremely large for large-size problems and finer discretizations, several techniques9-11 have been proposed to reduce the computational effort of large discrete-time MILP models. Increasing attention has been paid to continuous-time formulations to overcome the difficulties of discrete-time formulations. Pinto and Grossmann12 proposed a continuous-time MILP model for the short-term scheduling of batch plants with multiple stages. They then improved this work with the assumption of preordering of orders.13 Zhang and Sargent14 used the RTN representation to develop a mixed integer nonlinear programming (MINLP) formulation for the scheduling of general plant topologies and then solved the problem with iterative MILP models. Cerda´ et al.15 developed an MILP model for the shortterm scheduling of a single-stage batch multiproduct plant with nonidentical parallel units/lines based on a continuous-time representation. Karimi and McDonald16 developed slot-based MILP formulations for the short-term scheduling of single-stage multiproduct plants with parallel semicontinuous units. Ierapetritou and Floudas17 presented an MILP formulation for the short-term scheduling of multiproduct/multipurpose batch processes based on an STN representation. Me´ndez et al.18 presented a two-stage approach for the batching and scheduling problem of single-stage multiproduct batch plants. Hui and Gupta19 proposed a general formulation for short-term scheduling of single-stage multiproduct batch plants with nonidentical parallel units with order-sequencedependent constraints. Chen et al.20 introduced an MILP formulation for the short-term scheduling of multiproduct batch plants with parallel units, as well as two heuristic rules to reduce * To whom correspondence should be addressed. Tel.: +44-20-76792563. Fax: +44-20-7383-2348. E-mail:
[email protected]. † University College London. ‡ Praxair Inc.
model size. Lim and Karimi21 considered both batching and scheduling in a slot-based MILP formulation for the short-term scheduling of single-stage batch plants with parallel units and multiple orders per product. Castro and Grossmann22 proposed a multiple-time-grid, continuous-time MILP model for the shortterm scheduling of single-stage multiproduct plants. He and Hui23 proposed an evolutionary approach for single-stage multiproduct scheduling with parallel units. They then extended their own work by constructing a new set of heuristic rules24 and proposing a heuristic rule-based genetic algorithm.25 Erdirik-Dogan and Grossmann26 proposed two production planning models and a rolling-horizon (RH) algorithm for the production planning of parallel multiproduct batch reactors with sequence-dependent changeovers. Liu and Karimi27-29 proposed a series of slot-based and sequence-based MILP models for the scheduling of multistage multiproduct batch plants with parallel units and unlimited and no intermediate storage. Prasad and Maravelias30 and Sundaramoorthy and Maravelias31 both considered the simultaneous batching and scheduling of multistage multiproduct processes in MILP formulations. Erdirik-Dogan and Grossmann32 proposed a slot-based continuous-time MILP formulation and a bilevel decomposition scheme for the shortterm scheduling of multistage multiproduct batch plants. Shaik and Floudas33 improved the model of Ierapetritou and Floudas17 and proposed an RTN-based unit-specific event-based model for short-term scheduling of batch plants. Castro et al.34 aggregated all batches of a product into a single task instead of considering one processing task per batch for the short-term batching and scheduling of single-stage multiproduct plants. Marchetti and Cerda´35 presented an MILP formulation for the short-term scheduling of single-stage multiproduct batch plants with parallel units using a unit-dependent precedence-based representation. Castro and Novais36 proposed a new RTN-based multiple-time-grid MILP formulation for the short-term scheduling of multistage batch plants with multiple product batches and sequence-dependent changeovers. Kopanos et al.37 addressed the production scheduling and lot-sizing problem in a multiproduct yogurt production line of a dairy plant. This article addresses the short-term scheduling problem of a single-stage edible-oil deodorizer, adapted from the real-world case study discussed in Kelly and Zyngier,38 in which processing changeovers occur only during switching from one product group to another. In this case, the production schedule of groups,
10.1021/ie1002137 2010 American Chemical Society Published on Web 08/09/2010
8658
Ind. Eng. Chem. Res., Vol. 49, No. 18, 2010
3. Mathematical Formulations The proposed models for the batch edible-oil deodorizer scheduling problem are MILP formulations, based on our previous work,39,40 using the classic TSP (traveling salesman problem) formulation and discrete/continuous time representation. For the batch scheduling problem, we consider two scenarios. In scenario 1, no backlog is allowed, and all orders should be processed and delivered within their time windows. In scenario 2, backlog is allowed, and the orders can be processed and delivered after the due dates. The following notation is used for the models: Figure 1. Orders, products, and product groups.
rather than products, is of greater concern. The objective of this work is to develop efficient mixed-integer linear programming optimization approaches for the short-term scheduling of singleunit batch plants. The processing of products is incorporated into that of product groups, and the schedule of products groups is considered first. The processing of a product group involves the processing of multiple products in the group, and the processed products are used to satisfy the demands of the orders. The remainder of this article is organized as follows: The scheduling problem is described in section 2. The mathematical formulations of the proposed models are presented in section 3. Section 4 presents the computational results of the case study. In section 5, a literature model is compared with the proposed MILP models. Finally, some concluding remarks are made in section 6. 2. Problem Statement This problem considers a single-stage multiproduct batch deodorizer that processes multiple products. There are multiple customer orders for a product that belongs to a certain product group (see Figure 1). Each order has a corresponding release time and due date. The total planning horizon is several days. The single deodorization tray in the deodorizer cannot contain different products at the same time, which means that the deodorizer can process only one product in a batch. Sequencedependent downtime restrictions occur during switching from one product group to another. The following assumptions have been made in the problem: (1) Each product belongs to only one group. (2) Each order is specific to only one product. (3) Each order is released/due at the beginning/end of a time period. (4) No order can be processed before its release time. (5) Different orders of the same product can be processed together. (6) The single batch time is fixed. (7) Multiple deliveries are allowed for each order after its release time. In this scheduling problem, the product groups, products, orders, release time, due date and demand of each order, changeover times, batch time, and minimum and maximum batch sizes are given, and the objective is to determine the processing sequence and times of product groups, processing amount and batch number of each product, inventory levels, and deliveries/sales for each order, so as to maximize the total profit, involving sales revenue, processing cost, changeover cost, inventory cost, and backlog cost, if backlog is allowed.
Indices g, g′ ) product groups i ) products o ) orders t, t′ ) time periods Sets G ) product groups Gt ) product groups whose windows contain time period t, Gt ) {g| min RTo e t e max DTo} i∈Ig,o∈Oi i∈Ig,o∈Oi ˜ Gt ) product groups whose windows start before time period t, ˜ t ) {g|t g min RTo} G o∈Ig I ) products Ig ) products in group g It ) products whose windows contain time period t, It ) {i|min RTo e t e max DTo} o∈Oi o∈Oi ˜It ) products whose windows start before time period t, I˜t ) {i|t g min RTo} o∈Oi O ) orders Oi ) orders for product i Ot ) orders whose windows contain time period t, Ot ) {o|RTo e t e DTo} ˜ t ) orders whose windows start before time period t, O ˜t ) O {o|t g RTo} T ) time periods Parameters BCo ) backlog cost of order o ) maximum batch number in time period t BNmax t BSmax ) maximum batch size BSmin ) minimum batch size BT ) batch time CCgg′ ) changeover cost from group g to group g′ Do ) demand of order o DTo ) time period of due date of order o ICi ) inventory cost of product i M ) a large number PCi ) processing cost of product i Pri ) price of product i RTo ) time period of release time of order o VUi ) upper bound of inventory for product i θUt ) upper bound of processing time in time period t τgg′ ) changeover time from group g to group g′ Binary Variables Egt ) 1 if group g is processed during time period t; 0 otherwise Fgt ) 1 if group g is the first one in time period t; 0 otherwise Lgt ) 1 if group g is the last one in time period t; 0 otherwise Zgg′t ) 1 if group g immediately precedes group g′ in time period t; 0 otherwise ZFgg′t ) 1 if group g in period t - 1 immediately precedes group g′ in period t; 0 otherwise
Integer Variable Nit ) number of batches of product i during time period t Continuous Variables Bot ) backlog amount for order o at time period t OIgt ) ordering index of group g during time period t Pit ) amount of product i processed during time period t Qot ) product amount processed for order o during time period t Sot ) sales amount for order o in time period t Tgt ) processing time for group g during time period t Vot ) inventory amount for product o at the end of time period t 3.1. Model of Scenario 1. In scenario 1, as backlogs and processing/deliveries after the due dates of the orders are not allowed, only product group g ∈ Gt, product i ∈ It, and order o ∈ Ot can be assigned to time period t for processing. Assignment and Sequencing. Assuming that each time period comprises the processing of at least one product, only one product group can be the first or the last one in each time period
∑F
gt
) 1,
∀t ∈ T
(1)
gt
) 1,
∀t ∈ T
(2)
g∈Gt
∑L
g∈Gt
If a product group is not processed during a particular time period, then it cannot be either the first or the last one in that period Fgt e Egt,
∀t ∈ T, g ∈ Gt
(3)
Lgt e Egt,
∀t ∈ T, g ∈ Gt
(4)
Each product group, except the first one, is processed after another product group
∑
Zgg't ) Eg't - Fg't,
∀t ∈ T, g' ∈ Gt
(5)
g∈Gt,g*g'
Similarly, each product group, except the last one, is processed before another product group
∑
Zgg't ) Egt - Lgt,
∀t ∈ T, g ∈ Gt
(6)
g'∈Gt,g'*g
For each product group processed last in a period, there is a changeover from this product group to the first one in the next period
∑
8659
OIg't - (OIgt + 1) g -M(1 - Zgg't), ∀t ∈ T, g, g' ∈ Gt, g * g'
(9)
If a product group is not processed during a time period, its corresponding order index is 0 ∀t ∈ T, g ∈ Gt
OIgt e MEgt,
(10)
Here, the cardinality of set Gt, |Gt|, can be used as M. Processing Time. There should be at least one batch to be processed if a product group is assigned to a period; otherwise, no batch of all its products is processed
∑
Egt e
∀t ∈ T, g ∈ Gt
Nit e BNmax t Egt,
(11)
i∈Ig∩It
The processing time of a product group is the total number of batches multiplied by the batch processing time
∑
Tgt ) BT
∀t ∈ T, g ∈ Gt
Nit,
(12)
i∈Ig∩It
The total of the processing and changeover times is limited by the total available time in each time period
∑T
g∈Gt
gt
+
∑ ∑Z
+
gg'tτgg'
g∈Gt g'∈Gt
∑T
gt
∑ ∑ ZF
gg'tτgg'
g∈Gt-1 g'∈Gt
∑ ∑Z
+
gg'tτgg'
g∈Gt
e θUt ,
∀t ∈ T - {1}
(13)
∀t ∈ {1}
(14)
e θUt ,
g∈Gt g'∈Gt
Processing Amount. For each product, the amount processed in a period is limited by the number of batches multiplied by the minimum and maximum batch sizes BSminNit e Pit e BSmaxNit,
∀t ∈ T, i ∈ It
(15)
The process amount for each product in a period is the sum of the process amounts for the related orders that can be processed in that period
∑
Pit )
Qot,
∀t ∈ T, i ∈ It
(16)
o∈Oi∩Ot
Inventory Level. The inventory level for an order in a period is the inventory in the previous period, plus the production amount, minus the sales, which only occur within the time window Vot ) Vo,t-1 + (Qot - Sot)| o∈Ot,
˜t ∀t ∈ T, o ∈ O
(17) ZFgg't ) Fg't,
∀t ∈ T - {1}, g' ∈ Gt
(7)
g∈Gt-1
Similarly, for each product group processed first in a period, there is a changeover from the last one in the previous period to this product group
∑
Ind. Eng. Chem. Res., Vol. 49, No. 18, 2010
ZFgg't ) Lg,t-1,
∀t ∈ T - {1}, g ∈ Gt
(8)
g'∈Gt-1
Ordering Index. The ordering index of a product group processed later in a sequence is larger than that of an earlierprocessed product group
The inventory level of each product is limited by its capacity
∑
Vot e VUi ,
∀t ∈ T, i ∈ I˜t
(18)
˜t o∈Oi∩O
Demand. The sales for each order should take place only within the time window, and the total sales should be no greater than the demand DTo
∑S
t)RTo
ot
e Do,
∀o ∈ O
(19)
8660
Ind. Eng. Chem. Res., Vol. 49, No. 18, 2010
∑S
Objective. The objective is to maximize the total profit, including the sales revenue, processing cost, inventory cost, and changeover cost max
∑∑ ∑
PriSot -
∑∑
∑∑ ∑
ICiVot -
i∈I t∈T o∈Oi∩Ot
∑ ∑ ∑ CC
gg′Zgg′t
max
-
t∈T g∈Gt g′∈Gt
∑ ∑ ∑ CC
Model DEO-S1 for scenario 1 of the problem is described by constraints 1-19 with eq 20 as the objective function. 3.2. Model of Scenario 2. In scenario 2, backlogs and processing/deliveries after the due dates of the orders are ˜ t, product i ∈ I˜t, and order o ∈ allowed, so product group g ∈ G ˜ Ot can be assigned to each time period t for processing. By ˜ t, I˜t, replacing the sets Gt, It, and Ot in eqs 1-17 by the sets G ˜ t, respectively, we can obtain the constraints for the model and O of scenario 2. Equation 18 can be used in the model for scenario 2 without any change. Demands and Backlogs. The backlog of an order is activated only during the time period after its due date. At a time period t, the backlog of each order is equal to its demand minus the total sales from its release time to time period t t
Sot',
PriSot -
∑∑ ∑
(20)
t∈T-{1} g∈Gt-1 g′∈Gt
∑
∑∑ ∑
i∈I t∈T o∈Oi∩O ˜t
gg′ZFgg′t
Bot ) Do -
∀o ∈ O
e Do,
(22)
Objective. The backlog cost is also included in the objective, in addition to the cost terms included in eq 20
PCiPit -
t∈T i∈It
i∈I t∈T o∈Oi∩O ˜t
ot
tgRTo
∀o ∈ O, t g DTo
(21)
t')RTo
The sale of each order can be in any time period after its release time
gg′Zgg′t
t∈T g∈G ˜t g′∈G ˜t
i it
-
t∈T i∈I˜t
ICiVot -
i∈I t∈T o∈Oi∩O ˜t
∑ ∑ ∑ CC
∑ ∑ PC P
-
∑ ∑ BC B
o ot
-
t∈T o∈O ˜t
∑ ∑ ∑ CC
gg′ZFgg′t
(23)
˜t t∈T-{1} g∈G ˜t-1 g′∈G
Model DEO-S2 for scenario 2 of the problem is described by constraints 1-17 after revision and constraints 18, 21, and 22 with eq 23 as the objective function. 4. Case Study In this section, we apply the proposed models to the realworld edible-oil deodorizer scheduling problem. A planning horizon of 128 h is considered. There are 70 orders (O1-O70) for 30 products (P1-P30) that belong to 7 different groups (PG1-PG7). The total demand is 4156 tons, and the demand for each order is given in Table 1. The release time and due date of each order (see Table 1) fall at only 8 a.m. and 6 p.m. during each day. The total planning horizon is divided into 11 time periods as illustrated in Figure 2. For each order, the time window is shown in Table 1 and Figure 3. The numbers in Figure 3 indicate the demands for the orders. The deodorizer can process a maximum batch size of 7.5 tons of products, with a fixed processing time of 15 min (0.25
Table 1. Details of Each Product Group, Product, and Order group
product
order
release time (h)
due date (h)
demand (tons)
group
product
order
release time (h)
due date (h)
demand (tons)
PG1
P1 P3
O5 O14 O31 O22 O33 O3 O54 O60 O70 O11 O59 O69 O4 O65 O67 O44 O45 O21 O52 O23 O36 O38 O7 O42 O57 O19 O53 O15 O55 O1 O2 O58 O43 O56 O8
42 32 0 0 0 8 42 0 18 18 18 0 18 66 0 18 0 0 32 0 0 0 32 18 18 8 32 8 56 42 0 18 80 0 18
128 114 32 42 42 80 114 90 128 114 80 66 90 104 66 104 56 32 104 32 56 32 128 90 104 56 104 90 128 128 32 114 128 56 104
36 27 43 42 14 21 22 77 96 26 40 45 58 89 30 21 65 42 39 53 61 12 53 77 78 83 28 43 85 94 52 88 77 42 53
PG3
P6 P12 P17 P18
O13 O6 O20 O10 O68 O9 O64 O25 O41 O17 O28 O29 O30 O37 O46 O47 O48 O49 O50 O51 O61 O26 O27 O34 O35 O66 O24 O63 O39 O40 O12 O18 O32 O16 O62
32 0 8 42 32 0 18 0 8 8 56 0 66 32 66 18 0 0 42 56 42 0 18 0 18 32 18 8 18 0 0 0 66 8 18
128 32 66 80 104 56 104 18 80 66 128 32 128 104 128 80 56 42 128 114 114 42 80 56 56 104 104 90 80 42 32 56 128 66 80
52 42 49 57 40 57 60 25 27 53 37 60 18 33 106 198 121 77 161 194 14 53 54 51 66 76 155 43 43 53 20 66 53 105 25
P4 P14
P16 P20 P21 P27 P30 PG2
P5 P7 P8 P9 P13 P15 P28
PG3
P6
PG4
P19 PG5 PG6
P22 P29 P10
P11
P25 P26 PG7
P2 P23 P24
Ind. Eng. Chem. Res., Vol. 49, No. 18, 2010
8661
Figure 2. Aggregated time periods.
Figure 3. Time window and demand for each order; amounts in tons.
h). The processing time for each batch should be fixed to values that are multiples of 0.25 h; that is, 0.25 × number of batches (in hours). For each batch, the minimum batch size is 3.75 tons, one-half of the maximum batch size (7.5 ton). The downtime is 15 min (0.25 h) for emptying or washing trays when switching from one product group to another (see Table 2), and the changeover cost is 10 k$ for each changeover. The price of each product is 1 k$/ton. The unit processing cost is 0.2 k$/ton, and the unit inventory and backlog costs are 0.1 k$/ton. All of the runs described in this section were done in GAMS 22.841 using the CPLEX 11.1 solver42 in the Windows XP environment on an Intel Core Duo 3.40 GHz, 3.44 GB RAM
Table 2. Changeover Matrixa group PG1 PG2 PG3 PG4 PG5 PG6 PG7 a
PG1
PG2
PG3
PG4
PG5
PG6
PG7
Y
Y Y
Y Y
Y Y
Y Y Y
Y Y Y Y Y Y
Y
Y
Y
Y
Y
Y ) changeover occurs.
machine. The optimality gap was set to 2.0%, and the CPU limit was 3600 CPU s.
8662
Ind. Eng. Chem. Res., Vol. 49, No. 18, 2010
Table 3. Breakdown of the Optimal Profit of Model DEO-S1 (k$) profit sales revenue processing cost inventory cost changeover cost
3016.0 3807.5 761.5 0.0 30.0
4.1. Computational Results of Model DEO-S1. Model DEO-S1, with 2829 equations, 2255 continuous variables, and 766 binary/integer variables, was solved in 20 CPU s. The obtained objective function value is 3016.0, with an optimality gap of 1.8%. The breakdown of the optimal profit is given in Table 3. The Gantt chart of the optimal schedule obtained from model DEO-S1 is given in Figure 4, which shows that there are total of three changeovers in the planning horizon. Different colors indicate the different product groups, and each bar contains one
Figure 4. Gantt chart of the optimal schedule: Model DEO-S1.
Figure 5. Demands and production levels of products: Model DEO-S1.
or more products. Note that each batch production might satisfy multiple orders. The production levels of products and orders are given in Figures 5 and 6, respectively. For each product/order, the cumulative production is given, as well as the demand. From these figures, one can see not only how the demands are satisfied, but also the production time periods and amounts for each product/order. As there is no inventory in the optimal solution, which means that products are processed and delivered in the same week of the processing, the sale of each order at each time period can also be seen in Figure 6. In the optimal solution, of 70 orders, 66 orders (94.3%) are either fully or partially satisfied, with a total of 34 orders being fully satisfied by their due dates (numbers in bold). Most of the partially satisfied orders (59.4%) have a service level above
Ind. Eng. Chem. Res., Vol. 49, No. 18, 2010
8663
Figure 6. Demands and production levels of orders (a) O1-O35 and (b) O36-O70: Model DEO-S1.
90%. Only four orders (5.7%) are not satisfied at all. The total sale is 3807.5 tons, and the aggregated service level is 91.6%. The service level of each order is given in Table 4. 4.2. Computational Results of Model DEO-S2. Model DEO-S2, with 3515 equations, 3268 continuous variables, and 922 binary/integer variables, is solved in 1075 CPU s. The obtained optimal objective is 2959.1, with an optimality gap of 2.0%. The breakdown of the optimal profit is given in Table 5. Although there is no inventory cost in the optimal solution of this case, inventory cost can occur for the cases with higher minimum batch sizes. The Gantt chart of the optimal schedule obtained from model DEO-S2 is given in Figure 7. As in the optimal solution of scenario 1, three changeovers occur in the scenario 2 as well. The productions of each product/order in each time period are shown in Figures 8 and 9. Similarly to
DEO-S1, Figure 9 also provides information about the sales during each time period. Of the total of 70 orders, 67 orders (95.7%) are fully or partially satisfied, with 45 orders being fully satisfied. It should be mentioned that, of the 45 fully satisfied orders, 42 orders are fully satisfied at their due dates and 3 orders are fully satisfied at later dates. The total sale is 3803.5 tons, and the aggregated service level is 91.5%. The service level of each order is given in Table 6 (numbers in bold indicate that the corresponding orders are fulfilled by their due dates), from which it can be seen that even the partially satisfied orders have high service levels. The backlog of each order at the end of each period is given in Table 7. In each line, the first column with a reported backlog level is the due date of the corresponding order. A decrease of the reported backlog level means that the corresponding order
8664
Ind. Eng. Chem. Res., Vol. 49, No. 18, 2010
Table 4. Demands, Sales, and Service Levels: Model DEO-S1 order
sales (tons)
demand (tons)
service level (%)
order
sales (tons)
demand (tons)
service level (%)
O1 O2 O3 O4 O5 O6 O7 O8 O9 O10 O11 O12 O13 O14 O15 O16 O17 O18 O19 O20 O21 O22 O23 O24 O25 O26 O27 O28 O29 O30 O31 O32 O33 O34 O35
90 45 21 52.5 30 22.5 52.5 53 45 57 26 0 52 22.5 15 105 53 52.5 82.5 45 37.5 42 53 155 22.5 52.5 54 37 60 18 37.5 0 10.5 51 66
94 52 21 58 36 42 53 53 57 57 26 20 52 27 43 105 53 66 83 49 42 42 53 155 25 53 54 37 60 18 43 53 14 51 66
95.7 86.5 100 90.5 83.3 53.6 99.1 100 78.9 100 100 0 100 83.3 34.9 100 100 79.5 99.4 91.8 89.3 100 100 100 90.0 99.1 100 100 100 100 87.2 0 75.0 100 100
O36 O37 O38 O39 O40 O41 O42 O43 O44 O45 O46 O47 O48 O49 O50 O51 O52 O53 O54 O55 O56 O57 O58 O59 O60 O61 O62 O63 O64 O65 O66 O67 O68 O69 O70
55 33 12 43 53 22.5 77 75 17.5 65 105.5 194.5 120 75 161 194 37.5 28 0 82.5 37.5 78 82.5 40 76.5 14 22.5 40 60 0 76 30 40 45 96
61 33 12 43 53 27 77 77 21 65 106 198 121 77 161 194 39 28 22 85 42 78 88 40 77 14 25 43 60 89 76 30 40 45 96
90.2 100 100 100 100 83.3 100 97.4 83.3 100 99.5 98.2 99.2 97.4 100 100 96.2 100 0 97.1 89.3 100 93.8 100 99.4 100 90.0 93.0 100 0 100 100 100 100 100
Table 5. Breakdown of the Optimal Profit of Model DEO-S2 (k$) profit sales revenue processing cost inventory cost backlog cost changeover cost
2959.1 3803.5 760.7 0.0 53.7 30.0
is being partially or fully satisfied. From Table 7, there are three orders (O21, O31, and O40) that are not satisfied by their due dates, but are satisified later by the end of the planning horizon. There are 25 orders with backlogs at the end of planning horizon, and the total backlog amount is 352.5 tons. 5. Comparison with a Literature Model In this section, the efficiency and effectiveness of the proposed models are examined by comparison with a literature model proposed by Kelly and Zyngier.38 Their MILP model was proposed to represent the sequence-dependent changeovers for uniform discrete-time scheduling problems, and can be applied to both batch- and continuous-process units. In the third illustrative example presented in their article, a case study similar to the one in this article was considered. Their case study considered a planning horizon of 3 days and a total of 45 orders. As only sequencing constraints were presented in their article, we added our proposed objective function and constraints for production, inventory, and sales to the literature model for comparison. The details of the literature model and added constraints are presented in the Appendix. The modified literature model was also used for the case study in section 4. As the batch time and changeover time in the case study were 15 min, the length of each discrete slot used for the case study was 15 min, and a total of 512 slots were used in the model for this case study. The modified literature model
was implemented under the same computational environment and same termination criteria. The model sizes of the proposed model DEO-S1 and modified literature model are shown in Table 8, from which we can see that the proposed model has a much smaller model size than the literature model. In Table 9, the profit, revenue, and costs of the optimal solution from MILP model DEO-S1 are compared to the respective values obtained from the literature model. The literature model was terminated by the CPU limit and required 3604 CPU s to find a solution with an objective value of 2321.6. On the other hand, the proposed model identifies a solution of 3016 in only 20 CPU s. The service level obtained from the literature model is only 69.8%, compared with 91.6% from the proposed model. From the comparison results, it is obvious that the proposed model has a significantly better computational performance. 6. Concluding Remarks In this work, the short-term scheduling problem of a singlestage batch edible-oil deodorizer has been investigated, and MILP models have been developed for two scenarios. The novelty of the proposed models is that the processing sequence of the product groups is considered, instead of that of the products. In addition, the proposed formulation is based on the classic TSP formulation to model the production sequence in each time period. The proposed models have been successfully applied to the deodorizer scheduling problem with 70 orders. Finally, the effectiveness of the models is shown through a comparison with a discrete-time literature model that addresses a similar case study.
Ind. Eng. Chem. Res., Vol. 49, No. 18, 2010
8665
Figure 7. Gantt chart of the optimal schedule: Model DEO-S2.
Figure 8. Demands and production levels of products (P1-P30): Model DEO-S2.
Appendix.
Parameters 38
Kelly and Zyngier presented an MILP formulation for modeling sequence-dependent changeovers for discrete-time scheduling problems. The formulation can be applied to both batch and continuous process units. Nomenclature. Indices i, j ) operation t, tt ) time period
τi ) batch time for operation i τij ) switchover time from operation i to operation j Variables sdit ) 1 for the shutdown of mode operation i at time period t suit ) 1 for the startup of mode operation i at time period t swijt ) 1 for the switchover from mode operation i to mode operation j at period t yit ) 1 for the setup of mode operation i at time period t
8666
Ind. Eng. Chem. Res., Vol. 49, No. 18, 2010
Figure 9. Demands and production levels of orders (a) O1-O35 and (b) O36-O70: Model DEO-S2.
∑ sw
yyit ) 1 for the memory variable of mode operation i at time period t
ijt
∑ sw
Constraints.
∑y
e 1,
it
∀t
(A1)
t
∑
it
) 1,
ijt
sujt + sdi,tt e 1,
∀j, t
(A8)
∀i * j, t - tt ) 0, ..., τij
(A9)
(A4)
∀i, t
(A5)
Additional Nomenclature.
(A6)
Index
∀t
(A3)
i
yit - yyit e 0,
) yyjt,
∀t
(A2)
tt)t-τi+1
∑ yy
(A7)
It should be mentioned that, in the above model, except for the variable suit, all variables can be relaxed as continuous variables in the interval [0, 1]. For comparison with the proposed model, operation i in the above equations is regarded as the processing operation for product i. Moreover, the following indices, sets, parameters, variables, and constraints are added to the model:
∀t
sui,tt,
sdit ) sui,t-τi+1,
∀i, t
i
i
yit )
) yyit-1,
j
yyit - yyit-1 - suit e 0,
∀i, t
d ) due date
Ind. Eng. Chem. Res., Vol. 49, No. 18, 2010
8667
Table 6. Demands, Sales, and Service Levels: Model DEO-S2 order
sale (tons)
demand (tons)
service level (%)
order
sale (tons)
demand (tons)
service level (%)
O1 O2 O3 O4 O5 O6 O7 O8 O9 O10 O11 O12 O13 O14 O15 O16 O17 O18 O19 O20 O21 O22 O23 O24 O25 O26 O27 O28 O29 O30 O31 O32 O33 O34 O35
90 52 21 58 30 42 52.5 53 57 57 20 20 52 24.5 43 105 53 66 83 45 42 38.5 53 152 22.5 53 54 0 60 18 43 0 14 51 66
94 52 21 58 36 42 53 53 57 57 26 20 52 27 43 105 53 66 83 49 42 42 53 155 25 53 54 37 60 18 43 53 14 51 66
95.7 100 100 100 83.3 100 99.1 100 100 100 76.9 100 100 90.7 100 100 100 100 100 91.8 100 91.7 100 98.1 90.0 100 100 0 100 100 100 0 100 100 100
O36 O37 O38 O39 O40 O41 O42 O43 O44 O45 O46 O47 O48 O49 O50 O51 O52 O53 O54 O55 O56 O57 O58 O59 O60 O61 O62 O63 O64 O65 O66 O67 O68 O69 O70
61 33 12 43 53 22.5 77 75 17.5 65 0 198 121 77 87 194 33 22 22 84.5 42 73 82.5 40 77 14 22.5 43 55.5 84.5 76 30 40 45 90
61 33 12 43 53 27 77 77 21 65 106 198 121 77 161 194 39 28 22 85 42 78 88 40 77 14 25 43 60 89 76 30 40 45 96
100 100 100 100 100 83.3 100 97.4 83.3 100 0 100 100 100 54.0 100 84.6 78.6 100 99.4 100 93.6 93.8 100 100 100 90.0 100 92.5 94.9 100 100 100 100 93.8
Table 7. Backlog Levels Obtained by Model DEO-S2 (tons) T1 O1 O5 O7 O11 O14 O20 O21 O22 O24 O25 O28 O31 O32 O40 O41 O43 O44 O46 O50 O52 O53 O55 O57 O58 O62 O64 O65 O70 total
T2
2.5
T3
T4
T5
T6
T7
2.5
2.5
0
0
0
0
0 4.5
0 4.5
0 4.5
0 4.5
3.5
3.5
6 6
6 6
5 2.5 4.5 4.5
5 5.5 2.5 4.5 4.5
49.5
63.5
0 3.5
0 3.5
4 0 3.5
4 0 3.5
4 0 3.5
2.5
2.5
2.5
2.5
2.5
5.5
0
0
0
0.5
0.5
0
Set Oi ) set of orders for product i Parameters BiL ) lower bound of batch size for operation i
6.5
6.5
10
T10
4 0 3.5 3 2.5
4.5
12.5
T9
6 2.5 4 0 3.5 3 2.5
2.5
0
T8
17
2.5
17
) 8upper bound of batch size time for operation i CCij ) changeover cost from product i to j Do ) demand of order o DTo ) due date of order o BiU
T11 4 6 0.5 6 2.5 4 0 3.5 3 2.5 37 0 53 0 4.5 2 3.5 106 74 6 6 0.5 5 5.5 2.5 4.5 4.5 6 352.5
8668
Ind. Eng. Chem. Res., Vol. 49, No. 18, 2010
Table 8. Sizes of the Proposed Model and Literature Model proposed (DEO-S1)
Kelly and Zyngier38
2829 2255 766
775 749 540 369 15 360
no. of equations no. of continuous variables no. of binary variables
Table 9. Comparison between the Proposed Model and Literature Model proposed (DEO-S1)
Kelly and Zyngier38
3016.0 3807.5 761.5 0.0 30.0 91.6 1.8 20.0
2321.6 2902.0 580.4 0.0 0.0 69.8 32.3 3603.9
profit (k$) sales revenue (k$) processing cost (k$) inventory cost (k$) changeover cost (k$) service level (%) optimality gap (%) CPU (s)
Hd ) time of due date d ICi ) inventory cost of product i Kd ) number of slots by due date d PCi ) processing cost of product i Pri ) price of product i RTo ) release time of order o ViU ) upper bound on inventory of product i Variables Bit ) batch size for operation i at time period t Pot ) processed amount for order o at time period t Sod ) sales of order o at due date d Vod ) inventory amount for order o at due date d
Constraints. Bit g BLi yit,
∀i, t
(A11)
BUi yit,
∀i, t
(A10)
Bit e
∑
Bit )
Pot,
∀i, t
(A12)
o∈Oi∩(HteDTo)
Vod ) Vo,d-1 +
(∑ ∑
Kd
∑
Pot - Sod
i∈Io j∈Ji t)Kd-1+1
∑
o∈Oi∩(o:HdgRTo)
∑
d:RToeHdeDTo
)
HdeDTo,
∀o, d:Hd g RTo
(A13)
∀i, d
(A14)
Vod e VUi ,
∀o ∈ O
Sod e Do,
(A15)
Objective.
∑∑ i
∑
o∈Oi d:RToeHdeDTo
PriSod -
∑∑ ∑ i
o∈Oi d:HdgRTo
∑ ∑ PC B
i it
t
ICiVod -
-
i
∑ ∑ ∑ CC sw ij
t
i
ijt
(A16)
j*i
Acknowledgment The authors thank Mr. Jeff D. Kelly from Honeywell for providing data and useful discussions for the case study used in this work. S.L. was financially supported by Overseas Research Students Award Scheme, K.C. Wong Education
Foundation, UK Foreign & Commonwealth Office, and Centre for Process Systems Engineering. Literature Cited (1) Pinto, J. M.; Grossmann, I. E. Assignment and Sequencing Models for the Scheduling of Process Systems. Ann. Oper. Res. 1998, 81, 433– 466. (2) Kallrath, J. Planning and Scheduling in the Process Industry. OR Spectrum 2002, 24, 219–250. (3) Floudas, C. A.; Lin, X. Continuous-Time versus Discrete-Time Approaches for Scheduling of Chemical Processes: A Review. Comput. Chem. Eng. 2004, 28, 2109–2129. (4) Burkard, R. E.; Hatzl, J. Review, Extensions and Computational Comparison of MILP Formulations for Scheduling of Batch Processes. Comput. Chem. Eng. 2005, 29, 1752–1769. (5) Me´ndez, C. A.; Cerda´, J.; Grossmann, I. E.; Harjunkoski, I.; Fahl, M. State of-the-Art Review of Optimization Methods for Short-Term Scheduling of Batch Processes. Comput. Chem. Eng. 2006, 30, 913–946. (6) Pan, M.; Li, X.; Qian, Y. Continuous-Time Approaches for ShortTerm Scheduling of Network Batch Processes: Small-Scale and MediumScale Problems. Chem. Eng. Res. Des. 2009, 87, 1037–1058. (7) Kondili, E.; Pantelides, C. C.; Sargent, R. W. H. A General Algorithm for Short-Term Scheduling of Batch Operations. 1. MILP Formulation. Comput. Chem. Eng. 1993, 17, 211–227. (8) Pantelides, C. C. Unified Frameworks for Optimal Process Planning and Scheduling. In Proceedings of the 2nd Conference on Foundations of Computer-Aided Process Operations; CACHE: Austin, TX, 1994; pp 253274. (9) Shah, N.; Pantelides, C. C.; Sargent, R. W. H. A General Algorithm for Short-Term Scheduling of Batch Operations. 2. Computational Issues. Comput. Chem. Eng. 1993, 17, 229–244. (10) Bassett, M. H.; Pekny, J. F.; Reklaitis, G. V. Decomposition Techniques for the Solution of Large-Scale Scheduling Probems. AIChE J. 1996, 42, 3373–3387. (11) Elkamel, A.; Zentner, M.; Pekny, J. F.; Reklaitis, G. V. A Decomposition Heuristic for Scheduling the General Batch Chemical Plant. Eng. Optimiz. 1997, 28, 299–330. (12) Pinto, J. M.; Grossmann, I. E. A Continuous Time Mixed Integer Linear Programming Model for Short Term Scheduling of Multistage Batch Plants. Ind. Eng. Chem. Res. 1995, 34, 3037–3051. (13) Pinto, J. M.; Grossmann, I. E. An Alternate MILP Model for ShortTerm Scheduling of Batch Plants with Preordering Constraints. Ind. Eng. Chem. Res. 1996, 35, 338–342. (14) Zhang, X.; Sargent, R. W. H. The Optimal Operation of Mixed Production FacilitiessA General Formulation and Some Solution Approaches for the Solution. Comput. Chem. Eng. 1996, 20, 897–904. (15) Cerda´, J.; Henning, G. P.; Grossmann, I. E. A Mixed-Integer Linear Programming Model for Short-Term Scheduling of Single-Stage Multiproduct Batch Plants with Parallel Lines. Ind. Eng. Chem. Res. 1997, 36, 1695–1707. (16) Karimi, I. A.; Mcdonald, C. M. Planning and Scheduling of Parallel Semi-Continuous Processes. 2. Short-Term Scheduling. Ind. Eng. Chem. Res. 1997, 36, 2701–2714. (17) Ierapetritou, M. G.; Floudas, C. A. Effective Continuous-Time Formulation for Short-Term Scheduling. 2. Continuous and Semi-Continuous Processes. Ind. Eng. Chem. Res. 1998, 37, 4360–4374. (18) 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–2245. (19) Hui, C. W.; Gupta, A. A Bi-Index Continuous-Time Mixed-Integer Linear Programming Model for Single-Stage Batch Scheduling with Parallel Units. Ind. Eng. Chem. Res. 2001, 40, 5960–5967. (20) Chen, C. L.; Liu, C. L.; Feng, X. D.; Shao, H. H. Optimal ShortTerm Scheduling of Multiproduct Single-Stage Batch Plants with Parallel Lines. Ind. Eng. Chem. Res. 2002, 41, 1249–1260. (21) Lim, M.; Karimi, I. A. A Slot-Based Formulation for Single-Stage Multiproduct Batch Plants with Multiple Orders per Product. Ind. Eng. Chem. Res. 2003, 42, 1914–1924. (22) Castro, P. M.; Grossmann, I. E. An Efficient MILP Model for the Short-Term Scheduling of Single Stage Batch Plants. Comput. Chem. Eng. 2006, 30, 1003–1018. (23) He, Y. H.; Hui, C. W. Rule-Evolutionary Approach for SingleStage Multiproduct Scheduling with Parallel Units. Ind. Eng. Chem. Res. 2006, 45, 4679–4692. (24) He, Y. H.; Hui, C. W. Automatic Rule Combination Approach for Single-Stage Process Scheduling Problems. AIChE J. 2007, 53, 2026–2047.
Ind. Eng. Chem. Res., Vol. 49, No. 18, 2010 (25) He, Y. H.; Hui, C. W. A Rule-Based Genetic Algorithm for the Scheduling of Single-Stage Multi-Product Batch Plants with Parallel Units. Comput. Chem. Eng. 2008, 32, 3067–3083. (26) Erdirik-Dogan, M.; Grossmann, I. E. Optimal Production Planning Models for Parallel Batch Reactors with Changeovers. AIChE J. 2007, 53, 2284–2300. (27) Liu, Y.; Karimi, I. A. Novel Continuous-Time Formulations for Scheduling Multi-Stage Batch Plants with Identical Parallel Units. Comput. Chem. Eng. 2007, 31, 1671–1693. (28) Liu, Y.; Karimi, I. A. Novel Continuous-Time Formulations for Scheduling Multi-Stage Batch Plants with Non-Identical Parallel Units. Chem. Eng. Sci. 2007, 62, 1549–1566. (29) Liu, Y.; Karimi, I. A. Scheduling Multistage Batch Plants with Parallel Units and No Interstage Storage. Comput. Chem. Eng. 2008, 32, 671–693. (30) Prasad, P.; Maravelias, C. T. Batch Selection, Assignment and Sequencing in Multi-Stage, Multi-Product Processes. Comput. Chem. Eng. 2008, 32, 1114–1127. (31) Sundaramoorthy, A.; Maravelias, C. T. Simultaneous Batching and Scheduling in Multistage Multiproduct Processes. Ind. Eng. Chem. Res. 2008, 47, 1546–1555. (32) Erdirik-Dogan, M.; Grossmann, I. E. Slot-Based Formulation for the Short-Term Scheduling of Multistage Batch Plants with SequenceDependent Changeovers. Ind. Eng. Chem. Res. 2008, 47, 1159–1183. (33) Shaik, M. A.; Floudas, C. A. Unit-Specific Event-Based ContinuousTime Approach for Short-Term Scheduling of Batch Plants Using RTN Framework. Comput. Chem. Eng. 2008, 32, 260–274. (34) Castro, P. M.; Erdirik-Dogan, M.; Grossmann, I. E. Simultaneous Batching and Scheduling of Single Stage Batch Plants with Parallel Units. AIChE J. 2008, 54, 183–193.
8669
(35) Marchetti, P. A.; Cerda´, J. A Continuous-Time Tightened Formulation for Single-Stage Batch Scheduling with Sequence Dependent Changeovers. Ind. Eng. Chem. Res. 2009, 48, 483–498. (36) Castro, P. M.; Novais, A. Q. Scheduling Multistage Batch Plants with Sequence-Dependent Changeovers. AIChE J. 2009, 55, 2122–2137. (37) Kopanos, G. M.; Puigjaner, L.; Georgiadis, M. C. Optimal Production Scheduling and Lot-Sizing in Dairy Plants: The Yogurt Production Line. Ind. Eng. Chem. Res. 2010, 49, 701–718. (38) Kelly, J. D.; Zyngier, D. An Improved MILP Modeling of Sequence-Dependent Switchovers for Discrete-Time Scheduling Problems. Ind. Eng. Chem. Res. 2007, 46, 4964–4973. (39) Liu, S.; Pinto, J. M.; Papageorgiou, L. G. A TSP-Based MILP Model for Medium-Term Planning of Single-Stage Continuous Multiproduct Plants. Ind. Eng. Chem. Res. 2008, 47, 7733–7743. (40) Liu, S.; Pinto, J. M.; Papageorgiou, L. G. MILP-Based Approaches for Medium-Term Planning of Single-Stage Continuous Multiproduct Plants with Parallel Units. Comput. Manag. Sci., published online Jun 10, 2009, http://dx.doi.org/10.1007/S10287-009-0096-5. (41) Brooke, A.; Kendrick, D.; Meeraus, A.; Raman, R. GAMSsA User’s Guide; GAMS Development Corporation: Washington, D.C., 2008. (42) ILOG CPLEX 11.0sUser’s Manual; ILOG S.A.: Gentilly, France, 2007.
ReceiVed for reView January 29, 2010 ReVised manuscript receiVed July 22, 2010 Accepted July 23, 2010 IE1002137