Optimise · Underground
Stope optimiser
For underground, MiningIQ scans floating-stope templates through an orebody-aligned grid, refines slice boundaries under geotechnical rules, and selects a pillar-compliant portfolio by greedy or MILP set-packing.
See it
What it does
O(1) candidate scoring
3D summed-volume tables score every candidate stope in constant time via prefix sums.
Floating-stope scan
Scans variable-dimension templates within bounds, sublevel-constrained, with early pruning — parallelised.
Dilution envelopes
Expands HW/FW boundaries with overbreak and mining recovery; tracks internal, wall-skin and overbreak dilution separately.
Slice optimiser
Optimises each section/sublevel boundary by simulated annealing under width, wall-angle and section-twist limits.
Pillar-safe portfolio
Crown/sill/rib/end-wall separations build a conflict graph, selected by greedy value-density or MILP set-packing.
Curved orebodies + RPEEE
Straightens swinging strike by arc-length resampling; builds a closed RPEEE reporting envelope for JORC / NI 43-101.
How it works — the engineeringTechnical detail
3D integral-volume tables, simulated annealing, greedy region-growing and MILP set-packing via SciPy HiGHS off a shared pillar-conflict graph. The curved-frame path absorbs strike curvature into resampling so the O(1) machinery is preserved.
- In
- block model (coords, grades, tonnes, values) with a domain/rock-type filter.
- Out
- DXF (3DFACE for Surpac/Vulcan), OBJ, JSON for the web viewer; RPEEE reporting envelope.
stope_opt/services/ · stope_generator · slice_optimiser · integral_volume · portfolio_selector · pillar_engine