Restoration Failed!

1,987 views
Skip to first unread message

crossfi...@gmail.com

unread,
Feb 16, 2015, 4:43:10 AM2/16/15
to casadi...@googlegroups.com
Hi,
I am working on implementing and solve a problem using collocation method. This is a NLP problem and I use the IPOPT-solver. With a small number of collocation points and integration steps I am able to solve the problem. However, the resolution is not good. When I try to increase the number of collocation points I get Restoration Failed! The only difference I do is going from 1 to 2 collocation points. Searching for a solution I could only relate this to the problem being infeasible. I know the problem is feasible since I just solve it with a fewer number of collocation points. Any clue what is going on? 

Joel Andersson

unread,
Feb 16, 2015, 5:19:13 AM2/16/15
to casadi...@googlegroups.com
Hi!

What do you mean by increasing the number of collocation points? You mean increasing the order of the interpolating polynomial? If IPOPT fails with "Restoration Failed", it does not mean that the problem is infeasible, it means that IPOPT fails to find an infeasible starting point (I guess), which is not the same thing. I would have a look at the initial guess of the NLP. With a better initial guess, you might be able to avoid this. You can also try to first just simulate the system using IPOPT, that is fix the initial conditions (if they are not fixed already) and fix all controls and parameters.

Best regards,
Joel

crossfi...@gmail.com

unread,
Aug 27, 2015, 4:56:43 AM8/27/15
to CasADi
I have been occupied for a while, but I thought I report back my solution to this problem. What solved it for me was to replace the default solver "mumps" with "ma27" obtained from http://www.hsl.rl.ac.uk/ipopt/ 

Joel Andersson

unread,
Aug 27, 2015, 6:15:29 AM8/27/15
to CasADi
OK, yeah, makes sense. Mumps does not work very well. ma27 and the other HSL solvers are much better in general.

Joel

Henrik Nord

unread,
Oct 12, 2022, 5:19:50 AM10/12/22
to CasADi
Hi! I also have som error with restoration. How did you change the default solver to ma27?

Henrik Nord

unread,
Oct 12, 2022, 5:47:03 AM10/12/22
to CasADi
I try to write:
opts = struct;
opts.ipopt.linear_solver('ma27');

But get the error: Unrecognized field name "linear_solver".

Joel Andersson

unread,
Oct 18, 2022, 3:29:33 PM10/18/22
to CasADi
Try

opts = struct
opts.ipopt.linear_solver = 'ma27';

Joel
Reply all
Reply to author
Forward
0 new messages