#include <OptNIPSLike.h>
Inheritance diagram for OPTPP::OptNIPSLike:

Public Member Functions | |
| OptNIPSLike () | |
| OptNIPSLike (int n) | |
| OptNIPSLike (int n, UPDATEFCN u) | |
| OptNIPSLike (int n, TOLS t) | |
| virtual | ~OptNIPSLike () |
| virtual void | setMeritFcn (MeritFcn option) |
| Specify the merit function to used in step acceptance test. | |
| virtual NEWMAT::Matrix | setupMatrix (const NEWMAT::ColumnVector &xc) |
| virtual real | merit (int flag, const NEWMAT::ColumnVector &xc, const NEWMAT::ColumnVector &yc, NEWMAT::ColumnVector &zc, NEWMAT::ColumnVector &sc) |
| virtual NEWMAT::ColumnVector | setupRHS (const NEWMAT::ColumnVector &xc, real mu) |
| virtual NEWMAT::ColumnVector | setupRHS (const NEWMAT::ColumnVector &xplus, const NEWMAT::ColumnVector &yplus, const NEWMAT::ColumnVector &zplus, const NEWMAT::ColumnVector &splus, real mu) |
| virtual NEWMAT::SymmetricMatrix | updateH (NEWMAT::SymmetricMatrix &H, int k)=0 |
| Compute the Hessian of the Lagrangrian or its approximation at iteration k. | |
| virtual int | checkConvg () |
| Check to see if algorithm satisfies the convergence criterion. | |
| virtual int | checkDeriv () |
| Compare the analytic gradient with the finite-difference approximation. | |
| virtual int | computeStep (NEWMAT::ColumnVector step) |
| Compute the steplength along the search direction. If an acceptable step not found, returns an error code = -1. | |
| virtual void | initOpt () |
| Initialize algorithmic parameters. | |
| virtual void | initHessian () |
| Initialize Hessian of Lagrangian. | |
| virtual void | optimize () |
| Call the interior-point method. | |
| virtual void | printStatus (char *s) |
| Print status of opt. method. | |
| virtual void | readOptInput () |
| Read user-specified input options. | |
| real | getMu () const |
| void | setMu (real newMu) |
| void | setCenteringParameter (real newSigma) |
| void | setStepLengthToBdry (real newTau) |
| virtual void | reset () |
| void | recoverFeasibility (NEWMAT::ColumnVector xinit, CompoundConstraint *constraints, double ftol) |
| NEWMAT::ColumnVector | computeSearch2 (NEWMAT::Matrix &Jacobian, const NEWMAT::ColumnVector &rhs) |
| NEWMAT::ColumnVector | initMultipliers (const NEWMAT::ColumnVector &df, NEWMAT::Matrix &dcon) |
| void | updateMu (int k) |
| real | merit2 (int flag, const NEWMAT::ColumnVector &xc, const NEWMAT::ColumnVector &yc, NEWMAT::ColumnVector &zc, NEWMAT::ColumnVector &sc) |
| real | merit3 (int flag, const NEWMAT::ColumnVector &xc, NEWMAT::ColumnVector &zc, NEWMAT::ColumnVector &sc) |
| void | computeDirDeriv (NEWMAT::ColumnVector &sk, const NEWMAT::ColumnVector &xc, NEWMAT::ColumnVector &derivative) |
| double | dampenStep (NEWMAT::ColumnVector &step) |
Protected Member Functions | |
| virtual NLP1 * | nlprob () const =0 |
| pointer to NLP1 | |
Protected Attributes | |
| real | beta_ |
| penalty parameter for merit function 3 | |
| real | dirder_ |
| directional derivative of a merit function | |
| real | mu_ |
| pertubation parameter | |
| real | penalty_ |
| penalty parameter for merit function 2 | |
| real | sigmin_ |
| centering parameter | |
| real | taumin_ |
| percentage of steplength to boundary | |
| const real | rho_ |
| constant set to .5 | |
| const real | sw_ |
| constant | |
The OptNIPS algorithm is a C++ implementation of NIPSM, a nonlinear interior-point code developed under MATLAB by Amr El-Bakry at Rice University and NIPSF, a Fortran implementation of the same code written by Frederik Saaf. Additional features include the merit functions proposed by Miguel Argaez and Richard Tapia in "Global Convergence of a Primal-Dual Newton Interior-Point Method for Nonlinear Programming Using a Modified Augmented Lagrange Function" as well as Robert Vanderbei and David Shanno in "An Interior-Point Algorithm For Nonconvex Nonlinear Programming".
|
|
Default Constructor |
|
|
|
|
||||||||||||
|
|
|
||||||||||||
|
|
|
|
Destructor |
|
|
Check to see if algorithm satisfies the convergence criterion.
Reimplemented from OPTPP::OptConstrNewtonLike. |
|
|
Compare the analytic gradient with the finite-difference approximation.
Reimplemented from OPTPP::OptConstrNewtonLike. Reimplemented in OPTPP::OptFDNIPS, and OPTPP::OptQNIPS. |
|
||||||||||||||||
|
Takes three arguments and void return.
|
|
||||||||||||
|
|
|
|
Compute the steplength along the search direction. If an acceptable step not found, returns an error code = -1.
Reimplemented from OPTPP::OptConstrNewtonLike. |
|
|
Takes one arguments and returns a real value.
|
|
|
|
|
|
Initialize Hessian of Lagrangian.
Reimplemented from OPTPP::OptConstrNewtonLike. Reimplemented in OPTPP::OptDHNIPS, and OPTPP::OptNIPS. |
|
||||||||||||
|
Takes two arguments and returns a NEWMAT::ColumnVector.
|
|
|
Initialize algorithmic parameters.
Reimplemented from OPTPP::OptConstrNewtonLike. |
|
||||||||||||||||||||||||
|
|
|
||||||||||||||||||||||||
|
Takes five arguments and returns a real value.
|
|
||||||||||||||||||||
|
Takes four arguments and returns a real value.
|
|
|
pointer to NLP1
Implements OPTPP::OptConstrNewtonLike. Implemented in OPTPP::OptDHNIPS, OPTPP::OptFDNIPS, OPTPP::OptNIPS, and OPTPP::OptQNIPS. |
|
|
Call the interior-point method.
Reimplemented from OPTPP::OptConstrNewtonLike. |
|
|
Print status of opt. method.
Reimplemented from OPTPP::OptConstrNewtonLike. Reimplemented in OPTPP::OptDHNIPS, and OPTPP::OptNIPS. |
|
|
Read user-specified input options.
Reimplemented from OPTPP::OptConstrNewtonLike. |
|
||||||||||||||||
|
|
|
|
Takes zero arguments with void return. Resets parameter values. Reimplemented from OPTPP::OptConstrNewtonLike. Reimplemented in OPTPP::OptDHNIPS. |
|
|
Sets the value of the centering parameter. |
|
|
Specify the merit function to used in step acceptance test.
Reimplemented from OPTPP::OptConstrNewtonLike. |
|
|
Set the value of the perturbation parameter |
|
|
Sets the percentage of step taken towards the boundary |
|
|
|
|
||||||||||||||||||||||||
|
|
|
||||||||||||
|
|
|
||||||||||||
|
Compute the Hessian of the Lagrangrian or its approximation at iteration k.
Implements OPTPP::OptConstrNewtonLike. Implemented in OPTPP::OptDHNIPS, OPTPP::OptFDNIPS, OPTPP::OptNIPS, and OPTPP::OptQNIPS. |
|
|
Takes one arguments and updates the perturbation parameter
|
|
|
penalty parameter for merit function 3
|
|
|
directional derivative of a merit function
|
|
|
pertubation parameter
|
|
|
penalty parameter for merit function 2
|
|
|
constant set to .5
|
|
|
centering parameter
|
|
|
constant
|
|
|
percentage of steplength to boundary
|