[Coin-ipopt] Convergence and BFGS Hessian computation

Sylvain Miossec sylvain.miossec at aist.go.jp
Wed Oct 4 20:53:07 EDT 2006


Hi all,

I am using IPOPT for a year now and I found it quite fast for the type
of problems I solve (robot motion optimization). Thanks a lot for the
good job.

But I have one problem is the proper convergence of the optimization.
Now I used to stop the optimization by reaching the maximum number of
iterations. And then checking that the criteria is not changing a lot
during the last iterations, and that the constraints are well satisfied.
The motions I obtain for the robot look also optimal.

Does anyone would have an idea why I don't obtain proper convergence ?

I provide two files (in a zip compressed file) of some runs of 
optimization for two different history of BFGS approximation.

Since the Hessian computation is very complicate to program in my case,
I use the limited-memory BFGS approximation. I tried a history of 6 for
the BFGS computation and 131 (the size of my problem).  The BFGS
computation is slower with a 131 history but the convergence is better.
I have another question then : would it be better for my problem size to
use a BFGS approximation (not limited-memory one) ?

the parameters I used for IPOPT are the following :
tol : 1e-3
acceptable tol : 3e-3
max_iter : 300/500
expect_infeasible_problem : yes
hessian_approximation : yes
limited_memory_max_history : 131/6
dual_inf_tol : 1e-6
compl_inf_tol : 1e-6
acceptable_dual_inf_tol : 3e-3
acceptable_compl_inf_tol : 3e-3
check_derivatives_for_naninf : yes
derivative_test : first-order
alpha_for_y : full

During the optimization, the dual infeasibility is not really decreasing
(and not reaching the stopping tolerance) while the criteria seems to
converge. Is it normal ? Could it be due to a scaling problem (I scaled
the problem myself by trial and error). Could it be due to the Hessian
approximation ? Perhaps it is another reason for using BFGS
approximation instead of limited-memory one. Or perhaps I should try the
real hessian computation ? (but I would like to be sure it would solve
my problem, since it will take lots of time to implement).

An help on this point would be greatly appreciated.

Best regards

Sylvain Miossec

-------------- next part --------------
A non-text attachment was scrubbed...
Name: optim_result.zip
Type: application/x-zip-compressed
Size: 21479 bytes
Desc: not available
Url : http://list.coin-or.org/pipermail/ipopt/attachments/20061005/2db5663f/attachment.bin 


More information about the Coin-ipopt mailing list