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

BilevelJuMP.jl: Modeling and Solving Bilevel Optimization Problems in Julia

Author

Listed:
  • Joaquim Dias Garcia

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

  • Guilherme Bodin

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

  • Alexandre Street

    (LAMPS at Pontifícia Universidade Católica do Rio de Janeiro (PUC-Rio), Rio de Janeiro, Rio de Janeiro 22451-900, Brazil)

Abstract

In this paper, we present BilevelJuMP.jl, a new Julia package to support bilevel optimization within the JuMP framework. The package is a Julia library that enables the user to describe both upper and lower-level optimization problems using the JuMP algebraic syntax. Because of the generality and flexibility that our library inherits from JuMP’s syntax, our package allows users to model bilevel optimization problems with conic constraints in the lower level and all constraints supported by JuMP in the upper level including conic, quadratic, and nonlinear constraints. Moreover, the models defined with the syntax from BilevelJuMP.jl can be solved by multiple techniques that are based on reformulations as mathematical programs with equilibrium constraints (MPEC). Manipulations on the original problem data are possible due to MathOptInterface.jl’s structures and Dualization.jl features. Hence, the proposed package allows quick modeling, deployment, and thereby experimenting with bilevel models based on off-the-shelf mixed-integer linear programming and nonlinear solvers.

Suggested Citation

  • Joaquim Dias Garcia & Guilherme Bodin & Alexandre Street, 2024. "BilevelJuMP.jl: Modeling and Solving Bilevel Optimization Problems in Julia," INFORMS Journal on Computing, INFORMS, vol. 36(2), pages 327-335, March.
  • Handle: RePEc:inm:orijoc:v:36:y:2024:i:2:p:327-335
    DOI: 10.1287/ijoc.2022.0135
    as

    Download full text from publisher

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

    File URL: https://libkey.io/10.1287/ijoc.2022.0135?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:327-335. 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.