OptBaQNewton implements a barrier Quasi-Newton method. 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 | initOpt () |
Initialize algorithmic parameters. | |
OptBaQNewton (NLP1 *p, TOLS t) | |
OptBaQNewton (NLP1 *p, UPDATEFCN u) | |
OptBaQNewton (NLP1 *p) | |
OptBaQNewton () | |
Default Constructor. | |
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 | ~OptBaQNewton () |
Destructor. |
OptBaQNewton implements a barrier Quasi-Newton method.
The only allowable constraints are simple bounds. 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 violating the bound constraints.
Definition at line 27 of file OptBaQNewton.h.
OPTPP::OptBaQNewton::OptBaQNewton | ( | ) | [inline] |
Default Constructor.
Definition at line 43 of file OptBaQNewton.h.
References OPTPP::OptimizeClass::method.
OPTPP::OptBaQNewton::OptBaQNewton | ( | NLP1 * | p | ) | [inline] |
p | a pointer to an NLP1. |
Definition at line 49 of file OptBaQNewton.h.
References OPTPP::OptimizeClass::method.
OPTPP::OptBaQNewton::OptBaQNewton | ( | NLP1 * | p, | |
UPDATEFCN | u | |||
) | [inline] |
p | a pointer to an NLP1. | |
u | a function pointer. |
Definition at line 57 of file OptBaQNewton.h.
References OPTPP::OptimizeClass::method.
OPTPP::OptBaQNewton::OptBaQNewton | ( | NLP1 * | p, | |
TOLS | t | |||
) | [inline] |
p | a pointer to an NLP1. | |
t | tolerance class reference. |
Definition at line 65 of file OptBaQNewton.h.
References OPTPP::OptimizeClass::method.
virtual OPTPP::OptBaQNewton::~OptBaQNewton | ( | ) | [inline, virtual] |
Destructor.
Definition at line 71 of file OptBaQNewton.h.
void OPTPP::OptBaQNewton::acceptStep | ( | int | , | |
int | ||||
) | [virtual] |
Reimplemented from OPTPP::OptBCNewtonLike.
int OPTPP::OptBaQNewton::checkConvg | ( | ) | [virtual] |
Check to see if algorithm satisfies the convergence criterion.
Reimplemented from OPTPP::OptBCNewtonLike.
double OPTPP::OptBaQNewton::computeMaxStep | ( | NEWMAT::ColumnVector & | ) | [virtual] |
Compute the maximum step allowed along the search direction before we hit a constraint.
Reimplemented from OPTPP::OptBCNewtonLike.
int OPTPP::OptBaQNewton::computeStep | ( | NEWMAT::ColumnVector | sk | ) | [virtual] |
Compute the step length along the search direction.
Reimplemented from OPTPP::OptBCNewtonLike.
void OPTPP::OptBaQNewton::initOpt | ( | ) | [virtual] |
Initialize algorithmic parameters.
Reimplemented from OPTPP::OptBCNewtonLike.
void OPTPP::OptBaQNewton::optimize | ( | ) | [virtual] |
Invoke a bound constrained Newton's method.
Reimplemented from OPTPP::OptBCNewtonLike.
NEWMAT::SymmetricMatrix OPTPP::OptBaQNewton::updateH | ( | NEWMAT::SymmetricMatrix & | H, | |
int | k | |||
) | [virtual] |
Compute the Hessian or its approximation at the current point.
Implements OPTPP::OptBCNewtonLike.