wbc
|
The OsqpSolver solves convex quadratic programs (QPs) of the form. More...
#include <OsqpSolver.hpp>
Public Member Functions | |
OsqpSolver () | |
~OsqpSolver () | |
virtual void | solve (const HierarchicalQP &hierarchical_qp, Eigen::VectorXd &solver_output, bool allow_warm_start=true) |
solve Solve the given quadratic program | |
![]() | |
QPSolver () | |
virtual | ~QPSolver () |
void | reset () |
reset Enforces reconfiguration at next call to solve() | |
Public Attributes | |
OsqpEigen::Solver | solver |
Protected Member Functions | |
void | resize (uint nq, uint nc) |
std::string | exitFlagToString (OsqpEigen::ErrorExitFlag flag) |
Protected Attributes | |
bool | configured |
Eigen::MatrixXd | hessian_dense |
Eigen::SparseMatrix< double > | hessian_sparse |
Eigen::MatrixXd | constraint_mat_dense |
Eigen::SparseMatrix< double > | constraint_mat_sparse |
Eigen::VectorXd | gradient |
Eigen::VectorXd | lower_bound |
Eigen::VectorXd | upper_bound |
![]() | |
bool | configured |
The OsqpSolver solves convex quadratic programs (QPs) of the form.
\[ \begin{array}{ccc} min(\mathbf{x}) & \frac{1}{2} \mathbf{x}^T\mathbf{P}\mathbf{x}+\mathbf{q}^T\mathbf{x}& \\ & & \\ s.t. & \mathbf{l} \leq Ax \leq u& \\ \end{array} \]
The solver runs the following ADMM algorithm, which is described in Stellato, B., Banjac, G., Goulart, P. et al. OSQP: an operator splitting solver for quadratic programs. Math. Prog. Comp. 12, 637–672 (2020). https://doi.org/10.1007/s12532-020-00179-2
Solver Parameters:
wbc::OsqpSolver::OsqpSolver | ( | ) |
wbc::OsqpSolver::~OsqpSolver | ( | ) |
|
inlineprotected |
|
protected |
|
virtual |
solve Solve the given quadratic program
hierarchical_qp | Description of the (hierarchical) quadratic program to solve. |
solver_output | solution of the quadratic program as vector |
Implements wbc::QPSolver.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
OsqpEigen::Solver wbc::OsqpSolver::solver |
The osqp wrapper variable
|
protected |