Geometric Programming

Geometric programming (GP) is an optimization model where the variables are non-negative, and the objective and constraints are sums of powers of those variables, with non-negative weights.

Although GPs are not convex, we can transform them, via a change of variables, into convex problems. In its convex form, GP can be seen as a natural extension of LP.

GP arise naturally in the context of geometric design, or with models of processes that are well approximated with power laws. They also arise (via their convex representation) when trying to fit discrete probabilities models in the context of classification.