Skip to content

mtanneau/LPBenchmarks

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

46 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LP benchmarks

Instructions on how to run experiments in the paper.

Installation

  1. Install Julia

  2. Install commercial solvers CPLEX, Gurobi and CPLEX

  3. Instantiate the environment. This will download and build open-source solvers Clp, ECOS, GLPK and Tulip.

    julia> ]
    pkg> instantiate

Instances

Mittelmann benchmark

See here.

Structured master problems

See instructions at DER instances and TSSP instances on how to generate the problems.

Building a system image

  1. Create pre-compilation statements

Run the snoop.jl script at the root of this directory

julia --trace-compile=precompile.jl --project snoop.jl
  1. Create the system image
using PackageCompiler

PackageCompiler.create_sysimage([:MathOptInterface, :Clp, :CPLEX, :ECOS, :GLPK, :Gurobi, :Mosek, :MosekTools, :QPSReader, :Tulip, :DoubleFloats, :UnitBlockAngular], project=".", sysimage_path="JuliaLP.so", precompile_statements_file="precompile.jl");

Running experiments

Mittelmann benchmark instances

julia --sysimage=JuliaLP.so --project src/LP/tulip.jl dat/plato/cont1.mps

Structured master problems

Single instance:

julia --sysimage=JuliaLP.so --project src/RMP/tulip.jl dat/rmp/4node_32_10.mps

Several instances using GNU parallel:

julia exp/RMP/jobs_rmp.jl > jobs.txt
cat jobs.txt | parallel -j1 --joblog rmp.log {}

Extended precision

Single instance

julia --project --sysimage=JuliaLP.so src/D64/tulipD64.jl dat/netlib/afiro.mps 1e-8
julia --project --sysimage=JuliaLP.so src/D64/tulipD64.jl dat/netlib/afiro.mps 1e-16

Several instances

cat exp/D64/failures.txt | parallel -j1 --joblog double64.log 'julia --project --sysimage=JuliaLP.so src/D64/tulipD64.jl dat/plato/{} 1e-8 > {}.log 2>&1'

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages