|
wbc
|
The ProxQPSolver class is a wrapper for the qp-solver prox-qp (see https://github.com/Simple-Robotics/proxsuite). It solves problems of shape: More...
#include <ProxQPSolver.hpp>
Public Member Functions | |
| ProxQPSolver () | |
| virtual | ~ProxQPSolver () noexcept |
| virtual void | solve (const wbc::HierarchicalQP &hierarchical_qp, Eigen::VectorXd &solver_output, bool allow_warm_start=true) |
| solve Solve the given quadratic program | |
| int | getNter () |
| void | setOptions (proxsuite::proxqp::Settings< double > opt) |
Public Member Functions inherited from wbc::QPSolver | |
| QPSolver () | |
| virtual | ~QPSolver () |
| void | reset () |
| reset Enforces reconfiguration at next call to solve() | |
Protected Attributes | |
| std::shared_ptr< proxsuite::proxqp::dense::QP< double > > | _solver_ptr |
| int | _actual_n_iter |
| Eigen::MatrixXd | _C_mtx |
| Eigen::VectorXd | _l_vec |
| Eigen::VectorXd | _u_vec |
| proxsuite::proxqp::Settings< double > | settings |
Protected Attributes inherited from wbc::QPSolver | |
| bool | configured |
The ProxQPSolver class is a wrapper for the qp-solver prox-qp (see https://github.com/Simple-Robotics/proxsuite). It solves problems of shape:
\[ \begin{array}{ccc} min(\mathbf{x}) & \frac{1}{2} \mathbf{x}^T\mathbf{H}\mathbf{x}+\mathbf{x}^T\mathbf{g}& \\ & & \\ s.t. & \mathbf{Ax} = \mathbf{b}& \\ & \mathbf{l} \leq \mathbf{Cx} \leq \mathbf{u}& \\ \end{array} \]
Reference: Antoine Bambade, Sarah El-Kazdadi, Adrien Taylor, Justin Carpentier. PROX-QP: Yet another Quadratic Programming Solver for Robotics and beyond. RSS 2022 - Robotics: Science and Systems, Jun 2022, New York, United States. ⟨hal-03683733⟩
Parameters:
| wbc::ProxQPSolver::ProxQPSolver | ( | ) |
|
inlinevirtualnoexcept |
|
inline |
Get number of working set recalculations actually performed
|
inline |
Set Solver options. Has to be called before first call to solve()!
|
virtual |
solve Solve the given quadratic program
| constraints | Description of the hierarchical quadratic program to solve. Each vector entry correspond to a stage in the hierarchy where the first entry has the highest priority. Currently only one priority level is implemented. |
| solver_output | solution of the quadratic program |
solve problem: min 0.5 * x'Hx + g'x s.t. Ax = b l < Cx < u
Implements wbc::QPSolver.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |