and for such functions no straightforward methods for finding the optimal solution exist. Such functions ... 1989) or the ECP (Extended Cutting Plane) method.
Computers and Chemical Engineering 23 (1999) 439—448
Convexification of different classes of non-convex MINLP problems Ray Po¨rn , Iiro Harjunkoski, Tapio Westerlund* Department of Mathematics at As bo Akademi University, Fa¨ nriksgatan 3 B, FIN-20500 As bo, Finland Process Design Laboratory at As bo Akademi University, Biskopsgatan 8, FIN-20500 As bo, Finland Received 23 June 1997; received in revised form 13 November 1998; accepted 13 November 1998
Abstract In the present paper, convexification strategies for certain kinds of discrete and integer non-convex optimization problems are introduced and discussed. We show how to solve problems with both posynomial and negative binomial terms in the constraints. The convexification technique may in some cases be generalized to include continuous variables. Posynomial functions are non-convex and for such functions no straightforward methods for finding the optimal solution exist. Such functions appear frequently in different kinds of chemical engineering problems. The different transformation techniques are illustrated in the form of short examples. The techniques are finally applied to a large, bilinear, trim loss problem regularly encountered at paper-converting mills. 1999 Elsevier Science Ltd. All rights reserved. Keywords: Binomials; Convexification; Discrete and integer variables; Mixed integer non-linear programming; Optimization; Posynomials
1. Introduction Non-convex functions appear in many chemical engineering problems. When solving these kinds of problems, care must be taken to guarantee that an optimal solution to the problem is found. If a problem includes nonconvex functions, there are, in general, no direct optimization methods available, which would guarantee global optimality. To solve such a problem we can, for example, do one of the following: E Use a stochastic method such as random search (Salcedo et al., 1990) or simulated annealing (Cardoso et al. 1996). It is possible to solve small to medium scale, non-convex NLP and MINLP with various random search methods and simulated annealing, but global optimality is not always guaranteed. Also, the probability of finding the global optimum decreases when the problem size increases. E Apply a global optimization method, e.g., the Branch and Reduce algorithm illustrated in Ryoo and Sahinidis (1995) or the aBranch and Bound method presented in Adjiman et al. (1996). These methods can be a good alternative, if the problem is of small or medium
*Corresponding author. Fax: #358 9 21 654791.
size. According to recent results presented in Adjiman et al. (1997) and Smith et al. (1997), integer variables may also participate non-linearly in the problem. When a large problem with hundreds of variables and constraints or a problem that contains many non-convex functions is dealt with, global optimization can be a very time-consuming task. E Try to transform the original problem into a convex problem and solve it with a MINLP solver, e.g. the GBD (Generalized Benders Decomposition) method (Geoffrion, 1972), the OA (Outer Approximation) method (Duran and Grossmann, 1986), the GOA (Generalized Outer Approximation) method (Yuan et al., 1989) or the ECP (Extended Cutting Plane) method presented in Westerlund and Pettersson (1995). The ECP method is especially suitable when dealing with problems that include many non-linear expressions in integer or discrete variables. In this paper, we present some convexification techniques which are applicable to a large class of mixed integer non-linear optimization problems. All of the examples are solved with the ECP method. To guarantee that the ECP algorithm finds a global optimum to a MINLP problem, we require that all inequality constraints are convex and that all equality constraints and the objective are linear. The algorithm has recently been
0098-1354/99/$ — see front matter 1999 Elsevier Science Ltd. All rights reserved. PII: S 0 0 9 8 - 1 3 5 4 ( 9 8 ) 0 0 3 0 5 - 6
440
R. Po( rn et al. / Computers and Chemical Engineering 23 (1999) 439—448
modified to handle pseudoconvex inequality constraints. This extension of the method is referred to as aECP and it is discussed in more detail in Westerlund et al. (1998a). All transformations presented are designed to meet the requirements of global convergence of the ECP algorithm. If we choose to use another MINLP method, some other transformations may have been more useful and appropriate.
q*1, we can express variable d in convex form according to
2. Different representations of discrete variables
3. Some convex functions with desired properties
The standard procedure to represent a discrete variable, d3+d , d , 2 , d ,, in an optimization problem is to L use the formula
Since we discuss different convexification techniques in this paper, we must consider which functions are convex and which are not. Also, we have to find appropriate transformations that transform classes of non-convex functions into convex form. The following convexity properties are required: (i) the function aePV>2>PLVL is convex on RL if a*0 and r 3R. G (ii) the function !axNyO is convex on +(x, y)"x, y*0, if a, p, q*0 and p#q)1. (iii) any sum of convex functions is a convex function. Properties (i) and (iii) are elementary and proofs can be found in Roberts (1973). Property (ii) is also easily proved.
L L d" b ) d b "1. G G G G G In this formula the b s are all binary variables. The G formula can be interpreted as a logical choice of the value for the discrete variable d. The above formula is slightly longer than it needs to be. It is possible to represent a discrete variable with n values with only n!1 binary variables, which is done in the following formula: L\ L\ d"d # b ) (d !d ) b )1. G G> G G G
(1) 4. Convexification techniques
An integer variable, z3+z*, z*#1, 2 , z3,, can be efficiently represented as ' z"z*# 2G\ ) b , G G
(2)
where I"W log (z3!z*)X#1. Since this representation is not always suitable, a discrete variant (1) must be used in some cases. For instance, if we have an integer variable with values in a certain integer interval, z3+z*, z*#1, 2 , z3,, it may sometimes be more convenient to represent it according to Eq. (1) as X3\X* X3\X* z"z*# b ) i ? b )1. G G G G
d"d qX, z3[0, n] z3Z. As we have seen above, it is sometimes possible to represent a discrete variable, the values of which follow a certain well-defined pattern, in an efficient way using integer variables.
(3)
A discrete variable can, in some cases, be represented by one integer variable only. This is, for example, the case if the values of the discrete variable obey the properties of an arithmetic or geometric series. A discrete variable, d, with equidistant values, d3+d , d #D, 2 , d #n ) D, where n is a positive integer and D'0, can be represented linearly as
A class of functions that is very common in real-life optimization problems is that of posynomials. Posynomials are generally very non-convex functions. These functions consist of a sum of terms of the following form: axPxP 2 xPL , r 3R, a'0. (4) L G A posynomial is normally defined on the set +x "x '0, G G for i"1, 2 , n. If the exponent r is greater than or equal G to one, negative values may be included in the definition set for the variable x . In this paper, we restrict these G variables to integer or discrete values. The procedure of problem convexification differs from the standard technique of convexifying a single function. When a function is convexified one variable is replaced by another transformed variable. In an optimization problem a variable usually participates in several constraints, both convex and non-convex, and the transformation is only conducted on the non-convex part of the problem, while the convex components are left unchanged. This procedure results in a double-transformation, which leaves the convex part convex, while the non-convex part is convexified.
d"d #zD
4.1. The exponential transform
where z is an integer variable with the values [0, n]. Similarly, if d3+d , d q, 2 , d qL,, where d '0 and
In this section the convexification technique for posynomials is explained and illustrated. We assume that
R. Po( rn et al. / Computers and Chemical Engineering 23 (1999) 439—448
our problem includes a term of type (4) and all variables x take values in a positive discrete set +d , d , 2 , d ,. G G G GLG We then represent each x according to Eq. (1) and set G LG\ LG\ x "d # b (d !d ) b )1. G G GH GH> G GH H H
(5)
To be able to transform the posynomial we introduce new variables, X , by G x "e6G 8 X "ln x . G G G
(6)
Since all variables x are discrete, the feasible outcomes of G the variables X will be +ln d , ln d ,2, ln d ,. We can G G G GLG now represent these new variables, X , with the same G binary variables that we used to represent x . Again, we G use Eq. (1) to obtain LG\ LG\ !ln d ] b )1. X "ln d # b [ln d GH GH> G GH G G H H (7) This representation of Transformation 6 is required, since non-linear equality constraints are not allowed in the ECP algorithm (and many other MINLP methods). When x is substituted with X in Eq. (4), we obtain the G G following equivalent convex representation of the nonconvex posynomial term:
axPxP 2 xPL L a'0, r 3R G x disrete G
441
Remark 1. In some cases, the convexification procedure can also be applied to problems, that contain continuous variables. It is possible to use ¹ransformation 6 on a continuous variable, x, which participates in a posynomial term, if it e.g. has the form a ) xN, where a*0 and p3R elsewhere in the problem. Such a term will maintain its convexity during ¹ransformation 6. In this case, the variable, x, is transformed everywhere in the problem exactly as in a standard function transformation. Remark 2. If the problem involves non-positive discrete variables, a positive translation, q, must be used in order to keep the transformation valid and real-valued. If we assume that a discrete variable, x, takes on values in the set +d , d ,2, d , where d )d for i"1, 2,2, n!1 and L G G> d )0, ¹ransformation 7 will be L\ x#q"e6 8 X"ln(d #q)# b [ln(d #q) H H> H !ln(d #q)], (10) where q'"d ". Remark 3. A constraint which consists of a single posynomial term can be handled very easily. Here we transform both sides of the constraint with a logarithmic function, e.g. the natural logarithm, according to xPxP2xPL*C 8 ln C!r ln x !2!r ln x )0, L L L where C, r '0 and the definition set is +x "x '0,. ¹he G G G latter constraint is convex and appropriate for an optimization problem.
8
aeP6>P6>2>PL6L (*) X "ln d # LG\ b [ln d !ln d ] G G H GH GH> G G L \ b )1 H GH X 3R, b 3+0, 1, G GH
(8)
Function (*) is convex according to Property (i). If the problem includes a non-convex term such as the one on the left side, we can replace it with the equivalent convex expression on the right hand side. The variables X can G be defined as continuous, since they are restricted to discrete values by Eq. (7). When working with integer variables, x 3+x*, x*#1, 2 , x3,, we can simplify G G G G Eq. (7) to
j 'G X "ln x*# b ln 1# G G GH x* G H
'G b )1, GH H
Remark 4. Observe also that since both the original variables, x , and the transformed variables, X , are represented G G linearly in the binary variables, b , the non-convex expresGH sions can be convexified whearas the linear expressions (in the original variables x ) remain linear. ¹his would not G generally be the case if ¹ransformation (6) is used without Eq. (1). Example 1. Consider the following two-dimensional non-convex pure integer program min 7x #10x VV under the conditions
(9)
where I "x3!x*. All posynomial terms in a problem G G G are transformed according to Eq. (8), while all convex terms are left untransformed. The only transformed component in Example 1 is the posynomial term in the first constraint. The posynomials are now convex in the variables X and rest of the problem is convex in the variG ables x . G
x x !7x !9x #24)0, !x !2x #5)0, !3x #x !1)0, 4x !3x !11)0, (1, 1))(x , x ))(5, 5), x , x 3Z.
R. Po( rn et al. / Computers and Chemical Engineering 23 (1999) 439—448
442
Table 1 The number of variables and constraints introduced in the convexification procedure Posynomial term
Variables (bin/cont)
Constraints (lin-eq/lin-ineq)
Convexified term
L
n/n
aeP6>P6>2>PL6L
n !n/n G G
axPxP2xPL L
The problem is non-convex due to the first term in the first constraint. The term is of Type 4 and we can convexify it using the technique given in the previous section. We represent the integer variables according to Eq. (3) and transform according to Eq. (6)
X "b ) ln 2#b ) ln 3#b ) ln 4#b ) ln5, x "e6 8 b #b #b #b )1, b 3+0, 1,, G
X "b ) ln 2#b ) ln 3#b ) ln 4#b ) ln5, x "e6 8 b #b #b #b )1, b 3 [0, 1], G The non-convex term can now be written in convex form as e 6> 6 ; convexity is ensured by Property i, and the equivalent convex problem is min 7x #10x VV66@G@G unter the conditions e 6> 6!7x !9x #24)0, !x !2x #5)0, !3x #x !1)0, 4x !3x !11)0, x "1#b ) 1#b ) 2#b ) 3#b ) 4, X "b ) ln 2#b ) ln 3#b ) ln 4#b ) ln 5, b #b #b #b )1 x "1#b ) 1#b ) 2#b ) 2#b ) 4, X "b ) ln 2#b ) ln 3#b ) ln 4#b ) ln 5, b #b #b #b )1, (1, 1, 0, 0))(x , x , X , X ))(5, 5, ln 5, ln 5), x , x , X , X 3 R; b , b 3 +0, 1,. G G The solution to this problem is (x , x )"(3, 1) with the original variables and the value of the objective is 31. The continuous variables are not explicitly required in the transformed problem, but the problem becomes much more readable if they are included. If the non-convex untransformed problem is solved directly with the ECP method the solution (x , x )"(2, 2) with value 34 on the
objective function is obtained, i.e. the global optimum has been cut off. 4.2. Calculation of the number of additional variables and constraints introduced When a posynomial constraint is convexified in an optimization problem, the number of variables and constraints increases. If the number of feasible values for the discrete variable, x , is n , the number of binary variables G G required for the presentation is n !1. In addition, one G continuous variable, X , is introduced. Also, one linear G equality and one linear inequality constraint are added for each transformed variable. The number of variables and constraints required to convexify a posynomial term is presented in Table 1. In Example 1 we have n"2 and n "n "5 which results in a total of 8/2 variables and 2/2 constraints. 4.3. The potential transform The exponential transform makes it possible to treat posynomial terms with discrete variables in optimization problems. The potential transform is based on a similar approach and facilitates treatment of terms of the form !axNyO, with a, p, q'0.
(11)
This is a negative binomial term. We assume that both x and y are positive discrete variables with values in the sets +d , d ,2, d , and +c , c ,2, c , respectively. If L K p, q3 [0, 1] and p#q)1, the term is convex according to (ii) and no transformation is required. If this is not the case, we have to transform the term into convex form. The following transformation will be successful: x"X N>O ?y"½ N>O .
(12)
The corresponding discrete version is L\ X"dN>O# b [dN>O!dN>O], G G> G K\ ½"cN>O# a [cN>O!cN>O], G G> G
(13)
R. Po( rn et al. / Computers and Chemical Engineering 23 (1999) 439—448
where every a and every b are binary variables. FuncG G tion 10 can now be rewritten in convex form according to
!a ) xNyO a, p, q'0
8
x, y discrete
N
O
!a ) X N>O½ N>O (*) X"dN>O# L\ b [dN>O!dN>O] G G G> ½"cN>O# K\ a [cN>O!cN>O] G G G> L\ b )1, K\ a )1 G G G G X, ½3R, a , b 3 +0, 1, G G (14)
Since both exponents in (*) are less than one and their sum is equal to one, the function is convex due to Property (ii). Also, in this case we are able to transform a continuous variable if the function where it is found maintains its convexity during Transformation 12. This is, for example, the case if the transformed variable occurs linearly and with a negative sign, elsewhere in the problem. If either p or q is in the unit interval ]0, 1[, we only transform the variable with the larger exponent. Transformation is done only when it is necessary. If we assume that p(1, the transformation exponent can be calculated as (1!p)/q. We obtain the transformation O . y"½ \N
(15)
See Example 2 below. Only the binomial terms in the problem are transformed. All convex components are left untransformed. The number of additional variables and constraints required in this case is equal to the number in the posynomial case with n"2. Example 2. Consider the following non-convex minimization problem. The problem includes a continuous variable, x, and an integer variable, z: min 3z!5x VX under the conditions 2z!2z !2x z#11z#8x!39)0, !x#x!3)0, 2z#3x!24)0, (1, 1))(x, z))(10, 6), x3R, z3 Z. This problem is non-convex due to the first constraint. We observe that the third term in the first constraint is of Type 11 with parameters a"2, p"0.5 and q"2. Since one of the exponents is less than one, we only transform the variable with the larger exponent [Eq. (15)]. First, we represent the integer variable using Eq. (3) according to z"1#b ) 1#b ) 2#b ) 3#b ) 4#b ) 5; b #b #b #b #b )1.
443
Therafter we introduce a new variable, Z, and transform it according to Eqs. (15) and (13) b ((i#1)!1). G G When these expressions are substituted into the original problem, we obtain the following equivalent convex formulation: z"Z
\ 8 Z"z"1#
min 3z!5x VX8@G under the conditions 2z!2z !2x Z #11z#8x!39)0, !z#x!3)0, 2z#3x!24)0, z"1#b ) 1#b ) 2#b ) 3#b ) 4#b ) 5, Z"1#b ) 15#b ) 80#b ) 255#b ) 624#b ) 1295, b #b #b #b #b )1, (1, 1, 1))(x, z, Z))(10, 6, 1296), x, z, Z 3R, b 3+0, 1,. G The transformed term is now convex according to Property (ii) and the first constraint is thereby convex due to Property (iii). This is a convex MINLP problem and, thus, it is ensured that the ECP algorithm converges to a global optimum. With the original variables the optimal point is (x, z)"(4, 1) and the value of the objective is !17. Also in this case the variable z is not explicitly required, but the problem is easier to read if it is included. If we solve the untransformed problem we obtain the solution (x, z)"(4.67, 5) with an objective value !8.33, because the first linearization of the non-linear constraint cuts off the optimal point. Examples 1 and 2 were solved with a PC implementation of the ECP method described in Westerlund and Lundqvist (1998) on a 300 MHz pentium PC in 0.02 and 0.03 CPU s respectively. In order to illustrate some of the difficulties in solving the untransformed problems in Examples 1 and 2 the feasible region of both problems are plotted in Fig. 1. In the pure integer problem (Example 1) the feasible points are marked with black dots and for the mixed problem (Example 2) the feasible region is given with bold lines. All constraints are plotted as thin lines and the optimal point in each problem is marked with a circle. The first example is plotted in a x x -system and the second in a xz-system. Observe that the feasible region in the second problem is not only non-convex it consists of two disjunct sets. The feasible region of the transformed problems is clearly convex, but the graphical presentation becomes more difficult in this case due to the increase in dimensions.
444
R. Po( rn et al. / Computers and Chemical Engineering 23 (1999) 439—448
Fig. 1. The feasible region of the example-problems.
5. Linear representation of logical functions
The logical operators AND (), OR (R) and NEGATION () can be represented mathematically by
We often need various kinds of logical expressions and functions when dealing with chemical engineering problems. Sometimes the variables satisfy certain logical constraints and sometimes the problem includes logical functions which have to be evaluated. Binary variables can be used to model logical constraints; see Floudas (1995) for a noteworthy survey. Here we concentrate on writing different kinds of logical functions in linear form. It should be noted that writing logical functions in linear form is not equivalent to writing logical expressions in linear form. Although, linearly written logical functions can efficiently be used to generate linear functions for logical expressions. In a final example we show how logical functions can be used in the transformation of an industrial trim loss problem. Let us define a binary function as follows:
P ?P b b P @P b #b !b b (18) P 1!b where each b is a binary variable used to model the G logical variables P . We can see that both the AND and G the OR functions can be written in linear form using Eq. (17). Since every logical function can be represented with these three operations alone, every logical function has a linear representation due to Eq. (17).
f"b b 2b "min+b ,2, b ,, L L
XNOR(b , b , b ) "(b ?b ?b )@(b ?b ?b ) "1!b !b !b #b b #b b #b b . If we now apply Eq. (17) to the three bilinear terms, we obtain the following linear representation of the threefold logical function XNOR:
(16)
where every b 3+0, 1,. This function can be used to G represent a logical min-term. Its value is equal to one if and only if each b equals one, otherwise it is equal to G zero. The binary function can be expressed in linear form by introducing a new binary variable, s, and a set of two linear constraints: f"s,
(17)
!s!n#1#b #b #2#b )0, L n ) s!b !b !2!b )0, L s, b 3 +0, 1,. G If k(n of variables b equals one, the constraints imply G that s3 [!n#k#1, k/n]Ns"0 and if every b "1 it G follows that s"1.
Example 3. In this example we show how to rewrite the threefold logical XNOR function in linear form. This function can be used to test whether the input is equal or not. The function has the following logical and mathematical form:
XNOR(b , b , b )"1!b !b !b #s #s #s , !s !1#b #b )0, 2s !b !b )0, !s !1#b #b )0, 2s !b !b )0, !s !1#b #b )0, 2s !b !b )0, b , b , b , s , s , s 3 +0, 1,.
R. Po( rn et al. / Computers and Chemical Engineering 23 (1999) 439—448
The next example illustrates how a discontinuous function may be written in linear form. Example 4. We can use this technique to model a function defined by
c if expression P is valid, f" c otherwise, where, e.g. P"(P P )RP and c , c 3 R. Using Representation 18, we obtain P 81!b #b b b . GHI Q When we replace the product with a new variable according to Eq. (17), we can write the function f in linear form: f"(c !c )(1!b #s)#c , !s!2#b #b #b )0, 3s!b !b !b )0, b , b , b , s 3 +0, 1,. Example 5. The trim loss problem: This example is a socalled trim loss problem that is encountered in the paper converting industry, where larger raw paper rolls are to be cut into smaller rolls so that, e.g., the width and production constraints are satisfied. The problem is generally non-convex because of the production constraints. The problem is described in greater detail in, e.g. Harjunkoski et al. (1997). In the following section, we illustrate how a trim loss problem can be transformed into convex form by using the transformation techniques offered in the previous sections. The standard non-convex formulation of a trim loss problem is given by min+z #z #z #z #0.1y #0.2y #0.3y #0.4y , such that 290x #315x #350x #455x )1850y , H H H H H 290x #315x #350x #455x *1750y , H H H H H x #x #x #x )5y , H H H H H y !z )0, H H z !30y )0, H H n !z ) x !z ) x !z ) x !z ) x )0, G G G G G x , z 3Z; y 3 +0, 1,; i, j"1, 2, 3, 4. GH H H The indices, i, describe the different products and the indices, j, the different cutting patterns. The variables, x , GH describe the number of products, i, that are present in cutting pattern, j, and variables, z , give the number of H times that the cutting pattern, j, is used. The binary
445
variables, y , are equal to one if the cutting pattern, j, is H used, otherwise they are equal to zero. The first and the second constraint derive from the width of the raw paper rolls and the third constraint is a technical criterion. The fourth and fifth constraints are logical requirements for the variable y . The last constraint is the customer’s H demand. The width of the raw paper rolls are 1850 mm and we require every trim set to be wider than 1750 mm and four different cutting patterns are allowed. The widths (in mm) of the ordered rolls are given by (290, 315, 350, 455) and the ordered amounts are (n , n , n , n )"(15, 28, 21, 30). This formulation also minimizes the number of different trim sets needed (the variables y ). This bilinear problem contains 20 integer H and 4 binary variables as well as 24 constraints. 5.1. The exponential transform The transformation is applicable to posynomials. A positive bilinear function is a special case of such a function. The trim loss problem includes a negative bilinear function, which means that we first have to transform the negative bilinear function into a positive function. This is easily done with the following linear change of variables: xL "5!x , GH GH where the variables x' describe the number of products, i, GH that are not present in the cutting pattern, j. Thus, the bilinear constraint is modified to n !5 z # z xL )0. G H H GH H H We can now apply Transformation 6 to this constraint in order to achieve convexity. Since both variables, z and H xL , can take the value zero, we need a translation (ReGH mark 2) to keep the transformation consistent. With q"1, we obtain z #1"e8HxL #1"e6ª GH H GH or in an equivalent discrete form *H *H z " b l; Z " b ln(l#1), H HJ H HJ J J xL " b k; XK " b ln(k#1) GH GHI GH GHI I I together with the linear inequalities for each of i and j *H b )1; b )1. HJ GHI J I The upper bounds, ¸ , on the variables z can be deterH H mined from the order as (¸ , ¸ , ¸ , ¸ )"(21, 15, 8, 3). Now all linear expressions in z and x' remain linear and H GH
R. Po( rn et al. / Computers and Chemical Engineering 23 (1999) 439—448
446
Table 2 The sizes and the results of the optimization of a trim loss problem in different convex forms Formulation
Objective
Iterations
CPU-time (s)
Variables (I/B/C)
Constraints (L/C)
Bilinear Exponential Potential Mod-potential
— 19.6 19.6 19.6
— 27 16 13
— 369 259 341
20/4/— —/131/40 —/131/40 —/114/40
20/4(bilin) 86/4 86/4 128/4
each non-convex production constraint can be replaced by a convex constraint n !4# e8H>6ª GH! (6z #xL ))0. G H GH H H The transformed problem is presented in its entirety in Appendix A. 5.2. The potential transform If we study the bilinear constraint, we see that each term is of Type 11 with a"p"q"1. We can then apply the transformation given in Eq. (12) to each term of the sum in order to achieve convexity. Here we also have to use a translation, q"1. We transform z #1"Z x #1"X H H GH GH for each i and j. The corresponding discrete version is *H *H z " b l; Z "1# b l(l#2), HJ H HJ H J J x " b k; X "1# b k(k#2) GH GHI GH GHI I I When we rewrite the bilinear constraint using the new variables Z and X , we obtain the following equivalent H GH convex constraint for each product i: n #4! Z X # (z #x ))0. G H GH H GH H H This formulation can also be found in Appendix A. 5.3. The modified potential transform Since the number of ordered products is large in this example, it is inefficient to represent the integer variables z according to Eq. (1). Instead, we use the technique H given in Eq. (2) to obtain *ª H z " 2J\b , ¸K "Wlog (¸ )X#1. H HJ H H J
We apply the potential transformation to this expression *ª H Z "(z #1)"1 # (2J\#2J)b H H HJ J *ª H # 2J>K\b b . HJ HK JK; K The expression above is unfortunately non-convex due to the last sum. But, at this point the rewriting technique offered in Eq. (17) is applied to the last bilinear terms to obtain a linear equality constraint for Z : H *ª H *ª H 2J>K\s , Z "1# (2J\#2l)b # HJK H HJ J JK; K !s !1#b #b )0, HJK HJ HK 2s !b !b )0, HJK HJ HK l, m"1,2, ¸K ; m(l. H
Since the variables x have low upper bounds ("5), they GH will be represented with the discrete technique (1) as in the cases above. This formulation includes fewer variables but more constraints than the two previous ones. 5.4. Solution to the examples Table 2 contains results from the solution of the transformed trim loss problem. All problems are given in their entirety in Appendix A. The trim loss problem defined by the modified potential transformation is referred to as Mod-potential. The untransformed bilinear problem is included for comparision of the problem sizes. From Table 2 it can be seen that all problems were solved in a couple of minutes. The last formulation will be even more effective compared to the other two if the number of ordered rolls increases. The solution giving the optimal value 19.6 is found at: z "14, z "4, z "1, y "y "y "1, x "1, x "2, x "2, x "5, x "2, x "1 and x "2. Since the problem is not strictly convex, it is possible that it exists several solutions with the value 19.6 on the objective. When the bilinear problem is solved directly with the ECP method an infeasible solution is found. This clearly demonstrates The abbreviation I/B/C stands for Integer/Binary/Continuous variables and L/C stands for Linear/Convex constraints.
R. Po( rn et al. / Computers and Chemical Engineering 23 (1999) 439—448
the need for the transformation techniques discribed in the previous sections. An exponential transformed trim loss problem has also been solved in Skrifvars et al. (1996). Alternative linear approaches for solving trim loss problems are discussed and illustrated in Harjunkoski et al. (1996) and Westerlund et al. (1998b). All MINLPs were, in this case, solved with the ‘‘mittlp’’ package on a DEC 3000 m900 AXP computer (the solution on this computer is obtained almost two times faster than on the PC used in examples 1 and 2). The ‘‘mittlp’’ program is a C-implementation of the ECP algorithm described in Skrifvars (1998). The ‘‘mittlp’’ uses CPLEX library routines to solve the MILP subproblems. 6. Discussion Different convexification strategies for MINLP problems were presented and illustrated. It was shown how posynomials and negative binomials could be convexified within the field of discrete optimization. These two types of functions are very common in chemical engineering problems. The transformations were general and could be used to solve many kinds of non-convex programs. A linear representation of logical functions was also introduced and discussed. All logical functions have a unique linear representation. Finally, a large, bilinear, trim loss problem was considered to illustrate the application of different convexification techniques in industrial. Appendix A
i, j"1, 2, 3, 4; l"1, 2,2, ¸ , H xL , z , XK , Z 3 R, GH H GH H y , b , b 3 +0, 1,. H HJ GHI
447
k"1, 2, 3, 4, 5,
A.2. The potential formulation min+z #z #z #z #0.1y #0.2y #0.3y #0.4y , such that 290x #315x #350x #455x )1850y , H H H H H 290x #315x #350x #455x *1750y , H H H H H x #x #x #x )5y , H H H H H y !z )0; z !30y )0, H H H H y !y )0; z !z )0, H H\ H H\ *H *H z " b l, Z "1# b l(l#1), H HJ H HJ J J x " b k, X "1# b k(k#2), GH GHI GH GHI I I *H b )1, b )1, HJ GHI J I n !4# Z X # (z #x ))0, G H H H GH H H i, j"1, 2, 3, 4; l"1, 2,2, ¸ , k"1, 2, 3, 4, 5, H x , z , X , Z 3 R, GH H GH H y , b , b 3 +0, 1,. H HJ GHI
(A.1)
(A.2)
A.1. The exponential formulation
A.3. The modified potential formulation
min+z #z #z #z #0.1y #0.2y #0.3y #0.4y , such that
This problem is identical to the previous, except for constraint (A.1) being replaced by
290xL #315xL #350xL #455xL #1850y *7050, H H H H H 290xL #315xL #350xL #455xL #1750y )7050, H H H H H xL #xL #xL #xL #5y *20, H H H H H y !z )0; z !30y )0, H H H H y !y )0; z !z )0, H H\ H H\ *H *H z " b l, Z " b ln(l#1), H HJ H HJ J J xL " b k, XK " b ln(k#1), GH GHI GH GHI I I *H b )1, b )1, HJ GHI J I n !4# e8H>6ª JH! (6z #xL ))0, G H GH H H
*ª H z " 2J\b , H HJ J *ª H *ª H 2J>K\s Z "1# (2J\#2J)b # HJ HJK H J JK; KJ and the first constraint in Eq. (A.2) being replaced by !s !1#b #b )0, HJK HJ HK 2s !b !b )0, HJK HJ HK l, m"1,2, ¸K ; m(l. H The vector with the ordered amounts is (n , n , n , n )" (15, 28, 21, 30) and the values for upper bounds are (¸ , ¸ , ¸ , ¸ )"(21, 15, 8, 3) and (¸< ¸< , ¸< , ¸< )" (5, 4, 4, 2). The variables z , x and x' are not explicitly H GH GH required, but the problems are much more readable if they are included. Some additional bounding constraints were also included when the problems were solved.
448
R. Po( rn et al. / Computers and Chemical Engineering 23 (1999) 439—448
References Adjiman C. S., Androulakis I. P., Maranas C. D., & Floudas, C. A. (1996). A global optimization method, aBB, for process design. Comput. Chem. Engng, 20, S419—S424. Adjiman, C. S. (1997). Global optimization of MINLP problems in process synthesis and design. Comput. Chem. Engng, 21, S445—S450. Cardoso, M. F., Salcedo, R. L., & Feyo de Azevedo S. (1996). The simplex-simulated annealing approach to continuous non-linear optimization. Comput. Chem. Engng, 20, 1065—1080. Duran, M. A., & Grossmann I. E. (1986). An outer-approximation algorithm for a class of mixed-integer nonlinear programs. Math. Programming, 36, 307—339. Floudas, C. A. (1995). Nonlinear and mixed-integer optimization — fundamentals and applications. Oxford: Oxford University Press. Geoffrion, A. M. (1972). Generalized Benders decomposition. J. Optim. ¹heory Appl., 10, 237—260. Harjunkoski, I., Westerlund, T., Isaksson, J., & Skrifvars, H. (1996). Different formulations for solving trim loss problems in a paper converting mill with ILP. Comput. Chem. Engng, 20, S121—S126. Harjunkoski, I., Westerlund, T., Po¨rn, R., & Skrifvars, H. (1998). Different transformations for solving non-convex trim loss problems by MINLP. Eur. J. Oper. Res., 105, 594—603. Roberts, A. W., & Varberg, D. E. (1973). Convex functions. New York: Academic Press. Ryoo, H. S., & Sahinidis, N. V. (1995). Global optimization of nonconvex NLPs and MINLPs with applications in process design. Comput. Chem. Engng, 19, 551—566.
Salcedo, R. L., Goncalves, M. J., & Feyo de Azevedo, S. (1990). An improved random-search algorithm for non-linear optimization. Comput. Chem. Engng, 14, 1111—1126. Skrifvars, H., Harjunkoski, I., Westerlund, T., Kravanja, Z., & Po¨rn, R. (1996). Comparison of different MINLP methods applied on some chemical engineering problems. Comput. Chem. Engng, 20, S333—S338. Skrifvars, H. (1998). mittlp A program package for solving MINLP problems. Report from the Process Design ¸ab. 98-158-A, ISBN 952-12-0205-X. Smith, E. M. B., & Pantelides, C. C. (1997). Global optimization of nonconvex MINLPs’. Comput. Chem. Engng, 21, S791—S796. Westerlund, T., & Pettersson, F. (1995). An extended cutting plane method for solving convex MINLP problems. Comput. Chem. Engng, 19, S131—S136. Westerlund, T., Skrifvars, H., Harjunkoski, I., & Po¨rn, R. (1998a). An extended cutting plane method for a class of non-convex MINLP problems. Comput. Chem. Engng, 22, 357—365. Westerlund, T., Isaksson, J., & Harjunkoski, I. (1998b). Solving a production optimization problem in a paper converting mill with MILP. Comput. Chem. Engng, 22, 563—570. Westerlund, T., & Lundqvist, K. (1998). Alpha-ECP, Version 1.01. User’s Guide for an Interactive MINLP-Solver Based on the Extended Cutting Plane Method. Report from the Process Design ¸ab, 98-157-A, ISBN 951-12-0130-4. Yuan, X., Pibouleanu, L., & Domenech, S. (1989). Experiments in process synthesis via mixed-integer programming. Chem. Engng Proc., 25, 99—116.