<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
</head>
<body bgcolor="#ffffff" text="#000000">
<font size="-1"><font face="Verdana">Hi Andreas,<br>
<br>
I use the derivative checker for the gradient, it is OK. I didn't
implement the hessian, I use the limited_memory option (I have about
400 variables and 400 very complex and non-linear constraints,
implementing the hessian even with an automatic equations and code
generator is too costly).<br>
After some tests, it appears that I have an improvement if I change the
initial point. Up to now, the initial point had a lot of values close
to zero. It seems that the result of the scaling from this initial
point has some influence on the convergence. For example, variables
corresponding to commands were initialized at 0., but in fact the
result of the optimization should be -/+ 200000. <br>
Maybe I'm wrong, but I have the impression that:<br>
small (and not realistic) initial values -> high scaling factors
-> slow convergence<br>
<br>
Thanks,<br>
<br>
Nicolas<br>
</font></font><br>
Andreas Waechter a écrit :
<blockquote
cite="mid:Pine.A41.4.61.0905132034180.729258@bigopt.watson.ibm.com"
type="cite">Hi Nicolas,
<br>
<br>
Even 2000 iterations sound like a lot. If you problem has hightly
nonlinear constraints you might see a lot of jumps to the restoration
phase, and you might want to experiment with using different
formulations of the constraints. (In general, a modeing language like
AMPL and GAMS are very handy for this, before you sit down and write
matlab code...)
<br>
<br>
But maybe the issue is just that your Hessian is not implemented
correctly. Did you verify them with the derivative checker?
<br>
<br>
Hope this helps,
<br>
<br>
Andreas
<br>
<br>
On Wed, 13 May 2009, Nicolas Gachadoit wrote:
<br>
<br>
<blockquote type="cite">Hello,
<br>
<br>
I use Ipopt for Optimal Control (minimum time control) and in one of my
applications, the convergence is very slow.
<br>
It is a robotic application (4 dof), the equations (constraints and
gradient of constraints, automatically generated by Maple) are very big
so it could be the reason but on another hand, in another application
(5 dof), the convergence is fast (< 2000 iterations, less than 2
minutes).
<br>
In this application (4 dof), I tried up to 20000 iterations and it did
not converge yet. Each time I increase max_iter, it is better (the
minimum time decreases and the controls are closer to saturations) so a
possibility would be to try to put a very high max_iter and wait for a
few hours.
<br>
But I would like to know if another option could make the convergence
faster. Maybe it is a problem of scaling or something else ?
<br>
<br>
Thanks in advance,
<br>
Best regards,
<br>
<br>
Nicolas Gachadoit
<br>
<br>
</blockquote>
<br>
</blockquote>
</body>
</html>