Informs Journal on Computing, 2023 BilevelJuMP.jl: Modeling and Solving Bilevel Optimization Problems in Julia 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…

Read more

Informs Journal on Computing, 2023 Flexible Differentiable Optimization via Model Transformations 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…

Read more

MathOptInterface: A Data Structure for Mathematical Optimization Problems INFORMS Journal on Computing, 2022 We introduce MathOptInterface, an abstract data structure for representing mathematical optimization problems based on combining predefined functions and sets. MathOptInterface is significantly more general than existing data structures in the literature, encompassing, for example, a spectrum of problems classes from integer programming…

Read more