If you use OSQP for published work, we encourage you to put a star on GitHub and cite the accompanying papers:

Main paper

Main algorithm description, derivation and benchmark available in this preprint.

  author = {Stellato, B. and Banjac, G. and Goulart, P. and Bemporad, A. and Boyd, S.},
  title = {{OSQP}: An Operator Splitting Solver for Quadratic Programs},
  journal = {ArXiv e-prints},
  year = {2017},
  month = nov,
  adsnote = {Provided by the SAO/NASA Astrophysics Data System},
  adsurl = {},
  archiveprefix = {arXiv},
  eprint = {1711.08013},
  keywords = {Mathematics - Optimization and Control},
  primaryclass = {math.OC},
Infeasibility detection

Infeasibility detection proofs using ADMM (also for general conic programs) in this preprint.

  title   = {Infeasibility detection in the alternating direction method of multipliers for convex optimization},
  author  = {Banjac, G. and Goulart, P. and Stellato, B. and Boyd, S.},
  journal = {},
  year    = {2017},
  url     = {},
Code generation

Code generation functionality and example in this paper.

  author = {Banjac, G. and Stellato, B. and Moehle, N. and Goulart, P. and Bemporad, A. and Boyd, S.},
  title = {Embedded code generation using the {OSQP} solver},
  booktitle = {{IEEE} Conference on Decision and Control ({CDC})},
  year = {2017},
  month = dec,
  doi = {10.1109/CDC.2017.8263928},
  url = {},