Convex optimization

Uncategorized
Dec 16, 2017
M

Dear readers,
I want to minimize a problem defined as follows:

cvx_begin quiet
cvx_solver mosek
variable x(H*Max_nom,1)

minimize (sum(a linear part) + sum(max(0,pow_p((x.*ax_k) -landa_max_k,3)./(sqrt(pow_p((x.*ax_k)-landa_max_k,2)+pow_p(rho,2))))) )

 cvx_end

ax_k and landa_max_k are vectors with the same size of x, and rho is scalar. I have some errors in using “./” and “sqrt”. Further, I can’t use norm(.) because I need to compute each entry and then take “sum(.)” over them. How can I solve this problem?

Kind regards,

M

Have you proven that your objective function is convex? If so, how?

M
Replying to #2

Yes, please kindly note that the applied penalty function is max(0,x^3/sqrt(x^2+a^2)).

M
Replying to #3

You don’t seem to have a constructive convexity proof employing the DCP convexity composition rules.

M
Replying to #4

But my problem is composed of two terms. A linear part plus a convex part. It seems to make a convex problem. Am I wrong?

M
Replying to #5

You need to be able to construct the convex portion using CVX’s DCP rules. CVX can not handle all convex optimization problems.

M
Replying to #6

Thank you Prof. Stone. Do you have any idea to change the problem’s structure or use another optimization toolbox?

M
Replying to #7

I am not a Prof. In any event, I don’t know how to structure your problem so that CVX will accept it. That doesn’t mean no one else does (presuming it really is convex). Of course, changing your objective function to something else which is convex, but can be entered into CVX, is within your purview, because the readers of this forum don’t understand what (real-world) problem you are trying to solve, nor is that within scope of this forum.

M
Replying to #8

My apology. Thank you so much Dr. Stone.
Best regards,

E
Replying to #9

Do you have nicely formatted version of your problem that you can show us. For instance typed up in LaTex.

M
Replying to #10

Yes, I have.

min_{x} P^\top\cdot x + \eta \sum_{x} \max{0, \frac{{\big((x\cdot ax_k)-\lambda^{max}{k}}\big)^3}{\sqrt{{\big((x\cdot ax_k)-\lambda^{max}{k}\big)^2}+\rho^2}} }

where, P, x, ax_k, \lambda^{max}_{k} \in \mathbb R^{M} are vectors and \eta , \rho are scalars.

M

M
Replying to #12

I would say that your best bet is a polynomial approximation. I don’t think CVX is going to be able to handle this natively (nor any of the solvers it employs).

M
Replying to #13

Thank you, Dr. Grant.