Exponential transformation: Difference between revisions

From Cornell University Computational Optimization Open Textbook - Optimization Wiki
Jump to navigation Jump to search
(Cleaning up numerical example steps)
(Finished Hessian!)
Line 71: Line 71:


<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>


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


<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 in MINLP ===
===Example of Convexification in MINLP ===
Line 109: Line 109:
& \quad y_1 \isin \left \{ 0,1 \right \} \quad y_2 \isin \left \{ 0,1 \right \}
& \quad y_1 \isin \left \{ 0,1 \right \} \quad y_2 \isin \left \{ 0,1 \right \}
\end{align}</math>
\end{align}</math>


'''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)
'''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)
Line 122: Line 121:


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.


'''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>.
'''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>.
Line 134: Line 132:
\end{align}</math>
\end{align}</math>


==== Convexity Check ====
For the example above, the Hessian of the transformed matrix is as follows: <ref> M. Chiang, [https://www.princeton.edu/~chiangm/gp.pdf "Geometric Programming for Communication Systems]," 2005. </ref>


'''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>
<math>\begin{bmatrix}
{\partial^2 Z(u) \over \partial u_1^2}  &  {\partial^2 Z(u) \over \partial u_1\partial u_2} \\
{\partial^2 Z(u) \over \partial u_2\partial u_1}  & {\partial^2 Z(u) \over \partial u_2^2} \\
\end{bmatrix}</math>
 
 
'''Step 1:''' Solve for each partial derivative.


<math>\begin{align}
<math>\begin{align}
{\partial Z(u) \over \partial u_1} & = 10{e^{2{u_1}}}{e^{8{u_2}}} + 2{e^{u_1}}{e^{2u_2}} & \quad{\partial^2 Z(u) \over \partial u_1^2} = 20{e^{2{u_1}}}{e^{8{u_2}}} + 2{e^{u_1}}{e^{2u_2}} \\
{\partial Z(u) \over \partial u_1} = 10{e^{2{u_1}}}{e^{8{u_2}}} + 2{e^{u_1}}{e^{2u_2}} \qquad & {\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^{3u_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}}} \\
{\partial^2 Z(u) \over \partial u_1^2} = 20{e^{2{u_1}}}{e^{8{u_2}}} + 2{e^{u_1}}{e^{2u_2}} \qquad & {\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^{3u_2}} \\
{\partial^2 Z(u) \over \partial u_1\partial u_2} = 80{e^{2{u_1}}}{e^{8{u_2}}} + 4{e^{u_1}}{e^{2u_2}} \qquad & {\partial^2 Z(u) \over \partial u_2\partial u_1} = 80{e^{2{u_1}}}{e^{8{u_2}}} + 4{e^{u_1}}{e^{2u_2}}
\end{align}</math>
\end{align}</math>


Therefore, H(x) is positive-definite and strictly convex.  
 
'''Step 2:''' Construct Hessian matrix, <math>H(x)</math>, from second derivatives.
 
<math>H(x) =
\begin{bmatrix}
20{e^{2{u_1}}}{e^{8{u_2}}} + 2{e^{u_1}}{e^{2u_2}} \qquad & 80{e^{2{u_1}}}{e^{8{u_2}}} + 4{e^{u_1}}{e^{2u_2}} \\
80{e^{2{u_1}}}{e^{8{u_2}}} + 4{e^{u_1}}{e^{2u_2}} \qquad & 320{e^{2{u_1}}}{e^{8{u_2}}} + 8{e^{u_1}}{e^{2u_2}} + 9{e^{3u_2}}
\end{bmatrix}</math>
 
Because the second derivatives consist only of exponential equations and the exponential expression <math>e^x</math> is convex everywhere, the H(x) is proven to be positive-definite and strictly convex.  


==Applications==
==Applications==

Revision as of 22:46, 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 of the transformed matrix is as follows: [6]


Step 1: Solve for each partial derivative.


Step 2: Construct Hessian matrix, , from second derivatives.

Because the second derivatives consist only of exponential equations and the exponential expression is convex everywhere, the H(x) is proven to be 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