Class GLPKBackEnd
Defined in File GLPKBackEnd.h
Inheritance Relationships
Base Type
public OpenSoT::solvers::BackEnd
(Class BackEnd)
Class Documentation
-
class GLPKBackEnd : public OpenSoT::solvers::BackEnd
-
Public Functions
-
GLPKBackEnd(const int number_of_variables, const int number_of_constraints, const double eps_regularisation = 0.0)
-
~GLPKBackEnd()
-
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)
H NOT USED! g Linear cost function: g’x A Linear Constraints Ax lA/uA constraints l/u bounds.
-
virtual bool solve()
solve the QP problem
- Returns
true if the QP problem is solved (implementation should use internally _solution)
-
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
-
inline 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 double getObjective()
getObjective to retrieve the value of the objective function
- Returns
the value of the objective function at the optimum
-
Eigen::VectorXd getGLPKUpperBounds()
-
Eigen::VectorXd getGLPKLowerBounds()
-
Eigen::VectorXd getGLPKUpperConstraints()
-
Eigen::VectorXd getGLPKLowerConstraints()
-
Eigen::MatrixXd getGLPKConstraintMatrix()
-
int writeLP()
writeLP call glp_write_lp to have text file of the problem
- Returns
check glpk.h
-
struct GLPKBackEndOptions
Public Members
-
int ROUND_BOUNDS = 0
ROUND_BOUNDS 0: bounds are not rounded 1: bounds are rounded to nearest sup integer -1: bounds are rounded to nearest inf integer.
-
std::vector<var_id_kind> var_id_kind_
-
std::shared_ptr<glp_iocp> param
-
int ROUND_BOUNDS = 0
-
GLPKBackEnd(const int number_of_variables, const int number_of_constraints, const double eps_regularisation = 0.0)