Exponential transformation: Difference between revisions

From Cornell University Computational Optimization Open Textbook - Optimization Wiki
Jump to navigation Jump to search
No edit summary
(Cleaning up numerical example steps)
Line 3: Line 3:
== Introduction ==
== Introduction ==


Exponential transformations are simple algebraic transformations of monomial functions through a variable substitution with an exponential variable. In computational optimization, exponential transformations are used for convexification of geometric programming constraints in nonconvex optimization problems.
An '''exponential transformation''' is a simple algebraic transformation of a monomial function through variable substitution with an exponential variable. In computational optimization, exponential transformations are used for convexification of geometric programming constraints in nonconvex optimization problems.


Exponential transformation creates a convex function without changing the decision space of the problem. <ref name =":0"> D. Li and M. P. Biswal, [https://doi.org/10.1023/A:1021708412776 "Exponential Transformation in Convexifying a Noninferior Frontier and Exponential Generating Method]," ''Journal of Optimization Theory and Applications'', vol. 99, pp. 183–199, 1998.</ref> This is done through a simple substitution of continuous variables with a natural exponent and simplification of binary variables through removal of the exponent. The transformation is verified to be convex if the Hessian, denoted by <math>H(x)</math>, is proven to be positive-definite.
Exponential transformation creates a convex function without changing the decision space of the problem. <ref name =":0"> D. Li and M. P. Biswal, [https://doi.org/10.1023/A:1021708412776 "Exponential Transformation in Convexifying a Noninferior Frontier and Exponential Generating Method]," ''Journal of Optimization Theory and Applications'', vol. 99, pp. 183–199, 1998.</ref> This is done through a simple substitution of continuous variables with a natural exponent and simplification of binary variables through removal of the exponent. The transformation is verified to be convex if the Hessian, denoted by <math>H(x)</math>, is proven to be positive-definite.
Line 46: Line 46:
<math> f(u) = \sum_{k=1}^N c_k{{e}^{{{u_1}{a_{1k}}}+{{u_2}{a_{2k}}}....+{{u_n}{a_{nk}}}}} </math>
<math> f(u) = \sum_{k=1}^N c_k{{e}^{{{u_1}{a_{1k}}}+{{u_2}{a_{2k}}}....+{{u_n}{a_{nk}}}}} </math>


This simplification can be applied in any instance where the product of logarithms with the same base is present to simplify the transformed function.  
In order to prove the convexity of the final transformed function, the positive-definite test of the Hessian is used as defined in ''Optimization of Chemical Processes'' <ref> T. F. Edgar, D. M. Himmelblau, and L. S. Lasdon, ''Optimization of Chemical Processes'', McGraw-Hill, 2001.</ref>. The Hessian is defined as the following:
 
<math>  H(x) = H = \nabla^2f(x) =
\begin{bmatrix}
{\partial^2 f \over \partial {x_1^2}} & {\partial^2 f \over \partial x_1\partial x_2} \\
{\partial^2 f \over \partial x_2\partial x_1} & {\partial^2 f \over \partial {x_2^2}}
\end{bmatrix}
</math>
 
to test that
 
<math>  Q(x)\geq 0 </math> where <math>  Q(x) = x^THx </math> for all <math> x \neq 0</math>.


===Exponential Transformation in Computational Optimization===
===Exponential Transformation in Computational Optimization===
Line 57: Line 68:


== Numerical Example ==
== Numerical Example ==
To provide an example, we begin with a simple nonconvex problem:
<math> {\frac{x_1^3}{x_2^4}} + {x_1^2} + {\sqrt[3]{x_2^2}} \leq 4</math>
<math> {\frac{x_1^3}{x_2^4}} + {x_1^2} + {\sqrt[3]{x_2^2}} \leq 4</math>


Reformulating to exponents
'''Step 1:''' Convert the problem into standard form by reformulating radicals, fractions, etc. into exponents.


<math> {x_1^3}*{x_2^{-4}} + {x_1^2} + {x_2^{\frac{2}{3}}} \leq 4 </math>
<math> {x_1^3}*{x_2^{-4}} + {x_1^2} + {x_2^{\frac{2}{3}}} \leq 4 </math>


Substituting <math> x_1 = e^{u_1}, x_2 = e^{u_2} </math>
'''Step 2:''' Substitute all instances of <math>x_n</math> with <math>e^{u_n}</math>.


<math>{e^{{3}{u_1}}}*{e^{{-4}{u_2}}} + {e^{{2}{u_1}}} + {{e^{u_2}}^{\frac{2}{3}}} \leq 4 </math>
<math>{e^{{3}{u_1}}}*{e^{{-4}{u_2}}} + {e^{{2}{u_1}}} + {{e^{{\frac{2}{3}}u_2}}} \leq 4 </math>


Simplifying by exponent properties and combining the exponents with like bases as a sum:
'''Step 3:''' Simplify by applying exponent properties.


<math> {e^{3{u_1} - 4{u_2}}} + {e^{{2}{u_1}}} + {{e^{{\frac{2}{3}}{u_2}}}} \leq 4 </math>
<math> {e^{3{u_1} - 4{u_2}}} + {e^{{2}{u_1}}} + {{e^{{\frac{2}{3}}{u_2}}}} \leq 4 </math>


===Example of Convexification Application in MINLP ===


The following MINLP problem can take a convexification approach using exponential transformation:
===Example of Convexification in MINLP ===
 
The following MINLP problem can take a convexification approach using exponential transformation.


<math>\begin{align}
<math>\begin{align}
Line 84: Line 98:
\end{align} </math>  
\end{align} </math>  


Using the exponential transformation to continuous variables <math>x_1, x_2 </math> by substituting <math> x_1 = e^{u_1}</math> and <math> x_2 = e^{u_2} </math> described the problem becomes the following:
 
'''Step 1:''' Apply the exponential transformation to continuous variables <math>x_1</math> and <math>x_2</math> by substituting <math>x_1 = e^{u_1}</math> and <math>x_2 = e^{u_2} </math>.


<math>\begin{align}
<math>\begin{align}
Line 95: Line 110:
\end{align}</math>
\end{align}</math>


With additional simplification through properties of exponents and combining the products of exponential terms as the sum of exponents with the same base:
 
'''Step 2:''' Simplify using the properties of exponents. (i.e. Combining the products of exponential terms as the sum of exponents with the same base)


<math>\begin{align}
<math>\begin{align}
Line 107: Line 123:
Where <math> u_1 </math> is unbounded due to logarithmic of 0 being indefinite.
Where <math> u_1 </math> is unbounded due to logarithmic of 0 being indefinite.


Additionally simplifying further for binary variables by substituting <math> {y_1}^2 with {y_1} and {y_2}^2 with {y_2} </math> since <math> {y_2} </math> is either 0 or 1 and any exponents on the variable will not change the solution space:
 
'''Step 3:''' Simplify binary variables by substituting <math>{y_1}^2</math> with <math>{y_1}</math> and <math>{y_2}^2</math> with <math>{y_2} </math>.


<math>\begin{align}
<math>\begin{align}
Line 117: Line 134:
\end{align}</math>
\end{align}</math>


The transformed objective function can be shown to be convex through the positive-definite test of the Hessian. In order to prove the convexity of the transformed functions, the positive definite test of Hessian is used as defined in ''Optimization of Chemical Processes'' <ref> T. F. Edgar, D. M. Himmelblau, and L. S. Lasdon, ''Optimization of Chemical Processes'', McGraw-Hill, 2001.</ref>. This tests the Hessian defined as:
<math>  H(x) = H = \nabla^2f(x)</math>
to test that
<math>  Q(x)\geq 0 </math>
where
<math>  Q(x) = x^THx </math>
for all <math> x \neq 0 </math>
For the example above, the Hessian is as follows <ref> M. Chiang, [https://www.princeton.edu/~chiangm/gp.pdf "Geometric Programming for Communication Systems]," 2005. </ref>:


<math>  
'''Convexity Check:''' For the example above, the Hessian is as follows: <ref> M. Chiang, [https://www.princeton.edu/~chiangm/gp.pdf "Geometric Programming for Communication Systems]," 2005. </ref>
\begin{bmatrix}
{\partial^2 f \over \partial {x_1^2}} & {\partial^2 f \over \partial x_1\partial x_2} \\
{\partial^2 f \over \partial x_2\partial x_1} & {\partial^2 f \over \partial {x_2^2}}
\end{bmatrix}
</math>


<math>\begin{align}
<math>\begin{align}
Line 144: Line 141:
{\partial Z(u) \over \partial u_2} & = 40{e^{2{u_1}}}{e^{8{u_2}}} + 4{e^{u_1}}{e^{2u_2}} + 3{e^{{3}{u_2}}}  & \quad{\partial^2 Z(u) \over \partial u_2^2} = 320{e^{2{u_1}}}{e^{8{u_2}}} + 8{e^{u_1}}{e^{2u_2}} + 9{e^{{3}{u_2}}} \\
{\partial Z(u) \over \partial u_2} & = 40{e^{2{u_1}}}{e^{8{u_2}}} + 4{e^{u_1}}{e^{2u_2}} + 3{e^{{3}{u_2}}}  & \quad{\partial^2 Z(u) \over \partial u_2^2} = 320{e^{2{u_1}}}{e^{8{u_2}}} + 8{e^{u_1}}{e^{2u_2}} + 9{e^{{3}{u_2}}} \\
\end{align}</math>
\end{align}</math>
In the example above, the Hessian is defined as:
<math>
\begin{bmatrix}
X & X \\
X & Y
\end{bmatrix}
</math>


Therefore, H(x) is positive-definite and strictly convex.  
Therefore, H(x) is positive-definite and strictly convex.  

Revision as of 23:11, 14 December 2021

Author: Daphne Duvivier, Daniela Gil, Jacqueline Jackson, Sinclaire Mills, Vanessa Nobre (SYSEN 5800, Fall 2021)

Introduction

An exponential transformation is a simple algebraic transformation of a monomial function through variable substitution with an exponential variable. In computational optimization, exponential transformations are used for convexification of geometric programming constraints in nonconvex optimization problems.

Exponential transformation creates a convex function without changing the decision space of the problem. [1] This is done through a simple substitution of continuous variables with a natural exponent and simplification of binary variables through removal of the exponent. The transformation is verified to be convex if the Hessian, denoted by , is proven to be positive-definite.

By using exponential transformations, not only is the overall time to solve a Nonlinear Programming (NLP) or a Mixed Integer Nonlinear Programming (MINLP) problem reduced, but we can also simplify the solution space enough to utilize conventional NLP/MINLP solvers. Various real world optimization problems apply this transformation to simplify the solution space consisting of extensive quantities of constraints and variables.

Theory, Methodology, and Algorithmic Discussions

Theory

Exponential transformations are most commonly applied to geometric programs. A geometric program is a mathematical optimization problem where the objective function is a posynomial being minimized. Posynomial functions are defined as positive polynomials. [2]

The standard form of a geometric program is represented by:

Where is a posynomial function, is a posynomial function and is a monomial function.

To verify a geometric program is represented in its standard form, the following conditions must be true:

  1. Objective function is a posynomial.
  2. Inequality constraints must be posynomials less than or equal to 1.
  3. Equality constraints must be monomials equal to 1.

In this definition, monomials differ from the usual algebraic definition where the exponents must be nonnegative integers. For this application, exponents can be any positive number inclusive of fractions and negative exponents. [2]

Methodology

Exponential transformation begins with a posynomial noncovex function as depicted below. [2] A posynomial begins with where  are real non-negative variables.

Where and

A transformation is applied in which is replaced with the natural logarithm base exponential . [3] The transformed function after substitution is presented as:

Properties of the exponent can be used to further simplify the transformation above, resulting in the sum of the exponents with a natural logarithm base.

In order to prove the convexity of the final transformed function, the positive-definite test of the Hessian is used as defined in Optimization of Chemical Processes [4]. The Hessian is defined as the following:

to test that

where for all .

Exponential Transformation in Computational Optimization

Exponential transformation can be used for convexification of any MINLP that meets the criteria for a geometric program. Using the exponential substitution detailed above, all continuous variables in the function are transformed while binary variables are not transformed. This transformation can also be applied to constraints to ensure convexification throughout the entire problem.

In a special case, binary exponential transformation can also be applied where binary variables are linearized. Binary exponential transformation can be done by using the following replacement: is substituted by .

Additionally, all points on the transformed function are feasible in the original function, and all objective values in the transformed function are the same or less than the original function. [5] This creates a convex under estimator approach to the problem. Note that the bounds of the problem are not altered through exponential transformation. [1]

Numerical Example

To provide an example, we begin with a simple nonconvex problem:

Step 1: Convert the problem into standard form by reformulating radicals, fractions, etc. into exponents.

Step 2: Substitute all instances of with .

Step 3: Simplify by applying exponent properties.


Example of Convexification in MINLP

The following MINLP problem can take a convexification approach using exponential transformation.


Step 1: Apply the exponential transformation to continuous variables and by substituting and .


Step 2: Simplify using the properties of exponents. (i.e. Combining the products of exponential terms as the sum of exponents with the same base)

Where is unbounded due to logarithmic of 0 being indefinite.


Step 3: Simplify binary variables by substituting with and with .


Convexity Check: For the example above, the Hessian is as follows: [6]

Therefore, H(x) is positive-definite and strictly convex.

Applications

Currently, various applications of exponential transformation can be seen in published journal articles and industry practices. Many of these applications use exponential transformation to convexify their problem space. Due to the closeness with logarithmic transformation, usually a combination of the approaches is used in practical solutions.

Mechanical Engineering Applications

In the paper “Global optimization of heat exchanger network synthesis problems with and without the isothermal mixing assumption” a global optimization approach is explored for the synthesis of heat exchanger networks. As seen in eq(34) and (35) of the work by Björk and Westerlund, they employ an exponential transformation to convexify their optimization problem to employ a global optimization approach. [7]

Electrical Engineering Application:

Applications for VLSI circuit performance optimization. In this application a special geometric program defined as unary geometric programs is presented. The unary geometric program is a posynomial as defined in the Theory & Methodology section. The unary geometric program is derived through a greedy algorithm which implements a logarithmic transformation within lemma 5. [8] While this is not a specific exponential transformation example logarithmic transformations are within the same family and can also be used to convexify geometric programs.

Machining Economics:

Applications in economics can be seen through geometric programming approaches. Examples and applications include to analyze the life of cutting tools in machining. In this approach they use exponential transformations to convexify the problem. [9]

Overall exponential transformations can be applied anywhere a geometric programming approach is taken to optimize the solution space. Some Applications may perform a logarithmic transformation instead of an exponential transformation.

Conclusion

Exponential transformation is a useful method to convexify geometric MINLP and obtain a global solution to the problem. Exponential transformation does not alter the bounds of the problem and allows for a convex objective function and constraints given that the prerequisite conditions described are satisfied. Geometric programming transformation can be further explored through logarithmic transformation to address convexification.

References

  1. 1.0 1.1 D. Li and M. P. Biswal, "Exponential Transformation in Convexifying a Noninferior Frontier and Exponential Generating Method," Journal of Optimization Theory and Applications, vol. 99, pp. 183–199, 1998.
  2. 2.0 2.1 2.2 S. Boyd, S. J. Kim, and L. Vandenberghe et al., "A tutorial on geometric programming," Optimization and Engineering, vol. 8, article 67, 2007.
  3. I. E. Grossmann, "Review of Nonlinear Mixed-Integer and Disjunctive Programming Techniques," Optimization and Engineering, vol. 3, pp. 227–252, 2002.
  4. T. F. Edgar, D. M. Himmelblau, and L. S. Lasdon, Optimization of Chemical Processes, McGraw-Hill, 2001.
  5. P. Shen and K. Zhang, "Global optimization of signomial geometric programming using linear relaxation," Applied Mathematics and Computation, vol. 150, issue 1, pp. 99-114, 2004.
  6. M. Chiang, "Geometric Programming for Communication Systems," 2005.
  7. K. J. Björk and T. Westerlund, "Global optimization of heat exchanger network synthesis problems with and without the isothermal mixing assumption," Computers & Chemical Engineering, vol. 26, issue 11, pp. 1581-1593, 2002.
  8. http://home.eng.iastate.edu/~cnchu/pubs/j08.pdf
  9. https://link.springer.com/content/pdf/10.1007/BF02591746.pdf