Ind. Eng. Chem. Res. 2011, 50, 1369-1378

Production Planning and Scheduling of Parallel Continuous Processes with Product Families

Georgios M. Kopanos,^ Luis Puigjaner,^ and Christos T. Maravelias*^

Department of Chemical Engineering, Universitat Politecnica de Catalunya, ETSEIB, Av. Diagonal 647, Barcelona 08028, Spain, and Department of Chemical & Biological Engineering, University of Wisconsin, Madison, Wisconsin 53705

The goal of this paper is the development of a mixed integer programming formulation for the production planning and scheduling of parallel (single-stage) continuous processes in the presence of sequence-dependent switchover times and costs for product families, and sequence-independent switchovers for products belonging to the same family. Our formulation combines a discrete-time planning (big-bucket) grid with a continuous-time treatment of the scheduling decisions within each period and across adjacent periods. At the production planning level, it handles product orders at intermediate due dates and accounts for holding and backlog costs. At the scheduling level, it accounts for equipment unit constraints, switchover times and costs, maintenance activities, and idle production periods. The proposed model was motivated from and implemented to a real-world production facility. It can effectively address industrial-scale planning-scheduling problems. Importantly, it yields solutions that are considerably better than the solutions currently obtained using commercial tools.

1. Introduction

The goal of this paper is the development of an approach to the simultaneous production planning and scheduling of continuous parallel units producing a large number of final products that can be classified into product families. The problem at hand appears in many stages of operation in process industries, including packaging in batch and continuous production facilities. Thus, it is quite important since it arises in a number of different production environments (e.g., food and beverage industry, consumer products, etc.).

The objective in production planning is to determine the production amounts and inventory levels that will allow us to fulfill given customer demand at the minimum cost (including processing, holding and backlog, and switchover costs) subject to (typically aggregate) production capacity constraints. Thus, a production planning solution consists of production targets and inventory levels over a number of periods into which the planning horizon under consideration is partitioned. On the other hand, the objective in scheduling is the allocation of limited resources (e.g., equipment units, utilities, manpower) to competing tasks and the sequencing and timing of tasks on units, given a set of production targets and subject to detailed production constraints. Clearly, the two problems are interdependent since the solution of production planning (production targets) is input to scheduling, and the production capacity constraints in production planning depend on the scheduling solution.

In the realm of the process systems engineering (PSE) literature, a number of researchers have proposed standalone scheduling as well as integrated production planning-scheduling approaches. Mendez et al.1 provide an excellent overview of process scheduling approaches, while Shah,2 Kallrath,3 and Maravelias and Sung4 provide overviews of production planning and scheduling approaches. The reader is also pointed to Pochet and Wolsey5 for a thorough discussion of mixed integer programming (MIP) methods to production planning._

* To whom correspondence should be addressed. E-mail: maravelias@ wisc.edu.

f Universitat Politecnica de Catalunya.

* University of Wisconsin.

In this paper we focus on systems with parallel units, often also termed single-stage processes. Given the prominence of this class of problems, a number of approaches have been discussed in the PSE literature for similar problems, though no methods have been reported for the specific problem discussed in the present paper.

Chen et. al6 studied the medium-term planning problem of a single-stage single-unit continuous multiproduct polymer plant. They proposed a slot-based MIP model based on a hybrid discrete/continuous time representation, where the production planning horizon was divided into several discrete weeks, and each week was formulated with a continuous time representation. Liu et al.7 further improved the work of Chen presenting a MIP formulation based on the classic traveling salesman problem (TSP) formulation. Their proposed model, without time slots, was computationally more effective. Recently, Liu et al.8 extended that work for medium-term planning of a single-stage multiproduct continuous plant to the case with parallel units. Erdirik-Dogan and Grossmann9 proposed a multiperiod slot-based MIP model for the simultaneous planning and scheduling of single-stage single-unit multiproduct continuous plants. A bilevel decomposition algorithm in which the original problem is decomposed into an upper level planning and a lower level scheduling problem was also developed in order to deal with complex problems. Erdirik-Dogan and Grossmann10 later extended their work to address parallel units.

In this paper, we study a more general case by considering product families, short planning periods that may lead to idle units for entire periods and changeovers spanning multiple periods, and maintenance activities. The motivation to consider product families comes from the fact that, in many production environments, there exist products that share many characteristics. In fact, the current work was first developed to address problems in a highly complex real-life bottling facility producing hundreds of final products. The grouping into families can be based on various criteria, including product similarities, processing similarities, or changeover considerations. The goal of the aforementioned grouping is to lead to computationally tractable optimization models without compromising the quality of

10.1021/ie100790t © 2011 American Chemical Society Published on Web 09/23/2010

solution. Furthermore, the use of product families reflects managerial practice prevalent in many production systems.11-14

The remainder of this paper is structured as follows. In section 2, we formally define the production planning—scheduling problem addressed in this paper. In section 3, we discuss the main elements of the proposed approach, and in section 4 we present the resulting MIP formulation. Finally, an illustrative example and two instances of an industrial case study are discussed in section 5.

2. Problem Statement

We consider the production planning—scheduling of continuous parallel units. The problem is defined in terms of the following items:

(i) A known planning horizon which is divided into a set of periods, n e N.

(ii) A set of parallel processing units, j e J, is included, with available production time in period n equal to Wj„.

(iii) A set of product families or simply families, f e F, wherein all products are grouped into; f e Fj is the subset of families that can be assigned to unit j and j e Jf is the subset of units that can process family f.

(iv) A set of products i e I with demand t,in at the end of time period n, backlog and inventory £in costs, minimum and maximum production rates (pm™, / j*), minimum processing times j1, and processing cost Xj the subset of products in family f is denoted by i e If; i e Ij is the subset of products that can be assigned to unit j, and j e Ji is the subset of units that can produce product i.

(v) A sequence-dependent switchover operation, henceforth referred to as changeover, is required on each processing unit whenever the production is changed between two different product families; the required changeover time is yf, while the changeover cost is fj.

(vi) A sequence-independent switchover operation, henceforth referred to as setup, is required whenever a product i is assigned

to a processing unit j; the setup time is 8ij and the setup cost is

We assume a nonpreemptive operation mode, no utility restrictions, and that changeover times are not greater than a planning period.

Our goal is to determine the following, to satisfy customer demand at the minimum total cost, including operating, changeover, and setup costs, as well as inventory and backlog costs: (i) assignment (Y^n) of product families on each unit in every production period; (ii) sequencing (Xfjn) between families on each unit in every period; (iii) assignment of products to processing units in every period (Yijn); (iv) production amount for every product in every period (Pin); (v) inventory (Sin) and backlog (Bin) profiles for all products.

3. Proposed Approach

The novelty of our formulation lies in the integration of three different modeling approaches. In particular, we use a discrete-time approach for inventory and backlog cost calculation for production planning, a continuous-time approach with sequencing using immediate precedence variables for the scheduling of families, and a lot-sizing type of capacity constraints for the scheduling of products (see Figure 1).

For the production planning subproblem we employ a time grid with fixed, though not necessarily equal, production periods. The planning horizon is divided into n e N = {1, 2, ...} periods; period n starts at time point n —1 and finishes at time point n.

Figure 1. Proposed modeling approach.

Note that the use of a discrete-time approach at the planning level (big-bucket) enables the correct calculation of holding and backlog costs. Material balances for each product are expressed at the end of each planning period in terms of total production level, Pin, inventory level, Sin, and backlog level, Bin. We assume that the amounts produced during a planning period become available at the end of this period. The communication between the production planning and scheduling subproblems is accomplished via the amount Qijn of product i produced in unit j during period n. Variable Qijn is used by the production planning problem for the calculation of variables Pin for the material balances, while at the same time variables Qijn are subject to detailed sequencing and capacity constraints of the scheduling subproblem.

The scheduling subproblem has two levels. At the first level, we schedule product families on units using an immediate precedence approach for sequencing, while at the second level, we employ a lot-sizing-based approach to express capacity constraints for products. In particular, we define assignment binary variable YfFjn to denote the assignment of family f in unit j during period n and sequencing binary variable Xfjn (Xffjn) to denote an immediate precedence f f f in unit j within period n (across periods n —1 and n). This allows us to account for changeover times between families and correctly calculate changeover costs. The activation of the sequencing variables is achieved using a modification of the network formulation of Karmarkar and Schrage15 and Sahinidis and Grossmann.16 For the timing of processing of family f in unit j during period n, we introduce variable Cfjn. Individual product setups and capacity constraints are modeled using lot-sizing-type setup binary variables: Yijn = 1 if product i is produced in unit j during period n. Variables Yijn are used to constrain the processing time Tijn, which is in turn used to constrain the production amount Qijn.

In addition to this novel integration of modeling approaches, our formulation can accurately account for changeovers in the presence of fixed planning periods. First, it allows us to track the last family produced in each period, and therefore account correctly for the first changeover in the following period. If the last family in period n — 1 and the first in period n are the same, then no changeover time/cost is added (changeover carryover). Second, it allows changeover operations to cross planning period boundaries (changeover crossover), thereby allowing higher utilization of resources and obtaining better solutions (see Sung and Maravelias17 for a discussion of these aspects in the context of lot-sizing problems). Finally, an extension of our approach allows the seamless modeling of idle planning periods, another aspect that has often been neglected, though it can appear in optimal solutions when the length of the planning period is short and/or a unit is not heavily loaded.

4. Mathematical Formulation

In this section, we present a MIP formulation for the production planning and scheduling of the parallel-unit (single-stage) facility described in section 2. Constraints are grouped according to the type of decision (e.g., assignment, timing, sequencing, etc.). To facilitate the presentation of the model, we use uppercase Latin letters for optimization variables and sets, lowercase Latin letters for indices, and lowercase Greek letters for parameters.

4.1. Material Balance Constraints. The total amount, Pin, of product i produced in period n is the summation of the produced quantities, Qijn:

= X Qj

Mass balances for every product i are expressed at the end of each production period n, where initial backlogs, Bin=0, and initial inventories, Sn=0, are given:

Sm - Bm = Sn-1 - Bn-1 + P,n - tm Vi, n (2)

Inventory capacity constraints can be enforced via constraints similar to

Sin < product storage capacity Vi, n or

^ Sin < plant storage capacity Vn (3)

4.2. Family Allocation Constraints. Obviously, a family f is assigned to a processing unit j e Jf during a production period n if at least one product that belongs to this family, i e If, is produced on this processing unit at the same period:

f g Yijn Vf i e f j e f

where Yj denotes a family to-unit assignment, and Yijn denotes a product-to-unit assignment.

Moreover, constraint 5 enforces the binary f to be zero when no product i e If is produced on unit j in period n:

f e X Yijn Vf j e f n

If we do not include constraint 5, we may obtain solutions where Yjjn = 1 for a family that "LieIf Yijn = 0; that also means Tjn = 0. Note that this undesired case could be observed if the changeover cost/time for f f f is higher than the sum of costs/ times for changeovers f f f ' and f ' f f.

n 1 ri2 n3

Figure 2. Family changeovers between adjacent periods.

4.3. Family Sequencing and Timing Constraints. We

introduce binary variable Xfjn to define the local precedence between two families f and f: Xfjn = 1 if family f is processed immediately after family f in unit j. Constraints 6 and 7 ensure that, if family f is allocated on the processing unit j at period n (i.e., Yj = 1), at most one family f is processed before and after it, respectively. If family fis assigned first on a processing unit j (i.e., WFfjn = 1), then it has no predecessor. Similarly, if family f is assigned last on a processing unit j (i.e., WLfjn = 1), then it has no successor.

X Xfn + WFf}n = Yjn Y/, j £ J, n (6)

m-fzFj

X Xfjn + WLfjn = f Yf j £ f n (7)

f *ff£ Fj

The correct number of immediate precedence variables is activated through constraint 8, which enforces the total number of sequenced pairs within a period to be equal to the total number of active assignments during this period minus 1:

X X f +1 = X yF

feFjffeFj feFj

To avoid sequence subcycles, we also include constraint 9, which ensures a feasible timing of the families assigned to the same processing unit:

Cfjn g Cfjn + f + Yfff — ™jn(1 — Xffjn)

Yf,f * f, j £ (Jf n Jf), n (9)

4.4. Family Changeovers Across Adjacent Periods. We

introduce binary variable Xfjn to denote a changeover from family f to f in unit j taking place at the beginning of period n. This binary variable is active only for the family f processed last in period n — 1 (i.e., WLfjn—1 = 1) and the family f that is processed first in period n (i.e., WFfjn = 1), according to constraints 10 and 11 (see Figure 2).

WFfn = X fn Yf j £ n > 1 (10)

1 = X X

Vf j e Tf, n > 1

4.5. Changeover Crossover Constraints. In most existing approaches, changeover times must begin and finish within the same period. In other words, crossovers of changeover times are not allowed. This restriction may result in suboptimal solutions. For example, in Figure 3 a better solution can be obtained if the changeover from F1 to F2 starts in period n1 and finishes in n2.

To model changeover crossovers, nonegative variables Ujn and Ujn are introduced. If a changeover operation with a duration

Figure 3. Crossover of changeover times.

Figure 5. Family and product processing times.

Since the switchovers between products that belong to the same family (i e If) are sequence-independent, sequencing and timing decisions regarding products can be made postoptimi-zation without affecting the quality of solution. For example, the sequencing can be determined depending on the characteristics of the production process. The family processing time, Tfjn, is defined by (see Figure 5)

ijn + àijYijn)

V/, j e J, n (16)

Figure 4. Modeling of crossover of changeover times.

equal to Yfj starts in period n — 1 and is continued in period n, then Ujn—1 represents the fraction of time of the changeover operation that takes place in period n — 1 and Ujn represents the fraction of time of the operation that is performed in period n (see Figure 4).

jn + Ujn-i = EE Y,/

/eFj /e Fj/*/

Vj, n > 1 (12)

4.6. Unit Production Time. The summation of the production times of families f e Fj that are processed on unit j plus the total changeover times within period n (including variables Ujn and Ujn) is constrained by the available production time j

Un + Ujn + E f + EE Y/fjXJfjn e

/eFj /eFj /eFj/*/

Vj, n (13)

where UUjn=1 corresponds to the time point that unit j is available to begin processing any task in the first period. Notice that = 0 by definition.

4.7. Product Lot-Sizing Constraints. Upper and lower bounds on the production, Qjn, of product i on unit j during period n are enforced by constraint 14, where variable Tijn denotes the processing time of product i on unit j in period n.

FTTjn e Qijn e ^Tjn Vi, j e J, n (14)

Upper and lower bounds on the processing time Tijn are enforced by

irnny e j e TmaxY ijn ijn — ijn — ijn ijn

Vi, j e Ji, n

Note that a tight processing time upper bound can be estimated as follows:

Tmax = ijn

j if E ^Jj g

E ijpj*if E ^in'/pT <

4.8. Objective Function. The optimization goal is the minimization of total inventory, backlog, changeover (inside and across periods), setup, and operating costs:

min EE Gnftn + VinBJ + EE E (0Yn + XQjn) +

i n i je Ji n

EE E Eff+f (17)

f f*f je(Jf-Jf) n

4.9. Integrality and Nonegativity Constraints. The domains of decision variables are defined as follows:

Yl}n e {0,1} and Ql}n, Tl]n g 0 Vi, j e J, n WFfm, WLjn, f e {0,1} and j Cm g 0 Vf, j e J, n

X/jn,X/jn e {0,1} V/,/,j e (Jf n Jf), n (18)

fí S P > 0

in in in

Un g 0 Vj, n

The proposed MIP model, CR, consists of constraints 1 — 18.

4.10. Extension I: Idle Units. Note that model CR, similarly to most existing approaches, is based on the assumption that units do not remain completely idle in any period. In other words, processing units produce at least one product in each period, except maintenance periods. Generally speaking, this assumption is valid for medium to long planning periods (e.g., a production week). However, if short periods are used (e.g., a production day) to accurately model frequent intermediate due dates, idle periods may be present in an optimal solution.

To model unit idle periods, we define a dummy product i e Ifdte for each family, with zero setup time and cost (i.e., dij = 0, dij = 0 V i e I}ile). The processing times of dummy products are then constrained by eq 15 with ■j = 0 and j* = Wjn. Note that if a processing unit produces only a dummy product in a production period, then this actually means that the unit remains idle during that period. Having defined a variable for idle time, we can now express constraint 13 as an equality, where j V i e Ifile now act as slack variables. The new MIP model for idle units is CR-D.

Produce dummy product of family F1

fi i FI «¡¡¡m F2

ni n2 n3

Produce dummv product of familv F2 i i i i i

F1 F2 F2

i -•

tlfl n2 n3

Figure 6. Modeling of changeover crossover through idle periods.

Maintenance (during whole period): ("V,=0 ZZXffjni=o

□ t;

F1 MAINTENANCE F2

rii n2 Maintenance (in a part of a period): >0 n3

Zixffjn!<i ZI* f r ' f f \ ^^^ ^^

F1 { | MAINTENANCE F2

Figure 7. Modeling of maintenance activities.

Figure 6 shows an illustrative example of a single-unit production plan over three production periods, where the unit produces family F1 in period n1, remains idle during period n2, and produces family F2 in period n3 (white boxes denote the imaginary production of dummy product i G /}dle). Note that the two solutions are equivalent.

4.11. Extension II: Maintenance Activities. Maintenance activities in a given period can be readily addressed by fixing the corresponding changeover crossover variables at zero and modifying the available production time Wjn accordingly. We assume that the maintenance activity is carried out at the end of the production period n. Our model can accommodate cases where the duration of a maintenance task is equal to the available production time (by setting Wjn = 0) or cases where the duration of the maintenance activity is smaller than the length of the period n. Note that if a maintenance task is performed between the production of two different families, there is no need for a changeover operation. Figure 7 illustrates our approach. Finally, note that we can also cope with maintenance tasks whose duration is greater than a planning period.

5. Applications

In this section, we discuss the application of our model to an illustrative example and a large-scale industrial case study. All formulations were solved on a Sun Ultra 4.0 Workstation with 8 GB RAM using CPLEX 11 via a GAMS 22.918 interface. A maximum resource limit of 300 CPU s was used for all instances. It represents the amount of time practitioners are willing to wait for a solution. This is because different scenarios must be tested before a solution is dispatched and rescheduling solutions should be generated routinely and in a timely fashion. Furthermore, we selected this short resource limit to make a fair comparison of our method to commercial tools that typically yield solutions within a few minutes.

Table 1. Illustrative Example: Changeover Times (Costs)

family F01 F02 F03 F04 F05

F01 - 3.0 (50) 3.0 (40) 5.0 (60) 1.5 (50)

F02 5.3 (40) - 3.0 (50) 3.0 (80) 2.0 (90)

F03 2.8 (70) 4.0 (30) - 2.5 (80) 4.0 (30)

F04 2.4 (100) 4.0 (100) 3.0 (90) - 3.0 (60)

F05 3.2 (30) 4.0 (50) 2.0 (50) 4.0 (70) -

Table 2. Illustrative Example: Product Demands Per Period (kg)

product day 1 (m) day 2 (n2) day 3 (n3) day 4 (n4)

I01 50 0 70 20

I02 0 80 10 50

I03 30 50 20 30

I04 0 10 75 10

I05 70 90 10 20

I06 65 0 75 0

I07 40 50 0 30

I08 0 45 0 0

I09 55 0 45 15

I10 10 100 30 50

I11 40 15 20 30

I12 0 95 40 30

I13 80 0 40 30

I14 0 50 0 0

I15 0 0 0 60

5.1. Illustrative Example. We consider a simple example with 15 products (I01-115), grouped into five families (F01-F05), and three processing units (J01-J03). All products can be produced on any unit. Products are grouped into families as follows: IF01 = {I01, I02, I03}, IF02 = {I04, I05, I06}, IF03 = {I07, I08, I09}, IF04 = {I10, I11, I12}, and IF05 = {I13, I14, I15}. The total production horizon is 4 days and is divided into four 24-h periods. Maintenance is scheduled on units J01, J02, and J03, in periods n2, n3, and n4, respectively. Processing data include the following: setup time 8ij = 0.5; setup cost By = 50; operating cost ly = 0.1; production rate pmax = 10; minimum processing time rim111 = 0.2; inventory cost £in = 1; backlog cost

= 3 for all products. Changeover times yfj and costs fyy between product families are given in Table 1. Product demands can be found in Table 2. The processing sequence of products that belong to the same family during every period n is predetermined; specifically, it is in ascending index order.

The optimization goal is the minimization of the total cost, as defined in eq 17. The proposed MIP model obtained the optimal solution ($2,630) in 30 CPU s (see Table 3). The optimal production schedule for products and product families is shown in Figure 8. Notice the changeover crossover between families F02 and F01 on unit J01 across the boundary between the third and fourth days. Figure 9 presents the production profiles for product families and products, while Figure 10 shows the inventory and backlog profiles for every product. High inventories are observed in the first day, especially for products I05 (90 kg), I07 (50 kg), and I13 (40 kg). High backlogs are observed in the second day, for products I08 (45 kg) and I04 (10 kg), and in the third day, for products I10 (30 kg), I11 (20 kg), and I12 (15 kg).

5.2. Industrial Case Study. In this subsection, we consider a complex real-world problem in the continuous bottling stage of a beer production facility. The facility under study consists of eight processing units (J01-J08), working in parallel and producing a total of 162 products which are grouped into 22 families (F01-F22).

5.2.1. Instance I. In this instance, we study the planning-scheduling problem over a 6-week production horizon divided into six 168-h periods. The problem was solved to optimality

1374 Ind. Eng. Chem. Res., Vol. 50, No. 3, 2011 Table 3. Computational Results for All Problem Instances

problem instance constraints continuous variables binary variables nodes relative gap (%) objective function ($) CPU

illustrative example 1147 708 510 10 501 0.0 2,630 30

industrial case study: instance I 5192 3730 1890 97 017 0.0 235,577 193

industrial case study: instance II 8882 6269 3264 59 573 1.0 155,629 300

using model CR in less than 200 CPU s. Model and solution statistics can be found in Table 3. Figure 11 shows the Gantt chart of the optimal solution ($235,577) for product families. Note that each family block is subdivided into a number of smaller product blocks separated by setup times. The production profiles of all families in the eight units of the facility are presented in Figure 12, while Figure 13 shows the total inventory and backlog cost profiles. In the first week, we observe a high inventory cost, while backlog cost remains low during all periods. Inventories represent 34% of the total cost.

Furthermore, the solution obtained using the approach presented in this paper was compared against the solution that was found, dispatched, and executed in practice using a combination of in-house and commercial tools. The main cost

components of the two solutions are compared in Figure 14. Clearly, our solution is substantially better. In particular, inventory cost is 78% lower than the inventory cost of the executed solution, and backlog cost is less than 5% of the executed solution. Also, changeover and setup costs have been reduced by more than 80% and 25%, respectively (see the table in the bottom of Figure 14). The results of this case study indicate that the proposed framework can in fact be used to address real-world problems. It is computationally efficient and yields solutions of very good quality. Given the significant improvement over the practiced methods, our formulation is currently incorporated into and tested using the tools currently employed to generate detailed production plans.

Figure 8. Illustrative example: Gantt chart of optimal solution.

Inventory

0 . L L

J I IP I

■ 101 y102 UI03 U I04 □ I0S U 05 y 107 1I08 y I09 y no J 111

y 112 M113 u 114 U 115

Backlog day1 day2

Figure 10. Illustrative example: product inventory and backlog profiles (kg).

jj processing time Q changeover time

F11 || F12 F12 || F11 || F13| F13|] F12 || Ft1 | F11 || F12 PI 2 || F11 ||Ft3| FI Il F1i [I F12 I

F0S F08 F08 FQ8 FOS FQ8

F15 || F14 |F0l| F01 J F14 || F16 | F1S || F14 | F01 | F01 J F14 J F16 | F16|| F14 | F01 | F14 | F01 ||F15| F16 |

F04 F18 | F18 F18 F07F04 m i 04F07 F18 ||F08 F18 ||F07 F 7F04 F18 ||F08

F11 F11 F11 F11 F11 F11

F03 | FC 2| F03 | F01 | FOlj F03 |F02 F03 | F01 | FOI | F03 |F02 F03 | F01 |

Fie| F17 F17 |FIB| F16 | F17 F17 | Fi 6 | FIB 1 F17 F17 || F16 |

F19 F21 |F10|F20F22 F22 | F21 | F21 ¡F10F06F20 F22 | F2 2p20 F20|F10 no

-week 1- -week 2- -week 3- -week 4- -week 5- -week 6-

J02 J03 J04 J05 J06 J07 J 08

Figure 11. Industrial case study, instance I: family Gantt chart of optimal solution.

Figure 12. Industrial case study, instance I: production profile for families (kg).

5.2.2. Instance II. In this instance, we discuss a problem in the same processing facility but over a planning horizon of 4 weeks partitioned into seven 24-h (week 1) and three 168-h planning periods (weeks 2-4). In other words, we consider daily orders during the first week, and weekly orders during the next three weeks. This partitioning represents industrial practice,

where orders in the near future are known with certainty and are treated separately, while orders in later periods are aggregated. The consideration of such small planning periods leads to larger formulations that are harder to solve to optimality, but are necessary to avoid unmet demand. Furthermore, good solutions to these problems often require changeover crossovers,

Figure 13. Industrial case study, instance I: total inventory and backlog cost profiles ($).

as well as idling of units for more than one (short) planning period. To address this instance, we developed a formulation that combines model CR-D for the first seven days, allowing units to remain idle over 1 day, and model CR for the three 7-day production periods.

week 1 week 2 week 3 week 4

Figure 16. Industrial case study, instance II: cost analysis ($).

The model and solution statistics of the resulting MIP model can be found in Table 3. The best solution obtained within 300 CPU s has a total cost of $155,629 and has an optimality gap equal to 1%. The solution obtained using the proposed framework is again significantly better than the solution found by commercial tools. The production profile of all families is shown in Figure 15, while a cost analysis for every week can be found in Figure 16, where for week 1 we present the aggregated costs for day periods 1 -7. It is worth noting that the consideration of 24-h planning periods during the first week results in higher inventory and backlog costs because daily demands are harder to meet. Inventories represent 31% of the total cost (vs 34% in instance I), but backlog costs have increased to 10% from 4% in instance I. Finally, note that we do observe idle 24-h periods during the first week.

Figure 14. Industrial case study, instance I: comparison of solutions obtained by the proposed MIP model and the tools currently used in practice ($).

processing time Jjj changeover time [mm] maintenance

fi1 | | f11 | | f11 | | fi21 | fl2 | | mm f13 | f11 |[ f12 f12 11 fit F11 |;|f13|| fi 2

F03 [ | fos |] f08 | | F08 | mn | f 08 fob f08

f1s||fr4 | f14 fölfdl| F14 | mn | f15 FG1 | fl 4 | f16 [| fl 5 | fis [[ f01 || f14 f14 j foi j| f1s || f16

| f1b j mnfd4f18 fisj | =04] fl b fis |^07 1f04 j f j4f07 f1b |FÜB|

[ f11 [ mn | f11 f11 F11

f03 | mm | f03 | |fot| [föö| f01 | f03 |fû2 fa il Fra I IIF011 f01 1 f03

mw | f17 | | f17 i f16 i fl 7 j fl 6 j f16 j] f17 f17 j fi 6 1

Fia| FM [ mm | f21 | |fji| |f2"i|f10f0î F3! I F21 F21 J F1D H f30 | | F22 -22

-week 1 - -week 2 - -week 3- -week 4 -

J02 J03 J04 J05 J06 J07 J08

Figure 15. Industrial case study, instance II: family Gantt chart of best solution.

6. Conclusions

In this paper, we presented a mixed integer programming (MIP) formulation for the production planning and scheduling of single-stage continuous processes with product families, a type of production system that appears in a number of different production environments and industrial sectors. Our approach combines a discrete-time partitioning of the planning horizon to account for the major planning decisions (production targets, shipments, and inventory levels) with a continuous-time treatment of detailed scheduling decisions within each planning period. Furthermore, at the scheduling level, it combines a precedence-based approach to correctly enforce sequencing constraints among product families with a lot-sizing-like approach to account for production time constraints for individual products. Our approach addresses appropriately aspects such as changeover carryover and crossover, thereby leading to solutions with higher utilization of resources. Also, it is not based upon the assumption that processing units cannot remain idle during a production period, thereby allowing us to partition the planning horizon into smaller periods, which in turn results in better solutions. Importantly, the integration of these approaches leads to computationally effective MIP models. Very good solutions to problems with hundreds of products can be obtained within 5 CPU min, while optimal solutions can also be found in a reasonable time. Furthermore, the proposed formulation yields solutions which are substantially better than the ones obtained using commercial tools, suggesting that MIP methods can be used to address problems of practical interest.

Acknowledgment

Financial support received from the Spanish Ministry of Education (FPU Grant), the Spanish government (Project No. DPI2006-05673), and the European Community (FEDER) (Project No. DPI2009-09386) is fully appreciated. The authors would also like to thank Dr. Juan Carlos Cabada Amaya for fruitful discussions on production planning in the facilities of the Cervecería Cuauhtemoc Moctezuma beer industry. Finally, G.M.K. would like to thank Arul Sundaramoorthy for fruitful discussions on process scheduling and valuable suggestions.

Nomenclature

Indices/Sets i € I = products

f, f € F = families (product families)

j € J = processing units

n, n' € N = production periods

Subsets

Fj = families that can be processed in unit j

If = products that belong to family f

Iifdle = dummy product for family f(one per family)

Ij = products that can be processed in unit j

Jf = processing units that can process family f

Ji = processing units that can process product i

Parameters

Yfj = changeover time between families f and f in unit j óy = setup time of product i in unit j £in = demand of product i at time n 0y = setup cost of product i in unit j X¡j = operating cost of product i in unit j

%in = holding cost of product i in period n p™x = maximum production rate of product i in unit j p™" = minimum production rate of product i in unit j t™ = maximum processing time of product i in unit j j = minimum processing time of product i in unit j tyffj = changeover cost between families f and f in unit j

= backlog cost of product i in period n Wjn = available production time in unit j in period n

Continuous Variables

Bin = backlog of product i at time n

Cfjn = completion time for family f in unit j in period n

Pin = total produced amount of product i in period n

Qijn = produced amount of product i in unit j during period n

Sin = inventory of product i at time n

Tin = processing time for product i in unit j in period n

Tfjn = processing time for family f in unit j in period n

Ujn = time within period n consumed by a changeover operation

that will be completed in the next period on unit j Ujn = time within period n consumed by a changeover operation that started in the previous period on unit j

Binary Variables

WFfjn = 1 if family f is assigned first to unit j in period n WLfjn = 1 if family f is assigned last to unit j in period n Xff jn = 1 if family f is processed exactly before f in period n in unit j

Xff jn = 1 if family f in period n —1 is immediately followed from

family f in period n on unit j Yijn = 1 if product i is assigned to unit j in period n Yfn = 1 if family f is assigned to unit j in period n

Literature Cited

(1) Mendez, C. A.; Cerda, J.; Grossmann, I. E.; Harjunkoski, I.; Fahl, M. Review: State-of-the-art of optimization methods for short-term scheduling of batch processes. Comput. Chem. Eng. 2006, 30, 913-946.

(2) Shah, N. Single and multisite planning and scheduling: current status and future challenge. Proceedings of the Third International Conference of the Foundations of Computer-Aided Process Operations; Snowbird, Utah, 1998; pp 75—90.

(3) Kallrath, J. Planning and scheduling in the process industry. OR Spectrum 2002, 24, 219-250.

(4) Maravelias, C. T.; Sung, C. Integration of production planning and scheduling: Overview, challenges and opportunities. Comput. Chem. Eng. 2009, 33, 1919-1930.

(5) Pochet, Y.; Wolsey, L. A. Production Planning by Mixed Integer Programming; Springer Series in Operations Research and Financial Engineering; Springer-Verlag: Secaucus, NJ, 2006.

(6) Chen, P.; Papageorgiou, L. G.; Pinto, J. M. Medium-term planning of single-stage single-unit multiproduct plants using a hybrid discrete/ continuous-time MILP model. Ind. Eng. Chem. Res. 2008, 47, 1925-1934.

(7) 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.

(8) 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. Manage. Sci. 2009, 7, 407-435.

(9) Erdirik-Dogan, M.; Grossmann, I. E. A decomposition method for the simultaneous planning and scheduling of single-stage continuous muliproduct plants. Ind. Eng.Chem. Res. 2006, 45, 299-315.

(10) Erdirik-Dogan, M.; Grossmann, I. E. Simultaneous planning and scheduling of single-stage multi-product continuous plants with parallel lines. Comput. Chem. Eng. 2008, 32, 2664-2683.

(11) Inman, R. R.; Jones, P. C. Decomposition for scheduling flexible manufacturing systems. Oper. Res. 1993, 41, 608-617.

(12) Grunow, M.; Giinther, H.-O.; Lehmann, M. Campaign planning for multi-stage batch processes in the chemical industry. OR Spectrum 2002, 24, 281-314.

(13) Günther, H.-O.; Grunow, M.; Neuhaus, U. Realizing block planning concepts in make-and-pack production using MILP modelling and SAP APO. Int. J. Prod. Res. 2006, 44, 3711-3726.

(14) 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.

(15) Karmarkar, U. S.; Schrage, L. The Deterministic Dynamic Product Cycling Problem. Oper. Res. 1985, 33, 326-345.

(16) Sahinidis, N. V.; Grossmann, I. E. MINLP model for cyclic multiproduct scheduling on continuous parallel lines. Comput. Chem. Eng. 1991, 15, 85-103.

(17) Sung, C.; Maravelias, C. T. A mixed-integer programming formulation for the general capacitated lot-sizing problem. Comput. Chem. Eng. 2008, 32, 244-259.

(18) Brooke, A.; Kendrik, D.; Meeraus, A.; Raman, R.; Rosenthal, R. E. GAMS-A User's Guide; GAMS Development Corp.: Washington, DC, 1998.

Received for review April 1, 2010 Revised manuscript received August 3, 2010 Accepted September 7, 2010

IE100790T