OptBaNewton implements a bound constrained Newton method with a logarithmic barrier term. More...
Public Member Functions | |
void | acceptStep (int, int) |
int | checkConvg () |
Check to see if algorithm satisfies the convergence criterion. | |
int | checkInnerConvg (int) |
double | compute_Barrier_Fvalue (double, NEWMAT::ColumnVector &) |
NEWMAT::ColumnVector | compute_Barrier_Gradient (NEWMAT::ColumnVector &, NEWMAT::ColumnVector &) |
NEWMAT::SymmetricMatrix | compute_Barrier_Hessian (NEWMAT::SymmetricMatrix &, NEWMAT::ColumnVector &) |
double | computeMaxStep (NEWMAT::ColumnVector &) |
Compute the maximum step allowed along the search direction before we hit a constraint. | |
NEWMAT::ColumnVector | computeSearch2 (NEWMAT::SymmetricMatrix &, NEWMAT::ColumnVector &) |
int | computeStep (NEWMAT::ColumnVector) |
Compute the step length along the search direction. | |
void | initHessian () |
Compute the Hessian or its approximation at the initial point. | |
void | initOpt () |
Initialize algorithmic parameters. | |
OptBaNewton (NLP2 *p, TOLS t) | |
OptBaNewton (NLP2 *p, UPDATEFCN u) | |
OptBaNewton (NLP2 *p) | |
void | optimize () |
Invoke a bound constrained Newton's method. | |
double | scalarNewton (double, double, double, double, double) |
void | setAsideCurrentVariables () |
void | updateBarrierMultiplier () |
NEWMAT::SymmetricMatrix | updateH (NEWMAT::SymmetricMatrix &H, int k) |
Compute the Hessian or its approximation at the current point. | |
virtual | ~OptBaNewton () |
Destructor. |
OptBaNewton implements a bound constrained Newton method with a logarithmic barrier term.
Barrier methods transform a constrained into an unconstrained problem via a barrier term. In this implementation, the unconstrained subproblem's objective function consists of the original objective function and a logarithmic barrier term that prevents iterates from becoming infeasible.
Definition at line 27 of file OptBaNewton.h.
OPTPP::OptBaNewton::OptBaNewton | ( | NLP2 * | p | ) | [inline] |
p | a pointer to an NLP2 object. |
Definition at line 47 of file OptBaNewton.h.
References OPTPP::OptimizeClass::method.
OPTPP::OptBaNewton::OptBaNewton | ( | NLP2 * | p, | |
UPDATEFCN | u | |||
) | [inline] |
p | a pointer to an NLP2 object. | |
u | a function pointer. |
Definition at line 56 of file OptBaNewton.h.
References OPTPP::OptimizeClass::method.
OPTPP::OptBaNewton::OptBaNewton | ( | NLP2 * | p, | |
TOLS | t | |||
) | [inline] |
p | a pointer to an NLP2 object. | |
t | tolerance class reference. |
Definition at line 65 of file OptBaNewton.h.
References OPTPP::OptimizeClass::method.
virtual OPTPP::OptBaNewton::~OptBaNewton | ( | ) | [inline, virtual] |
Destructor.
Definition at line 71 of file OptBaNewton.h.
void OPTPP::OptBaNewton::acceptStep | ( | int | , | |
int | ||||
) | [virtual] |
Reimplemented from OPTPP::OptBCNewtonLike.
int OPTPP::OptBaNewton::checkConvg | ( | ) | [virtual] |
Check to see if algorithm satisfies the convergence criterion.
Reimplemented from OPTPP::OptBCNewtonLike.
double OPTPP::OptBaNewton::computeMaxStep | ( | NEWMAT::ColumnVector & | ) | [virtual] |
Compute the maximum step allowed along the search direction before we hit a constraint.
Reimplemented from OPTPP::OptBCNewtonLike.
int OPTPP::OptBaNewton::computeStep | ( | NEWMAT::ColumnVector | sk | ) | [virtual] |
Compute the step length along the search direction.
Reimplemented from OPTPP::OptBCNewtonLike.
void OPTPP::OptBaNewton::initHessian | ( | ) | [virtual] |
Compute the Hessian or its approximation at the initial point.
Reimplemented from OPTPP::OptBCNewtonLike.
void OPTPP::OptBaNewton::initOpt | ( | ) | [virtual] |
Initialize algorithmic parameters.
Reimplemented from OPTPP::OptBCNewtonLike.
void OPTPP::OptBaNewton::optimize | ( | ) | [virtual] |
Invoke a bound constrained Newton's method.
Reimplemented from OPTPP::OptBCNewtonLike.
NEWMAT::SymmetricMatrix OPTPP::OptBaNewton::updateH | ( | NEWMAT::SymmetricMatrix & | H, | |
int | k | |||
) | [virtual] |
Compute the Hessian or its approximation at the current point.
Implements OPTPP::OptBCNewtonLike.