Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
USER DEVICE POSITIONING
Document Type and Number:
WIPO Patent Application WO/2023/066464
Kind Code:
A1
Abstract:
A method, computer program and apparatus is described comprising: receiving one or more positioning reference signals at a user device of a mobile communication system, wherein each positioning reference signal is transmitted by one of one or more communication nodes of the mobile communication system; combining the one or more received positioning reference signals with the respective transmitted positioning reference signals to generate one or more signal vectors; extracting a signal envelope from the one or more signal vectors to generate a power delay profile matrix; generating a positioning system matrix by concatenating said power delay profile matrix and real and imaginary parts of the signal vectors; providing the positioning system matrix to a cuboid detection block; and receiving, from the cuboid detection block, information relating to which of a plurality of indexed cuboids within a three- dimensional space the user device is located in.

Inventors:
BARBU OANA-ELENA (DK)
KOVÁCS ISTVÁN ZSOLT (DK)
Application Number:
PCT/EP2021/078920
Publication Date:
April 27, 2023
Filing Date:
October 19, 2021
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
NOKIA TECHNOLOGIES OY (FI)
International Classes:
G01S5/00; G01S5/02; H04L5/00; H04W64/00
Domestic Patent References:
WO2017155634A12017-09-14
Foreign References:
US20210321221A12021-10-14
US20210112516A12021-04-15
Attorney, Agent or Firm:
NOKIA EPO REPRESENTATIVES (FI)
Download PDF:
Claims:
Claims

1. An apparatus comprising means for performing: receiving one or more positioning reference signals at a user device of a mobile communication system, wherein each positioning reference signal is transmitted by one of one or more communication nodes of the mobile communication system; combining the one or more received positioning reference signals with the respective transmitted positioning reference signals to generate one or more signal vectors; extracting a signal envelope from the one or more signal vectors to generate a power delay profile matrix; generating a positioning system matrix by concatenating said power delay profile matrix and real and imaginary parts of the signal vectors; providing the positioning system matrix to a cuboid detection block; and receiving, from the cuboid detection block, information relating to which of a plurality of indexed cuboids within a three-dimensional space the user device is located in.

2. An apparatus as claimed in claim 1, further comprising means for performing generating a signal matrix by combining the signal vectors, wherein the real and imaginary parts of the signal vectors are derived from said signal matrix.

3. An apparatus as claimed in claim 1 or claim 2, wherein the one or more positioning reference signals are received over multiple propagation paths.

4. An apparatus comprising means for performing: receiving, from a user device of a mobile communication system, a positioning system matrix, wherein the positioning system matrix comprises: real and imaginary parts of one or more signal vectors, each signal vector derived by combining one or more positioning reference signals received at the user device with respective transmitted positioning reference signals, wherein each positioning reference signal is transmitted by one of one or more communication nodes of the mobile communication system; and a power delay profile matrix based on signal envelopes extracted from the one or more signal vectors; and applying the positioning system matrix to a cuboid detection block to generate information relating to which of a plurality of indexed cuboids within a three- dimensional space the user device is located in. 5. An apparatus as claimed in claim 4, further comprising means for performing: returning the information relating to which of a plurality of indexed cuboids within a three-dimensional space the user device is located in.

6. An apparatus as claimed in any one of the preceding claims, wherein the information relating to which of a plurality of indexed cuboids within a three- dimensional space the user device is located in comprises an index that identifies one of the plurality of indexed cuboids the user device is most likely to be located within.

7. An apparatus as claimed in any one of the preceding claims, wherein the information relating to which of a plurality of indexed cuboids within a three- dimensional space the user device is located in comprises a set of probabilities describing, for each of a plurality of cuboids, a likelihood that the user device is located within the respective cuboid. 8. An apparatus as claimed in any one of the preceding claims, wherein the cuboid detection block is implemented using a machine-learning classifier.

9. An apparatus as claimed in any one of the preceding claims, wherein the cuboid detection block implements a hypothesis testing algorithm.

10. An apparatus as claimed in any one of the preceding claims, wherein said cuboids are heterogeneous cuboids.

11. An apparatus as claimed in any one of the preceding claims, wherein the cuboid detection block is one of a plurality of available cuboid detection blocks.

12. An apparatus comprising means for performing: receiving one or more sounding reference signals from a user device of a mobile communication system at one or more communication nodes of the mobile communication system; combining the one or more received sounding reference signals with the transmitted sounding reference signals to generate one or more signal vectors; extracting a signal envelope from the one or more signal vectors to generate a power delay profile matrix; generating a positioning system matrix by concatenating said power delay profile matrix and real and imaginaiy parts signal vectors; and applying the positioning system matrix to a cuboid detection block to generate information relating to which of a plurality of indexed cuboids within a three- dimensional space the user device is located in.

13. An apparatus as claimed in any one of the preceding claims, wherein the means comprises: at least one processor; and at least one memoiy including computer program code, the at least one memory and computer program code configured to, with the at least one processor, cause the performance of the apparatus.

14. A method comprising: receiving one or more positioning reference signals at a user device of a mobile communication system, wherein each positioning reference signal is transmitted by one of one or more communication nodes of the mobile communication system; combining the one or more received positioning reference signals with the respective transmitted positioning reference signals to generate one or more signal vectors; extracting a signal envelope from the one or more signal vectors to generate a power delay profile matrix; generating a positioning system matrix by concatenating said power delay profile matrix and real and imaginary parts of the signal vectors; providing the positioning system matrix to a cuboid detection block; and receiving, from the cuboid detection block, information relating to which of a plurality of indexed cuboids within a three-dimensional space the user device is located in.

15. A computer program comprising instructions for causing an apparatus to perform at least the following: receiving one or more positioning reference signals at a user device of a mobile communication system, wherein each positioning reference signal is transmitted by one of one or more communication nodes of the mobile communication system; combining the one or more received positioning reference signals with the respective transmitted positioning reference signals to generate one or more signal vectors; extracting a signal envelope from the one or more signal vectors to generate a power delay profile matrix; generating a positioning system matrix by concatenating said power delay profile matrix and real and imaginary parts of the signal vectors; providing the positioning system matrix to a cuboid detection block; and receiving, from the cuboid detection block, information relating to which of a plurality of indexed cuboids within a three-dimensional space the user device is located in.

Description:
User Device Positioning

Field

Embodiments as set out in this patent application relate to user device positioning, for example as part of user device positioning in a mobile communication system.

Background

The use of reference signals (such as positioning reference signals or sounding reference signals) to enable position estimates of a user device of a mobile communication system is known. There remains a need for further developments in this field.

Summary

In a first aspect, this specification describes an apparatus (e.g. a user device of a mobile communication system) comprising means for performing: receiving one or more positioning reference signals at a user device of a mobile communication system, wherein each positioning reference signal is transmitted by one of one or more communication nodes of the mobile communication system; combining (e.g. cross- correlating) the one or more received positioning reference signals with the respective transmitted positioning reference signals to generate one or more signal vectors; extracting a signal envelope from the one or more signal vectors to generate a power delay profile matrix; generating a positioning system matrix by concatenating said power delay profile matrix and real and imaginary parts of the signal vectors; providing (e.g. to a network) the positioning system matrix to a cuboid detection block; and receiving, from the cuboid detection block, information relating to which of a plurality of indexed cuboids within a three-dimensional space (such as a building) the user device is located in. The power delay profile matrix may be a noisy power delay profile (PDF) matrix (e.g. including AWGN). The positioning system matrix maybe generated at the user device and applied to a cuboid detection block that might be located elsewhere (e.g. on the network side).

Some example embodiments further comprise means for performing: generating a signal matrix by combining the signal vectors, wherein the real and imaginary parts of the signal vectors are derived from said signal matrix. The signal matrix may be generated by row-wise stacking or some other concatenation over one of the dimensions of the signal vectors. The one or more positioning reference signals may be received over multiple propagation paths. In a second aspect, this specification describes an apparatus comprising means for performing: receiving, from a user device of a mobile communication system, a positioning system matrix (wherein the positioning system matrix comprises: real and imaginary parts of one or more signal vectors, each signal vector derived by combining one or more positioning reference signals received at the user device with respective transmitted positioning reference signals, wherein each positioning reference signal is transmitted by one of one or more communication nodes of the mobile communication system; and a power delay profile matrix (e.g. a noisy PDP matrix) based on signal envelopes extracted from the one or more signal vectors); and applying the positioning system matrix to a cuboid detection block to generate information relating to which of a plurality of indexed cuboids within a three-dimensional space (such as a building) the user device is located in. The apparatus of the second aspect maybe provided at a network node of a mobile communication system, but this is not essential to all example embodiments. The apparatus may further comprising means for performing: returning (e.g. to the user device) the information relating to which of a plurality of indexed cuboids within a three-dimensional space the user device is located in.

In a third aspect, this specification describes an apparatus comprising means for performing: receiving one or more sounding reference signals from a user device of a mobile communication system at one or more communication nodes of the mobile communication system; combining the one or more received sounding reference signals with the transmitted sounding reference signals to generate one or more signal vectors; extracting a signal envelope from the one or more signal vectors to generate a power delay profile matrix; generating a positioning system matrix by concatenating said power delay profile matrix and real and imaginary parts signal vectors; and applying the positioning system matrix to a cuboid detection block to generate information relating to which of a plurality of indexed cuboids within a three- dimensional space the user device is located in. The apparatus of the third aspect may be implemented at a network node of a mobile communication system. In the first to third aspects, the means may comprise: at least one processor; and at least one memoiy including computer program code, the at least one memory and computer program code configured to, with the at least one processor, cause the performance of the apparatus.

In a fourth aspect, there is provided a method comprising: receiving one or more positioning reference signals at a user device of a mobile communication system, wherein each positioning reference signal is transmitted by one of one or more communication nodes of the mobile communication system; combining (e.g. cross- correlating) the one or more received positioning reference signals with the respective transmitted positioning reference signals to generate one or more signal vectors; extracting a signal envelope from the one or more signal vectors to generate a power delay profile matrix; generating a positioning system matrix by concatenating said power delay profile matrix and real and imaginary parts of the signal vectors; providing the positioning system matrix to a cuboid detection block; and receiving, from the cuboid detection block, information relating to which of a plurality of indexed cuboids within a three-dimensional space the user device is located in. The method may comprise generating a signal matrix by combining the signal vectors, wherein the real and imaginary parts of the signal vectors are derived from said signal matrix. The signal matrix may be generated by row-wise stacking or some other concatenation over one of the dimensions of the signal vectors. The one or more positioning reference signals may be received over multiple propagation paths.

In a fifth aspect, this specification describes a method comprising: receiving, from a user device of a mobile communication system, a positioning system matrix (wherein the positioning system matrix comprises: real and imaginary parts of one or more signal vectors, each signal vector derived by combining one or more positioning reference signals received at the user device with respective transmitted positioning reference signals, wherein each positioning reference signal is transmitted by one of one or more communication nodes of the mobile communication system; and a power delay profile matrix (e.g. a noisy PDP matrix) based on signal envelopes extracted from the one or more signal vectors); and applying the positioning system matrix to a cuboid detection block to generate information relating to which of a plurality of indexed cuboids within a three-dimensional space (such as a building) the user device is located in. The method may further comprise returning (e.g. to the user device) the information relating to which of a plurality of indexed cuboids within a three-dimensional space the user device is located in. In a sixth aspect, this specification describes a method comprising: receiving one or more sounding reference signals from a user device of a mobile communication system at one or more communication nodes of the mobile communication system; combining the one or more received sounding reference signals with the transmitted sounding reference signals to generate one or more signal vectors; extracting a signal envelope from the one or more signal vectors to generate a power delay profile matrix; generating a positioning system matrix by concatenating said power delay profile matrix and real and imaginary parts signal vectors; and applying the positioning system matrix to a cuboid detection block to generate information relating to which of a plurality of indexed cuboids within a three-dimensional space the user device is located in.

In the first to sixth aspects, the information relating to which of a plurality of indexed cuboids within a three-dimensional space the user device is located in may comprise an index that identifies one of the plurality of indexed cuboids the user device is most likely to be located within. Alternatively, or in addition, the information relating to which of a plurality of indexed cuboids within a three-dimensional space the user device is located in may comprise a set of probabilities describing, for each of a plurality of cuboids, a likelihood that the user device is located within the respective cuboid.

In the first to sixth aspects, the cuboid detection block may be implemented using a machine-learning classifier. Alternatively, or in addition, the cuboid detection block may implement a hypothesis testing algorithm. In the first to sixth aspects, the said cuboids may be heterogeneous cuboids. For example, the cuboids may have different sizes and/or shapes. Cuboid size maybe varied depending on one or more of a range of factors, such as accuracy requirements and prior knowledge of the space (e.g. the location of obstacles, such as machinery or furniture). Alternatively, or in addition, the cuboid portioning of the volume may change over time.

In the first to sixth aspects, the cuboid detection block may be one of a plurality of available cuboid detection blocks. For example, different cuboid detection blocks may be optimised for different purposes (e.g. for emergency services, for IIOT application etc.). In each case, the training of the model may be different. In a seventh aspect, this specification describes computer-readable instructions which, when executed by a computing apparatus, cause the computing apparatus to perform (at least) any method as described with reference to the fourth to sixth aspects. In an eighth aspect, this specification describes a computer-readable medium (such as a non-transitory computer-readable medium) comprising program instructions stored thereon for performing (at least) any method as described with reference to the fourth to sixth aspects. In a ninth aspect, this specification describes an apparatus comprising: at least one processor; and at least one memory including computer program code which, when executed by the at least one processor, causes the apparatus to perform (at least) any method as described with reference to the fourth to sixth aspects. In a tenth aspect, this specification describes a computer program comprising instructions for causing an apparatus to perform at least the following: receiving one or more positioning reference signals at a user device of a mobile communication system, wherein each positioning reference signal is transmitted by one of one or more communication nodes of the mobile communication system; combining the one or more received positioning reference signals with the respective transmitted positioning reference signals to generate one or more signal vectors; extracting a signal envelope from the one or more signal vectors to generate a power delay profile matrix; generating a positioning system matrix by concatenating said power delay profile matrix and real and imaginary parts of the signal vectors; providing the positioning system matrix to a cuboid detection block; and receiving, from the cuboid detection block, information relating to which of a plurality of indexed cuboids within a three- dimensional space the user device is located in.

In an eleventh aspect, this specification describes an apparatus comprising: a receiver (or some other means) for receiving one or more positioning reference signals at a user device of a mobile communication system, wherein each positioning reference signal is transmitted by one of one or more communication nodes of the mobile communication system; a processor (or some other means) for combining (e.g. cross-correlating) the one or more received positioning reference signals with the respective transmitted positioning reference signals to generate one or more signal vectors; the processor (or some other means) for extracting a signal envelope from the one or more signal vectors to generate a power delay profile matrix; the processor (or some other means) for generating a positioning system matrix by concatenating said power delay profile matrix and real and imaginary parts of the signal vectors; an output (or some other means) for providing the positioning system matrix to a cuboid detection block; and the receiver (or some other means) for receiving, from the cuboid detection block, information relating to which of a plurality of indexed cuboids within a three- dimensional space the user device is located in.

In a twelfth aspect, this specification describes an apparatus comprising: a receiver (or some other means) for receiving, from a user device of a mobile communication system, a positioning system matrix (wherein the positioning system matrix comprises: real and imaginaiy parts of one or more signal vectors, each signal vector derived by combining one or more positioning reference signals received at the user device with respective transmitted positioning reference signals, wherein each positioning reference signal is transmitted by one of one or more communication nodes of the mobile communication system; and a power delay profile matrix (e.g. a noisy PDP matrix) based on signal envelopes extracted from the one or more signal vectors); and a control module (or some other means) for applying the positioning system matrix to a cuboid detection block to generate information relating to which of a plurality of indexed cuboids within a three-dimensional space (such as a building) the user device is located in. The apparatus may further comprise a transmitter (or some other means) for returning (e.g. to the user device) the information relating to which of a plurality of indexed cuboids within a three-dimensional space the user device is located in. In a thirteenth aspect, this specification describes an apparatus comprising: a receiver (or some other means) for receiving one or more sounding reference signals from a user device of a mobile communication system at one or more communication nodes of the mobile communication system; a processor (or some other means) for combining (e.g. cross-correlating) the one or more received sounding reference signals with the transmitted sounding reference signals to generate one or more signal vectors; the processor (or some other means) for extracting a signal envelope from the one or more signal vectors to generate a power delay profile matrix; the processor (or some other means) for generating a positioning system matrix by concatenating said power delay profile matrix and real and imaginary parts signal vectors; and a control module (or some other means) for applying the positioning system matrix to a cuboid detection block to generate information relating to which of a plurality of indexed cuboids within a three-dimensional space the user device is located in.

Brief Description of Drawings Example embodiments will now be described, by way of non-limiting examples, with reference to the following schematic drawings, in which:

FIG. i is a block diagram of a system in accordance with an example embodiment;

FIG. 2 is a block diagram of a partitioned building in accordance with an example embodiment;

FIG. 3 is a flow chart showing a method or algorithm in accordance with an example embodiment;

FIG. 4 is a flow chart showing a method or algorithm in accordance with an example embodiment; FIG. 5 to 7 are block diagrams of systems in accordance with example embodiments;

FIGS. 8 to io are block diagrams of partitioned buildings in accordance with example embodiment;

FIG. 1 is a block diagram showing a hierarchical cuboid portioning arrangement in accordance with an example embodiment; FIG. 12 is a block diagram of a system in accordance with an example embodiment; FIG. 13 is a block diagram of a system in accordance with an example embodiment;

FIG. 14 is a flow chart showing a method or algorithm in accordance with an example embodiment;

FIG. 15 is a block diagram of components of a system in accordance with an example embodiment; and

FIG. 16 shows an example of tangible media for storing computer-readable code which when run by a computer may perform methods according to example embodiments described above. Detailed Description

The scope of protection sought for various embodiments of the invention is set out by the independent claims. The embodiments and features, if any, described in the specification that do not fall under the scope of the independent claims are to be interpreted as examples useful for understanding various embodiments of the invention. In the description and drawings, like reference numerals refer to like elements throughout.

FIG. i is a block diagram of a system, indicated generally by the reference numeral io, in accordance with an example embodiment. The system io comprises a first transmission-reception point (TRP) 11, a second transmission-reception point (TRP) 12, a third transmission-reception point (TRP) 13 and a user device 14. The TRPs 11 to 13 maybe gNBs or base stations. The system 10 may therefore form part of a mobile communication system.

The user device 14 receives positioning reference signals (PRS) from each of the TRPs 11 to 13 and, using the received PRS, an estimate of the user device position is generated. For example, differences in times of arrival of positioning reference signals received from different TRPs (referred to as Downlink Time Difference of Arrival (DL- TDOA)) can be used to generate a position estimate. A similar uplink method using sounding reference signal (SRS) transmitted from the user device to the TRPs can estimate a position of the user device based on Uplink Time Difference of Arrival (UL- TDOA), as discussed further below. Many methods for estimating a position of a user device in a mobile communication system are optimized for horizontal positioning; vertical positioning is typically less accurate, especially in indoor scenarios. Vertical positioning accuracy is important in many applications, such as factory automation or for use by emergency services when seeking to locate a user device (i.e. an owner of a user device).

Barometric sensors offer one option for vertical location estimation. However, such sensors are sensitive to a series of external factors (humidity, pressure, climate control systems in buildings, etc.). Moreover, a methodology that generates position estimate based entirely on radio technology, rather than relying on external sensors, is preferred in many circumstances.

For indoor localization, we are interested in localizing a user device at a certain 3D [x,y,z] position inside a building. The z position may indicate the floor level, with the [x, y] dimensions indicating the position of the user device at the respective floor level. To enable 3D positioning, it is proposed herein to partition the building into cuboids with predefined volume v = HLW, where H, L and W are the height, length and width of the cuboid respectively.

FIG. 2 is a block diagram of a partitioned building, indicated generally by the reference numeral 20, in accordance with an example embodiment. The building 20 shows three example cuboids that may be used as part of a portioning algorithm (of course, more cuboids may be provided).

If each cuboid volume is small enough, then a user device can be localized with a desired accuracy, such as within a few metres. For example, the cuboid volume may be set to e.g. V = 1m 3 ,L = W = H = lm. The cuboids are then indexed with unique indices, so that the mapping from 3D location to cuboid is unambiguous: i.e. a user device located at [x,y,z] is assigned to a unique cuboid, e.g. cuboid k. A building of volume Vb is then represented as the set of all cuboids i = 1: /, where / = Vb

V '

To generate the cuboid partitioning of an indoor environment, maps of the indoor environment may be provided to the network provider. These maps may be transferred further to a ray tracing environment (many commercially available software tools exist for this purpose, e.g. NYUsim, RemCom, SIRADEL, etc.) and used to emulate channel responses in various volumes of the building.

FIG. 3 is a flow chart showing a method or algorithm, indicated generally by the reference numeral 30, in accordance with an example embodiment.

The algorithm 30 starts at operation 32, where a building is partitioned using cuboids (e.g. heterogeneous cuboids). At operation 34, a model (e.g. a machine-learning model) is trained. For example, the model may be trained based on signals received at a user device from various different TRPs at different positions within the building.

At operation 36, user device signals are received, for example as a result of positioning reference signals (PRS) received at a user device from a plurality of TRPs. Finally, at operation 38, the model is used to determine position information based on the signals received in the option 38. The operation 38 may involve returning an index of a cuboid that the user device is most likely to be located within. Alternatively, the operation 38 may return a probability, for each cuboid, that the user device is located within that cuboid. Operations 32 and 34 therefore define a training phase of the algorithm 30. Operations 36 and 38 define a position estimate (i.e. usage) phase of the algorithm.

FIG. 4 is a flow chart showing a method or algorithm, indicated generally by the reference numeral 40, in accordance with an example embodiment. The algorithm 40 may be used in an example implementation of the operations 36 and 38 of the algorithm 30 described above.

The algorithm 40 starts at operation 41, where one or more positioning reference signals (PRS) are received at a user device of a mobile communication system (such as the user device 14 described above). Each positioning reference signal is transmitted by one of one or more communication nodes of the mobile communication system (such as the TRPs 11 to 13 described above).

At operation 42, the one or more received positioning reference signals are combined (e.g. using cross-correlation) with the respective transmitted positioning reference signals to generate one or more signal vectors.

At operation 43, a signal envelope is extracted from the one or more signal vectors generated in the operation 42 to generate a power delay profile matrix.

At operation 44, a positioning system matrix is generated by concatenating the power delay profile matrix generated in the operation 43 and real and imaginary parts of the signal vectors generating in the operation 42. The positioning system matrix therefore describes channel features of the mobile communication system at the location of the user device.

At operation 45, the positioning system matrix is provided to a cuboid detection block (CDB). The CDB may form part of a network node of the mobile communication system, but this is not essential to all example embodiments; for example, the CDB may be provided at the user device or elsewhere in the mobile communication system (such as an external server). The positioning system matrix may be the user device signals received in the operation 36 of the algorithm 30 described above.

At operation 46, information identifying position information is received from the cuboid detection block, thereby implementing the operation 38 of the algorithm 30. The information received in the operation 46 relate to which of a plurality of indexed cuboids within a three-dimensional space the user device is located in. For example, the information may comprise an index of a cuboid that the user device is most likely to be located within or a probability that the user device is located in each of a plurality of indexed cuboids within a three-dimensional space (such as a building).

FIG. 5 is a block diagram of a system, indicated generally by the reference numeral 50, in accordance with an example embodiment. The system 50 may be used in an example implementation of the algorithm 40, as discussed in detail below.

The system 50 comprises a correlation module 54 and a processor 55 that form part of a user device 52. The system 50 further comprising a cuboid detection block (CDB) 56. The CDB may be provided at a network node, but alternatives (including the CDB forming part of the user device 52) are possible.

Assume that the operation 41 of the algorithm 40 described above is implemented by the user device 52 observing a received signal which is the noisy sum of all Z TRP transmit PRS, s z (t), z = 1: Z TRP , each traveling over a channel with impulse response: composed of L z multipath components, each with a delay and complex gain

The correlation module 54 is used to isolate the contribution of each TRP z in a different received vector: r (z) (k = (y * s z )(kT s ), k = 0: N - 1, z = 1 Z TRP (2)

Where the operator (*) denotes cross-correlation. The correlation module 54 outputs vectors r (z) thereby providing an example implementation of the operation 42. It should be noted that the use the correlation module 54 is not essential to all example embodiments. The user device 52 may combine the one or more received positioning reference signals with the respective transmitted positioning reference signals to generate one or more signal vectors in some other way, for example by OFDM demodulating the received signal.

The vectors are provided to the processor 55, which processor performs a number of computational steps. First, the vectors are collected in a matrix R by row-wise stacking:

Next, the operation 43 is implemented via “envelope acquisition”, i.e. performing: v (z) _ |r (z) | 2 , r (z) _ [ r (z) (o) ) ... ) r (z) (N - 1)] T (3), to obtain a noisy power delay profile (PDP) of the sampled channel impulse response (CIR).

The noisy sampled PDP (NS-PDP) between the UE and TRP z is denoted by v (z) .

We collect all the NS-PDP (i.e. of all z = 1 : Z_TRP ) seen at the user device into an input matrix M ∈ R ZTRP xN .

The matrix M is concatenated row-wise with the matrix R as below to generate a matrix M r (thereby implementing the operation 44).

The matrix M r is output by the processor 55 and is input to the cuboid detection block (CDB) 56, thereby implementing the operation 45. The CDB returns information relating to which of a plurality of indexed cuboids within a three-dimensional space the user device is located in. For example, as indicated in FIG. 5, the CDB may output the cuboid index where these channel features are most likely to be found, thereby implementing the operation 46. Alternative implementations are possible; for example, the CDB may provide, for each of a plurality of cuboid, the probability that the user device is located within that cuboid.

In one implementation, the CDB 56 may be realized as a machine learning (ML) classifier that associates a cuboid i, i = 1: 1 to each input M r .

Incorporating both the envelope V and the raw signal R in the matrix M r , enables the cuboid detection block to learn how to:

• extract power-delay information between each TX-RX pair from signal (2) via matrix V; and • account for phase information and noise, interference, etc. via the raw signal matrix

R.

The generation of the position information by the cuboid detection block 56 (implementing the operations 38 and 46) can be carried out in a number of different ways. Examples including the use of hypothesis testing (HT) and machine learning (ML) algorithms are described in detail below. The skilled person will be aware of alternative algorithms that could be used, such as applying maximum likelihood, maximum a posteriori, or Bayesian learning methods. FIG. 6 is a block diagram of a system, indicated generally by the reference numeral 60, in accordance with an example embodiment. The system 60 can be used to implement a hypothesis testing (HT) algorithm, as discussed further below.

For this implementation, the feature matrix M, as provided to the CDB in the operation 45, is used to select a subset of channel characteristics to be used during HT. For example, the signal envelope v (which forms part of the feature matrix M) is used to extract at least the following:

• Channel sparsity S, defined as the number of channel taps whose power is above a predefined threshold, for example, a tap k is counted if its power is within 3dB from the maximum power tap: Pi>=Pmax-3dB • Maximum excess delay, MED, defined as the delay of the latest arriving tap with power above the noise floor.

• TX beam index J of all the channels whose RSRP is above a given threshold.

• Phases P of the most relevant tap of each channel characterized by the PDPs obtained in v.

Then, the HT-CDB maps a set of (S, MED, J, P) to a cuboid index i by performing sequential and/or combined testing as shown in the system 50.

To determine the thresholds Si, .., Sk, MED1, MEDL, ..., Pg, one may use either reference units or emulators of the indoor environment such as ray tracing tools. Note that reference unit (RU) usage for positioning has been agreed in RAN1 discussions for Rel. 17 enhanced positioning WID and defined as a device that knows its own location (e.g. via GNSS) and may be freely configured by the 5G NR network to support any localization related activity, e.g. mapping an indoor/ outdoor environment, correcting localization errors due to hardware imperfections of the positioning transmitters, etc. For this specific use case, the reference unit maybe configured to report its own 3D location and measure the channels to all detected TRP and report (S, MED, J, P). Then, the pair {location, (S, MED, J, P)} are collected from several RU and used to generate Si, .., Sk, MEDi, MEDL, ..., Pg for each cuboid index via e.g. weighted averaging.

FIG. 7 is a block diagram of a system, indicated generally by the reference numeral 70, in accordance with an example embodiment. The system 70 can be used to implement a machine learning (ML) algorithm, as discussed further below. The system 70 comprises a set of signal processing blocks, indicated generally by the reference numeral 72, that generate a feature matrix (as discussed in detail above), followed by a multi-class classifier block 74 for cuboid selection.

Specifically, the classifier 74 that performs the signal to cuboid association outputs a vector of probabilities p r = [p r (1), ... , p r (/)] G [0, 1] I , where p r (i) is the probability that the UE characterized by NS-PDP M belongs to cuboid i, i = 1: I.

To implement the classifier 74, we may use a DNN, CNN, ResNet type of neural network with e.g. a softmax activation function: with p r (i) = <δ(x) i . The network implements at each hidden layer h an operation fh W h x h + b h ) , where f h , W h , x h , b h are the activation function, weights matrix, input vector and bias vector at layer h.

To train the network, i.e. to find W h , b h , for all layers, a loss function should be minimized. An example loss function maybe the multi-class cross-entropy loss function. As outlined in the algorithm 30 described above, following partition of a building into cuboids, a model may be trained before deployment. Possible training algorithms are discussed further below.

Assume that the building to partition occupies a volume Vb. We define the reference cuboid with volume V = WLH. For example, we may choose W = 2, L = 2, H = 2 m to comply with the positioning latency requirements of Rel. 17. Note that for Industrial Internet of Things (IIoT) applications, the volume maybe reduced to comply with tens of centimetre accuracy requirements. Similarly, for emergency services, where the user device may need to be localized at the correct floor, the cuboid height may be set as that of the floor height, while the horizontal dimensions kept to in the range of metre range.

Then, the total number of cuboids is I = ceil(Vb/V).

To train the architecture which returns the cuboid index associated with the location of any random user device (or some other information relating to which of a plurality of indexed cuboids within a three-dimensional space the user device is located in), training data is first generated. To that end, the RF signals received in cuboid i, by a set of known user devices (UEs) is generated either in a simulator, ray-tracing tool, or in the field, using reference UEs. For a simulated environment, the number of UEs per cuboid is fully controllable, and so is their spatial distribution. For example, the simulator may deploy K UEs, K = 50, too, etc. uniformly distributed inside the cuboid.

The noise levels at each UE may also be randomly generated, e.g. the received signal may be corrupted by noise via applying an AWGN signal with variance 1/SNR, where SNR point is picked from a uniform distribution in [SNRm, SNRM], where e.g. SNRm = -10 dB, SNRM = 8 dB. Regardless of the nature of the TX-RX points (e.g. simulated or collected from field measurements), say a TRP z, z = 1‘. Z TRP (e.g. Z TRP = 20) transmits a PRS signal s z (t) towards UE k, k = 1:K located in cuboid I, i = 1: I. The signal travels over a wireless channel with impulse response: consisting of l = 1: L (i,k,z multipath components. Here, the complex gain of the 1-th multipath component arriving in cuboid i, at UE k is a l (i,k,z UE k receives a signal consisting of the contributions of all Z TRP TRPs and corrupted by AWGN w (i,k) ( t UE k samples the signal (2) at a rate 1/Ts and cross-correlates it with each (known) transmit signal sequence s z to isolate the channel from each TRP to the UE:

The signal samples r (i,k,z) (nT s ) are collected in the vector r (i,k,z )

Where A (i,k,z is the autocorrelation matrix of the transmit sequence s z , defined as: where is the autocorrelation function of s z . Next, the envelope of the signal is computed as: to obtain the noisy power delay profile of the sampled channel , Hence, we call the vector v (i,k,z as noisy-PDP, and the b-th entry in the vector corresponds to the observed power of the multipath component arriving at a delay bT s , b = 0: N — 1. Therefore, using (9)-(n) we obtain a PDP of the sampled channel impulse response (which approximates the true response h (i,k,z) ) as seen by UE k in cuboid i as a result of transmission from TRP z.

To create K input matrices per cuboid (using eq. (5)), we concatenate the observations ν (i,k, z) and Re(r (i.k.z) for al users k = 1:K of cuboid i: V(i,k) =

Then, training data is labelled and used as input to the machine learning architecture discussed above with reference to FIG. 7 that produces a vector of probabilities p r (o), o = 1: 0 for each entry in the table. To train the architecture, a loss function between the predicted and expected cuboid index C(j ,j) maybe computed, e.g. crossentropyloss, and backpropagated through the ML architecture.

Table 1: Labelling training data

Such architecture may be trained in the cloud and downloaded at the UE side, which deploys the frozen architecture and runs it on demand. Note that both the network and the UE may trigger periodic re-trainings of the architecture, e.g. if the positioning accuracy requirements are not met for x consecutive occurrences, then a retraining trigger may be issued. If the architecture is trained at the UE, then the LMF needs to signal to the UE the building volume and shape, and potentially a preferred cuboid size - note that for the latter, this can be explicit, or implicit, i.e. the LMF may indicate the accuracy requirements and the UE chooses the cuboid shape accordingly.

It should be noted that buildings may be partitioned in many different ways dependent on the requirements, as discussed further below. FIG. 8 is a block diagram of a partitioned building, indicated generally by the reference numeral 80, in accordance with an example embodiment. The building 80 is partitioned into cuboids with volume Vi, where H = floor height, which maybe a esired arrangement for emergency services. In this case, the architecture predicts the . . , . , cuboid index

FIG. 9 is a block diagram of a partitioned building, indicated generally by the reference numeral 90, in accordance with an example embodiment. The building 90 is partitioned such that V2<<V1, e.g. V2 = 50 cm x 50 cm x 50 cm, which may suit Industrial Internet of Things (IIoT) applications. In such cases, the number of distinct

, . classes increases to FIG. 10 is a block diagram of a partitioned building, indicated generally by the reference numeral 100, in accordance with an example embodiment. The building 100 is partitioned to account for the heterogeneity of the indoor environment (e.g. in a factory scenario, large volumes may be occupied by fixed machineiy). Thus, the portioning of the building 100 consists of a combination of different cuboids sizes and/ or blind spots. For example, volumes which are highly travelled may be portioned into smaller cuboids (to enable precise localization (and avoid e.g. robots collisions), while the rest maybe portioned into larger cuboids. Moreover, volumes occupied by machinery may not covered by a cuboid (e.g. if a user device will not be present at such locations).

FIG. 11 is a block diagram showing a hierarchical cuboid portioning arrangement, indicated generally by the reference numeral 110, in accordance with an example embodiment. This method can be combined with any of the previously described heterogeneous partitioning methods.

In the hierarchical cuboid partitioning approach, the localization of a given UE is performed in consecutive localization steps, where each step follows the same procedure as described in the main embodiment, and consecutive steps have possible location cuboids with decreasing size. For example, in the arrangement 110:

• Step o: One Cuboid_ox per building is used (e.g. x=i..M buildings) as suitable for the target service (emergency, IIoT, etc). For this step the algorithm output is a vector of probabilities indicating the location likelihood within the Cuboid_oo ... Cuboid_oM. For the next step, we assume Cuboid_oo has been selected as the likely location of the target UE.

• Step 1: The Cuboid_oo is split into several smaller cuboids, Cuboid_oy (y=i..N) , either following a regular (geometrical) partitioning or a heterogeneous partitioning. For this step the algorithm output is a vector of probabilities indicating the location likelihood within Cuboid_oi .. N. For the next step, we assume Cuboid_O2 has been selected as the likely location of the target UE.

• Step 2: The Cuboid_O2 is split into several smaller cuboids, Cuboid_O2_z (z = 1..P), either following a regular (geometrical) partitioning or a heterogeneous partitioning. For this step the algorithm output is a vector of probabilities indicating the location likelihood within Cuboid_O2_i .. P. We assume Cuboid_O2_3 has been selected as the likely location of the target UE.

• Step 3+...: The procedure continues until a termination condition occurs (e.g. a desired location accuracy (cuboid size) is achieved, a defined number of steps is carried out, or a physical limitation of the localization network is reached).

In an alternative embodiment, the cuboid-based partitioning of the indoor space may have a time dimension (e.g. in addition to a spatial dimension). For example, at different times of day, the space may be partitioned into smaller or larger cuboids. The cuboid detection block may be tailored to the different models. For example, in case the detector is implemented by machine learning, then a different detection block may be trained for each of the available partitioning models.

FIG. 12 is a block diagram of a system, indicated generally by the reference numeral 120, in accordance with an example embodiment. The system 120 may be used to implement a hierarchical partitioning algorithm.

The system 120 receives the Matrix M discussed in detail above. That matrix is provided to each of a plurality of classifiers.

The system 120 comprises a first classifier 122 that generates a first set of cuboid probabilities, which are provides to a second classifier 124-The second classifier generates a second set of cuboid probabilities, which are provided to a third classifier 126. The third classifier generates a third set of cuboid probabilities, which, in this example, is used at the output (e.g. the most likely cuboid selection). The example embodiments described above generally assume a downlink positioning algorithm is being implemented. However, the principles can be readily extended to an uplink (UL) positioning algorithm and applied, for example, at a location management function (LMF).

FIG. 13 is a block diagram of a system, indicated generally by the reference numeral 130, in accordance with an example embodiment. The system 130 has many similarities with the system 10 described above, but is used for uplink positioning (rather than downlink positioning).

The system 130 comprises a first transmission-reception point (TRP) 131, a second transmission-reception point (TRP) 132, a third transmission-reception point (TRP) 133 and a user device 134. The TRPs 131 to 133 maybe gNBs or base stations. The system 130 may therefore form part of a mobile communication system.

The user device 134 provides sounding reference signals (SRS) to each of the TRPs 131 to 133 and, using the received SRS, an estimate of the user device position can be generated, for example using a location management function (LMF). For example, differences in times of arrival of sounding reference signals at the various TRPs (referred to as Uplink Time Difference of Arrival (UL-TDOA)) can be used to generate a position estimate.

FIG. 14 is a flow chart showing a method or algorithm, indicated generally by the reference numeral 140, in accordance with an example embodiment. The algorithm 140 has many similarities with the 40 described above.

The algorithm 140 starts at operation 141, where sounding reference signals (SRS) transmitted by a user device are received at one or more TRPs of a mobile communication system (such as the TRPs 131 to 133 described above).

At operation 142, the sounding positioning reference signals are combined (e.g. using cross-correlation) with the (known) transmitted sounding reference signals to generate one or more signal vectors. At operation 143, a signal envelope is extracted from the one or more signal vectors generated in the operation 142 to generate a power delay profile matrix. At operation 144, a positioning system matrix is generated by concatenating the power delay profile matrix generated in the operation 143 and real and imaginary parts of the signal vectors generating in the operation 142. The positioning system matrix therefore describes channel features of the mobile communication system at the location of the user device.

At operation 145, the positioning system matrix is provided to a cuboid detection block (CDB). The CDB generates information relating to which of a plurality of indexed cuboids within a three-dimensional space the user device is located in (e.g. information identifying a probability that the user device is located in each of a plurality of indexed cuboids within a three-dimensional space). The CDB may form part of a network node of the mobile communication system, but this is not essential to all example embodiments; for example, the CDB may be provided at the user device or elsewhere in the mobile communication system (such as an external server).

At operation 146, information identifying position information is received from the cuboid detection block. The information received in the operation 146 may comprise an index of a cuboid that the user device is most likely to be located within or a probability that the user device is located in each of a plurality of indexed cuboids within a three- dimensional space (such as a building).

In the system 50 described above, all of the elements may be provided at a user device (UE) providing downlink processing; however, this is not essential to all example embodiments. In another implementation, only the feature collection operations may be implemented at the UE side. Specifically, the measurements of DL PRS maybe performed by the UE. Subsequently, the UE may extract the relevant features and transfer these back to the network. Depending on the CDB implementation at the network side, the features may be either: • Measurement matrices if the CDB is implemented as a machine learning classifier; or

• Channel properties such as TOA, MED if the CDB is implemented using HT.

The network may then implement the full CDB architecture, and provide an output such as the cuboid index described in detail above based on the features obtained from the UE. An advantage of such approach is that the building map does not need to be known by the UE.

For completeness, FIG. 15 is a schematic diagram of components of one or more of the example embodiments described previously, which hereafter are referred to generically as a processing system 300. The processing system 300 may, for example, be (or may include) the apparatus referred to in the claims below.

The processing system 300 may have a processor 302, a memory 304 coupled to the processor and comprised of a random access memory (RAM) 314 and a read only memory (ROM) 312, and, optionally, a user input 310 and a display 318. The processing system 300 may comprise one or more network/ apparatus interfaces 308 for connection to a network/ apparatus, e.g. a modem which may be wired or wireless. The network/ apparatus interface 308 may also operate as a connection to other apparatus such as device/apparatus which is not network side apparatus. Thus, direct connection between devices/apparatus without network participation is possible.

The processor 302 is connected to each of the other components in order to control operation thereof.

The memory 304 may comprise a non-volatile memory, such as a hard disk drive (HDD) or a solid state drive (SSD). The ROM 312 of the memory 304 stores, amongst other things, an operating system 315 and may store software applications 316. The RAM 314 of the memory 304 is used by the processor 302 for the temporary storage of data. The operating system 315 may contain code which, when executed by the processor implements aspects of the methods and algorithms 30, 40 and 140 described above. Note that in the case of small device/apparatus the memory can be most suitable for small size usage i.e. not always a hard disk drive (HDD) or a solid state drive (SSD) is used.

The processor 302 may take any suitable form. For instance, it may be a microcontroller, a plurality of microcontrollers, a processor, or a plurality of processors. The processing system 300 maybe a standalone computer, a server, a console, or a network thereof. The processing system 300 and needed structural parts may be all inside device/apparatus such as loT device/apparatus i.e. embedded to very small size. In some example embodiments, the processing system 300 may also be associated with external software applications. These may be applications stored on a remote server device/apparatus and may run partly or exclusively on the remote server device/apparatus. These applications maybe termed cloud-hosted applications. The processing system 300 may be in communication with the remote server device/ apparatus in order to utilize the software application stored there.

FIG. 16 shows tangible media, specifically a removable memory unit 365, storing computer-readable code which when run by a computer may perform methods according to example embodiments described above. The removable memory unit 365 may be a memory stick, e.g. a USB memory stick, having internal memory 366 for storing the computer-readable code. The internal memory 366 may be accessed by a computer system via a connector 367. Other forms of tangible storage media may be used. Tangible media can be any device/apparatus capable of storing data/information which data/information can be exchanged between devices/apparatus/network.

Embodiments of the present invention may be implemented in software, hardware, application logic or a combination of software, hardware and application logic. The software, application logic and/ or hardware may reside on memory, or any computer media. In an example embodiment, the application logic, software or an instruction set is maintained on any one of various conventional computer-readable media. In the context of this document, a “memory” or “computer-readable medium” may be any non-transitory media or means that can contain, store, communicate, propagate or transport the instructions for use by or in connection with an instruction execution system, apparatus, or device, such as a computer.

Reference to, where relevant, “computer-readable medium”, “computer program product”, “tangibly embodied computer program” etc., or a “processor” or “processing circuitry” etc. should be understood to encompass not only computers having differing architectures such as single/ multi-processor architectures and sequencers/ parallel architectures, but also specialised circuits such as field programmable gate arrays FPGA, application specify circuits ASIC, signal processing devices/apparatus and other devices/apparatus. References to computer program, instructions, code etc. should be understood to express software for a programmable processor firmware such as the programmable content of a hardware device/apparatus as instructions for a processor or configured or configuration settings for a fixed function device/ apparatus, gate array, programmable logic device/apparatus, etc.

If desired, the different functions discussed herein may be performed in a different order and/ or concurrently with each other. Furthermore, if desired, one or more of the above-described functions may be optional or may be combined. Similarly, it will also be appreciated that the flow diagrams of FIGS. 3, 4 and 14 are examples only and that various operations depicted therein maybe omitted, reordered and/or combined.

It will be appreciated that the above described example embodiments are purely illustrative and are not limiting on the scope of the invention. Other variations and modifications will be apparent to persons skilled in the art upon reading the present specification.

Moreover, the disclosure of the present application should be understood to include any novel features or any novel combination of features either explicitly or implicitly disclosed herein or any generalization thereof and during the prosecution of the present application or of any application derived therefrom, new claims may be formulated to cover any such features and/ or combination of such features. Although various aspects of the invention are set out in the independent claims, other aspects of the invention comprise other combinations of features from the described example embodiments and/ or the dependent claims with the features of the independent claims, and not solely the combinations explicitly set out in the claims. It is also noted herein that while the above describes various examples, these descriptions should not be viewed in a limiting sense. Rather, there are several variations and modifications which may be made without departing from the scope of the present invention as defined in the appended claims.