hessian_approximation:

This determines which kind of information for the Hessian of the Lagrangian function is used by the algorithm. The default value for this string option is "exact".

Possible values:

- exact: Use second derivatives provided by the NLP.
- limited-memory: Perform a limited-memory quasi-Newton approximation

limited_memory_update_type:

Determines which update formula is to be used for the limited-memory quasi-Newton approximation. The default value for this string option is "bfgs".

Possible values:

- bfgs: BFGS update (with skipping)
- sr1: SR1 (not working well)

limited_memory_max_history:

This option determines the number of most recent iterations that are taken into account for the limited-memory quasi-Newton approximation. The valid range for this integer option is and its default value is .

limited_memory_max_skipping:

If the update is skipped more than this number of successive iterations, we quasi-Newton approximation is reset. The valid range for this integer option is and its default value is .

limited_memory_initialization:

Determines how the diagonal Matrix B_0 as the first term in the limited memory approximation should be computed. The default value for this string option is "scalar1".

Possible values:

- scalar1: sigma = sTy/sTs
- scalar2: sigma = yTy/sTy
- scalar3: arithmetic average of scalar1 and scalar2
- scalar4: geometric average of scalar1 and scalar2
- constant: sigma = limited_memory_init_val

limited_memory_init_val:

The starting matrix in the low rank update, B0, is chosen to be this multiple of the identity in the first iteration (when no updates have been performed yet), and is constantly chosen as this value, if "limited_memory_initialization" is "constant". The valid range for this real option is and its default value is .

limited_memory_init_val_max:

The starting matrix in the low rank update, B0, is chosen to be this multiple of the identity in the first iteration (when no updates have been performed yet), and is constantly chosen as this value, if "limited_memory_initialization" is "constant". The valid range for this real option is and its default value is .

limited_memory_init_val_min:

The starting matrix in the low rank update, B0, is chosen to be this multiple of the identity in the first iteration (when no updates have been performed yet), and is constantly chosen as this value, if "limited_memory_initialization" is "constant". The valid range for this real option is and its default value is .

limited_memory_special_for_resto:

Until Nov 2010, Ipopt used a special update during the restoration phase, but it turned out that this does not work well. The new default uses the regular update procedure and it improves results. If for some reason you want to get back to the original update, set this option to "yes". The default value for this string option is "no".

Possible values:

- no: use the same update as in regular iterations
- yes: use the a special update during restoration phase