• 沒有找到結果。

Treatment of Continuous Function in GGP

Chapter 3 Extension 1-Solving Generalized Geometric Programs Problems

3.4 Treatment of Continuous Function in GGP

= The above conditions can be represented by a set of linear inequalities below:

⎪⎪

Expression (3.11) implies:

(i) If λi = 0∀i then f(x)=0,

(ii) If λi =1 ,θi =1 ,andαi is odd for all i∈{1,2,...,n} then f(x)=−f0(x).

PROPOSITION 3.4 Consider a signomial continuous function

= expressed with the following inequalities:

λ

J i M x x M

xi0 − θiii0 + θi,∀ ∈ , J i M

x x M

xi − − ii ≤− i + − i ∀ ∈

0 (1 θ ) 0 (1 θ ), ,

J i x xii

< ,

0 0 ,

J i x

xi = ,i0, where

(i)

=

= n

i

i i

x c f

1 0

0(x) ( )α ,

(ii) },λ,θ,λii∈{0 ,1 M =2max{−xi,xi},

(iii) t is an integer variable,

(iv) J is a set containing all i where the lower bound of x areis negative, and I i denotes a set of all i where iJ and αi is odd, J and I are expressed as

J={i |xi < 0∀i} and

I={i |xi <0 and αi is odd∀i}.

PROOF Referring to Li and Tsai (2005).

In order to globally solve a GGP problem, f0(x) in PROPOSITION 3.4 should be approximately linearized. The most convenient approach to linearizing f0(x) is to take logarithms to reformulate f0(x) as the differences of some convex functions in (3.1) as proposed by Floudas’s method. Such an approach, however, requires that we add numerous new binary variables. For instance, to treat a constraint

10z=x1.5x21x32 ≤ where 1≤x1,x2,x3 ≤5. (3.12) Floudas’s method first denotes z1 =logx1 ,z2 =logx2 ,andz3 =logx3, then to reformulates

≤10

z as the following linear inequalities:

10−0.5z1z2 +2z3 ≤log ,

i i

i z x

x

L(log )≤ ≤log , i=1,2,3.

Since log are concave functions, linearizing xi L(logxi) with m break points requires the addition of 3(m−1) binary variables for piecewise linearization. Here we propose some converxification and concavification strategies to reduce the number of binary variables required to linearize L(logxi). Consider the following propositions:

PROPOSITION 3.5 A piecewise linearized function L(f(x)) of a concave function f(x) with m break points b1 <b2 <...<bm can be expressed as

(C1) bkM⋅Akxbk+1+M ⋅Ak, k =1,...,m−1,

(C2) f(bk)+sk(xbk)−M ⋅AkL(f(x))≤ f(bk)+sk(xbk)+M⋅Ak, k =1,...,m−1 where

(i)

k k

k k k

b b

b f b s f

= −

+ +

1

1) ( )

( ,

(ii) A are specified as the similar way in (2.7), k

(iii) M is a large enough positive value.

Obviously, only

log2(m1)

binary variables are required to create the piecewise linear function L(f(x)).

PROOF Referring to Tsai et al. (2002).

PROPOSITION 3.6 A twice-differentiable function f(x)=cx1α1x2α2...xnαn,xi ≥0∀i=1,...,n, is a convex function in one of the following conditions:

(C1) c≥0, iαi <0∀ ,

(C2) c<0, iα >0∀ ,

n α ≤1.

PROOF Referring to Tsai et al. (2002).

To simplify the expression, here we use a signomial term with three variables as instances to illustrate the convexification and concaveification techniques.

CONVEXIFICATION AND CONCAVIFICATION STRATEGIES 1

Consider a constraint z =x1α1x2α2x3α3 ≤constant with xi ≥ i0( =1 ,2 ,3) , α12 <0,

3 >0

α . This constraint can be converted into the following inequalities:

constantx1α1x2α2w3α3 ≤ , ) ( 31

3 1 3

wL x

x

where x1α1x2α2w3α3 ,x31 are convex (following (C1) of PROPOSITION 3.6, and L(x31) is a piecewise linear function by PROPOSITION 3.5.

Take the example in (3.12) as an introduction. The constraint z≤10 is converted into the following inequalities base on CONVEXIFICATION AND CONCAVIFICATION STRATEGIES 1:

10x10.5x21w32 ≤ , ) ( 31

3 1 3

wL x

x ,

where only

log2(m1)

binary variables are used instead of the 3(m−1) binary variables required by conventional methods.

CONVEXIFICATION AND CONCAVIFICATION STRATEGIES 2

A constraint z=−x1α1x2α2x3α3 ≤constant with xi ≥ i0( =1 ,2 ,3) , 0α123 < . This constraint can be converted into following inequalities:

constant

3 1 3 3 1 3 2 1

1

w w w ,

) ( 3

3 i i

i i

i w L x

x α ≤ ≤ α for i=1 ,2 ,3,

where w w w3 xi3αi

1 3 3 1 3 2 1

1 ,

− are convex (following (C2) of PROPOSITION 3.6), and L(xi3αi) is a piecewise linear function by PROPOSITION 3.5.

3.5 Numerical Examples

EXAMPLE 3.1 GGP with Linear Continuous Function

Consider following program with one continuous free-sign variable x and two discrete variables y1andy2:

PROGRAM 1

Min xy13y2 +xy1y22

s.t. (C1) 500xy12 + yy1 2 ≤− , (C2) −xy1+ y12y2 ≤500, (C3) −5≤x≤5,

(C4) y1∈{−1, 0, 1, 4,5,6,7.5,8,9,10},

(C5) y2∈{−27, −18, −9, −7 ,−4 ,−1, 1,3,4,5}.

Program 1 can not be solved by Floudas’s methods (1997, 1999, 2000) or Li and Tasi’s (2005) approach, since there are zero and negative values for continuous and discrete variables. Our solution proceeds as follows:

(i) Denote y1∈{−1 ,0 ,1 ,4,5,6,7.5,8,9,10}={d1,...,d10}. Since

log210

= , four binary 4

variables u1,u2,u3 ,andu4 are used to express y . Specifying 1 k as:

10k =1+u1 +2u2 +22u3 +23u4 ≤ . (3.13)

by . Specifying A1,k as

x are introduced to form following inequalities based on PROPOSITION 3.4:

⎪⎪

(iii) Other nonconvex terms are treated similarly as in (3.18) and (3.19). These terms are denoted as z2 =x1y1y22, z3 =x1y12, z4 = y1y2, z5 =x1y1, and z6 = y12y2.

The original problem is then converted into a mixed 0-1 linear program below, which contains 162 linear constraints and 8 binary variables.

PROGRAM 2 with the objective value 4851.

Here we use a signomial continuous function x13x2 to replace x in Program 1. The example is formulated below:

PROGRAM 3

Min (The same objective function in Program 1)

s.t. (C1) The same constraints in Program 1 but erase the constraint:−5≤ x≤5, (C2) x=x13x2, −5≤x1 ≤5, −5≤ x2 ≤5.

Compared with the solution process of Program 2, the extra work is to treat the equality constraint x= x13x2 as follows:

(i) Expressing free-sign variables x1andx2 by PROPOSITION 3.4 as inequalities below:

2 inequalities based on Proposition 5:

θ

θ x x M

M

x0− ′ ≤ ≤ 0+ ′ ,

)

(iii) Using Convexification and Concavification Strategies to convert the inequalities in (ii) as follows:

The whole program is reformulated as the following mixed 0-1 convex program:

PROGRAM 4

Min z1+z2

s.t. (C1) The same constraints in Program 2, (C2) Constraints in (3.20)-(3.23).

This is a mixed binary convex program which can be solved to reach finite ε -convergence to the global optimal solution as

)

EXAMPLE 3.3 Comparisons of Computational Efficiency for Signomial Function

This example is used to compare the computational efficiency between the proposed method and Floudas’s methods. Consider following GGP problem:

PROGRAM 5 For n=3 , the objective function of above problem becomes

3 method to have the following convex integer program:

PROGRAM 6

Resolving this problem with n=3 by the proposed method to have the following linear mixed binary program:

PROGRAM 7

Min z123z12z23z13

s.t. (C1) bz12 +z23+z13 ≤2b,

(C2) , 0, 1, , 0, 123

1 , 1

, , 1

,

, p p A p p i , ,

d

z m i j

j j i m

j

j i j i m

j

j i j i

i =

i

=

= ≥ =

=

=

=

α ,

(C3) z1d2α,2jMA2,jz12z1d2α,2j+MA2,jj, (C4) z2d3α,3jMA3,jz23z2d3α,3j+MA3,jj, (C5) z1d3α,3jMA3,jz13z1d3α,3j+MA3,jj, (C6) z12d3α,3jMA3,jz123z12d3α,3j+MA3,jj,

(C7) m u m i uik i,k

k ik

k- ⋅ ≤ ∀ ∈ ∀

=

} 1 , 0 { , )

2

( ,

log

1 ,

2 1

.

All M ′ come from (3.7). By specifying various values for x m and b, we solve both programs using LINGO (2004). The related CPU time, number of binary variables, and number of constraints are reported in Table 3.2.

Table 3.2 indicates that both methods reach the same ε global optimum for − ε =108. The number of binary variables used in Floudas’s method is larger than the proposed method, while the proposed method uses more constraints than Floudas’s method. The CPU time demonstrates that the proposed method is much more computationally efficient than Floudas’s methods.

Table 3.2 Experiment result of Example 3.3

Experiment Conditions Proposed method

Objective Value -5.389143

CPU Time 3sec 1min 44sec

Objective Value -7.452201

CPU Time 11sec 6min 28sec

Number of binary variables 12 48

Number of constraints 223 9

Objective Value -19.73737

CPU Time 2min 12sec 32min 45sec

Number of binary variables 15 96

Number of constraints 447 9

Objective Value -61.78579

*(α123)=(−2, 0.5, 1.2)

EXAMPLE 3.4 Comparison of Computational Efficiency for Discrete Variables with Large

Sizes

Consider following program with three discrete variables y1 ,y2 and y , where 3 y1 contains 8 possible values and y2 ,y3 both contain 128 possible values.

PROGRAM 8

Floudas's method ( or Li and Tsai's method) converts this program into following form:

Our proposed method (i.e., THEOREM 3.1 and PROPOSITION 3.3) transforms this program into following form:

PROGRAM 10

5

The number of binary variables, constraints, continuous variables, as well as the number of iterations and CPU time are listed in Table 3.3. Table 3.3 illustractes that both programs obtain the same global optimum with y1 =16.8 ,y2 =3.1 ,y3 =14, and objective value is 685.0155 as solved by LINGO (2004). However, the proposed method is more computational effecient than Floudas's method and Li&Tsai's method.

Table 3.3 Comparisons of existing methods with proposed method No. of binary

variables

No. of constraints

No. of continuous variables

No. of iterations

CPU time (second) Floudas's method and

Li&Tsai's method 264 13 3 53588 72

Proposed method 17 30 269 11139 3

Chapter 4 Extension 2-Solving Task Allocation

相關文件