All Projects → mlubin → JuMPSupplement

mlubin / JuMPSupplement

Licence: other
Repository containing supplementary materials and code for "JuMP: A Modeling Language for Mathematical Optimization"

Programming Languages

AMPL
153 projects
GAMS
12 projects
python
139335 projects - #7 most used programming language
julia
2034 projects
Jupyter Notebook
11667 projects
C++
36643 projects - #6 most used programming language

JuMPSupplement

Repository containing supplementary materials and code for "JuMP: A Modeling Language for Mathematical Optimization" by I. Dunning, J. Huchette, and M. Lubin.

Installation instructions:

The benchmarks depend on the following commercial software packages which must be installed separately:

  • AMPL 20160207
  • GAMS 24.6.1
  • Gurobi 6.5.0
  • MATLAB R2015b

Additionally, users should install:

For timing, we use the ts command-line utility. On Ubuntu Linux, ts is provided by the moreutils package.

Installation instructions for Pyomo:

A simple way to install Pyomo is through the virtualenv package:

$ virtualenv venv
$ source venv/bin/activate
$ pip install pyomo

(venv)$ pyomo --version
Pyomo 4.2.10784 (CPython 2.7.11 on Linux 4.4.1-2-ARCH)

Installation instructions for Julia:

We recommend reproducing the experiments with the exact version of Julia used here. If binaries for version 0.4.3 are no longer available, one can build Julia from source as follows:

$ git clone git://github.com/JuliaLang/julia.git
$ cd julia
$ git checkout v0.4.3
$ make

Unfortunately, the build process relies on many external packages and URLs. It cannot be expected to work indefinitely, even if github.com remains available.

Once Julia is installed, we require the following Julia packages:

You should force the use of particular versions of these Julia packages with

julia> Pkg.pin("JuMP", v"0.12.0")
julia> Pkg.pin("ReverseDiffSparse", v"0.5.3")
julia> Pkg.pin("Gurobi", v"0.2.1")
julia> Pkg.pin("Ipopt", v"0.2.1")

For the nonlinear tests, you should add ipopt compiled with ASL to your path. On Linux, you can just use the Ipopt binary from Julia:

export PATH=$PATH:$HOME/.julia/v0.4/Ipopt/deps/usr/bin

See the individual directories for further instructions.

Change log:

Feburary 2016: Update for first paper revision. Newer versions of all packages.
April 2015: Initial version
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].