Error When Using Integer Variables

Hi all,

Hope all is well.

I have an OPF problem running excellent when I have continuous variables. Every time when I add “variable x(3) integer” I receive the error below. Would you please provide me any help or assistance.

Thanks in advance,

Reference to non-existent field ‘sol’.

Error in cvx_mosek

Error in cvxprob/solve (line 435)
[ x, status, tprec, iters ] = shim.solve( At, b, c, cones, quiet, prec,
solv.settings, eargs{:} );

Error in cvx_end (line 88)
solve( prob );

Error in OPF_SDP_4Bus (line 82)

Try turn log output and post the output in a reply.

Mosek does not support mixed-integer problems with semidefinite variables.

I believe CVX provides the opportunity to use integer variables with Mosek. Please look at the link below and let me know if I am right or confusing?

Thanks for your reply.

Would you please elaborate more? I do not get what do you mean?.

Mosek can solve mixed-integer conic problems, yes, but with the exception of semidefinite. If that is what you want to do then maybe have a look at YALMIP with its own branch and bound mechanisms for that.

If you would look at the log output then everything should be clear (turn maximal verbosity on in cvx).

I think the page you linked predates SDP in Mosek.

The CVX Users’ Guide is misleading. CVX 2.x accepts mixed-integer problems having senidefinite constraints, but currently has no available solver which can solve them. Hence the error message when CVX tries calling Mosek to solve the problem.

Thanks Michal, appreciated.

Thanks, Mark for your reply.

Nothing has changed since the thread from 2014 Mixed Integer SDPs which are not Mixed Integer SOCPs

Regarding YALMIP, specify BNB (included with YALMIP) as solver. If you have Mosek installed under MATLAB, YALMIP will call Mosek to solve LMI (SDP) continuous relaxation subproblems spawned by the Branch and Bound algorithm of BNB.