qpSWIFT: A Real-Time Sparse Quadratic Program Solver for Robotic Applications
In this letter, we present qpSWIFT, a real-time quadratic program (QP) solver. Motivated by the need for a robust embedded QP solver in robotic applications, qpSWIFT employs standard primal-dual interior-point method, along with Mehrotra predictor-corrector steps and Nesterov-Todd scaling. The spars...
Saved in:
Published in | IEEE robotics and automation letters Vol. 4; no. 4; pp. 3355 - 3362 |
---|---|
Main Authors | , , |
Format | Journal Article |
Language | English |
Published |
Piscataway
IEEE
01.10.2019
The Institute of Electrical and Electronics Engineers, Inc. (IEEE) |
Subjects | |
Online Access | Get full text |
ISSN | 2377-3766 2377-3766 |
DOI | 10.1109/LRA.2019.2926664 |
Cover
Loading…
Summary: | In this letter, we present qpSWIFT, a real-time quadratic program (QP) solver. Motivated by the need for a robust embedded QP solver in robotic applications, qpSWIFT employs standard primal-dual interior-point method, along with Mehrotra predictor-corrector steps and Nesterov-Todd scaling. The sparse structure of the resulting Karush-Kuhn-Tucker linear system in the QP formulation is exploited, and sparse direct methods are utilized to solve the linear system of equations. To further accelerate the factorization process, we only modify the corresponding rows of the matrix factors that change during iterations and cache the nonzero Cholesky pattern. qpSWIFT is library free, written in ANSI-C and its performance is benchmarked through standard problems that could be cast as QP. Numerical results show that qpSWIFT outperforms state-of-the-art solvers for small scale problems. To evaluate the performance of the solver, a real-time implementation of the solver in the model predictive control framework through experiments on a quadrupedal robot are presented. |
---|---|
Bibliography: | ObjectType-Article-1 SourceType-Scholarly Journals-1 ObjectType-Feature-2 content type line 14 |
ISSN: | 2377-3766 2377-3766 |
DOI: | 10.1109/LRA.2019.2926664 |