Skip to content

SIROM v0.3.0

Choose a tag to compare

@butkeraites butkeraites released this 05 Jun 19:46
· 46 commits to main since this release
e31e01d

Adds a second worked demo: solving real Vehicle Routing Problems under uncertainty with SIROM.

SIROM robust CVRP demo — routes and the distance-vs-robustness frontier

Highlights

  • Robust CVRP demo (demo/vrp/) — pick a real instance from VRP-REP, and SIROM returns a Pareto frontier of candidate routings trading total distance against the probability the plan stays feasible. The screenshot above shows it solving Augerat A-n32-k05: the route map (depot + two vehicle routes) beside the clickable distance-vs-robustness frontier.
  • SIROM-as-a-service — the demo backend never imports SIROM; it builds a SolveRequest, submits it to the SIROM HTTP API over the container network, and polls the job. One docker compose up brings up redis + sirom-api + the VRP backend + the web app.
  • Two uncertainty modesdemand (→ vehicle capacity, in b) and travel time (→ a synthesized per-route shift limit, in A), toggled in the UI with α / customers / scenarios / shift-tightness sliders.
  • Every coordinate-based CVRP dataset on VRP-REP — Augerat A/B/P, Fisher F, Christofides CMT/Set M, Uchoa 2014 X-instances, Golden, Li, VeRoLog (11 families). Instances are listed lazily from each zip; depot detection handles the fleet-departure-node convention (Uchoa-style).
  • Honest robustness — scored on the decoded routes rather than SIROM's vector-level feasibility (which depends on free MTZ auxiliary variables), with physically-equivalent routings deduped before building the frontier.
  • Next.js front end — SVG route map + a recharts distance-vs-robustness frontier you click to draw each routing.

Builds on the HTTP API, Docker, and MILP support shipped in v0.2.0. Implements the method from Butkeraites, de Salles Neto & Gendreau, Expert Systems with Applications 203:117337 (2022).

Changelog index

  • v0.4.4 — Documentation patch
  • v0.4.3 — Tooling / process patch
  • v0.4.2 — Tooling / process patch
  • v0.4.1 — Documentation patch over 0.4.0
  • v0.4.0 — Architecture-deepening release: make modules honest and concentrate scattered logic
  • v0.3.0 — Robust CVRP demo over VRP-REP (demo/vrp/) (this release)
  • v0.2.0 — First substantial release of SIROM as a deployable, documented service

Full notes for every version: CHANGELOG.md