JuMP.jl

Modeling language for Mathematical Optimization (linear, mixed-integer, conic, semidefinite, nonlinear)
Popularity
1956 Stars
Updated Last
11 Months Ago
Started In
October 2012

JuMP logo

Powered by NumFOCUS Stable In Development

JuMP is a domain-specific modeling language for mathematical optimization embedded in Julia. You can find out more about us by visiting jump.dev.

Latest Release: version (release-1.0 branch):

  • Installation via the Julia package manager:
    • import Pkg; Pkg.add("JuMP")
  • Get help:
  • Testing status:
    • Github Actions: Build Status
  • deps

Development version (master branch):

  • Installation via the Julia package manager:
    • import Pkg; Pkg.add(Pkg.PackageSpec(name="JuMP", rev="master"))
  • Get help:
  • Testing status:
    • Github Actions: Build Status
    • Test coverage: codecov

Need help?

Use the Community forum to search for answers to previously asked questions, or ask a new question.

The post Please read: make it easier to help you, describes the best practices for asking a question.

Bug reports

Please report any issues via the Github issue tracker. All types of issues are welcome and encouraged; this includes bug reports, documentation typos, feature requests, etc.

Citing JuMP

If you find JuMP useful in your work, we kindly request that you cite the following paper (preprint):

@article{Lubin2023,
    author = {Miles Lubin and Oscar Dowson and Joaquim Dias Garcia and Joey Huchette and Beno{\^i}t Legat and Juan Pablo Vielma},
    title = {JuMP 1.0: Recent improvements to a modeling language for mathematical optimization},
    journal = {Mathematical Programming Computation},
    year = {2023},
    note = {In press.}
}

For earlier works, see:

  • Our paper in SIAM Review (journal, pdf):

    @article{DunningHuchetteLubin2017,
        author = {Iain Dunning and Joey Huchette and Miles Lubin},
        title = {JuMP: A Modeling Language for Mathematical Optimization},
        journal = {SIAM Review},
        volume = {59},
        number = {2},
        pages = {295-320},
        year = {2017},
        doi = {10.1137/15M1020575},
    }
  • Our paper in IJOC (journal, preprint):

    @article{LubinDunningIJOC,
        author = {Miles Lubin and Iain Dunning},
        title = {Computing in Operations Research Using Julia},
        journal = {INFORMS Journal on Computing},
        volume = {27},
        number = {2},
        pages = {238-248},
        year = {2015},
        doi = {10.1287/ijoc.2014.0623},
    }

NumFOCUS logo

JuMP is a Sponsored Project of NumFOCUS, a 501(c)(3) nonprofit charity in the United States. NumFOCUS provides JuMP with fiscal, legal, and administrative support to help ensure the health and sustainability of the project. Visit numfocus.org for more information.

You can support JuMP by donating.

Donations to JuMP are managed by NumFOCUS. For donors in the United States, your gift is tax-deductible to the extent provided by law. As with any donation, you should consult with your tax adviser about your particular tax situation.

JuMP's largest expense is the annual JuMP-dev workshop. Donations will help us provide travel support for JuMP-dev attendees and take advantage of other opportunities that arise to support JuMP development.