-
Notifications
You must be signed in to change notification settings - Fork 1
1.qpSWIFT Introduction
This document provides an introduction to qpSWIFT [1], a Real-Time Sparse Quadratic Programming Solver. qpSWIFT solves quadratic programs of the following form
+
Here, it is assumed that P is a symmetric, positive semi-definite matrix and A is of full row-rank. The solver employs Primal-Dual Interior Point method with Mehrotra Predictor corrector steps and Nesterov Todd scaling. For solving the linear system of equations, sparse factorization is used along with approximate minimum degree (AMD) heuristic to minimize fill-in of the factorizations.
qpSWIFT has the following features
- Written in ANSI-C
- Fully functional Quadratic Programming solver for embedded applications
- Tested on multiple target architectures
- x86
- x86_64
- ARM
- Support for multiple interfaces
If you like qpSWIFT and are using it in your work, please cite the following paper
@article{pandala2019qpswift,
title = {qpSWIFT: A Real-Time Sparse Quadratic Program Solver for Robotic Applications},
author = {Pandala, Abhishek Goud and Ding, Yanran and Park, Hae-Won},
journal = {IEEE Robotics and Automation Letters},
volume = {4},
number = {4},
pages = {3355--3362},
year = {2019},
publisher = {IEEE}
}
The code structure of qpSWIFT is heavily inspired by ecos [2]. The algorithm details can be found in [1]. qpSWIFT is distributed with GNU General Public License v3.0.
We would like to improve our code in as many aspects as possible, whether it is building new interfaces or improving the existing code base; suggestions are always welcome. Please contact us with your valuable feedback.