Can we trust the solution given by "optimize" when there is "numerical problem"?

53 views
Skip to first unread message

Boran Zhao

unread,
Aug 11, 2016, 8:38:34 PM8/11/16
to YALMIP
Hello everyone,

When using Yalmip and sedumi to solve SDP problems, I frequently met numerical problem indicated by "info" returned by "optimize" command in Yalmip. I was wondering whether we can trust the solutions when there are such numerical problems.

I tried the trick to avoid numerical problem suggested by Johan in https://groups.google.com/forum/#!category-topic/yalmip/AcNyBk3_GAo, i.e. by adding a scaled norm of the optimization matrix variables. However, it did not remove the numerical problem also it added a large term to the original cost function. 

Thanks
Boran

Johan Löfberg

unread,
Aug 12, 2016, 1:35:04 AM8/12/16
to YALMIP
Almost independently of what kind of diagnostic you get, you have to judge the solution from constraint violation, actual values, what you will use it for etc etc. Does the solution make sense? Do you simply trust the solver in making a fair statement about numerics, feasibility, and optimality What if the solver makes a mistake, or uses completely different tolerances to judge things than you do.

Min x s.t x>=0. Solver 1 says "I'm ok with the results!" and returns solution x=-0.001; Solver 2 says "Numerical problems" and returns x=0.00000000000001.





Erling D. Andersen

unread,
Aug 12, 2016, 2:20:43 AM8/12/16
to YALMIP
Independent of what the optimizer says the solution will only be approximation to the true optimal solution. You are doing computations in finite precision. So doing some kind of sanity check of the solution seems like a good idea in any case.

Boran Zhao

unread,
Aug 13, 2016, 8:03:35 PM8/13/16
to YALMIP
Thank you very much for your reply. 

Boran Zhao

unread,
Aug 13, 2016, 8:04:27 PM8/13/16
to YALMIP
Thank you for the reply. I got it!
Reply all
Reply to author
Forward
0 new messages