[Coin-ipopt] L-BFGS and derivative check options released

Andreas Waechter andreasw at watson.ibm.com
Sun Nov 24 17:12:58 EST 2002


Hello,

Today I upgraded the Ipopt distribution in COIN-OR.  Changes that might be
of interest to a user are as follows:

- I implemented a limited memory BFGS update for the full Hessian of the
  Lagrangian which can be used if the full-space option (IFULL=1) is used.
  It can be enabled by choosing IQUASI = 6 (skipping updates if BFGS
  update not possible, i.e. if s^T y < 0 in BFGS formula), or IQUASI = -6
  (using Powell-damping).  The number of (s,y) pairs for the update (i.e.
  the "length of the limited memory") can be determined by setting ILMLEN.

  In preliminary testing the IQUASI = 6 options seems to be pretty robust,
  and if you are using IPOPT for a problem without providing explicit
  second derivatives, I strongly recommend that you give this option a
  try.
  (In particular, this options allows to address problems with many
  degrees of freedom, and it also does not require a partition of the
  variables, which can be difficult in many cases.)

- I also added a subroutine called IPOPT_CHECK which allows to check the
  first and second derivatives provided by the user by means of finite
  differences.  It has the same arguments are the main subroutine IPOPT,
  so that the derivatives can be verified simply by renaming the call to
  IPOPT.  (Since checking derivatives a tasked which is performed
  off-line, not too much emphasis was made in making it efficient... :)
  This might be a useful tool to verify that your EVAL_C, EVAL_A etc.
  subroutines work properly.

The file README.IPOPT has been updated and includes some information
regarding the options above.

Those changes are already visible in the COIN-OR CVS repository, and will
be available in tomorrow's tarball.

Greetings,

Andreas




More information about the Coin-ipopt mailing list