Public Member Functions | Protected Attributes | List of all members

Implements a Gauss-Newton approximation with block BFGS updates as second-order derivatives within NLPsolvers. More...

#include <gauss_newton_approximation_bfgs.hpp>

Inheritance diagram for GaussNewtonApproximationWithBFGS:
Inheritance graph
[legend]

Public Member Functions

virtual returnValue apply (BlockMatrix &B, const BlockMatrix &x, const BlockMatrix &y)
 
virtual NLPderivativeApproximationclone () const
 
 GaussNewtonApproximationWithBFGS ()
 
 GaussNewtonApproximationWithBFGS (UserInteraction *_userInteraction, uint _nBlocks=0)
 
 GaussNewtonApproximationWithBFGS (const GaussNewtonApproximationWithBFGS &rhs)
 
virtual returnValue initHessian (BlockMatrix &B, uint N, const OCPiterate &iter)
 
virtual returnValue initScaling (BlockMatrix &B, const BlockMatrix &x, const BlockMatrix &y)
 
GaussNewtonApproximationWithBFGSoperator= (const GaussNewtonApproximationWithBFGS &rhs)
 
virtual ~GaussNewtonApproximationWithBFGS ()
 
- Public Member Functions inherited from GaussNewtonApproximation
 GaussNewtonApproximation ()
 
 GaussNewtonApproximation (UserInteraction *_userInteraction)
 
 GaussNewtonApproximation (const GaussNewtonApproximation &rhs)
 
GaussNewtonApproximationoperator= (const GaussNewtonApproximation &rhs)
 
virtual ~GaussNewtonApproximation ()
 
- Public Member Functions inherited from NLPderivativeApproximation
double getHessianScaling () const
 
 NLPderivativeApproximation ()
 
 NLPderivativeApproximation (UserInteraction *_userInteraction)
 
 NLPderivativeApproximation (const NLPderivativeApproximation &rhs)
 
NLPderivativeApproximationoperator= (const NLPderivativeApproximation &rhs)
 
virtual ~NLPderivativeApproximation ()
 
- Public Member Functions inherited from AlgorithmicBase
int addLogRecord (LogRecord &_record)
 
returnValue addOption (OptionsName name, int value)
 
returnValue addOption (OptionsName name, double value)
 
returnValue addOption (uint idx, OptionsName name, int value)
 
returnValue addOption (uint idx, OptionsName name, double value)
 
returnValue addOptionsList ()
 
 AlgorithmicBase ()
 
 AlgorithmicBase (UserInteraction *_userInteraction)
 
 AlgorithmicBase (const AlgorithmicBase &rhs)
 
returnValue get (OptionsName name, int &value) const
 
returnValue get (OptionsName name, double &value) const
 
returnValue get (OptionsName name, std::string &value) const
 
returnValue get (uint idx, OptionsName name, int &value) const
 
returnValue get (uint idx, OptionsName name, double &value) const
 
returnValue getAll (LogName _name, MatrixVariablesGrid &values) const
 
returnValue getFirst (LogName _name, DMatrix &firstValue) const
 
returnValue getFirst (LogName _name, VariablesGrid &firstValue) const
 
returnValue getLast (LogName _name, DMatrix &lastValue) const
 
returnValue getLast (LogName _name, VariablesGrid &lastValue) const
 
Options getOptions (uint idx) const
 
BooleanType haveOptionsChanged () const
 
BooleanType haveOptionsChanged (uint idx) const
 
AlgorithmicBaseoperator= (const AlgorithmicBase &rhs)
 
returnValue plot (PlotFrequency _frequency=PLOT_IN_ANY_CASE)
 
returnValue printLogRecord (std::ostream &_stream, int idx, LogPrintMode _mode=PRINT_ITEM_BY_ITEM) const
 
returnValue replot (PlotFrequency _frequency=PLOT_IN_ANY_CASE)
 
returnValue set (OptionsName name, int value)
 
returnValue set (OptionsName name, double value)
 
returnValue set (OptionsName name, const std::string &value)
 
returnValue set (uint idx, OptionsName name, int value)
 
returnValue set (uint idx, OptionsName name, double value)
 
returnValue setAll (LogName _name, const MatrixVariablesGrid &values)
 
returnValue setLast (LogName _name, int lastValue, double time=-INFTY)
 
returnValue setLast (LogName _name, double lastValue, double time=-INFTY)
 
returnValue setLast (LogName _name, const DVector &lastValue, double time=-INFTY)
 
returnValue setLast (LogName _name, const DMatrix &lastValue, double time=-INFTY)
 
returnValue setLast (LogName _name, const VariablesGrid &lastValue, double time=-INFTY)
 
returnValue setOptions (const Options &arg)
 
returnValue setOptions (uint idx, const Options &arg)
 
virtual ~AlgorithmicBase ()
 

Protected Attributes

BFGSupdatebfgsUpdate
 
- Protected Attributes inherited from NLPderivativeApproximation
double hessianScaling
 
- Protected Attributes inherited from AlgorithmicBase
int outputLoggingIdx
 
BooleanType useModuleStandalone
 
UserInteractionuserInteraction
 

Additional Inherited Members

- Protected Member Functions inherited from NLPderivativeApproximation
virtual returnValue setupLogging ()
 
virtual returnValue setupOptions ()
 

Detailed Description

Implements a Gauss-Newton approximation with block BFGS updates as second-order derivatives within NLPsolvers.

The class GaussNewtonApproximationBFGS implements a Gauss-Newton approximation combined with block BFGS updates as approximation of second-order derivative information within iterative NLPsolvers.

Author
Boris Houska, Hans Joachim Ferreau

Definition at line 59 of file gauss_newton_approximation_bfgs.hpp.

Constructor & Destructor Documentation

BEGIN_NAMESPACE_ACADO GaussNewtonApproximationWithBFGS::GaussNewtonApproximationWithBFGS ( )

Default constructor.

Definition at line 45 of file gauss_newton_approximation_bfgs.cpp.

GaussNewtonApproximationWithBFGS::GaussNewtonApproximationWithBFGS ( UserInteraction _userInteraction,
uint  _nBlocks = 0 
)

Constructor that takes the number of blocks for matrix block updates.

Definition at line 51 of file gauss_newton_approximation_bfgs.cpp.

GaussNewtonApproximationWithBFGS::GaussNewtonApproximationWithBFGS ( const GaussNewtonApproximationWithBFGS rhs)

Copy constructor (deep copy).

Definition at line 59 of file gauss_newton_approximation_bfgs.cpp.

GaussNewtonApproximationWithBFGS::~GaussNewtonApproximationWithBFGS ( )
virtual

Destructor.

Definition at line 68 of file gauss_newton_approximation_bfgs.cpp.

Member Function Documentation

returnValue GaussNewtonApproximationWithBFGS::apply ( BlockMatrix B,
const BlockMatrix x,
const BlockMatrix y 
)
virtual
Parameters
Bmatrix to be updated
xdirection x
yresiduum

Reimplemented from GaussNewtonApproximation.

Definition at line 125 of file gauss_newton_approximation_bfgs.cpp.

NLPderivativeApproximation * GaussNewtonApproximationWithBFGS::clone ( ) const
virtual

Reimplemented from GaussNewtonApproximation.

Definition at line 94 of file gauss_newton_approximation_bfgs.cpp.

returnValue GaussNewtonApproximationWithBFGS::initHessian ( BlockMatrix B,
uint  N,
const OCPiterate iter 
)
virtual
Parameters
Bmatrix to be initialised
Nnumber of intervals
itercurrent iterate

Reimplemented from GaussNewtonApproximation.

Definition at line 101 of file gauss_newton_approximation_bfgs.cpp.

returnValue GaussNewtonApproximationWithBFGS::initScaling ( BlockMatrix B,
const BlockMatrix x,
const BlockMatrix y 
)
virtual
Parameters
Bmatrix to be updated
xdirection x
yresiduum

Reimplemented from GaussNewtonApproximation.

Definition at line 110 of file gauss_newton_approximation_bfgs.cpp.

GaussNewtonApproximationWithBFGS & GaussNewtonApproximationWithBFGS::operator= ( const GaussNewtonApproximationWithBFGS rhs)

Assignment operator (deep copy).

Definition at line 75 of file gauss_newton_approximation_bfgs.cpp.

Member Data Documentation

BFGSupdate* GaussNewtonApproximationWithBFGS::bfgsUpdate
protected

Definition at line 116 of file gauss_newton_approximation_bfgs.hpp.


The documentation for this class was generated from the following files:


acado
Author(s): Milan Vukov, Rien Quirynen
autogenerated on Mon Jun 10 2019 12:35:24