embotech / ecos

A lightweight conic solver for second-order cone programming.
GNU General Public License v3.0
478 stars 123 forks source link

exitFlag issue since 2.0.8 release (2.0.10 included) #208

Open ashamraeva opened 2 years ago

ashamraeva commented 2 years ago

Hello,

We started experiencing some issues with the exitFlag since the release of version 2.0.8.

We are running the exact same model with version 2.0.7.post1 and version 2.0.8.

With version 2.0.7.post1 we get an exitFlag 0 (optimal). With version 2.0.8 we get an exitFlag 10 (optimal solution found subject to reduced tolerances), and an infostring 'Maximum iterations reached with feasible solution found'. All the other numbers in the solution are exactly the same as the ones obtained with version 2.0.7.post1. In addition, the verbose mode and the tolerances seem to suggest that the solution is indeed optimal, so we don't see where the inaccuracy reported by the exitFlag comes from.

Here are the results obtained with 2.0.7.post1:

image

And with 2.0.8:

image

Thanks for your help!

ashamraeva commented 2 years ago

We still get the same problem in version 2.0.10. In addition, we noticed that the results are unstable.

On some model, when running the exact same data, sometimes we get exitFlag=0 (optimal) with mi_ter =1, and sometimes we get exitFlag=10 (optimal solution found subject to reduced tolerances) with mi_ter =999 and an infostring 'Maximum iterations reached with feasible solution found':

image image

No such issue observed in 2.0.7.post1.

ashamraeva commented 2 years ago

Unfortunately, the model used to generate these results is a bit too complex to post it here from scratch, so that results can be reproduced. Is there a way to dump a model so that it can be loaded directly?