It is hard to diagnose this sort of thing without seeing the problem data. Would you be able to provide a representative problem that reproduces these errors?
That said, some possibilities:
1) Is the optimal solution to your problem actually unconstrained? That might explain why \rho = 1e-7 works, but it probably is not consistent with the recommended rho you are getting.
2) It might be that the solver does not converge well because it updates \rho too soon, i.e. before the quantity that we use to estimate a good value has stabilised. Perhaps increase the convergence checking interval to 50 or 100?
3) It is strange that you are getting OSQP_NON_CVX if the problem is as you describe. However, this might happen if the nonzero part of your matrix P appears to have a slightly negative eigenvalue after factorisation. This might happen, for example, if either P or the KKT matrix (composed of P, A and \rho) is very badly conditioned.
The reason for the above is that our check for non-convexity is based on the inertia of the KKT matrix that we factor into LDL^T, since the inertia of the KKT matrix and of D will be the same. However, if the KKT matrix is very badly conditioned then the ‘D’ part of the LDL factorisation might not be reliable, e.g. it might have some values very close to zero.
As a means of checking that this could be the problem, you might try solving with the MKL solver instead of the native QDLDL code that is the default.
> --
> You received this message because you are subscribed to the Google Groups "OSQP" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to
osqp+uns...@googlegroups.com.
> To view this discussion on the web visit
https://groups.google.com/d/msgid/osqp/7b232eb4-c5f1-42cc-a40d-846fe619d4e8%40googlegroups.com.
> For more options, visit
https://groups.google.com/d/optout.