Systems and methods for labeling for machine learning-based positioning estimation of a user equipment

By using ground-truth target positions as labels and employing back-propagation techniques, the method addresses the challenge of labeling in machine learning-based positioning, enhancing accuracy and efficiency in UE location estimation.

WO2026099818A1PCT designated stage Publication Date: 2026-05-15TELEFONAKTIEBOLAGET LM ERICSSON (PUBL)
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
TELEFONAKTIEBOLAGET LM ERICSSON (PUBL)
Filing Date
2025-11-07
Publication Date
2026-05-15

AI Technical Summary

Technical Problem

Conventional positioning methods face challenges in accurately estimating user equipment (UE) location due to non-line of sight (NLOS) measurements, and machine learning-based solutions lack effective methods for labeling training data, particularly ground-truth labels for radio measurements.

Method used

The proposed solution uses ground-truth target positions as labels for machine learning-based positioning, employing back-propagation techniques to iteratively adjust neural network weights, eliminating the need for direct radio measurement labels and enabling training through numerical optimization steps.

Benefits of technology

This approach allows for accurate UE positioning by iteratively adjusting neural network weights using ground-truth labels, improving positioning accuracy without requiring radio measurement labels, thus enhancing the effectiveness of machine learning-based positioning systems.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure IB2025061415_15052026_PF_FP_ABST
    Figure IB2025061415_15052026_PF_FP_ABST
Patent Text Reader

Abstract

A method (700) performed by a network node (910) or User Equipment, UE, (912) for training a Machine Learning-based, solution for position estimation includes gathering (710) a set of training data samples, and each sample includes measured Channel Impulse Responses, CIRs, and an associated ground-truth label on a UE position. At least one random weight is assigned (720) to a Neural Network, NN. The at least one random weight is iteratively adjusted (730) based on the associated ground-truth label on the UE position. The step of iteratively adjusting the at least one random weight includes performing forward propagation to: determine at least one NN output, determine an estimated UE position, and determine a training loss. The step of iteratively adjusting the at least one random weight includes performing back-propagation to adjust the at least one random weight to decrease the training loss. At least one of the forward propagation and the back propagation involve a numerical optimization step for determining the estimated UE position from radio measurements. The training loss is a measure of a size of a difference between the ground truth label and the estimated UE position. The at least one NN output is at least one of: at least one ML- based radio measurement and / or at least one quality measure on the plurality of radio measurements.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] SYSTEMS AND METHODS FOR LABELING FOR MACHINE LEARNING-BASED POSITIONING ESTIMATION OF A USER EQUIPMENT

[0002] TECHNICAL FIELD

[0003] The present disclosure relates, in general, to wireless communications and, more particularly, systems and methods for labeling for machine learning-based positioning estimation of a User Equipment.

[0004] BACKGROUND

[0005] User equipment (UE) based positioning is the core of location-based services, which has a variety of commercial applications. The requirement for positioning accuracy varies among different applications, for example, from centimeter-level accuracy for industrial applications to a few meters’ accuracy for emergency calls.

[0006] Conventional methods for positioning often involve 1) receiving a transmitted reference signal, 2) estimating the radio channel from the received signal, 3) estimating radio measurement(s) for positioning from the measured channel, and 4) estimating the target (UE) position from a collection of radio measurements. One such example is uplink Time of Arrival (TOA), where a UE transmits a reference signal such as an Sounding Reference Signal (SRS), which is 1) received at a set of anchor nodes with known position, i.e., a set of gNodeBs (gNBs), which 2) cross correlates the known reference signal with the received signal to obtain a channel estimate at each gNB, and 3) estimates the TOA from the measured channel using some signal processing, which 4) are gathered at a central computational unit which estimates the target UE position using multilateration (i.e., a least-squares estimate).

[0007] If the target UE and all anchor nodes share the same known reference time (for example, all clocks are synchronized), then a TOA measurement represents the 3-Dimensional (3D) distance between the target UE and anchor, divided by the speed of light:

[0008] don

[0009] TOA = —

[0010] c

[0011] However, if the line of sight (LOS) path was not detected such as, for example, due to a blocker in the environment, and if a non-line of sight (NLOS) path was detected instead, then the TOA measurement is represented as:

[0012]

[0013] This means that NLOS measurements can contaminate a TOA measurement set, which will result in possibly large biases in the estimated target UE position.

[0014] Machine learning-based positioning can compensate for site-specific phenomena, which typically mitigate performance of conventional positioning methods, such as NLOS measurements. For example, the presence of multipath reflections in the received signal typically hampers accuracy in the radio measurement(s) for positioning, e.g. TOA, angle-of-arrival (AOA), LOS indicator, and others. In contrast, multipath reflection can contribute to the channel signature in a site-specific fingerprinting solution using a trained neural network (NN), thus helping to improve performance.

[0015] When training a NN, a back propagation technique is used to derive the derivatives of training loss with respect to the parameters of the NN. The training loss is some function that returns a measure of size of error between a target variable and an associated label. In this way, the parameters of the NN can be updated in a direction of descent, thus reducing the training loss in each step. This is called “back propagation” because it relies on the chain rule, starting from the training loss function and propagating back to the NN parameters.

[0016] There currently exist certain challenge(s), however. For example, a challenge with machine-learning (ML) for positioning is often the gathering of training data, and specifically, the labelling of training data. For instance, let’s say a NN is used to provide LOS labels associated with measured channels as input. It is not at all clear how a “ground-truth” LOS is to be produced in association with a measured channel for training. It is also not clear how to define a training loss function if no such labels exist.

[0017] SUMMARY

[0018] Certain aspects of the disclosure and their embodiments may provide solutions to these or other challenges. For example, methods and systems are provided that use “ground truth” target positions as labels for any ML based positioning solution.

[0019] According to certain embodiments, a method performed by a network node for training a ML-based, solution for position estimation of a UE includes gathering a set of training data samples, and each sample includes measured Channel Impulse Responses (CIRs) and an associated ground-truth label on a UE position. At least one random weight is assigned to the NN. The at least one random weight is iteratively adjusted based on the associated ground-truth label on the UE position. The step of iteratively adjusting the at least one random weight includes performing forward propagation to: determine at least one NN output, determine an estimated UE position, and determine a training loss. Back-propagation is used to adjust the at least one random weight to decrease the training loss. At least one of the forward propagation and the back propagation involve a numerical optimization step for determining the estimated UE position from radio measurements. The training loss is a measure of a size of a difference between the ground truth label and the estimated UE position. The at least one NN output is at least one of: at least one ML-based radio measurement and / or at least one quality measure on the plurality of radio measurements.

[0020] According to certain embodiments, a method performed by a UE for training a ML-based, solution for position estimation includes gathering a set of training data samples, and each sample includes measured Channel Impulse Responses (CIRs) and an associated groundtruth label on a UE position. At least one random weight is assigned to the NN. The at least one random weight is iteratively adjusted based on the associated ground-truth label on the UE position. The step of iteratively adjusting the at least one random weight includes performing forward propagation to: determine at least one NN output, determine an estimated UE position, and determine a training loss. Back-propagation is used to adjust the at least one random weight to decrease the training loss. At least one of the forward propagation and the back propagation involve a numerical optimization step for determining the estimated UE position from radio measurements. The training loss is a measure of a size of a difference between the ground truth label and the estimated UE position. The at least one NN output is at least one of: at least one ML-based radio measurement and / or at least one quality measure on the plurality of radio measurements.

[0021] According to certain embodiments, a network node for training a ML-based, solution for position estimation of a UE includes processing circuitry configured to gather a set of training data samples, and each sample includes measured Channel Impulse Responses (CIRs) and an associated ground-truth label on a UE position. The processing circuitry is configured to assign at least one random weight to the NN and iteratively adjust the at least one random weight based on the associated ground-truth label on the UE position. When iteratively adjusting the at least one random weight, the processing circuitry is configured to perform forward propagation to: determine at least one NN output, determine an estimated UE position, and determine a training loss. The processing circuitry is configured to use back-propagation to adjust the at least one random weight to decrease the training loss. At least one of the forward propagation and the back propagation involve a numerical optimization step for determining the estimated UE position from radio measurements. The training loss is a measure of a size of a difference between the ground truth label and the estimated UE position. The at least one NN output is at least one of: at least one ML-based radio measurement and / or at least one quality measure on the plurality of radio measurements.

[0022] According to certain embodiments, a UE for training a ML-based, solution for position estimation includes processing circuitry configured to gather a set of training data samples, and each sample includes measured Channel Impulse Responses (CIRs) and an associated groundtruth label on a UE position. The processing circuitry is configured to assign at least one random weight to the NN and iteratively adjust the at least one random weight based on the associated ground-truth label on the UE position. When iteratively adjusting the at least one random weight, the processing circuitry is configured to perform forward propagation to: determine at least one NN output, determine an estimated UE position, and determine a training loss. The processing circuitry is configured to use back-propagation to adjust the at least one random weight to decrease the training loss. At least one of the forward propagation and the back propagation involve a numerical optimization step for determining the estimated UE position from radio measurements. The training loss is a measure of a size of a difference between the ground truth label and the estimated UE position. The at least one NN output is at least one of: at least one ML-based radio measurement and / or at least one quality measure on the plurality of radio measurements.

[0023] Certain embodiments may provide one or more of the following technical advantage(s). For example, certain embodiments disclosed herein, provide a technical advantage that no radio measurement labels are needed in the training phase; only target position labels are used. Such labels are arguably the easiest to provide in the field (e.g., compared to any label on radio measurements). Even if direct labels on the radio measurements are not available, the deployed NN can still be trained using a back-propagation technique such as those disclosed herein.

[0024] Other advantages may be readily apparent to one having skill in the art. Certain embodiments may have none, some, or all of the recited advantages.

[0025] BRIEF DESCRIPTION OF THE DRAWINGS

[0026] For a more complete understanding of the disclosed embodiments and their features and advantages, reference is now made to the following description, taken in conjunction with the accompanying drawings, in which:

[0027] FIGURE 1 illustrates an overview of an example embodiment for the simplest setting, according to certain embodiments;

[0028] FIGURE 2 illustrates an overview of an example embodiment for the simplest setting, according to certain embodiments;

[0029] FIGURE 3 illustrates joint TOA and quality-indicator based NN assuming an unsynchronized target node, according to certain embodiments;

[0030] FIGURE 4 illustrates soft LOS / NLOS indicator-based NN assuming an unsynchronized target node, according to certain embodiments;

[0031] FIGURE 5 illustrates an example method by a network node for labeling for ML-based positioning of a UE, according to certain embodiments;

[0032] FIGURE 6 illustrates another example method by a network node for labeling for ML-based positioning of a UE, according to certain embodiments;

[0033] FIGURE 7 illustrates an example method performed by a network node for training a ML-based solution for position estimation of a UE, according to certain embodiments;

[0034] FIGURE 8 illustrates an example method performed by a UE for training a ML-based solution for position estimation, according to certain embodiments;

[0035] FIGURE 9 illustrates an example communication system, according to certain embodiments;

[0036] FIGURE 10 illustrates an example UE, according to certain embodiments;

[0037] FIGURE 11 illustrates an example network node, according to certain embodiments; and

[0038] FIGURE 12 illustrates a virtualization environment in which functions implemented by some embodiments may be virtualized, according to certain embodiments.

[0039] DETAILED DESCRIPTION

[0040] Some of the embodiments contemplated herein will now be described more fully with reference to the accompanying drawings. Embodiments are provided by way of example to convey the scope of the subject matter to those skilled in the art.

[0041] As used herein, ‘node’ can be a network node or a UE. Examples of network nodes are NodeB, base station (BS), multi-standard radio (MSR) radio node such as MSR BS, eNodeB (eNB), gNodeB (gNB), Master eNB (MeNB), Secondary eNB (SeNB), integrated access backhaul (IAB) node, network controller, radio network controller (RNC), base station controller (BSC), relay, donor node controlling relay, base transceiver station (BTS), Central Unit (e.g. in a gNB), Distributed Unit (e.g. in a gNB), Baseband Unit, Centralized Baseband, C-RAN, access point (AP), transmission points, transmission nodes, Remote Radio Unit (RRU), Remote Radio Head (RRH), nodes in distributed antenna system (DAS), core network node (e.g. Mobile Switching Center (MSC), Mobility Management Entity (MME), etc.), Operations & Maintenance (O& M), Operations Support System (OSS), Self-Organizing Network (SON), positioning node (e.g. E-SMLC), etc. The terms network node and radio network node are used interchangeably herein.

[0042] Another example of a node is user equipment (UE), which is a non-limiting term and refers to any type of wireless device communicating with a network node and / or with another UE in a cellular or mobile communication system. Examples of UE are target device, device to device (D2D) UE, vehicular to vehicular (V2V), machine type UE, MTC UE or UE capable of machine to machine (M2M) communication, Personal Digital Assistant (PDA), Tablet, mobile terminals, smart phone, laptop embedded equipment (LEE), laptop mounted equipment (LME), Unified Serial Bus (USB) dongles, etc.

[0043] The term radio access technology (RAT), may refer to any RAT such as, for example, Universal Terrestrial Radio Access Network (UTRA), Evolved Universal Terrestrial Radio Access Network (E-UTRA), narrow band internet of things (NB-IoT), WiFi, Bluetooth, next generation RAT, NR, 4G, 5G, etc. Any of the equipment denoted by the terms node, network node or radio network node may be capable of supporting a single or multiple RATs.

[0044] The term signal or radio signal used herein can be any physical signal or physical channel. Examples of downlink (DL) physical signals are reference signal (RS) such as Primary Synchronization Signal (PSS), Secondary Synchronization Signal (SSS), Channel State Information-Reference Signal (CSI-RS), Demodulation Reference Signal (DMRS) signals in SS / PBCH block (SSB), discovery reference signal (DRS), Cell Specific Reference Signal (CRS), Positioning Reference Signal (PRS), etc. RS may be periodic. For example, RS occasions carrying one or more RSs may occur with certain periodicity (e.g., 20 ms, 40 ms, etc.). The RS may also be aperiodic.

[0045] Each SSB carries New Radio-Primary Synchronization Signal (NR-PSS), New Radio-Secondary Synchronization Signal (NR-SSS) and New Radio-Physical Broadcast Channel (NR-PBCH) in four successive symbols. One or multiple Synchronization Signal Blocks (SSBs) are transmitted in one SSB burst which is repeated with certain periodicity such as, for example, 5 ms, 10 ms, 20 ms, 40 ms, 80 ms, and 160 ms. The UE is configured with information about SSB on cells of certain carrier frequency by one or more SS / PBCH block measurement timing configuration (SMTC) configurations. The SMTC configuration comprising parameters such as SMTC periodicity, SMTC occasion length in time or duration, SMTC time offset with regard to reference time (e.g., serving cell’s SFN) etc. Therefore, SMTC occasion may also occur with certain periodicity (e.g., 5 ms, 10 ms, 20 ms, 40 ms, 80 ms, and 160 ms). Examples of uplink (UL) physical signals are reference signals such as Sounding Reference Signals (SRS), Demodulation Reference Signals (DMRS), etc. The term physical channel refers to any channel carrying higher layer information e.g. data, control etc. Examples of physical channels are Physical Broadcast Channel (PBCH), Physical Downlink Control Channel (PDCCH), Physical Downlink Shared Channel (PDSCH), Physical Uplink Shared Channel (PUSCH), Physical Uplink Control Channel (PUCCH), Physical Uplink Shared Channel (PUSCH), Short PUSCH (sPUCCH), Short PDSCH (sPDSCH), Short PUCCH (sPUCCH), Short PUSCH (sPUSCH), MTC PDCCH (MPDCCH), Narrowband PBCH (NPBCH), Narrowband PDCCH (NPDCCH), Narrowband PDSCH (NPDSCH), Narrowband PUSCH (NPUSCH), Enhanced PDCCH (E-PDCCH), etc.

[0046] The term time resource used herein may correspond to any type of physical resource or radio resource expressed in terms of length of time. Examples of time resources are symbol, time slot, subframe, radio frame, transmission time interval (TTI), interleaving time, slot, subslot, mini-slot, system frame number (SFN) cycle, hyper-SFN (H-SFN) cycle, etc.

[0047] Ground truth labels on radio measurements for training are often very difficult, if not impossible, to produce. For example, how can one determine if a channel is line-of-sight, i.e., whether the LOS path is blocked? Furthermore, TOA measurements are typically a measure of pseudo-range, i.e., the propagation delay plus an unknown clock offset between target and anchors. Using the propagation delay as a ground truth label for TOA is therefore not sufficient unless all nodes (targets and anchors) are perfectly synchronized.

[0048] Certain embodiments disclosed herein, however, provide a technical advantage that no radio measurement labels are needed in the training phase; only target position labels are used. For example, according to certain embodiments, methods and systems are provided that use “ground truth” target positions as labels for any ML based positioning solution. Such labels are arguably the “easiest” to provide in the field (e.g., compared to any label on radio measurements). Even if direct labels on the radio measurements are not available, the deployed NN can still be trained using a back-propagation technique such as those disclosed herein.

[0049] According to certain embodiments, a similar back-propagation technique can be used to infer radio measurement labels from the target position label directly, provided that such radio measurement labels can be inferred unambiguously.

[0050] According to certain embodiments, the solution(s) described herein include one or more of the following components:

[0051] Machine-Learning (ML)-based positioning estimation involving one or more optimization step(s). Such optimizations typically involve finding the estimated target position which minimizes a loss function involving (ML-based) radio measurements (Time of Arrival (TOA), Time Difference of Arrival (TDOA), Angle of Arrival (AOA), Angle of Departure (AOD), Line of Sight (LOS) indicators,...).

[0052] • Only use “ground truth” labels of the target position during training, even if the employed NN does not directly provide the estimated target position as output.

[0053] • Utilize a back-propagation technique over the optimization step(s) during training, which disposes the need for direct “ground truth” labels on the radio measurements.

[0054] According to certain embodiments, the method(s) apply when the output from the NN does not directly correspond to the collected ground truth label. Rather, further processing of the NN output is required (including one or more optimization steps) to derive the estimate that corresponds to the collected ground truth label. In other words, the estimate is a non-trivial function of the NN output. This may happen when it is difficult or impossible to collect ground truth labels for the NN output directly, while it is convenient to instead collect ground truth of a parameter that can be derived from the NN output.

[0055] The methods and procedures are illustrated with examples in the use case of positioning target devices with cellular radio signals, using target position ground truth labels. The same methods and procedures apply to many other use cases where the Artificial Intelligence (AI) / ML NN output does not directly correspond to the collected ground truth label.

[0056] The embodiments presented herein have differing assumptions on the time synchronization between nodes. Either all nodes are assumed perfectly synchronized, or the anchor nodes are assumed perfectly synchronized. This assumption on perfect synchronization should be seen as a (practical) working assumption on the used “timing measurement models”, and not an assumption about reality. Rather, timing errors between nodes are presumed to be corrected for in the time of arrival measurements up to the best ability of the positioning entity, and any remaining errors will inevitably result in some bias in the estimated target position.

[0057] ML-Based Quality Indicator for TOA-based Positioning, Assuming Perfect Time-Synchronization Among All Nodes

[0058] FIGURE 1 illustrates an overview of an example 100 for the simplest setting, according to certain embodiments. Other example embodiments presented in later text utilize similar ideas in other settings. In the illustrated embodiment, a conventional method (illustrated by a “find first peak” block 102a...n) is used to estimate TOAs for anchor nodes / - k with known positions from measured (complex valued) channel impulse responses (CIRs). This conventional method is a non-trainable entity such as, for example, a conventional signal processing algorithm. Those same CIRs, denoted in vector form asc;, are taken as inputs by a NN block to produce a soft quality indicator

[0059]

[0060] which is a nonnegative real value (where a higher value means better quality). The outputs from the NN blocks are stacked into a vector ® = [&...

[0061]

[0062] (the “mux” block 104). The TOAs and associated quality indicators are used in an optimization step 106 to find the estimated target position. During training of 108 is calculated from P and the ground-truth position (label)

[0063]

[0064] According to certain embodiments, a vector of unknownssis introduced, over which the loss function / flW is minimized in the optimization step. According to certain embodiments, is simply equal to the target position E, but this is not necessarily the case in other embodiments (where x contains additional auxiliary variables).

[0065] According to certain embodiments, the following two working assumptions are made on the TO A measurement procedure:

[0066] • All nodes (i.e., anchor nodes and the target node) are perfectly time synchronized, meaning that they utilize a common time reference known to all.

[0067] • The target node transmits a reference signal (for example, a SRS) at time 0. This reference signal is known to the anchor nodes a priori, meaning that a channel estimate U can be derived at each receiving anchor node by cross correlating the received signal with the reference signal.

[0068] Under these assumptions, the TOAs k are modeled as (imperfect) measurements of the

[0069] propagation delays

[0070]

[0071] where c is the speed of light and Ti! denotes the Euclidean 2-norm. Using this TOA measurement model, some examples for the loss function in the optimization step are:

[0072] • weighted 2-norm:

[0073]

[0074] • weighted 1 -norm:

[0075]

[0076] It is seen that the quality indicators? act as weights on each measurement residual in the example optimization loss functions. The minimizing x is in these cases independent of the scaling of j. One may, therefore, impose some normalization or upper limit on / , e.g., defining to be a real number between 0 (bad quality) and 1 (good quality).

[0077] Examples for the training loss function are (writing P = Is>'

[0078]

[0079] ):

[0080] • 2-norm, 3D: p.pJ = ^p -p F / 2

[0081] • 2-norm, horizontal:

[0082]

[0083] • 1-norm, 3D: ftpJ = A - xj + jy - yj + k - • 1-norm, horizontal: b / PJ = - J + T ~ j

[0084] These training loss function examples apply to all example embodiments in this document.

[0085] Back-Propagation Over the Optimization Block

[0086] According to certain embodiments, the outputs from the NN blocks are stacked into a vector 0 e IRm(the mux block). In the example embodiment illustrated in FIGURE 1, 0 = [Pi "• PnT6

[0087]

[0088] meaning that m = n in this case. Note that m, which is the length of 0, might be something else in other example embodiments. This section details the back-propagation step over the optimization block in terms of 0 = [0t••• 0m]T.

[0089] In this section, the shorthand notation Z(x) is used for the training loss Z(p, p*). It is envisioned to be a function of the minimizer x for a fixed (implicit) label p*. This is feasible because x is a stacked vector containing p and possibly additional auxiliary parameters.

[0090] Let w be a parameter native to the NN block in any embodiment, i.e., a free weight that is modified during training. To train in the descent direction of the training loss function, dl / dw is calculated using a back-propagation technique. Using the chain rule, we get:

[0091]

[0092] where [Z] (x) is the gradient of the training loss I (x) with respect to x.

[0093] In this section a solution to the sub-problem of back-propagating over the optimization block is proposed, i.e., how to calculate dx / dw. If x is envisioned as a function of 0 e DT":

[0094] x(0) = argminx / e(x)

[0095] where “arg min” stands for the “ then the chain rule implies:

[0096]

[0097] The first order optimality condition for the optimal point is that the gradient vector is zero:

[0098] Vx[ / e](x) = 0

[0099] where Vx[e](x) should be read as the gradient of the optimization losse(x) with respect to x, evaluated at x = x. The chain rule implies (take derivatives with respect to 0k):

[0100]

[0101] where Hx[e](x) is used to denote the Hessian matrix of the optimization losse(x) with respect to x, evaluated at x = x. Rearranging terms gives the following result:

[0102]

[0103] This can be used to compute dx / dw from x and ddk / dw for k = 1, 2,..., m.

[0104] Computing the Hessian matrix normally requires high complexity, especially for highdimensional problems. However, the above formulation requires only the Hessian matrix with respect to x, which typically has a low dimension of 2, 3 or 4. This formulation ensures the feasibility of differentiation through the optimization block.

[0105] Furthermore, instead of explicit inversion of the Hessian matrix as implicated in the above, g — can be computed via efficient iterative solver on the linear equation:

[0106]

[0107]

[0108] Nonlimiting exemplary embodiment of such iterative solver includes the Gauss-Seidel algorithm.

[0109] Note that, since the back propagation training of the trainable ML model is based on

[0110]

[0111] many steps of small changes to the parameters, the solution g = — from the previous training step can be used to initialize the above linear equation solver for the current training step.

[0112] Training Loop and Deployment of the NN

[0113] The training of the NN is done in an iterative manner. Once dl / dw is calculated (using back propagation) for all weights w native to the neural network, all such weights are updated in a direction of descent (meaning that the training loss decreases when using the updated weights).

[0114] Once the weights are updated, an updated training loss I is obtained using forward propagation. For certain embodiments (and analogously for other example embodiments), this is done by following the arrows in FIGURE 1 in the forward direction. Specifically, the NN is used to calculate 0 from the input CIRs, p is found by minimizing fe. and then Z(p, p*) is calculated. From this updated training loss, dl / dw is once again calculated for all weights using back propagation. This iterative process can stop when the training loss is smaller than a predefined threshold.

[0115] Once the training is done, the NN can be deployed for positioning. For illustration, such as, for example, in terms of FIGURE 1, this means that forward propagation is applied until p is calculated. This p is the end result, an estimate for the target position.

[0116] ML-Based TOA Measurements for Positioning, Assuming Perfect Time-Synchronization Among Anchor Nodes

[0117] FIGURE 2 illustrates an overview of an example 200 for the simplest setting, according to certain embodiments. FIGURE 2 differs from the example embodiment illustrated in FIGURE 1 in two ways. First, the NN serves as a TOA estimator (it takes a measured CIR as input and returns an estimated TOA tf). Second, the target node is not synchronized with the time reference common to the anchor nodes. This means that there is an unknown clock offset T which must be jointly estimated in the optimization step 206, together with the target position p. In this embodiment, the stacked vector of NN outputs consists of TOA measurements: 0 = [G -• tn]Te m

[0118] In contrast to the example embodiment of FIGURE 1, we make the following two working assumptions on the TOA measurement procedure:

[0119] • All anchor nodes are perfectly time synchronized, meaning that they utilize a common time reference known to all anchor nodes.

[0120] • The target node transmits a reference signal (for example, a SRS) at time 0, according to the unknown target node time reference. This reference signal is known to the anchor nodes a priori, meaning that a channel estimate Cy can be derived at each receiving anchor node.

[0121] Under these assumptions, the TOAs ty is modeled as (imperfect) measurements of the propagation delays offset by an unknown reference time difference, i.e., ||p - py || / c + T. Using this TOA measurement model, some examples for the loss function in the optimization step are:

[0122] • weighted 2-norm: f0(x) =

[0123]

[0124] - ||p - p7|| / c - T) / 2

[0125] • weighted 1-norm: f0(

[0126]

[0127] ML-Based TOA Measurements and Quality Indicators for Positioning, Assuming Perfect Time-Synchronization Among Anchor Nodes

[0128] FIGURE 3 illustrates an example 300 of joint TOA and quality-indicator based NN assuming an un-synchronized target node, according to certain embodiments. The illustrated embodiment, as depicted in FIGURE 3, differs from the example embodiment illustrated in FIGURE 1 such that the NN also outputs an associated quality indicator ff associated with an estimated TOA. This quality indicator is similar to the one described above such as, for example, it is a nonnegative real number, and it is used to weight each measurement residual in the optimization step. In this embodiment, the stacked vector of NN outputs is 0 = [ti ft - tn

[0129]

[0130] Examples for the loss function in the optimization step are:

[0131] • weighted 2-norm:

[0132]

[0133] • weighted 1-norm:

[0134]

[0135] ML-based Soft LOS / NLOS Indicators for Positioning, Assuming Perfect Time-Synchronization Among Anchor Nodes

[0136] FIGURE 4 illustrates an example 400 of a soft LOS / NLOS indicator-based NN assuming an un-synchronized target node, according to certain embodiments. In the illustrated embodiment, an untrainable entity represented as a “find first peak” block 402a...n much like the embodiment illustrated in FIGURE 1 is used to obtain TOA estimates. In association, this same block returns an associated quality indicator (a nonnegative real number). It is assumed that this quality indicator is inversely proportional to the variance or standard deviation of the first detected peak, while not taking any site-specific signatures into consideration (e.g., whether the first peak is the LOS peak). The task of determining any site-specific characteristics (i.e., whether a CIR is LOS or NLOS) is the task of the NN block 408, which outputs a soft LOS / NLOS indicator w7; a value between 0 (NLOS) and 1 (LOS). The outputs from the NN blocks are stacked into a vector 0 = [wi •••wn]Te IRn.

[0137] Some examples for the loss function in the optimization step are:

[0138] • weighted 2-norm:

[0139]

[0140] • weighted 1-norm:

[0141]

[0142] It is seen that the LOS indicator Wj and the quality indicator

[0143]

[0144] affect the example optimization loss functions in the same way; their product serves as a weight for the associated measurement residual. Derive Labels on the NN Output From the Positioning Label

[0145] According to certain embodiments, it is sometimes possible to derive explicit labels on the NN output from the positioning label, for those cases where such labels can be derived unambiguously. Such cases are where the positioning relies on a signal processing algorithm for TOA estimation, such as the example embodiment illustrated in FIGURE 1, or the example embodiment illustrated in FIGURE 4. The main idea is this:

[0146] 1. Derive a set of NN output labels 0* e DT" for which the training loss I (p, p*) = Z(x(0)) is minimized with respect to 0. Mathematically, 0* = argmineZ(x(0)).

[0147] 2. Train a NN using the labels 0*.

[0148] Step 1 can be done using the same technique as for the back propagation over the optimization block. The technique includes initializing with some vector 0 = 0Oe DU", e.g., a vector of all ones. The Jacobian matrix Jpe IR3xmis then computed with respect to the training residual p - p* as follows.

[0149] Define the Jacobian with respect to the vector of unknowns as:

[0150]

[0151] From the previous discussion on the back propagation technique, we get:

[0152]

[0153] The Jacobian Jpfor the training residual can be obtained directly from Jx, by removing the rows which corresponds to auxiliary variables if any (such as T in example embodiments 2-4).

[0154] The gradient for the training loss with respect to 0, i.e., Ve[Z] (p, p*) can be expressed in terms of this Jacobian matrix. For example, if the training loss is Z(p, p*) = ||p - p*||2 / 2, then the gradient is:

[0155]

[0156] In this way, 0 can be updated in a direction of descending gradient using a numerical method with depends on the gradient and / or the Jacobian, e.g., Gauss-Newton, Levenberg-Marquardt, gradient descent, or similar. In this way, 0* is obtained by iterating until some convergence criterion is satisfied.

[0157] Other Embodiments According to various particular embodiments, the example embodiments discussed herein may be modified in one or more or combination of the following ways:

[0158] • Instead of the CIR (time- or frequency domain) as input to the NN block, the input may include the time-domain power-delay profile (PDP), which is the absolute values squared of the time-domain CIR samples. Such CIRs are preferably measured at the receiver(s) using reference signals, i.e., downlink PRS or uplink SRS.

[0159] • The positioning (optimization block) can be done using uplink AOA measurements instead of, or in combination with, TDOA. Note that uplink AOA requires a receive antenna array at the anchors, preferably with small enough antenna spacing to avoid ambiguities (grating lobes). Furthermore, anchor antenna orientations must also be known; anchor positions are not enough to solve for the target position using such angular measurements.

[0160] • The positioning can be done using downlink AOD measurements instead of, or in combination with, TDOA measurements. In such embodiments, anchor antenna orientations and beam information must be known.

[0161] • Using TDOA measurements instead of TOA measurements can be done in a straightforward manner (preferably for embodiments where the target node time reference is unknown). Define the TDOA with respect to anchor j as: tj = tj — tref, where trefis any time reference tt(meaning that q = 0 by definition). In this way, the only thing we must do is to replace tj by tj in the example expressions for the loss functione(x) at the “optimization” block. At the same time, we can always treat trej as a constant during the back propagation (e.g., in both examples 1 and 2), since a change in trej will only affect the offset parameter T which is anyways not used.

[0162] FIGURE 5 illustrates an example method 500 by a network node or UE for labeling for ML-based positioning of a UE, according to certain embodiments. In the illustrated embodiment, the method 500 includes a gathering step at 510, an assigning step 520, and an iteratively adjusting step at 530. For example, at step 510, the network node or UE may gather a set of training data samples, and each sample may include a plurality of measured CIRs and an associated ground-truth label on a UE position. At step 520, for example, the network node or UE may assign random weights to the NN. At step 530, for example, the network node or UE may iteratively adjust the weights based on the associated ground truth label on the UE position. The step of iteratively adjusting the weights may include performing forward propagation to determine NN outputs, estimate the UE position, and determine a training loss and using back-propagation to adjust weights to decrease training loss. The forward propagation and back propagation involve an optimization step for estimating the UE position from a plurality of radio measurements. The training loss is a measure of size of the difference between the ground truth label and the estimated UE position. The NN outputs are at least one of: ML-based radio measurements, quality measures on the plurality of radio measurements, and a combination thereof.

[0163] In various particular embodiments, the network node may perform any of the operations and steps or include any of the features described with respect to the Group A and Group C Example Embodiments below or any other embodiments described herein.

[0164] FIGURE 6 illustrates another example method 600 by a network node or UE for labeling for ML-based positioning of a UE, according to certain embodiments. In the illustrated embodiment, the method 600 includes a gathering step at 610, an assigning step 620, a deriving step at 630, and an iteratively adjusting step at 640. For example, at step 610, the network node or UE may gather a set of training data samples, and each sample may include a plurality of measured CIRs and an associated ground-truth label on a UE position. At step 620, for example, the network node or UE may assign random weights to the NN. At step 630, for example, the network node or UE may, based on the associated ground-truth label on the UE position, derive a set of labels for an output(s) of the NN. At step 640, for example, the network node or UE may iteratively adjust the weights based on the set of labels derived for the output(s) of the NN. The step of iteratively adjusting the weights includes performing forward propagation to determine NN output(s) and determine a training loss and using back-propagation to adjust weights to decrease training loss. The derivation of the set of labels for the output of the NN involves an optimization step for estimating the UE position from a plurality of radio measurements. The training loss is a measure of size of the difference between the set of labels derived for the output(s) for the NN and the output(s) of the NN. The output(s) of the NN is at least one of: ML-based radio measurements, quality measures on the plurality of radio measurements, or a combination thereof.

[0165] In various particular embodiments, the network node may perform any of the operations and steps or include any of the features described with respect to the Group B and Group D Example Embodiments below or any other embodiments described herein.

[0166] FIGURE 7 illustrates an example method 700 performed by a network node for training a ML-based solution for position estimation of a UE, according to certain embodiments. In the illustrated embodiment, the method begins at step 710 with the network node gathering a set of training data samples, wherein each sample comprises a plurality of measured CIRs and an associated ground-truth label on a UE position. At step 720, the network node assigns at least one random weight to the NN. At step 730, the network node iteratively adjusts the at least one random weight based on the associated ground-truth label on the UE position. The step of iteratively adjusting the at least one random weight includes performing forward propagation to determine at least one neural network output, determine an estimated UE position, and determine a training loss. The step of iteratively adjusting the at least one random weight also include using back-propagation to adjust the at least one random weight to decrease the training loss. At least one of the forward propagation and the back propagation involve a numerical optimization step for determining the estimated UE position from a plurality of radio measurements. The training loss is a measure of a size of a difference between the ground truth label and the estimated UE position. The at least one neural network output is at least one of: at least one ML-based radio measurement and / or at least one quality measure on the plurality of radio measurements.

[0167] In a particular embodiment, based on the associated ground-truth label on the UE position, the network node derives a set of labels for at least one output of the neural network. The derivation of the set of labels for the output of the neural network involve an optimization step for determining the estimated UE position from the plurality of radio measurements.

[0168] In a particular embodiment, the numerical optimization step is based on the plurality of radio measurements and the at least one quality measure on the plurality of radio measurements when available.

[0169] In a particular embodiment, the network node transmits at least one reference signal and receives, from the UE, at least one of the plurality of measured CIRs and the plurality of radio measurements based on the at least one reference signal.

[0170] In a particular embodiment, when gathering the set of training data samples, the network node receives at least one reference signal from the UE and performs the plurality of radio measurements based on the at least one reference signal.

[0171] In a particular embodiment, the network node comprises an LMF.

[0172] In a particular embodiment, each of the plurality of measured CIRs are associated with a respective one of a plurality of anchor nodes, and the network node receives the plurality of measured CIRs from the plurality of anchor nodes. In a further particular embodiment, the plurality of anchor nodes and the UE are in time synchronization with each other. In another further particular embodiment, the plurality of anchor nodes are in time synchronization with each other, the plurality of anchor nodes are not in time synchronization with the UE, and the numerical optimization step includes estimating an unknown clock offset.

[0173] In a particular embodiment, the at least one neural network output includes at least one of: a TOA value; a TDOA value; an AOA value; an AOD value; a LOS indicator; and a NLOS indicator.

[0174] In a particular embodiment, the at least one neural network output comprises a plurality of quality indicators, each quality indicator comprises a non-negative value, and a higher quality indicator indicates a better quality of the at least one neural network output.

[0175] In a particular embodiment, each associated ground-truth label comprises at least one of: a LOS label, a soft LOS label, a NLOS label, and a soft NLOS label.

[0176] In a particular embodiment, the network node determines that the training loss is below a threshold and stops the iterative adjustment of the weights based on the training loss being below the threshold.

[0177] FIGURE 8 illustrates an example method 800 performed by a UE for training a ML-based solution for position estimation, according to certain embodiments. In the illustrated embodiment, the method begins at step 810 with the UE gathering a set of training data samples, wherein each sample comprises a plurality of measured CIRs and an associated ground-truth label on a UE position. At step 820, the UE assigns at least one random weight to the NN. At step 830, the UE iteratively adjusts the at least one random weight based on the associated ground-truth label on the UE position. The step of iteratively adjusting the at least one random weight includes performing forward propagation to determine at least one neural network output, determine an estimated UE position, and determine a training loss. The step of iteratively adjusting the at least one random weight also include using back-propagation to adjust the at least one random weight to decrease the training loss. At least one of the forward propagation and the back propagation involve a numerical optimization step for determining the estimated UE position from a plurality of radio measurements. The training loss is a measure of a size of a difference between the ground truth label and the estimated UE position. The at least one neural network output is at least one of: at least one ML-based radio measurement and / or at least one quality measure on the plurality of radio measurements.

[0178] In a particular embodiment, based on the associated ground-truth label on the UE position, the UE derives a set of labels for at least one output of the neural network, and the derivation of the set of labels for the output of the neural network involve an optimization step for determining the estimated UE position from the plurality of radio measurements. In a particular embodiment, the numerical optimization step is based on the plurality of radio measurements and the at least one quality measure on the plurality of radio measurements when available.

[0179] In a particular embodiment, the UE transmits at least one reference signal and receives, from the UE, at least one of: the plurality of measured CIRs and the plurality of radio measurements based on the at least one reference signal.

[0180] In a particular embodiment, when gathering the set of training data samples, the UE receives at least one reference signal from the UE and performs the plurality of radio measurements based on the at least one reference signal.

[0181] In a particular embodiment, the network node is an LMF.

[0182] In a particular embodiment, each of the plurality of measured CIRs are associated with a respective one of a plurality of anchor nodes, and the UE receives the plurality of measured CIRs from the plurality of anchor nodes. In a further particular embodiment, the plurality of anchor nodes and the UE are in time synchronization with each other. In another particular embodiment, the plurality of anchor nodes are in time synchronization with each other, the plurality of anchor nodes are not in time synchronization with the UE, and the numerical optimization step includes estimating an unknown clock offset.

[0183] In a particular embodiment, the at least one neural network output comprises at least one of: a TOA value; a TDOA value; an AOA value; an AOD value; a LOS indicator; and a NLOS indicator.

[0184] In a particular embodiment, the at least one neural network output comprises a plurality of quality indicators, each quality indicator comprises a non-negative value, and a higher quality indicator indicates a better quality of the at least one neural network output.

[0185] In a particular embodiment, each associated ground-truth label comprises at least one of: a LOS label, a soft LOS label, a NLOS label, and a soft NLOS label.

[0186] In a particular embodiment, the UE determines that the training loss is below a threshold and stops the iterative adjustment of the weights based on the training loss being below the threshold.

[0187] FIGURE 9 shows an example of a communication system 900 in accordance with some embodiments. In the example, the communication system 900 includes a telecommunication network 902 that includes an access network 904, such as a radio access network (RAN), and a core network 906, which includes one or more core network nodes 908. The access network 904 includes one or more access network nodes, such as network nodes 910a and 910b (one or more of which may be generally referred to as network nodes 910), or any other similar 3rd Generation Partnership Project (3GPP) access node or non-3GPP access point. The network nodes 910 facilitate direct or indirect connection of user equipment (UE), such as by connecting UEs 912a, 912b, 912c, and 912d (one or more of which may be generally referred to as UEs 912) to the core network 906 over one or more wireless connections.

[0188] Example wireless communications over a wireless connection include transmitting and / or receiving wireless signals using electromagnetic waves, radio waves, infrared waves, and / or other types of signals suitable for conveying information without the use of wires, cables, or other material conductors. Moreover, in different embodiments, the communication system 900 may include any number of wired or wireless networks, network nodes, UEs, and / or any other components or systems that may facilitate or participate in the communication of data and / or signals whether via wired or wireless connections. The communication system 900 may include and / or interface with any type of communication, telecommunication, data, cellular, radio network, and / or other similar type of system.

[0189] The UEs 912 may be any of a wide variety of communication devices, including wireless devices arranged, configured, and / or operable to communicate wirelessly with the network nodes 910 and other communication devices. Similarly, the network nodes 910 are arranged, capable, configured, and / or operable to communicate directly or indirectly with the UEs 912 and / or with other network nodes or equipment in the telecommunication network 902 to enable and / or provide network access, such as wireless network access, and / or to perform other functions, such as administration in the telecommunication network 902.

[0190] In the depicted example, the core network 906 connects the network nodes 910 to one or more hosts, such as host 916. These connections may be direct or indirect via one or more intermediary networks or devices. In other examples, network nodes may be directly coupled to hosts. The core network 906 includes one more core network nodes (e.g., core network node 908) that are structured with hardware and software components. Features of these components may be substantially similar to those described with respect to the UEs, network nodes, and / or hosts, such that the descriptions thereof are generally applicable to the corresponding components of the core network node 908. Example core network nodes include functions of one or more of a Mobile Switching Center (MSC), Mobility Management Entity (MME), Home Subscriber Server (HSS), Access and Mobility Management Function (AMF), Session Management Function (SMF), Authentication Server Function (AUSF), Subscription Identifier De-concealing function (SIDF), Unified Data Management (UDM), Security Edge Protection Proxy (SEPP), Network Exposure Function (NEF), and / or a User Plane Function (UPF). The host 916 may be under the ownership or control of a service provider other than an operator or provider of the access network 904 and / or the telecommunication network 902, and may be operated by the service provider or on behalf of the service provider. The host 916 may host a variety of applications to provide one or more service. Examples of such applications include live and pre-recorded audio / video content, data collection services such as retrieving and compiling data on various ambient conditions detected by a plurality of UEs, analytics functionality, social media, functions for controlling or otherwise interacting with remote devices, functions for an alarm and surveillance center, or any other such function performed by a server.

[0191] As a whole, the communication system 900 of FIGURE 9 enables connectivity between the UEs, network nodes, and hosts. In that sense, the communication system may be configured to operate according to predefined rules or procedures, such as specific standards that include, but are not limited to: Global System for Mobile Communications (GSM); Universal Mobile Telecommunications System (UMTS); Long Term Evolution (LTE), and / or other suitable 2G, 3G, 4G, 5G standards, or any applicable future generation standard (e.g., 6G); wireless local area network (WLAN) standards, such as the Institute of Electrical and Electronics Engineers (IEEE) 802.11 standards (WiFi); and / or any other appropriate wireless communication standard, such as the Worldwide Interoperability for Microwave Access (WiMax), Bluetooth, Z-Wave, Near Field Communication (NFC) ZigBee, LiFi, and / or any low-power wide-area network (LPWAN) standards such as LoRa and Sigfox.

[0192] In some examples, the telecommunication network 902 is a cellular network that implements 3GPP standardized features. Accordingly, the telecommunications network 902 may support network slicing to provide different logical networks to different devices that are connected to the telecommunication network 902. For example, the telecommunications network 902 may provide Ultra Reliable Low Latency Communication (URLLC) services to some UEs, while providing Enhanced Mobile Broadband (eMBB) services to other UEs, and / or Massive Machine Type Communication (mMTC) / Massive loT services to yet further UEs.

[0193] In some examples, the UEs 912 are configured to transmit and / or receive information without direct human interaction. For instance, a UE may be designed to transmit information to the access network 904 on a predetermined schedule, when triggered by an internal or external event, or in response to requests from the access network 904. Additionally, a UE may be configured for operating in single- or multi-RAT or multi-standard mode. For example, a UE may operate with any one or combination of Wi-Fi, NR (New Radio) and LTE, i.e. being configured for multi-radio dual connectivity (MR-DC), such as E-UTRAN (Evolved-UMTS Terrestrial Radio Access Network) New Radio - Dual Connectivity (EN-DC).

[0194] In the example, the hub 914 communicates with the access network 904 to facilitate indirect communication between one or more UEs (e.g., UE 912c and / or 912d) and network nodes (e.g., network node 910b). In some examples, the hub 914 may be a controller, router, content source and analytics, or any of the other communication devices described herein regarding UEs. For example, the hub 914 may be a broadband router enabling access to the core network 906 for the UEs. As another example, the hub 914 may be a controller that sends commands or instructions to one or more actuators in the UEs. Commands or instructions may be received from the UEs, network nodes 910, or by executable code, script, process, or other instructions in the hub 914. As another example, the hub 914 may be a data collector that acts as temporary storage for UE data and, in some embodiments, may perform analysis or other processing of the data. As another example, the hub 914 may be a content source. For example, for a UE that is a VR headset, display, loudspeaker or other media delivery device, the hub 914 may retrieve VR assets, video, audio, or other media or data related to sensory information via a network node, which the hub 914 then provides to the UE either directly, after performing local processing, and / or after adding additional local content. In still another example, the hub 914 acts as a proxy server or orchestrator for the UEs, in particular in if one or more of the UEs are low energy loT devices.

[0195] The hub 914 may have a constant / persistent or intermittent connection to the network node 910b. The hub 914 may also allow for a different communication scheme and / or schedule between the hub 914 and UEs (e.g., UE 912c and / or 912d), and between the hub 914 and the core network 906. In other examples, the hub 914 is connected to the core network 906 and / or one or more UEs via a wired connection. Moreover, the hub 914 may be configured to connect to an M2M service provider over the access network 904 and / or to another UE over a direct connection. In some scenarios, UEs may establish a wireless connection with the network nodes 910 while still connected via the hub 914 via a wired or wireless connection. In some embodiments, the hub 914 may be a dedicated hub - that is, a hub whose primary function is to route communications to / from the UEs from / to the network node 910b. In other embodiments, the hub 914 may be a non-dedicated hub - that is, a device which is capable of operating to route communications between the UEs and network node 910b, but which is additionally capable of operating as a communication start and / or end point for certain data channels. FIGURE 10 shows a UE 1000, which may be an embodiment of the UE 912 of FIGURE 9, in accordance with some embodiments. As used herein, a UE refers to a device capable, configured, arranged and / or operable to communicate wirelessly with network nodes and / or other UEs. Examples of a UE include, but are not limited to, a smart phone, mobile phone, cell phone, voice over IP (VoIP) phone, wireless local loop phone, desktop computer, personal digital assistant (PDA), wireless cameras, gaming console or device, music storage device, playback appliance, wearable terminal device, wireless endpoint, mobile station, tablet, laptop, laptop-embedded equipment (LEE), laptop-mounted equipment (LME), smart device, wireless customer-premise equipment (CPE), vehicle-mounted or vehicle embedded / integrated wireless device, etc. Other examples include any UE identified by the 3rd Generation Partnership Project (3GPP), including a narrow band internet of things (NB-IoT) UE, a machine type communication (MTC) UE, and / or an enhanced MTC (eMTC) UE.

[0196] A UE may support device-to-device (D2D) communication, for example by implementing a 3GPP standard for sidelink communication, Dedicated Short-Range Communication (DSRC), vehicle-to-vehicle (V2V), vehicle-to-infrastructure (V2I), or vehicle-to-everything (V2X). In other examples, a UE may not necessarily have a user in the sense of a human user who owns and / or operates the relevant device. Instead, a UE may represent a device that is intended for sale to, or operation by, a human user but which may not, or which may not initially, be associated with a specific human user (e.g., a smart sprinkler controller). Alternatively, a UE may represent a device that is not intended for sale to, or operation by, an end user but which may be associated with or operated for the benefit of a user (e.g., a smart power meter).

[0197] The UE 1000 includes processing circuitry 1002 that is operatively coupled via a bus 1004 to an input / output interface 1006, a power source 1008, a memory 1010, a communication interface 1012, and / or any other component, or any combination thereof. Certain UEs may utilize all or a subset of the components shown in FIGURE 10. The level of integration between the components may vary from one UE to another UE. Further, certain UEs may contain multiple instances of a component, such as multiple processors, memories, transceivers, transmitters, receivers, etc.

[0198] The processing circuitry 1002 is configured to process instructions and data and may be configured to implement any sequential state machine operative to execute instructions stored as machine-readable computer programs in the memory 1010. The processing circuitry 1002 may be implemented as one or more hardware-implemented state machines (e.g., in discrete logic, field-programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), etc.); programmable logic together with appropriate firmware; one or more stored computer programs, general-purpose processors, such as a microprocessor or digital signal processor (DSP), together with appropriate software; or any combination of the above. For example, the processing circuitry 1002 may include multiple central processing units (CPUs).

[0199] In the example, the input / output interface 1006 may be configured to provide an interface or interfaces to an input device, output device, or one or more input and / or output devices. Examples of an output device include a speaker, a sound card, a video card, a display, a monitor, a printer, an actuator, an emitter, a smartcard, another output device, or any combination thereof. An input device may allow a user to capture information into the UE 1000. Examples of an input device include a touch-sensitive or presence- sensitive display, a camera (e.g., a digital camera, a digital video camera, a web camera, etc.), a microphone, a sensor, a mouse, a trackball, a directional pad, a trackpad, a scroll wheel, a smartcard, and the like. The presence-sensitive display may include a capacitive or resistive touch sensor to sense input from a user. A sensor may be, for instance, an accelerometer, a gyroscope, a tilt sensor, a force sensor, a magnetometer, an optical sensor, a proximity sensor, a biometric sensor, etc., or any combination thereof. An output device may use the same type of interface port as an input device. For example, a Universal Serial Bus (USB) port may be used to provide an input device and an output device.

[0200] In some embodiments, the power source 1008 is structured as a battery or battery pack. Other types of power sources, such as an external power source (e.g., an electricity outlet), photovoltaic device, or power cell, may be used. The power source 1008 may further include power circuitry for delivering power from the power source 1008 itself, and / or an external power source, to the various parts of the UE 1000 via input circuitry or an interface such as an electrical power cable. Delivering power may be, for example, for charging of the power source 1008. Power circuitry may perform any formatting, converting, or other modification to the power from the power source 1008 to make the power suitable for the respective components of the UE 1000 to which power is supplied.

[0201] The memory 1010 may be or be configured to include memory such as random access memory (RAM), read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), magnetic disks, optical disks, hard disks, removable cartridges, flash drives, and so forth. In one example, the memory 610 includes one or more application programs 1014, such as an operating system, web browser application, a widget, gadget engine, or other application, and corresponding data 1016. The memory 1010 may store, for use by the UE 1000, any of a variety of various operating systems or combinations of operating systems.

[0202] The memory 1010 may be configured to include a number of physical drive units, such as redundant array of independent disks (RAID), flash memory, USB flash drive, external hard disk drive, thumb drive, pen drive, key drive, high-density digital versatile disc (HD-DVD) optical disc drive, internal hard disk drive, Blu-Ray optical disc drive, holographic digital data storage (HDDS) optical disc drive, external mini-dual in-line memory module (DIMM), synchronous dynamic random access memory (SDRAM), external micro-DIMM SDRAM, smartcard memory such as tamper resistant module in the form of a universal integrated circuit card (UICC) including one or more subscriber identity modules (SIMs), such as a USIM and / or IS IM, other memory, or any combination thereof. The UICC may for example be an embedded UICC (eUICC), integrated UICC (iUICC) or a removable UICC commonly known as ‘SIM card.’ The memory 1010 may allow the UE 1000 to access instructions, application programs and the like, stored on transitory or non-transitory memory media, to off-load data, or to upload data. An article of manufacture, such as one utilizing a communication system may be tangibly embodied as or in the memory 1010, which may be or comprise a device-readable storage medium.

[0203] The processing circuitry 1002 may be configured to communicate with an access network or other network using the communication interface 1012. The communication interface 1012 may comprise one or more communication subsystems and may include or be communicatively coupled to an antenna 1022. The communication interface 1012 may include one or more transceivers used to communicate, such as by communicating with one or more remote transceivers of another device capable of wireless communication (e.g., another UE or a network node in an access network). Each transceiver may include a transmitter 1018 and / or a receiver 1020 appropriate to provide network communications (e.g., optical, electrical, frequency allocations, and so forth). Moreover, the transmitter 1018 and receiver 1020 may be coupled to one or more antennas (e.g., antenna 1022) and may share circuit components, software or firmware, or alternatively be implemented separately.

[0204] In the illustrated embodiment, communication functions of the communication interface 1012 may include cellular communication, Wi-Fi communication, LPWAN communication, data communication, voice communication, multimedia communication, short-range communications such as Bluetooth, near-field communication, location-based communication such as the use of the global positioning system (GPS) to determine a location, another like communication function, or any combination thereof. Communications may be implemented in according to one or more communication protocols and / or standards, such as IEEE 802.11, Code Division Multiplexing Access (CDMA), Wideband Code Division Multiple Access (WCDMA), GSM, LTE, New Radio (NR), UMTS, WiMax, Ethernet, transmission control protocol / internet protocol (TCP / IP), synchronous optical networking (SONET), Asynchronous Transfer Mode (ATM), QUIC, Hypertext Transfer Protocol (HTTP), and so forth.

[0205] Regardless of the type of sensor, a UE may provide an output of data captured by its sensors, through its communication interface 1012, via a wireless connection to a network node. Data captured by sensors of a UE can be communicated through a wireless connection to a network node via another UE. The output may be periodic (e.g., once every 15 minutes if it reports the sensed temperature), random (e.g., to even out the load from reporting from several sensors), in response to a triggering event (e.g., when moisture is detected an alert is sent), in response to a request (e.g., a user initiated request), or a continuous stream (e.g., a live video feed of a patient).

[0206] As another example, a UE comprises an actuator, a motor, or a switch, related to a communication interface configured to receive wireless input from a network node via a wireless connection. In response to the received wireless input the states of the actuator, the motor, or the switch may change. For example, the UE may comprise a motor that adjusts the control surfaces or rotors of a drone in flight according to the received input or to a robotic arm performing a medical procedure according to the received input.

[0207] A UE, when in the form of an Internet of Things (loT) device, may be a device for use in one or more application domains, these domains comprising, but not limited to, city wearable technology, extended industrial application and healthcare. Non-limiting examples of such an loT device are a device which is or which is embedded in: a connected refrigerator or freezer, a TV, a connected lighting device, an electricity meter, a robot vacuum cleaner, a voice controlled smart speaker, a home security camera, a motion detector, a thermostat, a smoke detector, a door / window sensor, a flood / moisture sensor, an electrical door lock, a connected doorbell, an air conditioning system like a heat pump, an autonomous vehicle, a surveillance system, a weather monitoring device, a vehicle parking monitoring device, an electric vehicle charging station, a smart watch, a fitness tracker, a head-mounted display for Augmented Reality (AR) or Virtual Reality (VR), a wearable for tactile augmentation or sensory enhancement, a water sprinkler, an animal- or item-tracking device, a sensor for monitoring a plant or animal, an industrial robot, an Unmanned Aerial Vehicle (UAV), and any kind of medical device, like a heart rate monitor or a remote controlled surgical robot. A UE in the form of an loT device comprises circuitry and / or software in dependence of the intended application of the loT device in addition to other components as described in relation to the UE 1000 shown in FIGURE 10.

[0208] As yet another specific example, in an loT scenario, a UE may represent a machine or other device that performs monitoring and / or measurements, and transmits the results of such monitoring and / or measurements to another UE and / or a network node. The UE may in this case be an M2M device, which may in a 3GPP context be referred to as an MTC device. As one particular example, the UE may implement the 3GPP NB-IoT standard. In other scenarios, a UE may represent a vehicle, such as a car, a bus, a truck, a ship and an airplane, or other equipment that is capable of monitoring and / or reporting on its operational status or other functions associated with its operation.

[0209] In practice, any number of UEs may be used together with respect to a single use case. For example, a first UE might be or be integrated in a drone and provide the drone’s speed information (obtained through a speed sensor) to a second UE that is a remote controller operating the drone. When the user makes changes from the remote controller, the first UE may adjust the throttle on the drone (e.g. by controlling an actuator) to increase or decrease the drone’s speed. The first and / or the second UE can also include more than one of the functionalities described above. For example, a UE might comprise the sensor and the actuator, and handle communication of data for both the speed sensor and the actuators.

[0210] FIGURE 11 shows a network node 1100, which may be an embodiment of the network node 910 of FIGURE 9, in accordance with some embodiments.

[0211] As used herein, network node refers to equipment capable, configured, arranged and / or operable to communicate directly or indirectly with a UE and / or with other network nodes or equipment, in a telecommunication network. Examples of network nodes include, but are not limited to, access points (APs) (e.g., radio access points), base stations (BSs) (e.g., radio base stations, Node Bs, evolved Node Bs (eNBs) and NR NodeBs (gNBs)).

[0212] Base stations may be categorized based on the amount of coverage they provide (or, stated differently, their transmit power level) and so, depending on the provided amount of coverage, may be referred to as femto base stations, pico base stations, micro base stations, or macro base stations. A base station may be a relay node or a relay donor node controlling a relay. A network node may also include one or more (or all) parts of a distributed radio base station such as centralized digital units and / or remote radio units (RRUs), sometimes referred to as Remote Radio Heads (RRHs). Such remote radio units may or may not be integrated with an antenna as an antenna integrated radio. Parts of a distributed radio base station may also be referred to as nodes in a distributed antenna system (DAS).

[0213] Other examples of network nodes include multiple transmission point (multi-TRP) 5G access nodes, multi-standard radio (MSR) equipment such as MSR BSs, network controllers such as radio network controllers (RNCs) or base station controllers (BSCs), base transceiver stations (BTSs), transmission points, transmission nodes, multi-cell / multicast coordination entities (MCEs), Operation and Maintenance (O& M) nodes, Operations Support System (OSS) nodes, Self-Organizing Network (SON) nodes, positioning nodes (e.g., Evolved Serving Mobile Location Centers (E-SMLCs)), and / or Minimization of Drive Tests (MDTs).

[0214] The network node 1100 includes a processing circuitry 1102, a memory 1104, a communication interface 1106, and a power source 1108. The network node 1100 may be composed of multiple physically separate components (e.g., a NodeB component and a RNC component, or a BTS component and a BSC component, etc.), which may each have their own respective components. In certain scenarios in which the network node 1100 comprises multiple separate components (e.g., BTS and BSC components), one or more of the separate components may be shared among several network nodes. For example, a single RNC may control multiple NodeBs. In such a scenario, each unique NodeB and RNC pair, may in some instances be considered a single separate network node. In some embodiments, the network node 1100 may be configured to support multiple radio access technologies (RATs). In such embodiments, some components may be duplicated (e.g., separate memory 1104 for different RATs) and some components may be reused (e.g., a same antenna 1110 may be shared by different RATs). The network node 1100 may also include multiple sets of the various illustrated components for different wireless technologies integrated into network node 1100, for example GSM, WCDMA, LTE, NR, WiFi, Zigbee, Z-wave, LoRaWAN, Radio Frequency Identification (RFID) or Bluetooth wireless technologies. These wireless technologies may be integrated into the same or different chip or set of chips and other components within network node 1100.

[0215] The processing circuitry 1102 may comprise a combination of one or more of a microprocessor, controller, microcontroller, central processing unit, digital signal processor, application-specific integrated circuit, field programmable gate array, or any other suitable computing device, resource, or combination of hardware, software and / or encoded logic operable to provide, either alone or in conjunction with other network node 1100 components, such as the memory 1104, to provide network node 1100 functionality. In some embodiments, the processing circuitry 1102 includes a system on a chip (SOC). In some embodiments, the processing circuitry 1102 includes one or more of radio frequency (RF) transceiver circuitry 1112 and baseband processing circuitry 1114. In some embodiments, the radio frequency (RF) transceiver circuitry 1112 and the baseband processing circuitry 1114 may be on separate chips (or sets of chips), boards, or units, such as radio units and digital units. In alternative embodiments, part or all of RF transceiver circuitry 1112 and baseband processing circuitry 1114 may be on the same chip or set of chips, boards, or units.

[0216] The memory 1104 may comprise any form of volatile or non-volatile computer-readable memory including, without limitation, persistent storage, solid-state memory, remotely mounted memory, magnetic media, optical media, random access memory (RAM), read-only memory (ROM), mass storage media (for example, a hard disk), removable storage media (for example, a flash drive, a Compact Disk (CD) or a Digital Video Disk (DVD)), and / or any other volatile or non-volatile, non-transitory device-readable and / or computerexecutable memory devices that store information, data, and / or instructions that may be used by the processing circuitry 1102. The memory 1104 may store any suitable instructions, data, or information, including a computer program, software, an application including one or more of logic, rules, code, tables, and / or other instructions capable of being executed by the processing circuitry 1102 and utilized by the network node 1100. The memory 1104 may be used to store any calculations made by the processing circuitry 1102 and / or any data received via the communication interface 1106. In some embodiments, the processing circuitry 1102 and memory 1104 is integrated.

[0217] The communication interface 1106 is used in wired or wireless communication of signaling and / or data between a network node, access network, and / or UE. As illustrated, the communication interface 1106 comprises port(s) / terminal(s) 1116 to send and receive data, for example to and from a network over a wired connection. The communication interface 1106 also includes radio front-end circuitry 1118 that may be coupled to, or in certain embodiments a part of, the antenna 1110. Radio front-end circuitry 1118 comprises filters 1120 and amplifiers 1122. The radio front-end circuitry 1118 may be connected to an antenna 1110 and processing circuitry 1102. The radio front-end circuitry may be configured to condition signals communicated between antenna 1110 and processing circuitry 1102. The radio front-end circuitry 1118 may receive digital data that is to be sent out to other network nodes or UEs via a wireless connection. The radio front-end circuitry 1118 may convert the digital data into a radio signal having the appropriate channel and bandwidth parameters using a combination of filters 1120 and / or amplifiers 1122. The radio signal may then be transmitted via the antenna 1110. Similarly, when receiving data, the antenna 1110 may collect radio signals which are then converted into digital data by the radio front-end circuitry 1118. The digital data may be passed to the processing circuitry 1102. In other embodiments, the communication interface may comprise different components and / or different combinations of components.

[0218] In certain alternative embodiments, the network node 1100 does not include separate radio front-end circuitry 1118, instead, the processing circuitry 1102 includes radio front-end circuitry and is connected to the antenna 1110. Similarly, in some embodiments, all or some of the RF transceiver circuitry 1112 is part of the communication interface 1106. In still other embodiments, the communication interface 1106 includes one or more ports or terminals 1116, the radio front-end circuitry 1118, and the RF transceiver circuitry 1112, as part of a radio unit (not shown), and the communication interface 1106 communicates with the baseband processing circuitry 1114, which is part of a digital unit (not shown).

[0219] The antenna 1110 may include one or more antennas, or antenna arrays, configured to send and / or receive wireless signals. The antenna 1110 may be coupled to the radio front-end circuitry 1118 and may be any type of antenna capable of transmitting and receiving data and / or signals wirelessly. In certain embodiments, the antenna 1110 is separate from the network node 1100 and connectable to the network node 1100 through an interface or port.

[0220] The antenna 1110, communication interface 1106, and / or the processing circuitry 1102 may be configured to perform any receiving operations and / or certain obtaining operations described herein as being performed by the network node. Any information, data and / or signals may be received from a UE, another network node and / or any other network equipment. Similarly, the antenna 1110, the communication interface 1106, and / or the processing circuitry 1102 may be configured to perform any transmitting operations described herein as being performed by the network node. Any information, data and / or signals may be transmitted to a UE, another network node and / or any other network equipment.

[0221] The power source 1108 provides power to the various components of network node 1100 in a form suitable for the respective components (e.g., at a voltage and current level needed for each respective component). The power source 1108 may further comprise, or be coupled to, power management circuitry to supply the components of the network node 1100 with power for performing the functionality described herein. For example, the network node 1100 may be connectable to an external power source (e.g., the power grid, an electricity outlet) via an input circuitry or interface such as an electrical cable, whereby the external power source supplies power to power circuitry of the power source 1108. As a further example, the power source 1108 may comprise a source of power in the form of a battery or battery pack which is connected to, or integrated in, power circuitry. The battery may provide backup power should the external power source fail.

[0222] Embodiments of the network node 1100 may include additional components beyond those shown in FIGURE 11 for providing certain aspects of the network node’s functionality, including any of the functionality described herein and / or any functionality necessary to support the subject matter described herein. For example, the network node 1100 may include user interface equipment to allow input of information into the network node 1100 and to allow output of information from the network node 1100. This may allow a user to perform diagnostic, maintenance, repair, and other administrative functions for the network node 1100.

[0223] FIGURE 12 is a block diagram illustrating a virtualization environment 1200 in which functions implemented by some embodiments may be virtualized.

[0224] In the present context, virtualizing means creating virtual versions of apparatuses or devices which may include virtualizing hardware platforms, storage devices and networking resources. As used herein, virtualization can be applied to any device described herein, or components thereof, and relates to an implementation in which at least a portion of the functionality is implemented as one or more virtual components. Some or all of the functions described herein may be implemented as virtual components executed by one or more virtual machines (VMs) implemented in one or more virtual environments 1200 hosted by one or more of hardware nodes, such as a hardware computing device that operates as a network node, UE, core network node, or host. Further, in embodiments in which the virtual node does not require radio connectivity (e.g., a core network node or host), then the node may be entirely virtualized.

[0225] Applications 1202 (which may alternatively be called software instances, virtual appliances, network functions, virtual nodes, virtual network functions, etc.) are run in the virtualization environment 1200 to implement some of the features, functions, and / or benefits of some of the embodiments disclosed herein.

[0226] Hardware 1204 includes processing circuitry, memory that stores software and / or instructions executable by hardware processing circuitry, and / or other hardware devices as described herein, such as a network interface, input / output interface, and so forth. Software may be executed by the processing circuitry to instantiate one or more virtualization layers 1206 (also referred to as hypervisors or virtual machine monitors (VMMs)), provide VMs 1208a and 1208b (one or more of which may be generally referred to as VMs 1208), and / or perform any of the functions, features and / or benefits described in relation with some embodiments described herein. The virtualization layer 1206 may present a virtual operating platform that appears like networking hardware to the VMs 1208. The VMs 1208 comprise virtual processing, virtual memory, virtual networking or interface and virtual storage, and may be run by a corresponding virtualization layer 1206. Different embodiments of the instance of a virtual appliance 1202 may be implemented on one or more of VMs 1208, and the implementations may be made in different ways. Virtualization of the hardware is in some contexts referred to as network function virtualization (NFV). NFV may be used to consolidate many network equipment types onto industry standard high volume server hardware, physical switches, and physical storage, which can be located in data centers, and customer premise equipment.

[0227] In the context of NFV, a VM 1208 may be a software implementation of a physical machine that runs programs as if they were executing on a physical, non-virtualized machine. Each of the VMs 1208, and that part of hardware 1204 that executes that VM, be it hardware dedicated to that VM and / or hardware shared by that VM with others of the VMs, forms separate virtual network elements. Still in the context of NFV, a virtual network function is responsible for handling specific network functions that run in one or more VMs 1208 on top of the hardware 1204 and corresponds to the application 1202.

[0228] Hardware 1204 may be implemented in a standalone network node with generic or specific components. Hardware 1204 may implement some functions via virtualization. Alternatively, hardware 1204 may be part of a larger cluster of hardware (e.g. such as in a data center or CPE) where many hardware nodes work together and are managed via management and orchestration 1210, which, among others, oversees lifecycle management of applications 1202. In some embodiments, hardware 1204 is coupled to one or more radio units that each include one or more transmitters and one or more receivers that may be coupled to one or more antennas. Radio units may communicate directly with other hardware nodes via one or more appropriate network interfaces and may be used in combination with the virtual components to provide a virtual node with radio capabilities, such as a radio access node or a base station. In some embodiments, some signaling can be provided with the use of a control system 1212 which may alternatively be used for communication between hardware nodes and radio units.

[0229] Although the computing devices described herein (e.g., UEs, network nodes, hosts) may include the illustrated combination of hardware components, other embodiments may comprise computing devices with different combinations of components. It is to be understood that these computing devices may comprise any suitable combination of hardware and / or software needed to perform the tasks, features, functions and methods disclosed herein. Determining, calculating, obtaining or similar operations described herein may be performed by processing circuitry, which may process information by, for example, converting the obtained information into other information, comparing the obtained information or converted information to information stored in the network node, and / or performing one or more operations based on the obtained information or converted information, and as a result of said processing making a determination. Moreover, while components are depicted as single boxes located within a larger box, or nested within multiple boxes, in practice, computing devices may comprise multiple different physical components that make up a single illustrated component, and functionality may be partitioned between separate components. For example, a communication interface may be configured to include any of the components described herein, and / or the functionality of the components may be partitioned between the processing circuitry and the communication interface. In another example, non-computationally intensive functions of any of such components may be implemented in software or firmware and computationally intensive functions may be implemented in hardware.

[0230] In certain embodiments, some or all of the functionality described herein may be provided by processing circuitry executing instructions stored on in memory, which in certain embodiments may be a computer program product in the form of a non-transitory computer-readable storage medium. In alternative embodiments, some or all of the functionality may be provided by the processing circuitry without executing instructions stored on a separate or discrete device-readable storage medium, such as in a hard-wired manner. In any of those particular embodiments, whether executing instructions stored on a non-transitory computer-readable storage medium or not, the processing circuitry can be configured to perform the described functionality. The benefits provided by such functionality are not limited to the processing circuitry alone or to other components of the computing device, but are enjoyed by the computing device as a whole, and / or by end users and a wireless network generally.

[0231] EXAMPLE EMBODIMENTS

[0232] Group A Example Embodiments

[0233] Example Embodiment 1. A method performed by a network node for training a Machine Learning-based (ML-based) positioning solution of a User Equipment (UE), the method comprising: gathering a set of training data samples, wherein each sample comprises a plurality of measured Channel Impulse Responses (CIRs) and an associated ground-truth label on a UE position; assigning random weights to the NN; iteratively adjusting the weights based on the associated ground truth label on the UE position, wherein the step of iteratively adjusting the weights includes: performing forward propagation to determine NN outputs, estimate the UE position, and determine a training loss; and using back-propagation to adjust weights to decrease training loss; wherein the forward propagation and back propagation involve an optimization step for estimating the UE position from a plurality of radio measurements, and wherein the training loss is a measure of size of the difference between the ground truth label and the estimated UE position, and wherein the NN outputs are at least one of: ML-based radio measurements, quality measures on the plurality of radio measurements, and a combination thereof.

[0234] Example Embodiment 2. The method of Example Embodiment 1, wherein the optimization step is based on the radio measurements and the associated quality measures on the radio measurements if available.

[0235] Example Embodiment 3. The method of any one of Example Embodiments 1 to 2, comprising receiving, from the UE, at least one of: the plurality of measured CIRs and the plurality of radio measurements.

[0236] Example Embodiment 4. The method of any one of Example Embodiments 1 to 3, wherein the network node comprises a Location Management Function (LMF).

[0237] Example Embodiment 5. The method of any one of Example Embodiments 1 to 4, wherein each of the plurality of measured Channel Impulse Responses (CIRs) are associated with a respective one of a plurality of anchor nodes.

[0238] Example Embodiment 6. The method of Example Embodiment 5, comprising receiving the plurality of measured CIRs from the plurality of anchor nodes.

[0239] Example Embodiment 7. The method of any one of Example Embodiments 5 to 6, wherein the plurality of anchor nodes and the UE are in time synchronization with each other.

[0240] Example Embodiment 8. The method of any one of Example Embodiments 5 to 6, wherein: the plurality of anchor nodes are in time synchronization with each other, the plurality of anchor nodes are not in time synchronization with the UE, and the optimization step includes estimating an unknown clock offset.

[0241] Example Embodiment 9. The method of any one of Example Embodiments 1 to 8, wherein the NN outputs comprise at least one of: a TOA value; a TDOA value; a AOA value; a AOD value; a LOS indicator; and a NLOS indicator.

[0242] Example Embodiment 10. The method of any one of Example Embodiments 1 to 9, wherein the NN outputs comprise a plurality of quality indicators.

[0243] Example Embodiment 11. The method of Example Embodiment 10, wherein each quality indicator comprises a non-negative value, and wherein a higher quality indicator indicates a better quality of the NN output. Example Embodiment 12. The method of any one of Example Embodiments 1 to 11, wherein each associated ground-truth label comprises at least one of: a LOS label, a soft LOS label, a NLOS label, and a soft NLOS label.

[0244] Example Embodiment 13. The method of any one of Example Embodiments 1 to 12, comprising determining that the training loss is below a threshold, and stopping the iterative adjustment of the weights based on the training loss being below the threshold.

[0245] Group B Example Embodiments

[0246] Example Embodiment 14. A method performed by a network node for labeling for Machine Learning-based (ML-based) positioning of a User Equipment (UE), the method comprising: gathering a set of training data samples, wherein each sample comprises a plurality of measured CIRs and an associated ground- truth label on a UE position; assigning random weights to the NN; based on the associated ground-truth label on the UE position, deriving a set of labels for an output(s) of the NN; iteratively adjusting the weights based on the set of labels derived for the output(s) of the NN, wherein the step of iteratively adjusting the weights includes: performing forward propagation to determine NN output(s) and determine a training loss; and using back-propagation to adjust weights to decrease training loss; wherein the derivation of the set of labels for the output of the NN involve an optimization step for estimating the UE position from a plurality of radio measurements, and wherein the training loss is a measure of size of the difference between the set of labels derived for the output(s) for the NN and the output(s) of the NN, and wherein the output(s) of the NN is at least one of: ML-based radio measurements, quality measures on the plurality of radio measurements, or a combination thereof.

[0247] Example Embodiment 15. The method of Example Embodiment 14, wherein the optimization step is based on the plurality of radio measurements and the associated quality measures on the radio measurements if available.

[0248] Example Embodiment 16. The method of any one of Example Embodiments 14 to 15, comprising receiving, from the UE, at least one of: the plurality of measured CIRs and the plurality of radio measurements.

[0249] Example Embodiment 17. The method of any one of Example Embodiments 14 to 16, wherein the network node comprises a Location Management Function (LMF).

[0250] Example Embodiment 18. The method of any one of Example Embodiments 14 to 17, wherein each of the plurality of measured Channel Impulse Responses (CIRs) are associated with a respective one of a plurality of anchor nodes. Example Embodiment 19. The method of Example Embodiment 18, comprising receiving the plurality of measured CIRs from the plurality of anchor nodes.

[0251] Example Embodiment 20. The method of any one of Example Embodiments 18 to 19, wherein the plurality of anchor nodes and the UE are in time synchronization with each other.

[0252] Example Embodiment 21. The method of any one of Example Embodiments 18 to 19, wherein: the plurality of anchor nodes are in time synchronization with each other, the plurality of anchor nodes are not in time synchronization with the UE, and the optimization step includes estimating an unknown clock offset.

[0253] Example Embodiment 22. The method of any one of Example Embodiments 14 to 21, wherein the NN outputs comprise at least one of: a TOA value; a TDOA value; a AOA value; a AOD value; a LOS indicator; and a NLOS indicator.

[0254] Example Embodiment 23. The method of any one of Example Embodiments 14 to 22, wherein the NN outputs comprise a plurality of quality indicators.

[0255] Example Embodiment 24. The method of Example Embodiment 23, wherein each quality indicator comprises a non-negative value, and wherein a higher quality indicator indicates a better quality of the NN output.

[0256] Example Embodiment 25. The method of any one of Example Embodiments 14 to 24, wherein each associated ground-truth label comprises at least one of: a LOS label, a soft LOS label, a NLOS label, and a soft NLOS label.

[0257] Example Embodiment 26. The method of any one of Example Embodiments 14 to 25, comprising determining that the training loss is below a threshold, and stopping the iterative adjustment of the weights based on the training loss being below the threshold.

[0258] Group C Example Embodiments

[0259] 27. A method performed by a User Equipment (UE) for training a Machine Learning-based (ML-based) positioning solution, the method comprising: gathering a set of training data samples, wherein each sample comprises a plurality of measured Channel Impulse Responses (CIRs) and an associated ground-truth label on a UE position; assigning random weights to the NN; iteratively adjusting the weights based on the associated ground truth label on the UE position, wherein the step of iteratively adjusting the weights includes: performing forward propagation to determine NN outputs, estimate the UE position, and determine a training loss; and using back-propagation to adjust weights to decrease training loss; wherein the forward propagation and back propagation involve an optimization step for estimating the UE position from a plurality of radio measurements, and wherein the training loss is a measure of size of the difference between the ground truth label and the estimated UE position, and wherein the NN outputs are at least one of: ML-based radio measurements, quality measures on the plurality of radio measurements, and a combination thereof.

[0260] Example Embodiment 28. The method of Example Embodiment 27, wherein the optimization step is based on the radio measurements and the associated quality measures on the radio measurements if available.

[0261] Example Embodiment 29. The method of any one of Example Embodiments 27 to 28, comprising receiving, from a network node, at least one of: the plurality of measured CIRs and the plurality of radio measurements.

[0262] Example Embodiment 30. The method of any one of Example Embodiments 26 to 28, wherein each of the plurality of measured Channel Impulse Responses (CIRs) are associated with a respective one of a plurality of anchor nodes.

[0263] Example Embodiment 31. The method of Example Embodiment 30, comprising receiving the plurality of measured CIRs from the plurality of anchor nodes.

[0264] Example Embodiment 32. The method of any one of Example Embodiments 30 to 31, wherein the plurality of anchor nodes and the UE are in time synchronization with each other.

[0265] Example Embodiment 33. The method of any one of Example Embodiments 30 to 31, wherein: the plurality of anchor nodes are in time synchronization with each other, the plurality of anchor nodes are not in time synchronization with the UE, and the optimization step includes estimating an unknown clock offset.

[0266] Example Embodiment 34. The method of any one of Example Embodiments 26 to 33, wherein the NN outputs comprise at least one of: a TOA value; a TDOA value; a AOA value; a AOD value; a LOS indicator; and a NLOS indicator.

[0267] Example Embodiment 35. The method of any one of Example Embodiments 26 to 34, wherein the NN outputs comprise a plurality of quality indicators.

[0268] Example Embodiment 36. The method of Example Embodiment 35, wherein each quality indicator comprises a non-negative value, and wherein a higher quality indicator indicates a better quality of the NN output.

[0269] Example Embodiment 37. The method of any one of Example Embodiments 26 to 36, wherein each associated ground-truth label comprises at least one of: a LOS label, a soft LOS label, a NLOS label, and a soft NLOS label.

[0270] Example Embodiment 38. The method of any one of Example Embodiments 26 to 37, comprising determining that the training loss is below a threshold, and stopping the iterative adjustment of the weights based on the training loss being below the threshold. Group D Example Embodiments

[0271] Example Embodiment 39. A method performed by a User Equipment (UE) for labeling for Machine Learning-based (ML-based) positioning, the method comprising: gathering a set of training data samples, wherein each sample comprises a plurality of measured CIRs and an associated ground-truth label on a UE position; assigning random weights to the NN; based on the associated ground-truth label on the UE position, deriving a set of labels for an output(s) of the NN; iteratively adjusting the weights based on the set of labels derived for the output(s) of the NN, wherein the step of iteratively adjusting the weights includes: performing forward propagation to determine NN output(s) and determine a training loss; and using back-propagation to adjust weights to decrease training loss; wherein the derivation of the set of labels for the output of the NN involve an optimization step for estimating the UE position from a plurality of radio measurements, and wherein the training loss is a measure of size of the difference between the set of labels derived for the output(s) for the NN and the output(s) of the NN, and wherein the output(s) of the NN is at least one of: ML-based radio measurements, quality measures on the plurality of radio measurements, or a combination thereof.

[0272] Example Embodiment 40. The method of Example Embodiment 39, wherein the optimization step is based on the plurality of radio measurements and the associated quality measures on the radio measurements if available.

[0273] Example Embodiment 41. The method of any one of Example Embodiments 39 to 40, comprising receiving, from a network node, at least one of: the plurality of measured CIRs and the plurality of radio measurements.

[0274] Example Embodiment 42. The method of any one of Example Embodiments 39 to 41, wherein each of the plurality of measured Channel Impulse Responses (CIRs) are associated with a respective one of a plurality of anchor nodes.

[0275] Example Embodiment 43. The method of Example Embodiment 42, comprising receiving the plurality of measured CIRs from the plurality of anchor nodes.

[0276] Example Embodiment 44. The method of any one of Example Embodiments 42 to 43, wherein the plurality of anchor nodes are in time synchronization with each other.

[0277] Example Embodiment 45. The method of any one of Example Embodiments 42 to 43, wherein the plurality of anchor nodes are not in time synchronization with each other and the optimization step includes estimating an unknown clock offset. Example Embodiment 46. The method of any one of Example Embodiments 39 to 45, wherein the NN outputs comprise at least one of: a TOA value; a TDOA value; a AOA value; a AOD value; a LOS indicator; and a NLOS indicator.

[0278] Example Embodiment 47. The method of any one of Example Embodiments 39 to 46, wherein the NN outputs comprise a plurality of quality indicators.

[0279] Example Embodiment 48. The method of Example Embodiment 47, wherein each quality indicator comprises a non-negative value, and wherein a higher quality indicator indicates a better quality of the NN output.

[0280] Example Embodiment 49. The method of any one of Example Embodiments 39 to 48, wherein each associated ground-truth label comprises at least one of: a LOS label, a soft LOS label, a NLOS label, and a soft NLOS label.

[0281] Example Embodiment 50. The method of any one of Example Embodiments 39 to 49, comprising determining that the training loss is below a threshold, and stopping the iterative adjustment of the weights based on the training loss being below the threshold.

[0282] Group E Example Embodiments

[0283] Example Embodiment 51. A user equipment comprising processing circuitry configured to perform any of the steps of any of the Group D and E Example Embodiments.

[0284] Example Embodiment 52. A user equipment configured to perform any of the steps of any of the Group D and E Example Embodiments.

[0285] Example Embodiment 53. A wireless device comprising processing circuitry configured to perform any of the steps of any of the Group D and E Example Embodiments.

[0286] Example Embodiment 54. A network node comprising processing circuitry configured to perform any of the steps of any of the Group A and B Example Embodiments.

[0287] Example Embodiment 55. A network node configured to perform any of the steps of any of the Group A and B Example Embodiments.

[0288] Example Embodiment 56. A computer program comprising instructions which when executed on a computer perform any of the steps of any of the Group A, B, C, and D Example Embodiments.

[0289] Example Embodiment 57. A computer program product comprising computer program, the computer program comprising instructions which when executed on a computer perform any of the steps of any of the Group A, B, C, and D Example Embodiments. Example Embodiment 58. A non-transitory computer readable medium storing instructions which when executed by a computer perform any of the steps of any of the Group A, B, C, and D Example Embodiments.

Claims

CLAIMS1. A method (700) performed by a network node (910) for training a Machine Learningbased, ML-based, solution for position estimation of a User Equipment, UE (912), the method comprising:gathering (710) a set of training data samples, wherein each sample comprises a plurality of measured Channel Impulse Responses, CIRs, and an associated ground-truth label on a UE position;assigning (720) at least one random weight to the neural network;iteratively adjusting (730) the at least one random weight based on the associated ground-truth label on the UE position, wherein the step of iteratively adjusting the at least one random weight comprises:performing forward propagation to determine at least one neural network output, determine an estimated UE position, and determine a training loss; andusing back-propagation to adjust the at least one random weight to decrease the training loss; wherein at least one of the forward propagation and the back propagation involve a numerical optimization step for determining the estimated UE position from a plurality of radio measurements, andwherein the training loss is a measure of a size of a difference between the ground truth label and the estimated UE position, andwherein the at least one neural network output is at least one of: at least one ML-based radio measurement and / or at least one quality measure on the plurality of radio measurements.

2. The method of Claim 1, further comprising:based on the associated ground-truth label on the UE position, deriving a set of labels for at least one output of the neural network;wherein the derivation of the set of labels for the output of the neural network involve an optimization step for determining the estimated UE position from the plurality of radio measurements.

3. The method of any one of Claims 1 to 2, wherein the numerical optimization step is based on the plurality of radio measurements and the at least one quality measure on the plurality of radio measurements when available.

4. The method of any one of Claims 1 to 3, comprisingtransmitting at least one reference signal; andreceiving, from the UE, at least one of: the plurality of measured CIRs and the plurality of radio measurements based on the at least one reference signal.

5. The method of any one of Claims 1 to 3, wherein gathering the set of training data samples comprises:receiving at least one reference signal from the UE; andperforming the plurality of radio measurements based on the at least one reference signal.

6. The method of any one of Claims 1 to 5, wherein the network node comprises a Location Management Function, LMF.

7. The method of any one of Claims 1 to 6, wherein each of the plurality of measured CIRs are associated with a respective one of a plurality of anchor nodes, and wherein the method comprises receiving the plurality of measured CIRs from the plurality of anchor nodes.

8. The method of Claim 7, wherein the plurality of anchor nodes and the UE are in time synchronization with each other.

9. The method of Claim 7, wherein:the plurality of anchor nodes are in time synchronization with each other,the plurality of anchor nodes are not in time synchronization with the UE, and the numerical optimization step includes estimating an unknown clock offset.

10. The method of any one of Claims 1 to 9, wherein the at least one neural network output comprises at least one of:a Time of Arrival, TOA, value;a Time Difference of Arrival, TDOA, value;an Angle of Arrival, AOA, value;an Angle of Departure, AOD, value;a Line-of-Sight, LOS, indicator; anda Non-Line-of-Sight, NLOS, indicator.

11. The method of any one of Claims 1 to 10, wherein:the at least one neural network output comprises a plurality of quality indicators, each quality indicator comprises a non-negative value, anda higher quality indicator indicates a better quality of the at least one neural network output.

12. The method of any one of Claims 1 to 11, wherein each associated ground-truth label comprises at least one of:a Line-of-Sight, LOS, label,a soft LOS label,a Non-Line-of-Sight, NLOS, label, anda soft NLOS label.

13. The method of any one of Claims 1 to 12, comprising:determining that the training loss is below a threshold, andstopping the iterative adjustment of the weights based on the training loss being below the threshold.

14. A method (800) performed by a User Equipment, UE (912), for training a Machine Learning-based, ML-based solution for position estimation, the method comprising:gathering (810) a set of training data samples, wherein each sample comprises a plurality of measured Channel Impulse Responses, CIRs and an associated ground-truth label on a UE position;assigning (820) at least one random weight to the neural network;iteratively adjusting (830) the at least one weight based on the associated ground truth label on the UE position, wherein the step of iteratively adjusting the at least one weight comprises:performing forward propagation to determine at least one neural network output, determine an estimated UE position, and determine a training loss; andusing back-propagation to adjust the at least one weight to decrease the training loss;wherein at least one of the forward propagation and the back propagation involve a numerical optimization step for determining the estimated UE position from a plurality of radio measurements, andwherein the training loss is a measure of a size of a difference between the ground truth label and the estimated UE position, andwherein the at least one neural network output is at least one of: at least one ML-based radio measurement and / or at least one quality measure on the plurality of radio measurements.

15. The method of Claim 14, further comprising:based on the associated ground-truth label on the UE position, deriving a set of labels for at least one output of the neural network;wherein the derivation of the set of labels for the output of the neural network involve an optimization step for determining the estimated UE position from the plurality of radio measurements.

16. The method of any one of Claims 14 to 15, wherein the numerical optimization step is based on the plurality of radio measurements and the at least one quality measure on the plurality of radio measurements when available.

17. The method of any one of Claims 14 to 16, comprisingtransmitting at least one reference signal; andreceiving, from the UE, at least one of: the plurality of measured CIRs and the plurality of radio measurements based on the at least one reference signal.

18. The method of any one of Claims 14 to 16, wherein gathering the set of training data samples comprises:receiving at least one reference signal from the UE; andperforming the plurality of radio measurements based on the at least one reference signal.

19. The method of any one of Claims 14 to 18, wherein the network node comprises a Location Management Function, LMF.

20. The method of any one of Claims 14 to 19, wherein each of the plurality of measured CIRs are associated with a respective one of a plurality of anchor nodes, and wherein the method comprises receiving the plurality of measured CIRs from the plurality of anchor nodes.

21. The method of Claim 20, wherein the plurality of anchor nodes and the UE are in time synchronization with each other.

22. The method of Claim 20, wherein:the plurality of anchor nodes are in time synchronization with each other,the plurality of anchor nodes are not in time synchronization with the UE, and the numerical optimization step includes estimating an unknown clock offset.

23. The method of any one of Claims 14 to 22, wherein the at least one neural network output comprises at least one of:a Time of Arrival, TOA, value;a Time Difference of Arrival, TDOA, value;an Angle of Arrival, AOA, value;an Angle of Departure, AOD, value;a Line-of-Sight, LOS, indicator; anda Non-Line-of-Sight, NLOS, indicator.

24. The method of any one of Claims 14 to 23, wherein:the at least one neural network output comprises a plurality of quality indicators, each quality indicator comprises a non-negative value, anda higher quality indicator indicates a better quality of the at least one neural network output.

25. The method of any one of Claims 14 to 24, wherein each associated ground-truth label comprises at least one of:a Line-of-Sight, LOS, label,a soft LOS label,a Non-Line-of-Sight, NLOS, label, anda soft NLOS label.

26. The method of any one of Claims 14 to 25, comprising:determining that the training loss is below a threshold, andstopping the iterative adjustment of the weights based on the training loss being below the threshold.

27. A user equipment, UE, (912, 1000) for training a Machine Learning-based, ML-based solution for position estimation, the UE comprising processing circuitry (1002) configured to:gather (810) a set of training data samples, wherein each sample comprises a plurality of measured Channel Impulse Responses, CIRs, and an associated ground-truth label on a UE position;assign (820) at least one random weight to the neural network;iteratively adjust (830) the at least one random weight based on the associated groundtruth label on the UE position, wherein the step of iteratively adjusting the at least one random weight comprises:perform forward propagation to determine at least one neural network output, determine an estimated UE position, and determine a training loss; anduse back-propagation to adjust the at least one random weight to decrease the training loss; wherein at least one of the forward propagation and the back propagation involve a numerical optimization step for determining the estimated UE position from a plurality of radio measurements, andwherein the training loss is a measure of a size of a difference between the ground truth label and the estimated UE position, andwherein the at least one neural network output is at least one of: at least one ML-based radio measurement and / or at least one quality measure on the plurality of radio measurements.

28. The UE of Claim 27 configured to perform any of the steps of Claims 15-26.29 A network node (910) for training a Machine Learning-based, ML-based, solution for position estimation of a User Equipment, UE, (912) the network node comprising processing circuitry configured to:gather (710) a set of training data samples, wherein each sample comprises a plurality of measured Channel Impulse Responses, CIRs, and an associated ground-truth label on a UE position;assign (720) at least one random weight to the neural network;iteratively adjust (730) the at least one random weight based on the associated groundtruth label on the UE position, wherein the step of iteratively adjusting the at least one random weight comprises:perform forward propagation to determine at least one neural network output, determine an estimated UE position, and determine a training loss; anduse back-propagation to adjust the at least one random weight to decrease the training loss; wherein at least one of the forward propagation and the back propagation involve a numerical optimization step for determining the estimated UE position from a plurality of radio measurements, andwherein the training loss is a measure of a size of a difference between the ground truth label and the estimated UE position, andwherein the at least one neural network output is at least one of: at least one ML-based radio measurement and / or at least one quality measure on the plurality of radio measurements.

30. The network node of Claim 29 comprising processing circuitry configured to perform any of the steps of Claims 2 to 13.