Embedded code generation using the OSQP solver

<p>We introduce a code generation software package that accepts a parametric description of a quadratic program (QP) as input and generates tailored C code that compiles into a fast and reliable optimization solver for the QP that can run on embedded platforms. The generated code is based on...

Full description

Bibliographic Details
Main Authors: Banjac, G, Stellato, B, Moehle, N, Goulart, P, Bemporad, A, Boyd, S
Format: Conference item
Published: IEEE 2018
_version_ 1797087214725758976
author Banjac, G
Stellato, B
Moehle, N
Goulart, P
Bemporad, A
Boyd, S
author_facet Banjac, G
Stellato, B
Moehle, N
Goulart, P
Bemporad, A
Boyd, S
author_sort Banjac, G
collection OXFORD
description <p>We introduce a code generation software package that accepts a parametric description of a quadratic program (QP) as input and generates tailored C code that compiles into a fast and reliable optimization solver for the QP that can run on embedded platforms. The generated code is based on OSQP, a novel open-source operator splitting solver for quadratic programming. Our software supports matrix factorization caching and warm starting, and allows updates of the problem parameters during runtime. The generated C code is library-free and has a very small compiled footprint. Examples arising in real-world applications show that the generated code outperforms state-of-the-art embedded and desktop QP solvers.</p>
first_indexed 2024-03-07T02:32:37Z
format Conference item
id oxford-uuid:a7c19fe9-32f1-4500-ac76-cd388bc37c61
institution University of Oxford
last_indexed 2024-03-07T02:32:37Z
publishDate 2018
publisher IEEE
record_format dspace
spelling oxford-uuid:a7c19fe9-32f1-4500-ac76-cd388bc37c612022-03-27T02:56:40ZEmbedded code generation using the OSQP solverConference itemhttp://purl.org/coar/resource_type/c_5794uuid:a7c19fe9-32f1-4500-ac76-cd388bc37c61Symplectic Elements at OxfordIEEE2018Banjac, GStellato, BMoehle, NGoulart, PBemporad, ABoyd, S <p>We introduce a code generation software package that accepts a parametric description of a quadratic program (QP) as input and generates tailored C code that compiles into a fast and reliable optimization solver for the QP that can run on embedded platforms. The generated code is based on OSQP, a novel open-source operator splitting solver for quadratic programming. Our software supports matrix factorization caching and warm starting, and allows updates of the problem parameters during runtime. The generated C code is library-free and has a very small compiled footprint. Examples arising in real-world applications show that the generated code outperforms state-of-the-art embedded and desktop QP solvers.</p>
spellingShingle Banjac, G
Stellato, B
Moehle, N
Goulart, P
Bemporad, A
Boyd, S
Embedded code generation using the OSQP solver
title Embedded code generation using the OSQP solver
title_full Embedded code generation using the OSQP solver
title_fullStr Embedded code generation using the OSQP solver
title_full_unstemmed Embedded code generation using the OSQP solver
title_short Embedded code generation using the OSQP solver
title_sort embedded code generation using the osqp solver
work_keys_str_mv AT banjacg embeddedcodegenerationusingtheosqpsolver
AT stellatob embeddedcodegenerationusingtheosqpsolver
AT moehlen embeddedcodegenerationusingtheosqpsolver
AT goulartp embeddedcodegenerationusingtheosqpsolver
AT bemporada embeddedcodegenerationusingtheosqpsolver
AT boyds embeddedcodegenerationusingtheosqpsolver