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
:
where
are
posynomials and
are monomials. In the context of geometric programming (unlike standard mathematics), a monomial is a function from
to
defined as
:
where
and
. 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 prob ...
: 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 function (calculus), linear combination of one or more independent var ...
in
statistics, and parameter tuning of positive
linear systems
In systems theory, a linear system is a mathematical model of a system based on the use of a linear operator.
Linear systems typically exhibit features and properties that are much simpler than the nonlinear case.
As a mathematical abstraction o ...
in
control theory
Control theory is a field of mathematics that deals with the 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 the system to a ...
.
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
and taking the log of the objective and constraint functions, the functions
, i.e., the posynomials, are transformed into
log-sum-exp functions, which are convex, and the functions
, 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.
MOSEKis a commercial solver capable of solving geometric programs as well as other non-linear optimization problems.
CVXOPTis an open-source solver for convex optimization problems.
GPkitis a Python package for cleanly defining and manipulating geometric programming models. There are a number of example GP models written with this packag
hereGGPLABis 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
*
Clarence Zener
Clarence Melvin Zener (December 1, 1905 – July 2, 1993) was the American physicist who first (1934) described the property concerning the breakdown of electrical insulators. These findings were later exploited by Bell Labs in the development of ...
References
{{reflist
Convex optimization