The DuQuad optimization toolbox solves convex quadratic programs using Dual First Order Optimization Algorithms. The algorithms has predictable and fast convergence, low memory footprint, and uses only basic arithmetic and logical operations. DuQuad and is therefore suited to be utilized by real-time applications running on low-cost HW such as simple microcontrollers.
DuQuad has an user friendly Matlab interface for maximum productivity, and the algorithms are implemented in efficient C-code. The SW is open source and can be downloaded from the git repository.
The DuQuad toolbox is created by Sverre Kvamme as part of his Master's Thesis at NTNU, during the fall 2014. The implementation is done in close collaboration with Ion Necoara, Professor at Department of Automatic Control and Systems Engineering, University Politehnica of Bucharest. The algorithms are described in detail in the following papers:
- Rate analysis of inexact dual first order methods: application to dual decomposition, IEEE Transactions on Automatic Control, 2014
- Computational Complexity of Inexact Gradient Augmented Lagrangian Methods: Application to Constrained MPC, SIAM Journal on Control and Optimization, 2014
which can be downloaded from here.
Documentation
Detailed documentation of the c-code is generated with Doxygen: DuQuad_doc_ccode
User manual is found in the folder 'doc/' in the GitHub repository.
Contact
Sverre Kvamme - sverre.kvamme@gmail.com - NTNU