# Dealing with multiple constraints

Hi, I have an optimization variable X which is TxN matrix. I was able to maximize my objective function using CVX for constraint trace(X’X) <= S, where T, N and S are scalar constants. Now, I would like to redefine the problem with only the following constraints:

Here, each P_i is a scalar and v_i is a 1xN vector and P and Q are scalar constants.

where X matrix is defined as:

I would like to know how to write these constraints in MATLAB.

I really don’t know what you’re trying to do.

The constraint ` trace(X’X) <= S` would not be accepted in that form by CVX, due to appearance of `X'*X`, which violates CVX’s DCP rules. But it can be reformulated as `norm(X,'fro') <= sqrt(S)` , which CVX will accept,l presuming that`X` is a variable or affine expression which you seem to violate)…

Your last constraint can be written as `norm(v(i,:)) <= sqrt(Q)`

As for `C = [sqrt(P1)*c1;....sqrt(PT)*vT),]`, you’ll have to explain to me how that is consistent with the overall problem being a convex optimization problem. I’ll assume it’s not unless you show otherwise.

Perhaps you need to more carefully read the following link, which you were previously provided.

Thank you very much. I was able to use CVX to find optimum solution when I only had norm(X,‘fro’) <= sqrt(S) constraint and then, when I redefine my problem with constraints on P1, P2… PT and v1,v2…VT, and use X matrix as an expression, I was not able to use CVX, that might be because I am taking P1, P2… PT and v1,v2…VT as optimization variables , and I read in other questions on CVX forum that product of optimization variables is not allowed in CVX, I would like to know if there is a work around for this.

No workaround that I know of, except using a non-convex solver, for instance under YALMIP.