🎓 Lesson 12
D5
Exporting ML Outputs to Surpac Block Models
Exporting ML outputs to Surpac block models means turning predictions from machine learning (like ore grade or rock type) into a 3D grid format that Surpac software can use for mine planning and reporting.
🎯 Learning Objectives
- ✓ Explain the data transformation pipeline from ML prediction arrays to Surpac-compatible block model geometry
- ✓ Apply coordinate system conversion (e.g., WGS84 → UTM) and block alignment rules to ensure spatial fidelity
- ✓ Design a Python-based export script that maps ML output columns (e.g., 'Cu_pct_pred', 'confidence_score') to Surpac attribute fields with proper data typing and null handling
- ✓ Analyze discrepancies between ML-predicted and drill-hole-validated grades within exported blocks using Surpac's validation tools
- ✓ Validate exported block model integrity by verifying header metadata, block count, and attribute range compliance against Surpac v2023.1+ specifications
📖 Why This Matters
In modern grade control, AI models now predict ore boundaries and metal content faster and more consistently than traditional interpolation—but those insights are useless unless they live where engineers make decisions: in Surpac. Exporting ML outputs correctly avoids costly misalignment (e.g., 5m offset causing 12% dilution), ensures regulatory-grade model auditability, and unlocks real-time grade updates in production dashboards. At BHP’s Olympic Dam, failed ML-to-Surpac exports delayed monthly reconciliation by 11 days—costing $2.3M in unplanned stockpile re-handling.
📘 Core Principles
Successful export rests on three interoperability pillars: (1) Geometric fidelity—matching the ML prediction grid (e.g., 5×5×2.5 m blocks) to Surpac’s fixed-origin, axis-aligned block model coordinate system; (2) Attribute semantics—mapping ML output fields (e.g., 'Pb_ppm_mean', 'Uncertainty_std') to Surpac’s attribute naming conventions, data types (REAL4 vs. INTEGER), and null-value encoding (-999 or NaN); and (3) Metadata governance—embedding provenance (model version, training date, validation RMSE) in Surpac’s header or external .xml metadata per AusIMM Code 2023. Failure at any layer breaks downstream workflows like reserve classification or blast design optimization.
📐 Block Coordinate Transformation
To align ML prediction coordinates with Surpac’s block model origin, apply affine transformation including translation, scaling, and optional rotation. Critical for ensuring predicted grades populate correct spatial cells.
Surpac Block Index Mapping
i_s = floor((E_ml − E_origin) / dx), j_s = floor((N_ml − N_origin) / dy), k_s = floor((Z_ml − Z_origin) / dz)Computes Surpac integer block indices from ML-predicted world coordinates.
Variables:
| Symbol | Name | Unit | Description |
|---|---|---|---|
| i_s | Surpac X-index | unitless | Column index in Surpac block model (0-based) |
| j_s | Surpac Y-index | unitless | Row index in Surpac block model (0-based) |
| k_s | Surpac Z-index | unitless | Layer index in Surpac block model (0-based) |
| E_ml | Eastings (ML) | m | Predicted location easting in same UTM zone as Surpac model |
| N_ml | Northings (ML) | m | Predicted location northing |
| Z_ml | Elevation (ML) | m | Predicted elevation above sea level |
| E_origin | Surpac origin easting | m | Easting of Surpac block model lower-left-front corner |
| N_origin | Surpac origin northing | m | Northing of Surpac block model lower-left-front corner |
| Z_origin | Surpac origin elevation | m | Elevation of Surpac block model lower-left-front corner |
| dx | Block X-dimension | m | Width of each block along easting axis |
| dy | Block Y-dimension | m | Depth of each block along northing axis |
| dz | Block Z-dimension | m | Height of each block along elevation axis |
Typical Ranges:
Open-pit grade control: 5–10 m (X/Y), 2.5–5 m (Z)
Underground stope modeling: 2.5–5 m (X/Y/Z)
💡 Worked Example
Problem: Given: ML prediction grid uses origin (E=512300, N=6789200, Z=320) in GDA94/Zone 52; Surpac model origin = (E=512000, N=6789000, Z=300); block size = 5×5×2.5 m; ML array shape = (120, 80, 40). Calculate indices for ML cell (i=25, j=18, k=7) in Surpac coordinates.
1.
Step 1: Compute world coordinates: E = 512300 + 25×5 = 512425; N = 6789200 + 18×5 = 6789290; Z = 320 + 7×2.5 = 337.5
2.
Step 2: Translate to Surpac origin: dE = 512425 − 512000 = 425; dN = 6789290 − 6789000 = 290; dZ = 337.5 − 300 = 37.5
3.
Step 3: Compute Surpac indices: i_s = floor(425 / 5) = 85; j_s = floor(290 / 5) = 58; k_s = floor(37.5 / 2.5) = 15
Answer:
The ML cell maps to Surpac block indices (85, 58, 15), which falls within the model bounds (0–119, 0–79, 0–39). Verified.
🏗️ Real-World Application
At Newmont’s Tanami Operation (NT, Australia), a Random Forest model predicted gold grade (g/t) and lithology probability across a 3.2 km² zone. Engineers used a custom Python exporter (built on Surpac SDK v2023.1 and GDAL 3.6) to convert 1.2M predictions into a 10×10×5 m block model. Key steps included: (1) UTM Zone 52N reprojection via PROJ; (2) remapping 'Au_gpt_pred' → 'AU_GRADE' and 'LITHO_PROB_BASALT' → 'LITHO_BASALT'; (3) enforcing -999 for missing values per Surpac convention; and (4) embedding model metadata in the .blk header comment field. The exported model reduced grade reconciliation variance from ±18% to ±6.3% over Q3 2023.
🔧 Interactive Calculator
🔧 Open AI-Powered Orebody Delineation & Grade Control Calculator📋 Case Connection
📋 Copper Mine Block Model Refinement Using Neural Kriging
Traditional kriging over-smoothed high-grade chalcocite zones, causing 8.2% reserve underestimation
📋 Gold Mine Real-Time Grade Control at Development Drift Face
Manual chip sampling caused 24–48 hr delay in stope boundary decisions, leading to 14% dilution
📋 Iron Ore Mine Sensor Fusion for Banded Iron Formation (BIF) Delineation
Conventional geophysics failed to resolve thin hematite bands (<2m) within jaspilite, causing 22% grade variance in ROM...
📋 Limestone Mine Digital Twin for Karst-Related Grade Uncertainty
Solution cavities caused unpredictable grade drops (CaCO₃ purity <85%) in otherwise uniform deposits, resulting in 11% p...