R is a positive Hermitian matrix, and U_c is a full column matrix and \mathbf{w}\in\mathbb{C}^N is a column vector, and Im\{\cdot\} denotes the image part of the complex number.
I don’t known how to solve this optimization using CVX, can you help me.
Thank you very much.
Have you read the CVX Users’ Guide http://cvxr.com/cvx/doc/ ? This problem can be entered essentially directly as shown into CVX. (H
is '
and Im
is imag
)
Perhaps R
is not exactly Hermitian, with the consequence that there is a roundoff level imaginary term in the quadratic form. You could try Hermitianizing it.
w'*(0.5*(R+R'))*w <= const
If that still produces the same error message, perhaps R
isn’t actually Hermitian Semidefinite. What is the value of min(eig(R+R'))
?
thank you!
I will try again.
how can I transform this problem to SDP?
can you help me?
The problem will be solved by CVX as an SOCP. Any SOCP can be written as an SDP. But it is better to solve it as an SOCP. Indeed, if you convert and enter this as an SDP in CVX, CVX will automatically transform it to an SOCP before sending it to the solver.
You need to fix R
, as I described previously.
CVX only allows inequalities in which both sides are real.
Why does
w'*s >= epsilon*norm(w)+1
make sense? The left-hand side is complex, and the right-hand side is real.
Do you perhaps want
real(w'*s) >= epsilon*norm(w)+1
I have no idea whether that makes sense. For purposes of this forum, it’s your model, even if you got it from a paper or book, so you tell us what it’s supposed to be.
as you can see, in my formulation, imag(w’*s)==0, which aims to let the image part of w’*s is zero, therefore, w’*s is a real number. i think real(w’s) >= epsilonnorm(w)+1 is right.
thank you very much.
Yes, I believe so. .