Volume 2, Number 4
OPERATIONS RESEARCH LETTERS
November 1983
YET ANOTHER GEOMETRIC PROGRAMMING DUAL A L G O R I T H M Dennis L. BRICKER and Jayant RAJGOPAL gystent~ Engineering Division, University of Iowa, Iowa City, IA 52242, USA Received January 1983 Revised August 1983
We describe an algorithm for the geometric programming dual problem which uses an adaptation of the generalized LP algorithm, proposed by Dantzig et al. twenty-five years ago for the chemical equilibrium problem, and show that slack primal constraints pose no numerical difficulties for this algorithm as they do for previous dual-based algorithms. Geometric programming, duality, generalized LP, chemical equilibrium p
Introduction
df{1,2,...,n},
and
d = U [k] k-G
The geometric programming dual problem has the very attractive property of being linearly constrained, a property not generally shared by the primal problem. However, several difficulties associated with dual-based optimization algorithms have caused many researchers to conclude that direct solution of the primal is generally more efficient. The algorithm described below avoids many of the difficulties of other dual-based algorithms.
[k]N[l] ffi {} for k , l, and we assume that cj > 0 for all j. Each function gk is a generalized polynomial in that the exponents a~j need not be positive integers but may be any real numbers, and a posynomial because each coefficient cj is positive. The geometric programming dual problem is ~o p
maximize subject to
v ( ~,, 8) = I ' l (cj/gj) aj ]-I ~* JGJ
~
k-I
8j ffi ~'k, k ffi 0, 1,...,p,
(3)
The primal-dual pair
5". a, gj - 0,
i = 1,...,m,
jEj
j = 1,...,n,
The t~synomial) geometric programming primal problem is to
minimize subject to
8o(X) gk(x) ~<1, x~>0,
k = 1,...,p,
(1)
i-1,...,m,
where m
s,(
)ffi 5". je[k]
(2) i-1
~o ffi 1,
~'k >~ 0,
k - 1 ,...,p,
which, unlike the primal, is linearly constrained. As an alternative to maximizing v(~,, 6), one may maximize its logarithm (since the log function is strictly increasing). That is,,the maximum of v(X, 8) and log v(~,, 8) are attained at the same point. The latter function, given by logv(~,, 8 ) = E (gj log c.j- 8j loggy)
The index set J numbers the n terms in the ( p + 1) posynomials, the index subset [k] numbers the terms in posynomial k, 0167-6377/83/$3.00 © 1983, Elsevier Science Publishers B.V. (North-Holland)
jGJ P
+ ~ ~'k log ~,~
(4)
k-1 177
Volume 2, Number 4
OPERATIONS RESEARCH LETTERS
has the notable property of being separable. Moreover, log v(X, 8) is a concave function of ~, and over the dual feasible region [4]. The relationship between optimal dual and primal solutions, namely tM
B.igl,(x)fXkciI'Ix':, forj~[k],
kfO,...,p,
i.=l
(5) can in most cases be used to recover the primal optimal solution when a dual-based algorithm is used. (This requires solution of a system of equations linear in the logarithms of the primal variables: m
E o,j mos(x,)=
[o],
i--! m
E a,jlog(x,)flog(gJcj), j~[k],
(6)
i-I
k = 1,...,p if ~,k ~ 0 . ) If a primal constraint k is slack at the optimum, all the optimal dual variables ~'k and 8j ( j ¢[k]) associated with this constraint are zero. This causes difficulty for most dual-based search algorithms, because the objective terms kk log ~,k and 8j log 8j, while defined to be zero for zero arguments, are not differentiable at zero, and moreover their evaluation near zero poses numerical difficulties. Dual-based search algorithms typically include procedures for special handling of slack primal constraints, e.g. placing a lower positive bound on all dual variables, using a quadratic approximation of the problematic objective terms in the vicinity of zero and forcing all variables of the block [k] simultaneously to zero when 'sufficiently small'. This requires a rather arbitrary definition of 'sufficiently small' which could lead to a nonoptimal solution. The algorithm described below overcomes this difficulty. No effort is made to identify explicitly nor to give special treatment to slack primal constraints, and the need to evaluate the dual objective and its derivatives near zero is generally avoided. The GP dual as generalized LP The similarity of the geometric programming dual problem and the classical chemical equi178
November 1983
librium problem, in which the free (potential) energy of a complex mixture is minimized has been often noted (e.g. [4, Appendix C]). Dantzig, Johnson and White ([2], see also [1]) have shown that the chemical equilibrium problem may be restated as what has come to be called a 'generalized linear programming' problem, a problem which is linear in a set of variables but whose coefficients in the objective and constraint functions are not fixed but are to be selected from a specified set. They then demonstrated how grid linearization may be applied to such generafized linear programming problems (and the chemical equilibrium problem in particular) to transform them into ordinary linear programming problems (with infinitely many columns). The generalized LP approach to the chemical equilibrium problem was described over 25 years ago, and while there seems to be a widespread belief that Dantzig's approach has been applied to the GP dual problem (e.g. [5,6]), there does not appear in the literature any evidence that this is in'r fact the case. The GP dual problem may be stated as a gener- ~ alized linear program, linear in X: p
E o,,(p)x,
maximize
k-O
subject to
Xo= 1, P
E Ak,(P)?~k--O, i = 1,...,m, (7) k-O
~
Pill,
kffiO,...,p,
je[k]
pj>~O, jffil,...,n, Xk~O, k--O,...,p, where
o,,(p)=
je[kl
{ pj log cj - pj log pj }
and
Z =,:j. jeik]
To emphasize the linearity, we may rewrite the dual as maximize
~ Yk~,k k-O
Volume 2, Number 4
subject to
OPERATIONS RESEARCH LETTERS
~o----1 P
(8)
ak,~, k ffi 0, i ffi l , . . . , m , k-O
~,k >~O, kffiO,...,p, and (~k, a k t , . . . , a k m ) , i.e. the columns of coefficients, are to be selected from the convex set Sk, defined by
November 1983
The equivalent ordinary LP The strategy suggested by Dantzig for problems such as (8) (in particular, the chemical equilibrium problem) is an inner-linearization of the convex sets $~, k ffi 0, 1,... ,p. That is, $k may be defined as the convex hull of its (infinitely many) extreme points. This allows us to rewrite the dual problem as
Sk ffi {(7, a)" V = Gk(P), a, ffi Ak,(p
),
p
maximize 'y E R I a ~ R m, for some p
Y'. Y'. -~/tk,X k k-O IGAt
such that
P
subject to
Y'. pjffi
(9)
~
~
,i~dtkl~ t --0,
i-- 1,...,n,
k - 0 IGAI,
~,o ffi 1,
je[k]
/~: ffi 1, k ffi O,...,p,
The relationship between the dual variables of (3) and (7) is
leA~,
?tk,pk:>~O, k - O , . . . , p , l e A k,
(10)
02)
or, if Ak > 0, Pi --"8j/A4. The relationships between the optimal primal and newly defined dual variables is of special interest:
where A k is the index set of the extreme points ('Yk, a~) of S4. By defining the variables u~:ffi p~lXk, the dual problem may be transformed into an ordinary LP (with infinitely many columns):
8jffi#jX k f o r j ~ [ k ] , k - O , . . . , p ,
pj=
c/lT.,xT', gk(x)
,
kfO,...,p,
(11)
p
maximize k-O IGA,
even when constraint k is slack, i.e. gk(x)< 1 and ~k ffi O. (When As > O, this is equivalent to (5) by virtue of (10).) While the optimal value of Bff~,k specifies the fraction of posynomial k attributable to term j when the constraint is tight, the optimal value of p/ provides us with this ratio regardless of the status of the constraint. Further consideration of the generalized LP form of the GP dual shows that the numerical difficulties associated with the term 6j log 8j for slack constraints is avoided, for pj is strictly positive at the optimum, and is near zero only when the corresponding term makes no significant contribution to its posynomial. Therefore, numerical difficulties seldom result from the term p1 log p~. Rather than zeroing an entire block of variables when constraint k is slack, only the single variable 4, appearing linearly, is zeroed while pj ( j ~ [k ]) remains positive.
P
subject to
~ t~iU,lffiO, i - - l , ' " , m, k-O leAk IGAo
ukl~ 0,
k ffi O,...,p.
03) A column generation scheme can be implemented
very easily to solve this LP, since a closed form solution exists to the problem of selecting a col. umn with maximum relative profit. Thishas been implemented, and the computational experience to date has confirmed our expectations that the numerical difficulties experienced by other dualbased algorithms are avoided. A report of our computational experience when the algorithm is applied to a set of standard test problems is forthcoming. 179
Volume 2, Number 4
OPERATIONS RESEARCH LETTERS
References [1] G. Dantzig, Linear Programming and Extensions, Princeton University Press, Princeton, N J, 1963. [2] G. Dantzig, S. Johnson and W. White, "A linear programrain8 approach to the chemical equilibrium problem", Management Science 5, 38-43 (1958). [31 R.S. Dembo, "Dual to primal conversion in geometric
180
November 1983
programming", in: M. Avriel, ed., .~¢dvances in Geometric Programming, Plenum Press, NY, 1980. [4] R.J. Duffin, E.L. Peterson and C. Zener, Geometric Programming: Theory and Applications, Wiley, NY, 1967. [5] J.D. Murchland, "The dual in geometric programming", Operational Research Quarterly 25, 183f (1974). [6] A.B. Templeman, "On the solution of geometric programs via separable programming", Operational Research Quarterly 25, 184f (1974).