Base class for different algorithms for solving nonlinear programming (NLP) problems. More...
#include <nlp_solver.hpp>
Base class for different algorithms for solving nonlinear programming (NLP) problems.
The class NLPsolver serves as a base class for all kind of different algorithms for solving nonlinear programming (NLP) problems.
Definition at line 59 of file nlp_solver.hpp.
BEGIN_NAMESPACE_ACADO NLPsolver::NLPsolver | ( | UserInteraction * | _userInteraction = 0 | ) |
Default constructor.
Definition at line 46 of file nlp_solver.cpp.
NLPsolver::NLPsolver | ( | const NLPsolver & | rhs | ) |
Copy constructor (deep copy).
Definition at line 59 of file nlp_solver.cpp.
NLPsolver::~NLPsolver | ( | ) | [virtual] |
Destructor.
Definition at line 65 of file nlp_solver.cpp.
virtual NLPsolver* NLPsolver::clone | ( | ) | const [pure virtual] |
Implemented in SCPmethod.
returnValue NLPsolver::feedbackStep | ( | const DVector & | x0_, |
const DVector & | p_ = emptyConstVector |
||
) | [virtual] |
Executes a real-time feedback step
Reimplemented in SCPmethod.
Definition at line 89 of file nlp_solver.cpp.
returnValue NLPsolver::getAlgebraicStates | ( | VariablesGrid & | xa_ | ) | const [virtual] |
Reimplemented in SCPmethod.
Definition at line 137 of file nlp_solver.cpp.
returnValue NLPsolver::getControls | ( | VariablesGrid & | u_ | ) | const [virtual] |
Reimplemented in SCPmethod.
Definition at line 154 of file nlp_solver.cpp.
returnValue NLPsolver::getDifferentialStates | ( | VariablesGrid & | xd_ | ) | const [virtual] |
Reimplemented in SCPmethod.
Definition at line 131 of file nlp_solver.cpp.
returnValue NLPsolver::getDisturbances | ( | VariablesGrid & | w_ | ) | const [virtual] |
Reimplemented in SCPmethod.
Definition at line 166 of file nlp_solver.cpp.
returnValue NLPsolver::getFirstControl | ( | DVector & | u0_ | ) | const [virtual] |
Reimplemented in SCPmethod.
Definition at line 160 of file nlp_solver.cpp.
int NLPsolver::getNumberOfSteps | ( | ) | const [inline] |
double NLPsolver::getObjectiveValue | ( | ) | const [virtual] |
Reimplemented in SCPmethod.
Definition at line 172 of file nlp_solver.cpp.
returnValue NLPsolver::getParameters | ( | VariablesGrid & | p_ | ) | const [virtual] |
Reimplemented in SCPmethod.
Definition at line 143 of file nlp_solver.cpp.
returnValue NLPsolver::getParameters | ( | DVector & | p_ | ) | const [virtual] |
Reimplemented in SCPmethod.
Definition at line 148 of file nlp_solver.cpp.
returnValue NLPsolver::getSensitivitiesP | ( | BlockMatrix & | _sens | ) | const [virtual] |
Reimplemented in SCPmethod.
Definition at line 191 of file nlp_solver.cpp.
returnValue NLPsolver::getSensitivitiesU | ( | BlockMatrix & | _sens | ) | const [virtual] |
Reimplemented in SCPmethod.
Definition at line 198 of file nlp_solver.cpp.
returnValue NLPsolver::getSensitivitiesW | ( | BlockMatrix & | _sens | ) | const [virtual] |
Reimplemented in SCPmethod.
Definition at line 205 of file nlp_solver.cpp.
returnValue NLPsolver::getSensitivitiesX | ( | BlockMatrix & | _sens | ) | const [virtual] |
Reimplemented in SCPmethod.
Definition at line 178 of file nlp_solver.cpp.
returnValue NLPsolver::getSensitivitiesXA | ( | BlockMatrix & | _sens | ) | const [virtual] |
Reimplemented in SCPmethod.
Definition at line 185 of file nlp_solver.cpp.
virtual returnValue NLPsolver::getVarianceCovariance | ( | DMatrix & | var | ) | [pure virtual] |
Returns a variance-covariance estimate if possible or an error message otherwise.
Implemented in SCPmethod.
virtual returnValue NLPsolver::init | ( | VariablesGrid * | xd, |
VariablesGrid * | xa, | ||
VariablesGrid * | p, | ||
VariablesGrid * | u, | ||
VariablesGrid * | w | ||
) | [pure virtual] |
Assignment operator (deep copy).
Definition at line 70 of file nlp_solver.cpp.
returnValue NLPsolver::performCurrentStep | ( | ) | [virtual] |
Executes a real-time preparation step
Reimplemented in SCPmethod.
Definition at line 95 of file nlp_solver.cpp.
returnValue NLPsolver::prepareNextStep | ( | ) | [virtual] |
Executes a real-time preparation step
Reimplemented in SCPmethod.
Definition at line 101 of file nlp_solver.cpp.
returnValue NLPsolver::resetNumberOfSteps | ( | ) | [inline] |
returnValue NLPsolver::setReference | ( | const VariablesGrid & | ref | ) | [virtual] |
Sets the reference to be used in the LSQ tracking terms. If the objective
has also non-LSQ terms a error message will be returned (cf. objective.hpp).
This routine has been designed for real-time applications where the reference
is explicitly time-dependent.
Reimplemented in SCPmethod.
Definition at line 125 of file nlp_solver.cpp.
returnValue NLPsolver::setupLogging | ( | ) | [protected, virtual] |
Reimplemented in SCPmethod.
Definition at line 248 of file nlp_solver.cpp.
returnValue NLPsolver::setupOptions | ( | ) | [protected, virtual] |
Definition at line 217 of file nlp_solver.cpp.
returnValue NLPsolver::shiftVariables | ( | double | timeShift, |
DVector | lastX = emptyVector , |
||
DVector | lastXA = emptyVector , |
||
DVector | lastP = emptyVector , |
||
DVector | lastU = emptyVector , |
||
DVector | lastW = emptyVector |
||
) | [virtual] |
Applies a shift of the SQP data (for moving horizons)
Reimplemented in SCPmethod.
Definition at line 114 of file nlp_solver.cpp.
returnValue NLPsolver::solve | ( | const DVector & | x0_ = emptyConstVector , |
const DVector & | p_ = emptyConstVector |
||
) | [virtual] |
Solves current real-time optimization problem.
Reimplemented in SCPmethod.
Definition at line 82 of file nlp_solver.cpp.
returnValue NLPsolver::step | ( | const DVector & | x0_ = emptyConstVector , |
const DVector & | p_ = emptyConstVector |
||
) | [virtual] |
Executes a complete real-time step.
Reimplemented in SCPmethod.
Definition at line 107 of file nlp_solver.cpp.
int NLPsolver::numberOfSteps [protected] |
Definition at line 185 of file nlp_solver.hpp.