How to express limitation 1/(x^4+x^2) <= y, x>0 in CVX?

I need to express in CVX the limitation 1/(x^4+x^2) ≤ f(y), x > 0, where function 1/(x^4+x^2), x>0 is convex with respect to x and f(y) is affine. I have tried the pow_pos and inv_pos, but it seemed that they are failed. Is there any possible way? Thank you!

1 Like

The LHS is convex for all x , not just x > 0.

So if no one has a CVX formulation, perhaps this is another candidate for @Erling 's challenge.

https://twitter.com/J_P_Vielma/status/1014513695605608448

1 Like

Ok, I see that. Thank you for your reply, and I’ll try some other ways to transform or avoid it.

Plenty of ways to break this down to conic atoms. First of, notice that

t \geq 1/(x^4+x^2) \Longleftrightarrow t(x^4+x^2) \geq 1.

Then the breakdown depends on how you see the nonlinear factor. I would personally go for the last one in this list.

When seen as x^4+x^2:

t(r+s) \geq 1\quad\quad (rotated quadratic cone)
r w^3 \geq x^4, w = 1\quad (power cone)
s \geq x^2\quad\quad\quad\quad\quad (quadratic cone)

When seen as x^2(x^2+1):
tr(r+1) \geq 1\quad\quad (geometric mean cone)
r \geq x^2\quad\quad\quad\quad\quad (quadratic cone)

When seen as (x^2)^2+x^2:

t(r+s) \geq 1\quad\quad (rotated quadratic cone)
r \geq s^2\quad\quad\quad\quad\quad (quadratic cone)
s \geq x^2\quad\quad\quad\quad\quad (quadratic cone)

EDIT: Way too careless… Didn’t even check that the introduced variables r and s can’t just be taken to infinity by the solver, rendering all the conic representations above useless. Yup, this might be a challenge…

2 Likes

So the inequality is not far from Example 7.3 of https://docs.mosek.com/modeling-cookbook/practical.html#composite-functions.

To reformulate
t \geq 1 / (x^4 + x^2),

we may try to replace the 4th-order denominator by a 4th-order substitute, namely
t \geq 1 / r^4,\quad r^4 \leq x^4 + x^2,

and equalize powers:
t \geq 1 / r^4,\quad r^4 \leq x^4 + s^4,\quad s^2 \leq x.

These constraints can now be represented, in order, using a power cone, a 4-order norm cone, and a rotated quadratic cone.

EDIT: This attempt is also flawed as @Mark_L_Stone points out.

1 Like

I don’t see how to handle
r^4 <= x^4 + s^4

That would be
r <= norm([x;s],4)
which is going in the wrong direction to be convex. CVX handles p-norms “automatically”, but of course they must be used in a convex manner.

Am i misunderstanding what to do with the 4-norm, or is your formulation erroneous?

Yeah you are right, my attempts failed and I am out of ideas. I’ll take note of it as usual. Out of curiosity, may I ask what the application is @lk10420?

Perhaps 1/(x^4+x^2) is the simplest (in some sense) example satisfying @Erling’s challenge criterion for which a suitable conic formulation has not yet been identified? That should put it at the top of the leaderboard.

Unlike Express 1/(a^2+x^2) in cvx 1/(x^4+x^2) is convex over its entire domain, so does not get demerit points for not being convex over its (natural) domain. Its only “non-niceness” is being singular in the middle of its domain, at x = 0.

1 Like

I am sorry that I didn’t check my emails recently, by the way, thank you for your reply, I have learned a lot! Thank you!
The cause is that I want to solve a non-convex constraint with term (√(1/v^4+1/a^2)-1/a^2)^1/2 in my problem which is complex and hard to be solved by using the KKT conditions even when the problem is changed into convex, then I introduce a slack variable λ>0 and it needs to satisfy
λ>= (√(1/v^4+1/a^2)-1/a^2)^1/2 to keep equivalent. I transform it into
λ^4+λ^2/a^2 >= 1/v^4 , to make it convex I further change the constraint to be convex and have that 1/(λ^4+λ^2/a^2)<=v^4.
where a>0 is a constant and 0<v<b is a variable