Geometric programming

A geometric program (GP) is an optimization problem of the form where

In the context of geometric programming (unlike standard mathematics), a monomial is a function from

A posynomial is any sum of monomials.

[1][2] Geometric programming is closely related to convex optimization: any GP can be made convex by means of a change of variables.

[2] GPs have numerous applications, including component sizing in IC design,[3][4] aircraft design,[5] maximum likelihood estimation for logistic regression in statistics, and parameter tuning of positive linear systems in control theory.

[6] 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

Hence, this transformation transforms every GP into an equivalent convex program.

[2] 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.

[7] Several software packages exist to assist with formulating and solving geometric programs.