However, when I try to add constraints:
The problem can not be solved caused DUAL_INFEASIBLE. The output.log is attached.
I don't know why. Why would the new constraints lead to DUAL_INFEASIBLE?
And how to do if I must add these new constraints?
Thanks in advance.
1. It is C - delta*eye(n)>=0.
2. The original problem is below. It's a nonlinear SDP problem.
However,using the Schur complement theorem, it can be written as a linear SDP problem:
The model is trivially infeasible with the setup and delta=25
If you simplify, you're trying to solve something much more constrained and complicated compared to this
E = sdpvar(3)
cons = [];
cons = [cons, E >= 0];
cons = [cons, trace(E) <= .1];
cons = [cons,E-ones(3)/25 >= 0];
optimize(cons)
infeasible. The smallest possible delta would be 30 (which probably is easy to
prove)
sdpvar f
cons = [];
cons = [cons, E >= 0];
cons = [cons, trace(E) <= .1];
cons = [cons,E-ones(3)*f >= 0];
optimize(cons,-f)
value(1/f)
Doing the same for your full model shows that the smallest possible delta is 90.0009
btw, the line assign(E{i}, repmat(0.1 * u / 2, 3, 3)); makes no difference in your code