Rewrite as second order cone constraint

578 Views Asked by At

Can someone please explain how to convert the following into a second order cone programming formulation:

$\{(x,y,z,w,u): x,y,z,w \geq 0, (xyzw)^{\frac{1}{2}} \geq ||u||_2^2\}$

$\{(x,y,z,w,u): x,y,z,w \geq 0, (\prod_{k=1}^p x_k)^{\frac{1}{p}} \geq ||u||_2^2\}$ when $p = 2^n$ and $p \neq 2^n$

1

There are 1 best solutions below

3
On BEST ANSWER

Assuming implicitly variables on the left-hand sides are nonnegative then $xy\geq u^2$ is a rotated (and rescaled) second order cone. Then

$$xy\geq s^2,\ zw\geq t^2,\ st\geq u^2$$

answers your first question, and so on. If the number of variables is not a power of 2 then take the next bigger power of 2 and fill some positions with the variable appearing on the right-hand side.

The older edition of the MOSEK Modeling Cookbook:

https://docs.mosek.com/MOSEKModelingCookbook-v2.pdf

has such things discussed in more detail Section 3.2.7, 3.2.11 and around.

I say older because the more recent MOSEK recommendation is to use the power cone or the exponential cone for geometric-mean modeling instead of rewriting with lots of second-order cones:

https://docs.mosek.com/modeling-cookbook/powo.html