HOME

TheInfoList



OR:

A geometric program (GP) is an
optimization Mathematical optimization (alternatively spelled ''optimisation'') or mathematical programming is the selection of a best element, with regard to some criterion, from some set of available alternatives. It is generally divided into two subfi ...
problem of the form : \begin \mbox & f_0(x) \\ \mbox & f_i(x) \leq 1, \quad i=1, \ldots, m\\ & g_i(x) = 1, \quad i=1, \ldots, p, \end where f_0,\dots,f_m are
posynomials A posynomial, also known as a posinomial in some literature, is a function of the form : f(x_1, x_2, \dots, x_n) = \sum_^K c_k x_1^ \cdots x_n^ where all the coordinates x_i and coefficients c_k are positive real numbers, and the exponents a_ are ...
and g_1,\dots,g_p are monomials. In the context of geometric programming (unlike standard mathematics), a monomial is a function from \mathbb_^n to \mathbb defined as :x \mapsto c x_1^ x_2^ \cdots x_n^ where c > 0 \ and a_i \in \mathbb . A posynomial is any sum of monomials.S. Boyd, S. J. Kim, L. Vandenberghe, and A. Hassibi.
A Tutorial on Geometric Programming
'' Retrieved 20 October 2019.
Geometric programming is closely related to
convex optimization Convex optimization is a subfield of mathematical optimization that studies the problem of minimizing convex functions over convex sets (or, equivalently, maximizing concave functions over convex sets). Many classes of convex optimization pr ...
: any GP can be made convex by means of a change of variables. GPs have numerous applications, including component sizing in IC design, aircraft design,
maximum likelihood estimation In statistics, maximum likelihood estimation (MLE) is a method of estimating the parameters of an assumed probability distribution, given some observed data. This is achieved by maximizing a likelihood function so that, under the assumed stati ...
for
logistic regression In statistics, the logistic model (or logit model) is a statistical model that models the probability of an event taking place by having the log-odds for the event be a linear combination of one or more independent variables. In regression an ...
in
statistics Statistics (from German: '' Statistik'', "description of a state, a country") is the discipline that concerns the collection, organization, analysis, interpretation, and presentation of data. In applying statistics to a scientific, indust ...
, and parameter tuning of positive linear systems in
control theory Control theory is a field of mathematics that deals with the control system, control of dynamical systems in engineered processes and machines. The objective is to develop a model or algorithm governing the application of system inputs to drive ...
.


Convex form

Geometric programs are not in general convex optimization problems, but they can be transformed to convex problems by a change of variables and a transformation of the objective and constraint functions. In particular, after performing the change of variables y_i = \log(x_i) and taking the log of the objective and constraint functions, the functions f_i, i.e., the posynomials, are transformed into log-sum-exp functions, which are convex, and the functions g_i, i.e., the monomials, become affine. Hence, this transformation transforms every GP into an equivalent convex program. In fact, this log-log transformation can be used to convert a larger class of problems, known as log-log convex programming (LLCP), into an equivalent convex form.A. Agrawal, S. Diamond, and S. Boyd.
Disciplined Geometric Programming.
' Retrieved 8 January 2019.


Software

Several software packages exist to assist with formulating and solving geometric programs.
MOSEK
is a commercial solver capable of solving geometric programs as well as other non-linear optimization problems.
CVXOPT
is an open-source solver for convex optimization problems.
GPkit
is a Python package for cleanly defining and manipulating geometric programming models. There are a number of example GP models written with this packag
here

GGPLAB
is a MATLAB toolbox for specifying and solving geometric programs (GPs) and generalized geometric programs (GGPs).

is a Python-embedded modeling language for specifying and solving convex optimization problems, including GPs, GGPs, and LLCPs.


See also

*
Signomial A signomial is an algebraic function of one or more independent variables. It is perhaps most easily thought of as an algebraic extension of multivariable polynomials—an extension that permits exponents to be arbitrary real numbers (rather than j ...
* Clarence Zener


References

{{reflist Convex optimization