Can this function be solved in CVX?


#1

My objective function is \left\| x \right\|^3 + f(y), where x=[x_1; x_2], f(y) is a convex function.
I know \left\| x \right\|^3 is convex, but how can I write \left\| x \right\|^3 in CVX ?


(Mark L. Stone) #2

square_pos(norm(x))


#3

I didn’t get your point. As I know, square_pos(norm(x)) expresses \|x\|^2, however, my objective function is \|x\|^3.


(Mark L. Stone) #4

Sorry, I misread the function.

You will benefit from reading http://cvxr.com/cvx/doc/funcref.html#new-functions .

help pow_pos

pow_pos Power of positive part.
pow_pos(X,P) = POS(X).^P = MAX(X,0).^P.
Both P and X must be real, and P must be greater than or equal to 1.

Disciplined convex programming information:
    pow_pos(X,P) is convex and nondecreasing in X; so when used in CVX
    expressions, X must be convex. P must be constant, real, and
    greater than or equal to 1.

#5

Thank you, this function works!