ES
← Back to Portfolio
Simulation & Operations Research July 2026

MineHaul — Mine-Haulage Discrete-Event Simulation

An open-source Python package (minehaulsim) for deterministic discrete-event simulation of open-pit and underground mine haulage on constrained road networks, with seeded parametric mine generators. Byte-deterministic, numpy-only, well-tested — the companion generator that feeds structure-real scenarios to DispatchLab.

Package
minehaulsim v0.10.0 on PyPI · Apache-2.0 · numpy-only · Python 3.11–3.13 (Alpha)
Coverage
2 mine domains · 3 ramp topologies · 3 underground flow modes · 5 dispatch baselines · 3 zone policies
Rigor
227/227 tests · 7 validity gates · byte-deterministic (CI-asserted) · ≥20k events/s (measured ~63–77k)
Outputs
cycle log (CSV) · provenance (JSON) · 3D topology (JSON); a committed 12-seed pit gallery
Interface
Python API + CLI (generate / batch / run / render / validate / demo); no web app
MineHaul — Mine-Haulage Discrete-Event Simulation — Architecture
#simulation #des #mining #haulage #python #open-source #package

Business Context

Reproducible, generatable test scenarios are the unglamorous foundation of any credible logistics or dispatch study — without them you are tuning against one hand-built case. An open, deterministic mine-haulage simulator lets a dispatch idea be tested across dozens of varied layouts, with every result reproducible from a seed, which is exactly what a fair comparison of policies needs.

Strategic Value

MineHaul is the open, reproducible substrate under a dispatch study: a real discrete-event engine with honest, literature-ordered physics, seeded mine generators, validity gates and byte-determinism, released as an Apache-2.0 package on PyPI with a documented API, CLI and a docs wiki. It is deliberately scoped and honest — the mines are synthetic (realistic structure, fabricated data), the equipment curves are class-representative rather than OEM, and it neither predicts nor optimizes a real operation (that is DispatchLab's job). Its niche is precise: the first open-source package to do mine haulage on a genuinely constrained road network.

The Challenge

Testing a haulage dispatch policy, or any mine-logistics idea, needs a stream of realistic, varied mine layouts and truck-shovel dynamics to run against — but the open-source options are thin. Real operations are proprietary, and existing haulage simulators are commercial closed tools; there was no open-source Python package that simulates open-pit and underground haulage on a genuinely constrained road network with reproducible, generatable mines.

Our Approach

minehaulsim is a small, dependency-light (numpy-only core) Python package. Seeded parametric generators build open-pit and underground mines — ramp topologies, underground flow modes, a constrained road network — and a deterministic discrete-event engine simulates the truck-shovel cycle on them, with real physics (rimpull/retarder speed-by-grade, emergent bunching, constrained routing), five dispatch baselines and zone-arbitration policies. Every run passes named validity gates and is byte-deterministic (asserted in CI), and results export as a cycle log, a provenance record and the 3D topology. It is used via a Python API or a CLI, and it is the generator side of a pair: it feeds structure-real scenarios to DispatchLab (the deployed web app that consumes and optimizes them).

Key Performance Indicators

KPIBaselineResultImpact
Reproducible scenariosOne hand-built test caseSeeded generators → dozens of distinct mines, byte-deterministicFair, repeatable policy comparisons
Open-source nicheCommercial closed simulators onlyFirst OSS package: haulage on a constrained road networkA reusable, inspectable substrate
Trust in the engineUnverified simulation227 tests, 7 validity gates, CI on Linux + WindowsDeterminism and physics orderings are checked

Architecture

minehaul pipeline

minehaul pipeline

The generator behind a dispatch study

MineHaul (minehaulsim) is an open-source Python package for deterministic discrete-event simulation of open-pit and underground mine haulage on constrained road networks, with seeded parametric mine generators. It is the companion generator for DispatchLab — MineHaul builds and simulates the mines, DispatchLab consumes and optimizes them. On PyPI (v0.10, Apache-2.0) with a documented API, CLI and docs wiki.

Real engine, synthetic mines — said plainly

The discrete-event engine and its physics are genuine and hand-verified: rimpull/retarder speed-by-grade, emergent truck bunching, routing on a constrained network, five dispatch baselines and zone-arbitration policies. Every run passes named validity gates and is byte-deterministic (asserted in CI, 227 tests on Linux + Windows). The mines themselves are synthetic — seeded generators produce realistic structure with fabricated data (labelled structure-real), and equipment values use public spec-sheet magnitudes with class-representative, not OEM, curves.

Honest scope

It is early (Alpha) and deliberately bounded: it does not predict or optimize a real operation (no calibration to a real mine — that is DispatchLab’s role), its physics anchors are qualitative literature orderings used as tests rather than field-validated numbers, and its novelty claim keeps its qualifier — the first open-source package to do mine haulage on a genuinely constrained road network (commercial closed tools exist).

Source on GitHub · minehaulsim on PyPI

Technology Stack

Python NumPy Discrete-Event Simulation PyPI Apache-2.0

Visual assets for this project are not publicly available.