I want to solve the program;
||Ax-b||2
lb<=x<= ub
When the lb=0 and ub=1, the solutions of the program through cvx is correct.
the output of the cvx as follows:
number of iterations = 32
primal objective value = -1.23450801e-01
dual objective value = -1.23450811e-01
gap := trace(XZ) = 1.03e-08
relative gap = 8.28e-09
actual relative gap = 8.08e-09
rel. primal infeas = 1.82e-11
rel. dual infeas = 2.60e-12
norm(X), norm(y), norm(Z) = 5.3e+00, 8.0e-01, 3.4e+01
norm(A), norm(b), norm© = 7.7e+01, 2.0e+00, 3.5e+01
Total CPU time (secs) = 2.07
CPU time per iteration = 0.06
termination code = 0
DIMACS: 1.8e-11 0.0e+00 4.5e-11 0.0e+00 8.1e-09 8.3e-09
Status: Solved
Optimal value (cvx_optval): +0.123451
** However, if the lb=0 and ub=1, the solutions of the program through cvx is incorrect. **
the last status of cvx is Inaccurate/Solved
the output of the cvx as follows:
Warning: Matrix is close to singular or badly scaled. Results may be inaccurate. RCOND = 1.197869e-17.
number of iterations = 19
primal objective value = -1.64523804e-02
dual objective value = -1.64549538e-02
gap := trace(XZ) = 2.56e-06
relative gap = 2.48e-06
actual relative gap = 2.49e-06
rel. primal infeas = 1.02e-07
rel. dual infeas = 2.39e-11
norm(X), norm(y), norm(Z) = 1.0e+00, 1.4e+00, 4.8e+01
norm(A), norm(b), norm© = 7.7e+01, 2.0e+00, 4.9e+01
Total CPU time (secs) = 1.19
CPU time per iteration = 0.06
termination code = -7
DIMACS: 1.0e-07 0.0e+00 3.9e-10 0.0e+00 2.5e-06 2.5e-06
Status: Inaccurate/Solved
Optimal value (cvx_optval): +0.016455
if you know the reason, please tell me!
Thank you very much.