ocra-recipes
Doxygen documentation for the ocra-recipes repository
|
CascadeQPSolver class. More...
#include <CascadeQPSolver.h>
Classes | |
struct | StandardObjectivesAndConstraints |
Public Member Functions | |
CascadeQPSolver (const std::string &_ctrlName, Model::Ptr _innerModel, OneLevelSolver::Ptr _levelSolver, bool _useReducedProblem) | |
void | addTask (Task::Ptr task) |
void | addSolver (OneLevelSolver::Ptr solver, int level) |
OneLevelSolver::Ptr | getSolver (int level) |
virtual std::string | toString () |
const std::map< int, OneLevelSolver::Ptr > & | getSolvers () |
void | updateHierarchicalContraints (int level) |
int | getNumberOfLevelsAbove (int current_level) |
Public Member Functions inherited from ocra::Solver | |
const std::vector< int > & | findMapping (Variable &var) |
virtual | ~Solver () |
const OptimizationResult & | solve () |
const OptimizationResult & | getLastResult () const |
void | printStatus (std::ostream &os) |
virtual const std::string & | getMoreInfo () const |
void | setMemoryLevel (int level) |
void | setAutoDumpFile (const std::string &file) |
void | activateAutoDump () |
void | deactivateAutoDump () |
void | dump (const std::string &file="") const |
int | n () |
Variable & | getProblemVariable () |
void | setVariableValue (const VectorXd &value) |
Public Member Functions inherited from ocra::ObserverSubject | |
ObserverSubject () | |
virtual | ~ObserverSubject () |
Public Member Functions inherited from ocra::Observer | |
virtual | ~Observer () |
template<int EVT> | |
void | bind (SubjectBase< EVT > &subject) |
Call this method to automatically propagate observed events to observers connected to the subject given in argument. More... | |
template<int EVT> | |
void | stopPropagation () |
Public Member Functions inherited from ocra::ObserverBase< EVT_RESIZE > | |
void | bind (subject_type &subject) |
Call this method to automatically propagate observed events to observers connected to the subject given in argument. More... | |
Public Member Functions inherited from ocra::ObserverBase< EVT_CHANGE_DEPENDENCIES > | |
void | bind (subject_type &subject) |
Call this method to automatically propagate observed events to observers connected to the subject given in argument. More... | |
Public Member Functions inherited from ocra::ObserverBase< EVT_CHANGE_VALUE > | |
void | bind (subject_type &subject) |
Call this method to automatically propagate observed events to observers connected to the subject given in argument. More... | |
Public Member Functions inherited from ocra::Subject | |
virtual | ~Subject () |
template<int EVT, class Derived , class Base > | |
void | connect (Derived &object, void(Base::*newCallback)(int)) const |
Call this method to register a non-static method as a callback. More... | |
template<int EVT> | |
void | connect (void(*newCallback)(int)) const |
Call this method to register a free function as a callback. More... | |
template<int EVT, class Derived , class Base > | |
void | disconnect (Derived &object, void(Base::*callbackToErase)(int)) const |
Disconnect non-static method. More... | |
template<int EVT> | |
void | disconnect (void(*callbackToErase)(int)) const |
Disconnect free function. More... | |
template<int EVT> | |
void | propagate () const |
template<int EVT> | |
void | propagate (int timestamp) const |
Public Member Functions inherited from ocra::SubjectBase< EVT_RESIZE > | |
void | connect (T &object, typename SubjectBaseTraits< EVT, T >::callback_type newCallback) const |
Call this method to register a non-static method as a callback. More... | |
void | connect (typename SubjectBaseTraits< EVT, void >::callback_type newCallback) const |
Call this method to register a free function as a callback. More... | |
void | disconnect (T &object, typename SubjectBaseTraits< EVT, T >::callback_type callback) const |
Disconnect non-static method. More... | |
void | disconnect (typename SubjectBaseTraits< EVT, void >::callback_type callbackToErase) const |
Disconnect free function. More... | |
void | propagate (int timestamp) const |
void | propagate () const |
Public Member Functions inherited from ocra::SubjectBase< EVT_CHANGE_DEPENDENCIES > | |
void | connect (T &object, typename SubjectBaseTraits< EVT, T >::callback_type newCallback) const |
Call this method to register a non-static method as a callback. More... | |
void | connect (typename SubjectBaseTraits< EVT, void >::callback_type newCallback) const |
Call this method to register a free function as a callback. More... | |
void | disconnect (T &object, typename SubjectBaseTraits< EVT, T >::callback_type callback) const |
Disconnect non-static method. More... | |
void | disconnect (typename SubjectBaseTraits< EVT, void >::callback_type callbackToErase) const |
Disconnect free function. More... | |
void | propagate (int timestamp) const |
void | propagate () const |
Public Member Functions inherited from ocra::SubjectBase< EVT_CHANGE_VALUE > | |
void | connect (T &object, typename SubjectBaseTraits< EVT, T >::callback_type newCallback) const |
Call this method to register a non-static method as a callback. More... | |
void | connect (typename SubjectBaseTraits< EVT, void >::callback_type newCallback) const |
Call this method to register a free function as a callback. More... | |
void | disconnect (T &object, typename SubjectBaseTraits< EVT, T >::callback_type callback) const |
Disconnect non-static method. More... | |
void | disconnect (typename SubjectBaseTraits< EVT, void >::callback_type callbackToErase) const |
Disconnect free function. More... | |
void | propagate (int timestamp) const |
void | propagate () const |
Public Member Functions inherited from ocra::NamedInstance | |
NamedInstance (const std::string &name) | |
const std::string & | getName () const |
virtual | ~NamedInstance () |
Protected Member Functions | |
virtual void | doSolve (void) |
virtual void | doPrepare (void) |
virtual void | doConclude () |
virtual void | printValuesAtSolution () |
void | excludeObjective (int at_level, const ocra::GenericObjective &obj) |
Protected Member Functions inherited from ocra::Solver | |
Solver () | |
void | internalAddObjective (const GenericObjective &objective) |
void | internalAddConstraint (const GenericConstraint &constraint) |
void | internalRemoveObjective (const GenericObjective &objective) |
void | internalRemoveConstraint (const GenericConstraint &constraint) |
virtual void | onConstraintResize (int timestamp) |
virtual void | onObjectiveResize (int timestamp) |
Protected Member Functions inherited from ocra::ObserverBase< EVT_RESIZE > | |
void | stopPropagation () |
Call this method from your callbacks to avoid propagation to the bound subject (if any). More... | |
ObserverBase () | |
~ObserverBase () | |
Protected Member Functions inherited from ocra::ObserverBase< EVT_CHANGE_DEPENDENCIES > | |
void | stopPropagation () |
Call this method from your callbacks to avoid propagation to the bound subject (if any). More... | |
ObserverBase () | |
~ObserverBase () | |
Protected Member Functions inherited from ocra::ObserverBase< EVT_CHANGE_VALUE > | |
void | stopPropagation () |
Call this method from your callbacks to avoid propagation to the bound subject (if any). More... | |
ObserverBase () | |
~ObserverBase () | |
Protected Member Functions inherited from ocra::SubjectBase< EVT_RESIZE > | |
SubjectBase () | |
~SubjectBase () | |
Protected Member Functions inherited from ocra::SubjectBase< EVT_CHANGE_DEPENDENCIES > | |
SubjectBase () | |
~SubjectBase () | |
Protected Member Functions inherited from ocra::SubjectBase< EVT_CHANGE_VALUE > | |
SubjectBase () | |
~SubjectBase () | |
Protected Attributes | |
std::shared_ptr< StandardObjectivesAndConstraints > | own_obj |
std::vector< int > | solverInitialized |
std::map< int, std::shared_ptr< StandardObjectivesAndConstraints > > | std_obj |
OneLevelSolver::Ptr | levelSolver |
bool | useReducedProblem |
Model::Ptr | innerModel |
Protected Attributes inherited from ocra::Solver | |
OptimizationResult | _result |
Additional Inherited Members | |
Protected Types inherited from ocra::ObserverBase< EVT_RESIZE > | |
typedef SubjectBase< EVT > | subject_type |
typedef InvokerBase< EVT > | invoker_type |
Protected Types inherited from ocra::ObserverBase< EVT_CHANGE_DEPENDENCIES > | |
typedef SubjectBase< EVT > | subject_type |
typedef InvokerBase< EVT > | invoker_type |
Protected Types inherited from ocra::ObserverBase< EVT_CHANGE_VALUE > | |
typedef SubjectBase< EVT > | subject_type |
typedef InvokerBase< EVT > | invoker_type |
CascadeQPSolver class.
Hierarchical solver based on CascadeQP
Definition at line 57 of file CascadeQPSolver.h.
ocra::CascadeQPSolver::CascadeQPSolver | ( | const std::string & | _ctrlName, |
Model::Ptr | _innerModel, | ||
OneLevelSolver::Ptr | _levelSolver, | ||
bool | _useReducedProblem | ||
) |
Definition at line 51 of file CascadeQPSolver.cpp.
void ocra::CascadeQPSolver::addSolver | ( | OneLevelSolver::Ptr | solver, |
int | level | ||
) |
Definition at line 182 of file CascadeQPSolver.cpp.
void ocra::CascadeQPSolver::addTask | ( | Task::Ptr | task | ) |
Definition at line 232 of file CascadeQPSolver.cpp.
|
protectedvirtual |
Implements ocra::Solver.
Definition at line 167 of file CascadeQPSolver.cpp.
|
protectedvirtual |
Implements ocra::Solver.
Definition at line 161 of file CascadeQPSolver.cpp.
|
protectedvirtual |
Implements ocra::Solver.
Definition at line 139 of file CascadeQPSolver.cpp.
|
protected |
Definition at line 218 of file CascadeQPSolver.cpp.
int ocra::CascadeQPSolver::getNumberOfLevelsAbove | ( | int | current_level | ) |
Definition at line 128 of file CascadeQPSolver.cpp.
OneLevelSolver::Ptr ocra::CascadeQPSolver::getSolver | ( | int | level | ) |
Definition at line 214 of file CascadeQPSolver.cpp.
const std::map< int, OneLevelSolver::Ptr > & ocra::CascadeQPSolver::getSolvers | ( | ) |
Definition at line 177 of file CascadeQPSolver.cpp.
|
protectedvirtual |
Implements ocra::Solver.
Definition at line 270 of file CascadeQPSolver.cpp.
|
virtual |
Returns the state of the solver (e.g. matrices) as a string.
Implements ocra::Solver.
Definition at line 173 of file CascadeQPSolver.cpp.
void ocra::CascadeQPSolver::updateHierarchicalContraints | ( | int | level | ) |
Definition at line 71 of file CascadeQPSolver.cpp.
|
protected |
Definition at line 91 of file CascadeQPSolver.h.
|
protected |
Definition at line 89 of file CascadeQPSolver.h.
|
protected |
Definition at line 85 of file CascadeQPSolver.h.
|
protected |
Definition at line 87 of file CascadeQPSolver.h.
|
protected |
Definition at line 88 of file CascadeQPSolver.h.
|
protected |
Definition at line 90 of file CascadeQPSolver.h.