ITU Artificial in 5G Challenge

Multidevice localization with mmWave signals in a factory environment

North Carolina State University invites you to participate in the ML5G-PHY-Localization challenge, which is part of the ITU Artificial Intelligence/Machine Learning in 5G Challenge, a competition that is scheduled to run from now until the end of the year. Participation in the Challenge is free of charge and open to all interested parties from countries that are members of ITU.

In the subsequent sections, we present the details of our challenge, “ML5G-PHY-Localization: Multidevice localization with mmWave signals in a factory environment” organized by North Carolina State University.


The ML5G-PHY-Localization challenge addresses the problem of localization of multiple connected deviceslocated inside a factory environment using the communication signal operating at mmWave frequencies. Approaches in the challenge will lead to important insights into the localization accuracy that can be achieve as a by-product of communication at mmWave bands using practical transceivers.

Participants are encouraged to design either a ML-based approach or a more conventional signal processing algorithm with geometric/algebraic tools or a combination of both that can learn how to accurately locate devices by exploiting the information in the received signals.

Challenge: Multidevice localization with mmWave signals in a factory environment

In our localization challenge, we focus on enabling the localization function of multiple R2D2 and C3PO robots working in the Death Star cantine. To avoid another incident like the one in the battle of Scarif the Death Star has now disabled long-range communication and the robots are equipped with a mmWave transceiver baed on an analog MIMO architecture that they use to communicate. Our job is to define an algorithm to be used by the access point on the ceiling of the warehouse that exploits the set of measurements obtained during training to localize the multiple robots. These data sets can be used either to train a given network, or to learn and exploit the properties of the scenario (such as reflector positions, specular reflections of the access points through walls, possible geometric patterns, etc ) using a model-based algorithm. In the testing phase, a different set of robot locations, still corresponding to the same warehouse, will be used to evaluate the performance  of the proposed approaches. The provided measurements correspond to a millimeter wave MIMO-OFDM system based on an analog beamforming architecture. The precoders and combiners make use of static analog codebooks for the beam-training phase. The system operates with uniform squared plannar arrays at both ends. In particular, we consider a transmitter at the robor with Nt=4×4 antennas while the receiver at the access point is equiped with Nr=8×8 antennas, making use of beam-training codebooks with Mt=3×3 elements and Mr=4×4 elements respectively. The MIMO-OFDM system operates with K=512 subcarriers. The mmWave channel is assumed to be frequency selective.

The localization algorithm should exploit the channel measurements obtained with the described codebooks. The measurements have a particular structure that can be exploited by the localization algorithm. We consider the optical geometric channel model widely used at mmWve bands. Under this model and taking into account the interference with other users, the measurements at the access points follow the following expression:

The different factors involved in this formula are detailed in the attached pdf file.

To generate the measurements we make use of a ray-tracing simulation warehouse environment, implemented with Wireless-InSite, consisting of a 60x120x10 cubic meters rectangular cuboid room with 12 access points. The access points are located on the ceiling at a height of 9.5 meters. They form a horizontal regular 2×6 grid, at a distance of 20 meters from the west and east walls and 10 meters from the north and south walls. The scenario also considers 12 boxes of varying size, 6 of them made out of wood and 6 of them metallic. For the generation of the robot positions we generate uniform x and y coordinates inside the warehouse and outside the boxes, then we assign them randomly a height of 1.05 or 1.75 meters with equal probabilities to simulate different robot heights (R2D2 and C3PO). This gives us the channel rays. Then we add a pan-tilt uncertainty to the user, that is applying a uniform random rotation in the x-z plane followed by a uniform random rotation in the x-y plane to all the paths’ directions of departure from the transceiver to simulate the pan and tilt of the robots. The transmit power is 10 dBm and the noise variance is computed as the thermal noise corresponding to a room at 15 Celsius degrees when using a 1GHz bandwidth, i.e., -84 dBm. We assume that the user connects to the access point with higher gain during the training stage. Under these assumptions, the access point association of the different realizations look like in the figure below

Top to bottom view of the access point association for different realizations.

For the robots and access points we consider uniform rectangular arrays of sizes 4×4 and 8×8 respectively, with an antenna element distance of half a wavelength as in the figure below.

Design of the uniform rectangular antenna arrays in both devices with their corresponding antenna enumeration.

The analog codebook design employed to obtain the measurements can be decomposed into x and y components of the direction of arrival/departure, making use of the fact that the Kronecker product of linear antenna array codebooks result in a codebook for rectangular antenna array equal to the product of pairs of beam-patterns as illustrated in the figure below.

Beam-patterns created by linear arrays aligned with the x and y axis and their corresponding Kronecker product using a rectangular array. The product of the array factor of the linear arrays results in the array factor of the rectangular array.

We make use of sector beam-patterns based on the ones proposed in [Palacios2016] to create linear array codebooks of sizes 4 and 3 for the access point and the root respectively. This results in the beam-patterns depicted in the figure below.

The number of frequency carriers is 512 and the pulse including all filtering effects is modeled as a raised cosine filter with a roll-off factor of 0.8, whose shape can be visualized in the figure below.

response of the equivalent opulse shaping filter. Note that the amplitude has no magnitude units since it still need to be scaled by the transmitting power and has been normalized such that it has an average unitary power among different frequency carriers.
Beam-patterns in the partial codebook at each device.

Participants have to train their networks using the provided data consisting on 12000 measurement realization points with their corresponding ground truth position. Multiple files containing the required information about the scenario and a executable are available. The executable needs to be called passing as flags the dataset name and the indexes of the samples to be extracted. For example “gen_channels.exe train 0 1 2” would output the measurement information related to the first 3 samples of the “train” dataset. To avoid confusion using this executable file we also provide with a simple visualization script “gen_channels_example.py” as an example on how to read the data and plot some interesting graphics.
Linux users may have to download an alternative gen_channels.exe and use it like “./gen_channels train 0 1 2”. It is in this files.

Using the provided code and the Channel Training Dataset, participants should predict the location coordinates of the C3PO and R2D2 robots in the test data set.

Good luck!


To evaluate the different approaches proposed by the participants, we consider the median euclidean error (MEE) in the location estimates divided by the ratio of samples with an error lower than half a meter.

The participants have to submit a brief document (up to 5 pages) in English describing the proposed approach, the source code of the proposed solution and the estimated locations following the same format as in the train file (“EU_pos.txt”)


Models must be trained only with examples included in the provided datasets. It is not allowed to use additional data extracted from other datasets.

You can download the data from the following links:

The participants have to submit a brief document (up to 5 pages) in English describing the proposed approach, the source code of the proposed solution and the estimated locations following the same format as in the train file (“EU_pos.txt”).


You can participate in teams. The team members should be announced at the enrollment stage and will be considered to have an equal contribution.

All participants of the ML5G-PHY-Localization task are required to register at the ITU website before September 15, 2021, and also enroll the teams. We will send a confirmation email for team enrollment in a few hours.


Registration August 31, 2021 September 15th, 2021

Submission (Global round) → October 29th, 2021

Award (Global round) → December 10th 2021


Nuria González-Prelcic
NC State University
Joan Palacios
NC State University
Yun Chen
NC State University