This package reads data files for Inventory Routing Problem (IRP) instances.
The type used by the package is InventoryRoutingProblem
, defined as follows:
struct InventoryRoutingProblem
name::String # Instance name
vertices::Vector{IRPVertex} # Vertices data (see below)
num_vehicles::Int64 # Number of vehicles
num_periods::Int64 # Number of periods
capacity::Int64 # Vehicles capacity
costs::Matrix{Int64} # Cost matrix (|V| x |V|)
lb::Float64 # Lower bound (-Inf if not known)
ub::Float64 # Upper bound ( Inf if not known)
end
Lower and upper bounds are from DIMACS's results (I was a bit lazy on that).
The type IRPVertex
is defined as follows:
struct IRPVertex
id::Int64 # Sequential id
inv_init::Int64 # Initial inventory
inv_min::Int64 # Minimum inventory
inv_max::Int64 # Maximum inventory
inv_cost::Float64 # Inventory cost
demand::Int64 # Demand
coord::Vector{Float64} # Coordinates
end
Some classical IRP instances from the literature are preloaded, following DIMACS naming. For example, to load IRP instance L_abs2n200_5_H
:
irp = loadIRP("L_abs2n200_5_H")
See the full list on the DIMACS page.
The package still does not load custom IRP instances.
InventoryRoutingProblems
is not a registered Julia Package...
You can install InventoryRoutingProblems
through the Julia package manager.
Open Julia's interactive session (REPL) and type:
] add https://github.com/rafaelmartinelli/InventoryRoutingProblems.jl
Do not forget to ⭐star⭐ our package! 😁
- Knapsacks.jl: Knapsack algorithms in Julia
- FacilityLocationProblems.jl: Facility Location Problems Lib
- AssignmentProblems.jl: Assignment Problems Lib
- BPPLib.jl: Bin Packing and Cutting Stock Problems Lib
- CARPData.jl: Capacitated Arc Routing Problem Lib
- MDVSP.jl: Multiple-Depot Vehicle Scheduling Problem Lib
- CVRPLIB.jl: Capacitated Vehicle Routing Problem Lib
- TSPLIB.jl: Traveling Salesman Problem Lib