OPTPP::OptBaNewton Class Reference

#include <OptBaNewton.h>

Inheritance diagram for OPTPP::OptBaNewton:

OPTPP::OptBCNewton2Deriv OPTPP::OptBCNewtonLike OPTPP::OptimizeClass List of all members.

Public Member Functions

 OptBaNewton (NLP2 *p)
 OptBaNewton (NLP2 *p, UPDATEFCN u)
 OptBaNewton (NLP2 *p, TOLS t)
virtual ~OptBaNewton ()
void initOpt ()
 Initialize algorithmic parameters.
void initHessian ()
 Compute the Hessian or its approximation at the initial point.
int checkInnerConvg (int)
int checkConvg ()
 Check to see if algorithm satisfies the convergence criterion.
void acceptStep (int, int)
void optimize ()
 Invoke a bound constrained Newton's method.
void updateBarrierMultiplier ()
NEWMAT::SymmetricMatrix updateH (NEWMAT::SymmetricMatrix &H, int k)
 Compute the Hessian or its approximation at the current point.
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 &)
NEWMAT::ColumnVector computeSearch2 (NEWMAT::SymmetricMatrix &, NEWMAT::ColumnVector &)
int computeStep (NEWMAT::ColumnVector)
 Compute the step length along the search direction.
double computeMaxStep (NEWMAT::ColumnVector &)
 before we hit a constraint
double scalarNewton (double, double, double, double, double)
void setAsideCurrentVariables ()

Private Attributes

double mu
 Barrier parameter.
double fvalue_barrier
 Value of barrier function.
double fprev_barrier
double fprev_outer
NEWMAT::ColumnVector grad_barrier
 Gradient of barrier function.
NEWMAT::ColumnVector gprev_barrier
NEWMAT::SymmetricMatrix Hess_barrier
 Hessian of barrier function.

Detailed Description

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.

Author:
J.C. Meza, Lawrence Berkeley National Laboratory
Note:
Modified by P.J. Williams, pwillia@sandia.gov
Date:
Last modified 11/2005


Constructor & Destructor Documentation

OPTPP::OptBaNewton::OptBaNewton ( NLP2 p  )  [inline]

Parameters:
p a pointer to an NLP2 object.
See also:
OptNIPSLike(NLP2* p, UPDATEFCN u)

OptNIPSLike(NLP2* p, TOLS t)

OPTPP::OptBaNewton::OptBaNewton ( NLP2 p,
UPDATEFCN  u 
) [inline]

Parameters:
p a pointer to an NLP2 object.
u a function pointer.
See also:
OptNIPSLike(NLP2* p)

OptNIPSLike(NLP2* p, TOLS t)

OPTPP::OptBaNewton::OptBaNewton ( NLP2 p,
TOLS  t 
) [inline]

Parameters:
p a pointer to an NLP2 object.
t tolerance class reference.
See also:
OptNIPSLike(NLP2* p)

OptNIPSLike(NLP2* p, UPDATEFCN u)

virtual OPTPP::OptBaNewton::~OptBaNewton (  )  [inline, virtual]

Destructor


Member Function Documentation

void OPTPP::OptBaNewton::acceptStep ( int  ,
int   
) [virtual]

Note:
Pure virtual functions

Each derived class must define these functions for themselves

Reimplemented from OPTPP::OptBCNewtonLike.

int OPTPP::OptBaNewton::checkConvg (  )  [virtual]

Check to see if algorithm satisfies the convergence criterion.

Reimplemented from OPTPP::OptBCNewtonLike.

int OPTPP::OptBaNewton::checkInnerConvg ( int   ) 

double OPTPP::OptBaNewton::compute_Barrier_Fvalue ( double  ,
NEWMAT::ColumnVector &   
)

NEWMAT::ColumnVector OPTPP::OptBaNewton::compute_Barrier_Gradient ( NEWMAT::ColumnVector &  ,
NEWMAT::ColumnVector &   
)

NEWMAT::SymmetricMatrix OPTPP::OptBaNewton::compute_Barrier_Hessian ( NEWMAT::SymmetricMatrix &  ,
NEWMAT::ColumnVector &   
)

double OPTPP::OptBaNewton::computeMaxStep ( NEWMAT::ColumnVector &   )  [virtual]

before we hit a constraint

Reimplemented from OPTPP::OptBCNewtonLike.

NEWMAT::ColumnVector OPTPP::OptBaNewton::computeSearch2 ( NEWMAT::SymmetricMatrix &  ,
NEWMAT::ColumnVector &   
)

int OPTPP::OptBaNewton::computeStep ( NEWMAT::ColumnVector   )  [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.

double OPTPP::OptBaNewton::scalarNewton ( double  ,
double  ,
double  ,
double  ,
double   
)

void OPTPP::OptBaNewton::setAsideCurrentVariables (  ) 

void OPTPP::OptBaNewton::updateBarrierMultiplier (  ) 

NEWMAT::SymmetricMatrix OPTPP::OptBaNewton::updateH ( NEWMAT::SymmetricMatrix &  H,
int  k 
) [virtual]

Compute the Hessian or its approximation at the current point.

Implements OPTPP::OptBCNewtonLike.


Member Data Documentation

double OPTPP::OptBaNewton::fprev_barrier [private]

double OPTPP::OptBaNewton::fprev_outer [private]

double OPTPP::OptBaNewton::fvalue_barrier [private]

Value of barrier function.

NEWMAT::ColumnVector OPTPP::OptBaNewton::gprev_barrier [private]

NEWMAT::ColumnVector OPTPP::OptBaNewton::grad_barrier [private]

Gradient of barrier function.

NEWMAT::SymmetricMatrix OPTPP::OptBaNewton::Hess_barrier [private]

Hessian of barrier function.

double OPTPP::OptBaNewton::mu [private]

Barrier parameter.


The documentation for this class was generated from the following files:
Bug Reports    OPT++ Developers    Copyright Information    GNU Lesser General Public License
Documentation, generated by , last revised August 30, 2006.