The bottleneck
Mobile operators need accurate coverage maps for planning, optimisation and outage response. Telkom's manual ray-tracing tool produces high-fidelity LTE RSRP maps, but a single run takes roughly seven to nine days. That is too slow to re-run whenever a site is added, a antenna is adjusted, or a tower fails.
The SATNAC 2026 Industry Solutions Challenge, set by Telkom, asked for a model that predicts coverage in seconds to minutes while at least halving the current execution time and preserving accuracy, with blocking obstacles properly represented.
The approach
SignalMyth treats the problem as surrogate modelling: learn the mapping from terrain, clutter and transmitter parameters to RSRP, then query that learned model instead of running the physics simulation for every new point.
The pipeline is four Python modules with a single responsibility each. terrain.py builds an elevation and clutter grid; propagation.py produces reference RSRP values; dataset.py engineers features and labels; train.py fits, validates and times the model. Keeping the stages separate means a real ray-tracing source can replace the reference formula without touching the model code.
Features and model
Each training row is one receiver location relative to one transmitter. The features are distance and bearing, transmitter height, power and frequency, receiver elevation and elevation difference, and a one-hot clutter class (open, suburban, urban, dense urban, forest). The label is the reference RSRP in dBm.
The baseline is an XGBoost gradient-boosted tree regressor: 300 estimators, maximum depth 6 and a learning rate of 0.08. It handles mixed continuous and categorical features well, trains quickly, and produces feature importances that an RF engineer can interrogate. Clutter class dominates, which matches how coverage actually behaves.
Real terrain, measured results
The final run used real SRTM 30 m elevation and real ESA WorldCover land cover for the Durban area: 87,052 generated rows, split 69,641 for training and 17,411 for testing. On that held-out set the surrogate achieved 2.63 dB RMSE, 1.81 dB MAE and an R² of 0.958, with about an 18x speedup over the reference model on a timed 2,000-point sample.
The real-terrain run beat the earlier synthetic run on every accuracy metric and produced a visibly better map: road and coastline-correlated detail appears because it is present in the input data, not invented by the model. The report is explicit that the speedup is a per-point benchmark against the project's simplified reference model, not an audited comparison against Telkom's full ray-tracing run.
What remains
Two things separate this validated proof of concept from a Telkom-ready tool. The training labels still come from a physics-inspired reference formula rather than Telkom's real ray-tracing output, and tower configurations are placed programmatically rather than pulled from the operator's site database.
The next steps are written into the report: validate against real SPLAT! or Telkom output, use the real site database, test spatial generalisation by holding out entire towers, compare against a CNN over rasterised tiles, and extend the validation beyond Durban. The pipeline was built so those swaps are substitutions, not rewrites.
Recognition
SignalMyth won the SATNAC 2026 Industry Solutions Challenge under the Telkom topic and was named Innovator of the Year, the award given to the best solution in the challenge. The result is a useful proof that a learned surrogate can carry ray-tracing-quality structure on real geography while running in seconds, and that the hard part is often the data contract rather than the model.
Figures
