IDEAS home Printed from https://ideas.repec.org/a/inm/orijoc/v36y2024i2p456-478.html
   My bibliography  Save this article

Flexible Differentiable Optimization via Model Transformations

Author

Listed:
  • Mathieu Besançon

    (Zuse Institute Berlin, Berlin 14195, Germany)

  • Joaquim Dias Garcia

    (PSR, Rio de Janeiro, 22250-040 Rio de Janeiro, Brazil; Pontifícia Universidade Católica do Rio de Janeiro, Rio de Janeiro, 22451-900 Rio de Janeiro, Brazil)

  • Benoît Legat

    (KU Leuven, Department of Electrical Engineering (ESAT), STADIUS Center for Dynamical Systems, Signal Processing and Data Analytic, 3001 Leuven, Belgium)

  • Akshay Sharma

    (Columbia University, New York, New York 10027)

Abstract

We introduce DiffOpt.jl, a Julia library to differentiate through the solution of optimization problems with respect to arbitrary parameters present in the objective and/or constraints. The library builds upon MathOptInterface, thus leveraging the rich ecosystem of solvers and composing well with modeling languages like JuMP. DiffOpt offers both forward and reverse differentiation modes, enabling multiple use cases from hyperparameter optimization to backpropagation and sensitivity analysis, bridging constrained optimization with end-to-end differentiable programming. DiffOpt is built on two known rules for differentiating quadratic programming and conic programming standard forms. However, thanks to its ability to differentiate through model transformations, the user is not limited to these forms and can differentiate with respect to the parameters of any model that can be reformulated into these standard forms. This notably includes programs mixing affine conic constraints and convex quadratic constraints or objective function.

Suggested Citation

  • Mathieu Besançon & Joaquim Dias Garcia & Benoît Legat & Akshay Sharma, 2024. "Flexible Differentiable Optimization via Model Transformations," INFORMS Journal on Computing, INFORMS, vol. 36(2), pages 456-478, March.
  • Handle: RePEc:inm:orijoc:v:36:y:2024:i:2:p:456-478
    DOI: 10.1287/ijoc.2022.0283
    as

    Download full text from publisher

    File URL: http://dx.doi.org/10.1287/ijoc.2022.0283
    Download Restriction: no

    File URL: https://libkey.io/10.1287/ijoc.2022.0283?utm_source=ideas
    LibKey link: if access is restricted and if your library uses this service, LibKey will redirect you to where you can use your library subscription to access this item
    ---><---

    Corrections

    All material on this site has been provided by the respective publishers and authors. You can help correct errors and omissions. When requesting a correction, please mention this item's handle: RePEc:inm:orijoc:v:36:y:2024:i:2:p:456-478. See general information about how to correct material in RePEc.

    If you have authored this item and are not yet registered with RePEc, we encourage you to do it here. This allows to link your profile to this item. It also allows you to accept potential citations to this item that we are uncertain about.

    We have no bibliographic references for this item. You can help adding them by using this form .

    If you know of missing items citing this one, you can help us creating those links by adding the relevant references in the same way as above, for each refering item. If you are a registered author of this item, you may also want to check the "citations" tab in your RePEc Author Service profile, as there may be some citations waiting for confirmation.

    For technical questions regarding this item, or to correct its authors, title, abstract, bibliographic or download information, contact: Chris Asher (email available below). General contact details of provider: https://edirc.repec.org/data/inforea.html .

    Please note that corrections may take a couple of weeks to filter through the various RePEc services.

    IDEAS is a RePEc service. RePEc uses bibliographic data supplied by the respective publishers.