Class eiQuadProgBackEnd
Defined in File eiQuadProgBackEnd.h
Inheritance Relationships
Base Type
public OpenSoT::solvers::BackEnd
(Class BackEnd)
Class Documentation
-
class eiQuadProgBackEnd : public OpenSoT::solvers::BackEnd
The eiQuadProgBackEnd class implements a back-end based on eiQuadProg by B.
Stepehn https://www.cs.cmu.edu/~bstephe1/eiquadprog.hpp
Public Types
-
typedef MatrixPiler VectorPiler
Public Functions
-
eiQuadProgBackEnd(const int number_of_variables, const int number_of_constraints, const double eps_regularisation = EIQUADPROG_DEFAULT_EPS_REGULARISATION)
-
~eiQuadProgBackEnd()
-
virtual bool initProblem(const Eigen::MatrixXd &H, const Eigen::VectorXd &g, const Eigen::MatrixXd &A, const Eigen::VectorXd &lA, const Eigen::VectorXd &uA, const Eigen::VectorXd &l, const Eigen::VectorXd &u)
PURE VIRTUAL METHODS:
initProblem initialize the QP problem and get the solution, the dual solution, bounds and constraints. The QP problem has the following structure:
st. lA <= Ax <= uA l <= x <= umin = ||Hx - g||
- Parameters
H – Task Matrix
g – Task references
A – Constraint Matrix
lA – lower constraint Eigen::VectorXd
uA – upper constraint Eigen::VectorXd
l – lower bounds
u – upper bounds
- Returns
true if the problem can be solved
-
virtual bool solve()
solve the QP problem
- Returns
true if the QP problem is solved (implementation should use internally _solution)
-
virtual double getObjective()
getObjective to retrieve the value of the objective function
- Returns
the value of the objective function at the optimum
-
virtual boost::any getOptions()
getOptions return the options of the QP problem
- Returns
options, a boost::any object since we do not know the type of the object which depends on the solver
-
virtual void setOptions(const boost::any &options)
setOptions of the QP problem.
- Parameters
options, a – boost::any object since we do not know the type of the object which depends on the solver
-
virtual bool setEpsRegularisation(const double eps)
setEpsRegularisation OVERWRITES the actual eps regularisation factor
- Parameters
eps – the new regularisation factor
- Returns
false if eps < 0
-
inline virtual double getEpsRegularisation()
getEpsRegularisation return internal solver eps
- Returns
eps value
-
typedef MatrixPiler VectorPiler