An Improved MILP Modeling of Sequence ... - ACS Publications

This paper presents a new mixed-integer linear program (MILP) formulation ... temporal unit-operation events occurring within the scheduling horizon f...
1 downloads 0 Views 278KB Size
4964

Ind. Eng. Chem. Res. 2007, 46, 4964-4973

An Improved MILP Modeling of Sequence-Dependent Switchovers for Discrete-Time Scheduling Problems Jeffrey D. Kelly* and Danielle Zyngier Honeywell Process Solutions, 300 Yorkland BouleVard, North York, ON M2J 1S1, Canada

This paper presents a new mixed-integer linear program (MILP) formulation for modeling sequence-dependent switchovers for uniform discrete-time scheduling problems. The new formulation provides solutions faster than the formulation found in the paper by Kondili et al. (Comput. Chem. Eng. 1993, 17, 211) and scales more efficiently. The key to this formulation is the use of memory operation logic variables that track the temporal unit-operation events occurring within the scheduling horizon for each unit. Four auxiliary dependent binary transition variables are required for every unit-operation independent binary variable, called the modeoperation setup variable. In this paper, “dependent” means that these variables are derived from the unitoperation variables and are integral at the solution without explicitly declaring them as binary search variables in the MILP formulation, hence reducing the computational effort. The four dependent variables are the startup, shutdown, switchover-to-itself, and memory operation logic variables. The sequence-dependent switchover relationships between different operations on the same unit can be derived from these variables, whereby maintenance operations can be activated and placed between the mode operations where appropriate, depending on the repetitive maintenance or cleaning requirements. The new formulation for sequence-dependent switchovers can be applied to both batch- and continuous-process units. Three illustrative examples are provided that show its advantage in terms of solution times over current state-of-the-art methods. In addition, effective integer cuts are derived, which are based on the asymmetric traveling salesman problem with costs equal to the sequence-dependent transition times. Introduction Sequence-dependent switchovers, downtime, setup, transitions, cleanings, retooling, and maintenance, among others, are important details when generating production schedules in the process industries for obvious and practical reasons, two of which are quality and safety. Each machine, line, unit, or piece of equipment with its many operations, activities, instruction steps, or tasks can have its own transition costs, times, and operations. Sequence-dependent switchovers can be found in both production planning and scheduling problems.1-10 In production planning, also known in many cases as campaign planning and multilevel, multiline, and multiload lot-sizing problems,11 sequence-dependent tracking inside the optimization using specific variables and constraints is crucial to properly “proxy” or approximate the consequences of transition effects such as downtime or outages on the equipment resources. This is usually seen as a debit to the allowable capacity for the time interval when the transition occurs and is often called “lost” capacity. In production scheduling, sequence-dependent switchovers must be handled differently, given that an equipment outage due to cleaning, purging, or some other repetitive maintenance activity must force a downtime of some sort on the equipment. This downtime can be as simple as not allowing any other mode operation to start up within the time period or specifically starting up a defined maintenance operation, which can consume and produce nonrenewable resources that must be managed. This maintenance operation may also involve, occupy, or be supported by other renewable resources such as tools, electrical power, and interchangeable equipment. The systems under consideration in this paper are both continuous- and batch-process units with multiple mode opera* To whom correspondence should be addressed. Tel.: +(1) (416) 502-5148. Fax: +(1) (416) 502-5130. E-mail: Jeff.Kelly@honeywell. com.

tions i and maintenance operations m. The batch-process units may be fixed batch-size and variable batch-time or variable batch-size and fixed batch-time units. Depending on the unit type, the decision variables are the batch-sizes or batch-times as well as the logic variables described below. The objective function considered in this paper is either minimizing total cost (Illustrative Example 1) or maximizing total profit (Illustrative Examples 2 and 3). In conventional methods found in the literature, the following equation is used to model sequence-dependent transitions,1,4 NO

t2-1



sum,t g sui,t1 + suj,t2 -

t)t1+1,m)SD(i,j)

t2-1

∑ ∑

suk,t - 1

k)1 t)t1+1

∀ i, j ) 1...NO, i * j, t1 ) 1...NT, t2 ) 1...NT and t2 > t1 (1) where m is the maintenance operation index, SD(i,j) defines the maintenance operation requirements on a specific unit for the transition from mode operation i to mode operation j (i.e., SD is the sequence-dependent matrix with maintenance operations as elements), sum,t is the startup variable for maintenance operation m, sui,t and suj,t are the startup variables for mode operations i and j on the same unit, NO is the number of usual mode operations, and NT is the number of time periods in the scheduling horizon. Another index is obviously required to generate the constraint for each unit inside the scheduling model and is only ignored here for simplicity. As explained by Kondili et al.,1 eq 1 is only binding if the first two terms on the righthand side (rhs) are equal to 1 and the third is equal to 0. This is the case if mode operation i starts at time period t1 and mode operation j starts at time period t2 without starting any other mode operation between these two time periods. If all these requirements are met, then the rhs of eq 1 has a value of 1, which forces at least one of the sum,t within the interval t1-t2

10.1021/ie061572g CCC: $37.00 © 2007 American Chemical Society Published on Web 06/06/2007

Ind. Eng. Chem. Res., Vol. 46, No. 14, 2007 4965

on the left-hand side (lhs) to be 1, thus forcing the startup of a maintenance operation. Although the constraints generated by eq 1 are formulated correctly, they can, in practice, lead to very large numbers of constraints (on the order of O(NT2)). Some methods for reducing the actual number of constraints and improvements on the path toward a solution are offered by Pekny and Zentner,4 and these resemble a presolve or preprocessing. Another useful but limited way to reduce the implementation of sequence-dependent maintenance operations is to assume only maintenance outages that require a simple downtime on the unit:5

suj,t + sdi,t-tt e 1 ∀ i, j ) 1...NO, i * j, t ) 1...NT, tt ) 0...τi,j - 1, and t - tt > 0 (2) where τi,j is the spatial switchover time (in number of time periods) of switching over from operation i to j. Equation 2 is very useful and faster to utilize than explicitly managing the maintenance operation when only a maintenance outage is necessary on the unit in question. However, maintenance outages cannot be included in the objective function, nor can they manage the maintenance resources if required to execute an explicit maintenance operation. Because of these limitations, the method in this paper considers the explicit management of maintenance operations in order to obtain a more efficient modeling of sequence-dependent transitions. Note that a distinction is made between repetitive maintenance scheduling (considered in this paper) and preventative and corrective maintenances, which are typically determined by other systems such as computer maintenance and management systems (CMMS) and contain more detailed knowledge of other special resource and skill requirements. Repetitive maintenance is the term given to maintenance that is performed during the normal course of production in order to produce on-quality products safely and cost-effectively, of which cleaning and purging are the best examples. In most cases, repetitive maintenance is performed by personnel in the operations department and, in general, does not require assistance from the maintenance department. On the other hand, preventative and corrective maintenance are typically performed by specialists in the maintenance department. Preventative maintenance is initiated according to a longer cycle or rotation of operations either on a frequency or relative-time event basis in order to prevent unexpected machine performance decay and/or failure. Corrective maintenance, on the other hand, is initiated when a piece of equipment breaks down, malfunctions, or fails because of some defect, fatigue, or excessive wear. The following sections present details on the proposed formulation for modeling sequence-dependent switchovers in discrete-time scheduling problems. New Mixed-Integer Linear Program (MILP) Formulation of Sequence-Dependent Switchovers Previous work in the literature had addressed the modeling of sequence-dependent transitions in process units. However, the very large computational effort required to solve these problems made them very difficult to implement in practice. One of the keys to the new formulation in this paper is to configure four dependent binary (logic) variables for each independent mode operation setup logic variable on a continuous-process unit and on fixed batch-size, variable batch-time (FSVT) batch-process units, called yi,t. The case of variable batch-size and fixed batch-time (VSFT) units is addressed later

Figure 1. Relationship between yi,t, sui,t, swi,i,t, sdi,t, and yyi,t for Batch-1 (s) and Batch-2 (-‚-).

in the paper. There is one yi,t for each mode operation and maintenance operation, which are explicitly declared as binary variables in the global search of the MILP (i.e., in the branchand-bound). Defining yi,t as a setup variable on continuous processes and on FSVT batch-processes is identical to the lotsizing formulations found in works by Wolsey10,11 and in other operations research literature. The four auxiliary dependent logic variables are sui,t, sdi,t, swi,i,t, and yyi,t, which denote, respectively, the startup of an operation, its shutdown (sometimes referred to as switch-off), its switchover-to-itself, and the memory of the last operation performed on the unit. The use of the word “dependent” means that these variables can be relaxed within the interval [0,1] and their integrality is explicitly and uniquely derived from yi,t, which is an independent binary variable. The relationship between the dependent and independent logic variables for FSVT batch-process units can be seen in Figure 1. This relationship is also valid for continuous processes. In Figure 1, Batch-1 has a batch-time of 6 time periods, while Batch-2 has a batch-time of 5 time periods. At the start-ofschedule, a memory variable indicates that Batch-2 has been run last (yy2,0 ) 1). As Batch-1 starts up in time period 1, the memory variable yy2,1 is set to 0, while yy1,1 becomes 1. This memory variable then remains equal to 1 until the next Batch-2 is introduced at time period 9. The remaining variables corresponding to the mode operation logic (yi,t), startup (sui,t), switchover-to-itself (swi,i,t), and shutdown (sdi,t) are selfexplanatory. The equations to model the first three dependent transition variables for either a continuous-process or FSVT batch-process units are as follows:

yi,t - yi,t-1 - sui,t + sdi,t ) 0 ∀ i ) 1...NO and t ) 1...NT (3) yi,t + yi,t-1 - sui,t - sdi,t - 2swi,i,t ) 0 ∀ i ) 1...NO and t ) 1...NT (4) sui,t + sdi,t + swi,i,t e1 ∀ i ) 1...NO and t ) 1...NT

(5)

Equations 3-5 model the temporal event details of individual operations on a unit. Equation 3 shows that the batch unit will be in operation (setup variables equal to 1) between its startup and its shutdown. As an example, if the unit is initially not in mode operation i (yi,0 ) 0) and there is a startup of mode

4966

Ind. Eng. Chem. Res., Vol. 46, No. 14, 2007

operation i in time period 1 (sui,1 ) 1), eq 3 will force the setup of mode operation i to be equal to 1 in time period 1 as well (yi,1 ) 1). The same reasoning occurs for the shutdown of mode operation i. Equation 4 performs the intertemporal transfer of logic within the batch unit; i.e., if mode operation i is active in time period 1 (yi,1 ) 1) and there is no shutdown of that mode operation in that same time period, eq 4 implies that the switchover-to-itself for mode operation i will be equal to 1 (swi,i,1 ) 1) as well as the mode operation setup logic variable for the following time period (yi,2 ) 1). Equation 5 is necessary to preserve the integrality of sui,t and sdi,t, i.e., to prevent the linear program (LP) from setting both sui,t and sdi,t to 0.5, for example, when both yi,t and yi,t-1 are equal to 1. Clearly, this solution would not be physically possible, because only one transition state is valid. Equation 5 prevents these spurious situations from occurring in the MILP while also implying the integrality of the (continuous) variables swi,i,t. As previously mentioned, the sui,t, sdi,t, and swi,i,t variables are not required to be explicitly minimized in the objective function to make them integral at a solution, as is the case in other approaches.11 In other words, these dependent variables do not need to be declared as binary variables and may be relaxed in the interval [0,1]. For variable batch-size, fixed batch-time (VSFT) batchprocess units,1 the transition variables are uniquely defined by the startup (sui,t) of the unit, and eqs 3-5 can be replaced by the following set of equations, t-τi+1

sui,tt ∑ tt)t

∀ i ) 1...NO and t ) 1...NT

(6)

sdi,t ) sui,t-τi+1 ∀ i ) 1...NO and t ) 1...NT

(7)

yi,t )

t-τi+2

swi,i,t )

sui,tt ∑ tt)t

∀ i ) 1...NO and t ) 1...NT

(8)

where τi is the cycle-time or batch-time parameter for the mode operations. For VSFT batch-process units, the independent binary variables are the startup variables sui,t, while the mode operation logic variables yi,t are now dependent and may, therefore, be relaxed in the interval [0,1]. In the study by Kondili et al.,1 batch startup variables (sui,t) are independent binary variables. The setup of the mode operation yi,t and the other transition variables are not considered in their formulation. The remainder of this paper (excluding the second case study) will focus on continuous-process and FSVT batch-process units, although the technique described is also valid for VSFT batch-processes. The dependent memory operation variables yyi,t for the mode operations are only required if a unit has sequence-dependent switchovers. The three constraints below are necessary to properly calculate yyi,t as follows: NO

yyi,t ) 1 ∑ i)1

∀ t ) 1...NT

yi,t - yyi,t e0 ∀ i ) 1...NO and t ) 1...NT

(9) (10)

yyi,t - yyi,t-1 - sui,t e0 ∀ i ) 1...NO and t ) 1...NT (11a) or

yyi,t-1 - yyi,t - sdi,t e0 ∀ i ) 1...NO and t ) 1...NT (11b) Equations 9-11 produce memory variables yyi,t that are integer numbers (0 or 1) at a solution without minimizing them in the objective function, confirming that they are also completely dependent binary variables and may, therefore, be relaxed in the interval [0,1]. In scheduling (as opposed to planning), there is always a single-use or unary resource constraint on a unit, since a unit can perform at most one operation per time period. Equation 9 states that, even if the unit is not performing any operation, the memory variables yyi,t must retain the identity of the last operation; hence, the use of the term “memory operation”. Equation 10 activates the appropriate memory variables yyi,t when a unit is performing a particular mode operation. Equation 11 propagates the memory of the mode operation when the unit is completely shut down or inactive. Equations 9-11 must be enforced even for units that always have a mode operation (and maintenance operation) active throughout the horizon such as NO+NMO a storage unit (i.e., ∑i)1 yi,t ) 1 where NMO is the number of maintenance operations) because of the fact that sequence-dependent switchovers from one mode operation to another must be properly tracked. If a maintenance operation is inserted into a unit’s schedule without using the above constraints, it is impossible to infer the switchover from one mode operation to another. Therefore, whenever sequencedependent switchovers require maintenance operations to be scheduled, eqs 9-11 are mandatory. Maintenance operations are not included in the summation in eq 9, although they are included in the summation for the NO+NMO yi,t e 1. single-use constraint for the unit, i.e., ∑i)1 Additionally, eqs 3-5 must also include maintenance operations. In order to activate a specific maintenance operation on a unit before a spatial switchover occurs from mode operation i in some time period in the past to j, the following equation may be used:

(yyj,t + yyi,t-1 - 1) + suj,t - sdm,t e 1 ∀ i,j ) 1...NO, i * j, m ) SD(i,j), SD(i,j) > 0, and t ) 1...NT (12) Equation 12 will force a shutdown of the maintenance operation m in the same time period as the startup of the mode operation j only when yyj,t and yyi,t-1 are both equal to 1, indicating a spatial switchover. In other words, there is no idle time between the maintenance operation and the following operation on the unit. It is important to note that a variable run-length, uptime, or cycle-time on the maintenance operation can be handled properly by this equation as well. Note that, because of the introduction of the memory variables yyi,t in eqs 9-11, the number of constraints is dramatically reduced when compared to the formulation in eq 1. With the proposed formulation in this work, the number of constraints grows linearly with the number of time periods (O(NT)) instead of increasing at the order of O(NT2), as is the case with the conventional approach. Explicit spatial switchover-to-others dependent logic variables (swi,j,t) may be used to replace the lhs term (yyj,t + yyi,t-1 - 1) of eq 12 using the formulation found in papers by Karamarkar and Schrage,12 Sahinidis and Grossmann,3 and Wolsey,10 which is related to a network flow problem where the spatial switchover-to-others variables swi,j,t are the flows and the node balances are the memory operation variables (see eqs 13 and 14). This requires NO(NO - 1) spatial switchover-to-others

Ind. Eng. Chem. Res., Vol. 46, No. 14, 2007 4967

Figure 2. Discrete-time (a) versus continuous-time (b) formulations.

variables, which can considerably increase the size of the problem when many mode operations exist on the unit. This reformulation is also included in Illustrative Example 1, and its performance is recorded. NO

swi,j,t ) yyi,t-1 ∑ j)1

∀ i ) 1...NO, i * j, τ and t ) 1...NT (13)

NO

swi,j,t ) yyj,t ∑ i)1

∀ j ) 1...NO, j * i, and t ) 1...NT (14)

Additionally, a well-known technique to aggregate two equality constraints at a time is by multiplying both the lhs and rhs by appropriately chosen prime numbers.13,14 This technique can be applied to eq 9. Similar concepts of memory variables have been previously used by other authors, although for different purposes. Rejowski and Pinto,15 for example, presented a discrete-time scheduling formulation for first-in-first-out (FIFO) pipelines. Even though they did not overtly mention the word “memory” in their work, it is apparent that pipelines are a combination of standard flowshops (in which all products have to be subjected to the same sequence of processing steps) and memory variables that handle the time periods in which there is no flow through the constantly filled pipeline. Lee et al.16 used a somewhat related idea of memory variables for modeling sequence-dependent switchovers in continuous-time scheduling problems using time slots, although with a substantially different set of equations and additional independent binary variables, which significantly increase the computational effort. It should be emphasized that the MILP formulation for modeling sequence-dependent maintenance operations presented in this work (eqs 9-12) will require significantly fewer constraints than eq 1, given that the formulation presented in this paper does not require the generation of many relatively unnecessary constraints for the time periods in between t1 and t2. The only instance in which the proposed approach will require more constraints is for problems with a single time period (NT ) 1). The reduction in the number of constraints is due to the inherent assumption made that the maintenance operations should be completed just before the startup of the next mode operation (Figure 2a). In essence, this is a similar approach to the continuous-time formulations found in the studies by Sahinidis and Grossmann3 and Pinto and Grossmann,17 in which time slots are considered. The initial duration of the time slots corresponds to the sequence-dependent transition time (Figure 2b).

On the other hand, when using the original sequencedependent formulation in discrete time (eq 1), a maintenance operation can occur any time between the previous and the next mode operations. Although this provides more degrees-offreedom if a highly resource-constrained scheduling problem exists, there is a severe computational price to be paid for the added flexibility (since it introduces degeneracy in the time domain) and the opportunistic repetitive maintenance scheduling. This also explains, in part, the observation made by Pekny and Zentner4 that eq 1 is not a strong indicator constraint for branching, given that there are many ways to make it feasible in terms of admitting fractional binary variables. Another important point in the new formulation is that the inclusion of memory variables yyj,t allows for idle time to occur on the process unit, since it is the memory variables (instead of the mode operation logic variable yj,t, as is the case in slotbased approaches) that must always add up to 1 at any point in time (eq 9). As can be seen in Figure 2a, there are two idle time periods between the end of Batch-i and the start of maintenance outage i,j. In the slot-based representation of the system (Figure 2b), idle time must be represented as a longer time slot duration. Representing idle time as a longer time slot makes the interpretation of the Gantt chart more difficult. For variable batch-time processes, it is difficult to determine whether the longer time slot corresponds to actual batch-processing time or to shorter batch-processing time with idle time. In the process industries, it is sometimes desirable to consider switchover costs when generating a schedule. This is easily achieved by including the startup variables of the maintenance operations (sum,t) in the objective function of the scheduling problem. This is further discussed in Illustrative Example 1. Finally, the proposed formulation in this paper may also be extended to sequence-independent switchovers. This is the case when a maintenance operation must occur after a specific operation on a unit independently of which operation that same unit is transitioning to. This can be modeled by using the following equation, NO



i)1,SD(i,i))m

sdi,t - sum,t e 0 ∀ m ) 1...NMO, t ) 1...NT (15)

where the sequence-dependent matrix (SD(i,i) ) m) is reused to indicate the appropriate maintenance operation to start up. This is an aggregated version of eq 12 whereby, if any of the operations which require the maintenance operation m are shut down, this maintenance operation must start up. This implies a different behavior from the one illustrated in Figure 2a. By using eq 15, the maintenance operation occurs in the time period after Batch-i instead of the time period before Batch-j, and consequently, the sequence-independent switchovers found in eq 15 do not require the use of memory variables. Illustrative Example 1sSingle-Stage Continuous-Process This simple example comprises a single continuous-process unit with five mode operations (#1-#5) with an unspecified (variable) run-length or cycle-time. The time horizon is 25 h in duration with 1 h time periods. There are three maintenance operations (A, B, and C) that are activated according to the transition matrix found in Table 1. The maintenance operations require exactly 2, 3, and 4 time periods to complete their tasks and represent the sequence-dependent transition times. The fixed (hard) demands (di) to be satisfied for the product stocks produced are 10.0, 5.0, 10.0, 5.0, and 10.0 quantity units

4968

Ind. Eng. Chem. Res., Vol. 46, No. 14, 2007

Table 1. Asymmetric Transition Matrix with Maintenance Operations (Times in Time Periods) from/to #1 #2 #3 #4 #5

#1 A (2) B (3) C (4) A (2)

Table 2. Summary of Equations Used in Each Model (Example 1) formulation

#2

#3

#4

#5

C (4)

A (2) B (3)

B (3) B (3) A (2)

C (4) C (4) C (4) A (2)

A (2) B (3) C (4)

C (4) B (3)

NT

∀ i ) 1...NO

(16)

The upper charge sizes or capacity per time period (Xupper ) i for the unit operations are 5.0, 2.5, 5.0, 2.5, and 5.0 quantity units/h, respectively, while the lower capacities correspond to 10% of the upper capacities. Both upper and lower capacities are modeled as semicontinuous constraints and can be seen below:

xi,t e Xupper yi,t ∀ i ) 1...NO and t ) 1...NT i

(17)

yi,t ∀ i ) 1...NO and t ) 1...NT (18) xi,t g 0.1Xupper i A single-use constraint over all possible operations on a unit (including the maintenance operations) must be used in order to guarantee the production of only one product per line: NO+NMO

∑ i)1

yi,t e 1 ∀ i ) 1...NT

(19)

The objective function is to minimize, over the 25 time periods, the cost of production (which is constant given the fixed demands), the cost of starting up each of the three nonproductive operations (maintenance), and the cost of switchovers-to-itself for the maintenance operations. Switchovers-to-itself for the maintenance operations are minimized so that the shortest transition times possible are used, hence minimizing the unit uptime to meet the same production (i.e., similar to minimizing makespan). In this example, the transition costs (c) are $1/h for both the startup and switchover-to-itself variables. Note that different costs could be used for the startup of the maintenance operations and for the switchover-to-itself variables as well as for the different maintenance operations. NT NO

Objective ) min(

∑ ∑Cixi,t + t)1 i)1 NT NMO

c(

equations Zentner4

Kondili et and Pekny and new approach with explicit spatial switchovers new approach without explicit spatial switchovers

1, 3-5, 16-22 3-5, 9-11a, 12-14, 16-21 3-5, 9-11a, 12, 16-22

C (4)

for each of the five operations with costs of production (Ci) of $10, $20, $10, $20, and $10 per quantity units, respectively. The summation of the charge sizes over all time periods has to equal the demand for each one of the five operations:

xi,t ) di ∑ t)1

al.1

NT NMO

∑ ∑ sum,t + ∑ ∑ swm,m,t)) t)1 m)1 t)1 i)1

(20)

Initially (time period ) 0), the unit is completely clean (no maintenance operations are required) and there is no specific setup of any operations in the unit. Given that there is only one echelon, stage, or level to the production, there is no need to manage the resource consumption or production requirements for the maintenance operations, although we do include the maintenance operation duration cost, which requires the explicit modeling of the maintenance operation as opposed to simply using a sequence-dependent maintenance outage constraint (eq 2). If sequence-independent repetitive maintenance is required,

then either eq 2 or 15 can also be used, although eq 15 consists of fewer constraints. Equation 2, on the other hand, can be used to provide a better lower bound to the problem with maintenance operations if the objective function is properly adjusted. The minimum and maximum run-lengths for the three maintenance operations are modeled below as11 τm-1



sum,t-tt - ym,t e 0 ∀ m ) 1...NMO and t ) 1...NT

tt)1,t-ttg1

(21)

τm



ym,t+tt - τm e 0 ∀ m ) 1...NMO and t ) 1...NT

tt)0,t+tteNT

(22)

where τm is the run-length parameter for the maintenance operations. Illustrative Example 1 was solved by using three different techniques: the conventional approach found in papers by Kondili et al.1 and Pekny and Zentner,4 the new approach using explicit spatial switchover variables swi,j,t, and the new approach without using the explicit spatial switchover variables. A summary of the equations used to solve each one of these cases is presented in Table 2. Table 3 displays the problem size information, also including LP preprocessing results and three cut types discussed below. The problem was generated and solved using Xpress-Mosel version 1.6.3 and Xpress-MILP18 version 17.10.08 with all default settings, and standard branch-and-bound implementation with strong-branching where branch-and-cut was also employed. By analyzing the problem statistics in Table 3, it is obvious that the conventional formulation has almost 4 times the number of constraints and over 50 times the number of nonzeros in the LP matrix, even though it has the smallest number of variables given that the temporal transition variables are not required for the maintenance operations. The conventional formulation has the additional disadvantage that it scales with the square of the number of time periods in the model, as pointed out by Kondili et al.,1 and can prove almost impossible to implement for large problems with long scheduling horizons. Three problem-specific cuts or valid inequalities were applied to this problem. The first cut ensures that the number of transitions over the entire horizon must be greater than or equal to the number of operations minus one.19 MIN NMO NT-1-τm



m)1

∑ t)1

sum,t g NO - 1

(Cut1)

where τMIN is the minimum transition time, which is 2 time m periods for this problem. A processing time of 1 time period is assumed for the continuous-process, given that no minimum run-length is required. The second cut uses the switchover-to-itself variables to help the LP relaxation better estimate the contribution to the objective function for the minimum amount of time required to complete

Ind. Eng. Chem. Res., Vol. 46, No. 14, 2007 4969 Table 3. Problem Matrix Statistics (Presolved Values in Brackets)sExample 1 formulation

constraints

continuous variables

nonzero coefficients

binary variables

LP root simplex iterations; CPU time

Kondili et al.1 and Pekny and Zentner4 New approach with explicit spatial switchovers New approach without explicit spatial switchovers

7 027 (6 982) 2 052 (1 977) 1 802 (1 757)

933 (889) 1 688 (1 614) 1 063 (1 019)

291 979 (290 978) 7 729 (6 895) 6 729 (5 666)

200 (206) 200 (206) 200 (206)

660; 1.1 s 1 482; 0.2 s 992; 0.1 s

Table 4. LP Relaxation Objective Function Solution Results with Cuts Added (Example 1) formulation al.1

Zentner4

Kondili et and Pekny and New approach with explicit spatial switchovers New approach without explicit spatial switchovers

no cuts

cut 1

cut 2

cut 3

cuts 1, 2, & 3

$500.3 $500.3 $500.3

$504.5 $504.5 $504.5

$504.5 $504.5 $504.5

$509.4 $509.4 $509.4

$509.4 $509.4 $509.4

Table 5. Problem Solution Statistics with Cuts Added (Example 1) first solution value (node; CPU time)

formulation Kondili et al.1 and Pekny and Zentner4 New approach with explicit spatial switchovers New approach without explicit spatial switchovers

$516 (280; 42 s) $515 (725; 20 s) $515 (624; 12 s)

the maintenance operation. The minimum transition time is used as an estimate of the lower bound. k NMO NT-1-τMIN



m)1

∑ t)1

swm,m,t g (NO - 1)(τMIN - 1) (Cut2) m

The third cut provides a much better estimate of the final objective function value than the two cuts above. This cut considers the initial values of the memory operations yyi,t and solves a small asymmetric traveling salesman problem (ATSP) for each unit. The ATSP is set up with costs equal to the transition times and nodes (cities) as the mode operations on the unit. The starting node to create the least-cost tour (trip) is the opening mode or memory operation. This cut includes both the startup and switchover-to-itself event variables, which together equal the full transition times. NMO NT-1-τkMIN

∑[ ∑ t)1

m)1

NT-1-τkMIN

sum,t +

∑ t)1

swm,m,t] g kATSP (Cut3)

For this example, kATSP ) 9 time periods. This value can be obtained by enumerating all of the possible complete tours starting from mode operation #1 and connecting the other four mode operations. Table 4 displays the results with different combinations of the three cuts presented above. Clearly, Cut3 provides the highest (best) lower bounds, since it includes both the startup and switchover variables for the maintenance operations. Table 5 displays the solution results where the problems were solved

last solution value (node; CPU time) $514 (731; 67 s) $514 (924; 23 s) $514 (3 081; 45 s)

CPU time to prove optimality (node) 25 099 s (467 878) 5 243 s (350 401) 3 526 s (314 556)

to an integrality gap of 0.01%. The problem instances were solved on a 2.13 GHz Intel Pentium laptop computer with 2.0 GB of RAM. The solution using the new approach with explicit switchoverto-others variables finds the best solution of $514 in the shortest amount of time (23 CPU s). Optimality is proven in the shortest amount of time for the approach without the explicit spatial switchover variables (3 526 CPU s). The latter approach is also preferred because the problem size is less sensitive to problem scale. When a large number of mode operations per unit are configured, generating the explicit spatial switchover variables scales as the square of the number of operations. Therefore, for larger problems, the formulation with explicit spatial switchover variables will prove intractable when many time periods are required, as is the case with the conventional approach of Kondili et al.1 In Figure 3, a Gantt chart of the solution obtained by using the method from Kondili et al.1 can be seen. The optimal calculated sequence of operations on the unit was #2 f #4 f #5 f #1 f #3, with the relevant maintenance operations being performed between the operations. Note that the maintenance operation A between operations #1 and #3 that occurred in time periods 16 and 17 could have been scheduled for any time period between 16 and 22 according to this method. The Gantt charts for the solutions obtained by using the new approach with and without explicit spatial switchovers can be seen in Figure 4 and Figure 5, respectively. Even though the sequence of operations is different for the three approaches, in all cases there are three maintenance A operations, one maintenance B operation, and no maintenance C operations being scheduled. This result is

Figure 3. Gantt chart for solution using the method from Kondili et al.1 and Pekny and Zentner.4

4970

Ind. Eng. Chem. Res., Vol. 46, No. 14, 2007

Figure 4. Gantt chart for solution using the new approach with explicit spatial switchovers.

Figure 5. Gantt chart for solution using the new approach without explicit spatial switchovers. Table 6. Problem Matrix Statistics (Presolved Values in Brackets)sExample 2 nonzero coefficients

binary variables

value of LP root relaxation (iterations; CPU time)

value of LP root relaxation with cuts (CPU time)

formulation

constraints

continuous variables

Kondili et al.1 and Pekny and Zentner4 new approach without explicit spatial switchovers

73 371 (54 731)

11 336 (1 880)

7 018 457 (6 316 784)

960 (661)

35 806.5 (36; 142 s)

35 793.4 (475 s)

21 153 (4 004)

11 918 (2 281)

59 241 (15 496)

960 (670)

35 980.7 (22;