Solver not applicable #1383
-
Dear Professor,
error:
yalmip automatically assigned fmincon solver to me, and displayed
after iteration, and the obtained solution was incorrect. |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 20 replies
-
You seem to miss the core idea of a semidefinite relaxation, as you simply try to solve the nonconvex problem now, as you introduce W0 as the outer product of two vectors, i.e. a bilinear expression, which then is used in the model creating nonconvex quadratic stuff. The whole idea is that you introduce W0 as a symmetric matrix with a psd constraint, and then remove (i.e. never introduce) the constraint that it is low-rank. SDPT3 can never be used here as you have a logarithmic operator in the objective. You need an exponential cone solver such as mosek (cvx has some old stuff where it approximates the log stuff, but these days you use an exponential cone solver) Also, if that objective actually is exponential cone representable, you will have to rewrite it first using operators which are automatically detected as expcone representable. Just being onvex does not suffice (neither for cvx nor yalmip). From a quick glance, if this really is expcone-representable, it is likely some Kullback-Leibler term https://yalmip.github.io/command/kullbackleibler since you have terms of the for x log(1+y/x) = xlog((x+y)/x) = -xlog(x/(x+y)) = -kullbackleibler(x,x+y) or something like that |
Beta Was this translation helpful? Give feedback.
You seem to miss the core idea of a semidefinite relaxation, as you simply try to solve the nonconvex problem now, as you introduce W0 as the outer product of two vectors, i.e. a bilinear expression, which then is used in the model creating nonconvex quadratic stuff. The whole idea is that you introduce W0 as a symmetric matrix with a psd constraint, and then remove (i.e. never introduce) the constraint that it is low-rank.
SDPT3 can never be used here as you have a logarithmic operator in the objective. You need an exponential cone solver such as mosek (cvx has some old stuff where it approximates the log stuff, but these days you use an exponential cone solver)
Also, if that objective a…