Class eHQP
Defined in File eHQP.h
Inheritance Relationships
Base Type
public OpenSoT::Solver< Eigen::MatrixXd, Eigen::VectorXd >
(Template Class Solver)
Class Documentation
-
class eHQP : public OpenSoT::Solver<Eigen::MatrixXd, Eigen::VectorXd>
The eHQP class implements an equality Hierarchical QP solver as the one used in: “Prioritized Multi-Task Motion Control of Redundant Robots under Hard Joint Constraints” by Fabrizio Flacco, Alessandro De Luca and Oussama Khatib.
NOTE: Here we do not take into account the c paramter in Task.h for Linear Programming!
Public Functions
-
eHQP(Stack &stack)
creates a pseudoinverse solver for the current Stack
-
virtual bool solve(Eigen::VectorXd &solution)
solve solve the optimization problem by minimizing the error in the weighted least squares sense
- Parameters
solution – the argmin of the optimization
- Returns
true if solved/solvable
-
double getSigmaMin() const
getSigmaMin minimum number considered to apply the damped pseudo-inverse
- Returns
sigma_min
-
void setSigmaMin(const double &sigma_min)
setSigmaMin
- Parameters
sigma_min – minimum number considered to apply the damped pseudo-inverse if min(singular_values) < sigma_min then: singular_values_inv[i] = singular_values[i]/(singular_values[i]^2 + min(singular_values)^2)
-
eHQP(Stack &stack)