ocra-recipes
Doxygen documentation for the ocra-recipes repository
Classes | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
ocra::CascadeQPSolver Class Reference

CascadeQPSolver class. More...

#include <CascadeQPSolver.h>

Inheritance diagram for ocra::CascadeQPSolver:
[legend]
Collaboration diagram for ocra::CascadeQPSolver:
[legend]

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 OptimizationResultsolve ()
 
const OptimizationResultgetLastResult () 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 ()
 
VariablegetProblemVariable ()
 
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< StandardObjectivesAndConstraintsown_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
 

Detailed Description

CascadeQPSolver class.

Hierarchical solver based on CascadeQP

Definition at line 57 of file CascadeQPSolver.h.

Constructor & Destructor Documentation

ocra::CascadeQPSolver::CascadeQPSolver ( const std::string &  _ctrlName,
Model::Ptr  _innerModel,
OneLevelSolver::Ptr  _levelSolver,
bool  _useReducedProblem 
)

Definition at line 51 of file CascadeQPSolver.cpp.

Member Function Documentation

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.

void ocra::CascadeQPSolver::doConclude ( )
protectedvirtual

Implements ocra::Solver.

Definition at line 167 of file CascadeQPSolver.cpp.

void ocra::CascadeQPSolver::doPrepare ( void  )
protectedvirtual

Implements ocra::Solver.

Definition at line 161 of file CascadeQPSolver.cpp.

void ocra::CascadeQPSolver::doSolve ( void  )
protectedvirtual

Implements ocra::Solver.

Definition at line 139 of file CascadeQPSolver.cpp.

void ocra::CascadeQPSolver::excludeObjective ( int  at_level,
const ocra::GenericObjective obj 
)
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.

void ocra::CascadeQPSolver::printValuesAtSolution ( void  )
protectedvirtual

Implements ocra::Solver.

Definition at line 270 of file CascadeQPSolver.cpp.

std::string ocra::CascadeQPSolver::toString ( )
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.

Member Data Documentation

Model::Ptr ocra::CascadeQPSolver::innerModel
protected

Definition at line 91 of file CascadeQPSolver.h.

OneLevelSolver::Ptr ocra::CascadeQPSolver::levelSolver
protected

Definition at line 89 of file CascadeQPSolver.h.

std::shared_ptr<StandardObjectivesAndConstraints> ocra::CascadeQPSolver::own_obj
protected

Definition at line 85 of file CascadeQPSolver.h.

std::vector<int> ocra::CascadeQPSolver::solverInitialized
protected

Definition at line 87 of file CascadeQPSolver.h.

std::map<int,std::shared_ptr<StandardObjectivesAndConstraints> > ocra::CascadeQPSolver::std_obj
protected

Definition at line 88 of file CascadeQPSolver.h.

bool ocra::CascadeQPSolver::useReducedProblem
protected

Definition at line 90 of file CascadeQPSolver.h.


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