ML-Based Preamble Collision Detection in the Random Access Procedure of Cellular IoT Networks
Giancarlo Maldonado Cardenas, Diana C. Gonzalez, Judy C. Guevara, Carlos A. Astudillo, Nelson L. S. da Fonseca

TL;DR
This paper introduces a machine learning-based method for early collision detection in the random access procedure of cellular IoT networks, demonstrating high accuracy and low latency suitable for real-time deployment.
Contribution
It presents a novel ML-based collision detection mechanism, evaluates multiple classifiers under realistic conditions, and optimizes the model for deployment on base station hardware.
Findings
Neural network achieved over 98% accuracy in in-distribution scenarios.
Quantization reduced inference time from 2500 ms to 0.3 ms with minimal accuracy loss.
The method is suitable for real-time, scalable IoT applications.
Abstract
Preamble collision in the random access channel (RACH) is a major bottleneck in massive machine-type communication (mMTC) scenarios, typical of cellular IoT (CIoT) deployments. This work proposes a machine learning-based mechanism for early collision detection during the random access (RA) procedure. A labeled dataset was generated using the RA procedure messages exchanged between the users and the base station under realistic channel conditions, simulated in MATLAB. We evaluate nine classic classifiers -- including tree ensembles, support vector machines, and neural networks -- across four communication scenarios, varying both channel characteristics (e.g., Doppler spread, multipath) and the cell coverage radius, to emulate realistic propagation, mobility, and spatial conditions. The neural network outperformed all other models, achieving over 98\% balanced accuracy in the…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
