A rewriting system for convex optimization problems

We describe a modular rewriting system for translating optimization problems written in a domain-specific language (DSL) to forms compatible with low-level solver interfaces. Translation is facilitated by reductions, which accept a category of problems and transform instances of that category to equ...

Full description

Saved in:
Bibliographic Details
Published inJournal of control and decision Vol. 5; no. 1; pp. 42 - 60
Main Authors Agrawal, Akshay, Verschueren, Robin, Diamond, Steven, Boyd, Stephen
Format Journal Article
LanguageEnglish
Published Taylor & Francis 02.01.2018
Subjects
Online AccessGet full text
ISSN2330-7706
2330-7714
DOI10.1080/23307706.2017.1397554

Cover

More Information
Summary:We describe a modular rewriting system for translating optimization problems written in a domain-specific language (DSL) to forms compatible with low-level solver interfaces. Translation is facilitated by reductions, which accept a category of problems and transform instances of that category to equivalent instances of another category. Our system proceeds in two key phases: analysis, in which we attempt to find a suitable solver for a supplied problem, and canonicalization, in which we rewrite the problem in the selected solver's standard form. We implement the described system in version 1.0 of CVXPY, a DSL for mathematical and especially convex optimization. By treating reductions as first-class objects, our method makes it easy to match problems to solvers well-suited for them and to support solvers with a wide variety of standard forms.
ISSN:2330-7706
2330-7714
DOI:10.1080/23307706.2017.1397554