-
Hi everyone, I use Ipopt with CasADi for geometric optimizations of upper limb exoskeletons. Concerning the repeatability of optimizations, is it right to assume that I should obtain the same results if I run an optimization multiple times with the same parameters ? By parameters, I am referring to the state variables, optimization variables, initial conditions, lower/upper bounds, variables constraints, etc. What I observe is the following:
I am trying to find an explanation to this and would like any feedback, either if it is known to anyone or stuff that I should double check that could influence the optimizations. My setup is Matlab R2020b, Ipopt 3.12.3, CasADi v.3.5.5, MacOS Big Sur (11.6). Using the solver Mumps for resolution of a NLP problem. Thanks ! |
Beta Was this translation helpful? Give feedback.
Replies: 3 comments 2 replies
-
Usually you should have gotten the same result already from the first run on. |
Beta Was this translation helpful? Give feedback.
-
Not sure why the subsequent solutions are identical, but there is possible helpful information for you : some calculation programs generate different results when they are working in parallel mode. Because there may be uncertainty in the cooperation of threads. |
Beta Was this translation helpful? Give feedback.
-
To make sure the model inputs are the same, I suggest you unload your model to a gdx file using the Also, you can obtain different results if the ordering of your parameters and sets are different. This won't be reflected in the If the input is exactly the same, the results should be the same on the same machine. |
Beta Was this translation helpful? Give feedback.
Usually you should have gotten the same result already from the first run on.
But it is difficult to say why that didn't happen.
You could try increasing the print level in Ipopt to a really high value and see whether things differ already in the very beginning. That might then be an indication that the interface to Ipopt is doing something different for the second run.