1. Introduction
With the development of information technology, location services are gradually becoming indispensable in the daily lives of humans [1]. In outdoor environments, location information is mainly obtained through satellite positioning systems, such as GPS and BeiDou navigation satellite system, with a positioning accuracy of approximately 10 m [2]. However, in indoor environments, owing to the blocking by buildings, the satellite signal is poor, resulting in a large positioning error; thus, obtaining location information becomes challenging and the needs of people cannot be met [3].
At present, most people live in indoor environment for more than 80% of the time. Therefore, indoor location service is more and more valued by people [4]. Mobile communication technology is widely used in location services because of its large coverage and wide application. The positioning technology based on the fourth generation (4G) mobile communication technology can achieve a positioning accuracy of several meters; however, the sub-meter level of accuracy required by users cannot be attained. The fifth generation (5G) mobile communication technology is expected to realize ultra-dense network [5] deployment to significantly improve the density of base stations. In this manner, users can simultaneously communicate with multiple base stations, and use these base stations to achieve multi base station collaborative positioning. This positioning method can improve the positioning accuracy to sub meter level and better meet the people's needs for positioning. Therefore, the study of indoor positioning algorithms for 5G ultra-dense networks is of immense significance.
The traditional indoor positioning algorithms are mainly based on time of arrival (TOA) ranging [6], time difference of arrival (TDOA) ranging [7], received signal strength indicator (RSSI) ranging [8], angle of arrival (AOA) ranging [9], fingerprint matching [10], etc. In 2017, Yang et al. proposed a KFL-TOA indoor positioning method based on ultra-wideband (UWB) for the positioning problem in complex indoor environments. This method in combination with TOA and the linear Kalman filter can achieve a positioning error of 0.32 m [11]. Jia et al. proposed a three-dimensional (3D) indoor positioning algorithm based on motion features and multipath AOA-TOA in a single base station indoor environment. First, an improved least mean square algorithm in combination with a motion message was adopted to refine the multipath AOA estimation. Then, an improved multipath lossless Kalman filter was used to track the location of the user equipment in the scene. The simulation results demonstrated that the proposed algorithm can result in a two-fold gain in sight distance AOA estimation [12]. Zhang et al. proposed a visible light indoor positioning algorithm based on artificial neural networks (ANNs), which could accurately model the RSSI data in the RSSI-based indoor positioning system and the distribution of the initial delay of the LED chip in the indoor positioning system based on the phase difference of arrival (PDOA). Additionally, a selection strategy using both the PDOA and RSSI measurements was introduced to reduce the effect of intensity changes to improve robustness. Simulations demonstrated the feasibility of ANN-based modeling and illustrated the robustness of the hybrid positioning system under different intensity variations [13]. Zhang et al proposed an indoor location algorithm based on the TDOA/ frequency difference of arrival (FDOA) joint location, and further improved the location performance of the algorithm by using the enhanced semi-definite relaxation method, which effectively improved the location accuracy [14]. In summary, the above algorithm is mainly based on the signal ranging positioning method. Although its positioning accuracy can reach the sub-meter level in a 5G ultra-dense network, there are many base stations with high density and large interference between the base stations, which affects the positioning accuracy of the signal ranging-based positioning method and hinders the achievement of the required positioning accuracy.
The fingerprint matching algorithm is used to estimate the coordinates of the point to be located by pre-constructing the location database and then matching the fingerprints of the point to be located with the fingerprint database through the matching algorithm. Although the fingerprint matching algorithm requires a large amount of fingerprint data to create the fingerprint database, it can still maintain a certain positioning accuracy when there is a large interference in the environment. Many scholars have conducted relevant research on fingerprint matching algorithms. The RADAR indoor positioning system proposed by P. Bahl et al. Of Microsoft Research in 2000 is the earliest positioning system that uses WLAN signals as a positioning basis [15]. Horsmanheimo et al. designed and implemented a 5G-based indoor positioning platform using fine timing measurement (FTM) technology, which could calculate the position estimation value through multilateral calculation, realizing image-based positioning and RSSI-based fingerprint identification [16]. This platform can test and verify the indoor positioning accuracy in heterogeneous networks composed of pico-cells. Liu et al. proposed an improved algorithm based on weighted K nearest neighbor (W-KNN). In the offline phase, the algorithm filters out invalid data by using data expectations and selects the mean of the RSS and the variance of the access point (AP) as feature vectors. In the online phase, the weighted distance is proposed to calculate the similarity based on the difference in the AP. Additionally, the nearest primary neighbor and (k-1) secondary neighbors are obtained by comparing the weighted distance. The estimated location of the point to be located is obtained based on the correlation between the primary neighbor and (k-1) secondary neighbors [17]. The experimental results demonstrate that the algorithm can provide a positioning accuracy of 2.438 m, which is higher than that of the RSSI positioning fingerprint algorithm used alone in an indoor environment. These fingerprint matching algorithms are relatively easy to build because of the small number of base stations and the small amount of data in fingerprint database. These algorithms demonstrate a good positioning accuracy. However, in the ultra dense network, the number of base stations involved in fingerprint location algorithm is large and the density is high. The workload of building fingerprint database is increasing rapidly, and the time cost of online matching is also increased with the increase of data volume. Therefore, reducing the complexity of fingerprint location and interference between base stations, and improving the positioning accuracy are of utmost importance.
Some scholars have conducted research on indoor location algorithms based on 5G ultra-dense networks. Elsawy et al. proposed a base station ordering localization technique (BoLT) based on a super-dense network, which uses Voronoi tessellations to divide the super dense network, constantly reducing the location area through base station sequencing. The experimental results demonstrate that when six ordered base stations participate in the location service, the location area is only 10% of the coverage of the six base stations, and when ten ordered base stations participate in the location service, the location area is only 1% of the coverage of the ten base stations. Moreover, they found that the technology yields a positioning accuracy of several meters or decimeters in 5G networks [18]. The spectral compression-based RSSI mapping fingerprint library method proposed by Talvitie et al. achieves a fingerprint library compression rate of more than 70% for 5G sensor-dense networks [19]. However, the positioning accuracy of these algorithms is not sufficiently high, and the positioning model is considered to be two-dimensional, which is unsuitable for actual 3D environments.
In this study, we propose an indoor 3D dynamic reconstruction fingerprint matching algorithm (DSR-FP) in a 5G ultra-dense network. The contribution of this algorithm is as follows:
(1) First, the algorithm constructs a local fingerprint matrix from partial fingerprint data, and then reconstructs the matrix as a complete fingerprint library using a fixed point continuation with approximate singular value decomposition (FPCA). This method builds complete large-scale fingerprint libraries by performing mathematical calculations with a small amount of fingerprint data, thus reducing the time, complexity, and cost of building the library.
(2) The algorithm establishes a dynamic base station matching strategy, which uses the communication quality index between the point to be located and the communication base station to select the set of base stations with better communication quality. The collection can be dynamically updated in real time based on the communication quality. This can ensure that the best communication signal is always used for positioning, thereby reducing interference and improving positioning accuracy. The algorithm then uses the information of the base stations in the collection to further simplify the reconstructed fingerprint library, which is used for the next fingerprint matching, reduce the complexity of fingerprint matching, and reduce the matching time.
(3) The algorithm uses the KNN method to match the fingerprint of the point to be located with the simplified fingerprint library to obtain the 3D estimated coordinates of the point to be located.
(4) The technical feasibility of the reconstruction of the fingerprint database and the algorithm is verified through theoretical analysis.
(5) Simulation results of the fingerprint database demonstrate that the database has low rank characteristics and can be reconstructed as a complete fingerprint database with a small amount of data. Additionally, the simulation results indicate that the average relative error of reconstructing the fingerprint library and the original fingerprint library is 1.21%, and the fingerprint library reconstruction accuracy is high. Furthermore, the feasibility of the DSR-FP algorithm is demonstrated.
(6) The positioning errors of the DSR-FP algorithm and the traditional fingerprint matching algorithm are simulated for different signal-to-noise (SNR) ratio cases. The simulation results demonstrate that the positioning errors of the DSR-FP algorithm are all less than 0.31 m, and for the same SNR, the positioning errors of the DSR-FP algorithm are lesser than those of the traditional fingerprint matching algorithm, with higher positioning accuracy.
The DSR-FP algorithm proposed in this paper firstly reconstructs fingerprint database by FPCA matrix filling method. This method uses the 52.7% fingerprint database data to recover the 47.3% original fingerprint database to reconstruct the entire fingerprint database. The average relative error between the reconstructed fingerprint database and the original fingerprint database is 1.21%. This method makes the reconstruction accuracy of fingerprint database high and greatly reduces the workload of fingerprint database construction. The DSR-FP algorithm establishes a dynamic base station matching strategy, which can select the base stations with better communication quality with the positioning point as the base station set. This strategy can realize the dynamic matching between the location point and the base station to simplify the reconstructed fingerprint database by using the best communication quality base station set. This strategy can reduce the amount of computation and improve the positioning accuracy. Finally, KNN algorithm is used to calculate the location of the point to be located. The simulation results show that the fingerprint database reconstruction is high in DSR-FP algorithm. The positioning error of the DSR-FP algorithm is smaller than the traditional fingerprint matching algorithm, and the positioning accuracy of the DSR-FP algorithm is higher.
2. Ultra-Dense Network Indoor Positioning Model
The 5G ultra-dense network indoor positioning model is illustrated in Fig. 1. Let us consider that a right-angle coordinate system is established with O as the origin, and the volume of the model is A×B×Z. Base stations distributed at the top of the model are set up, as indicated by the black dots at the top of the figure. The set of all the base stations is set to BS and the total number of base stations is set to N. The base station i is represented by BSi(i=1...N) and its coordinate is (xi,yi,zi), where zi=Z; thus, BS=[BS1BS2...BSi...BSN]. Set the point u , which is to be located, to be distributed anywhere in space, as depicted in Fig. 1, whose coordinate is unknown and represented by (xu,yu,zu). Set the point u to communicate with the base station BS1–BS4 via 5G technology.
Fig. 1. Indoor positioning model for 5G ultra-dense network
In this model, the network formed by the base stations is an ultra-dense network, which consumes more power owing to the larger number of base stations. To reduce the power consumption, the base station has two states, namely, “active” and “dormant.” An array I of length N is used to represent the state of all base stations, the elements of which consist of 1 or 0. 1 represents that the base station is “active” and 0 represents that the base station is “dormant.” If I = [1 0 0...1 1...]N, the first base station is “active, ” the second and third base stations are “dormant, ” and so on. Array I is updated in real time according to the status of each base station.
To provide better quality of service to users and improve positioning accuracy, each base station (cell) service area is divided. Assuming that the distribution of the base station obeys the homogeneous Poisson process, the coverage of the base station can be characterized by Tyson polygons (Voronoi tessellations).
As can be seen from Fig. 1, the area of the top plane of the model is S=A×B. If the communication radius of each base station is r, the density of the base station λ can be expressed as
\(\lambda=N \cdot \frac{\pi \cdot r^{2}}{S}\) (1)
The probability distribution of the base stations according to the homogeneous Poisson process is
\(F=\frac{\lambda^{N}}{N !} \cdot e^{-\lambda}\) (2)
The distribution of the base stations characterized by the Tyson polygons in Fig. 1 is depicted in Fig. 2.
Fig. 2. Distribution map of cell service areas
In Fig. 2, the black dots indicate the base stations and the distribution of the base stations corresponds to the Poisson distribution, whereas the dashed area indicates the area covered by the base stations characterized by the Tyson polygon.
3. DSR-FP Algorithm
The DSR-FP algorithm comprises two stages: the offline library building stage and the online matching stage. In the offline database building phase, the fingerprint database is established by using the statistical fingerprint data before the location service. In the online matching stage, the fingerprint of the point u to be located is matched with the fingerprint data in the database by using the matching algorithm, and the estimated coordinates of the point u are finally obtained.
3.1 Offline Library Building Stage
3.1.1 Fingerprint LIBRARY Composition
According to the indoor location model of the super-dense network and the division method of the cell service area, the schematic diagram of the DSR-FP algorithm to build a 3D fingerprint database is illustrated in Fig. 3.
Fig. 3. Schematic of the DSR-FP algorithm
In Fig. 3, any point in space is called a fingerprint point, and its corresponding data is a data point in a fingerprint database, also called a fingerprint. Fingerprint point a is used as an example to illustrate the composition of a fingerprint library. Let us consider a point a as any point in space in the model and that its coordinates are (xa,ya,za). There are m (m<N) base stations that can communicate with it. Then, the fingerprint fpa of a is
\(f p_{a}=\left[x_{a} y_{a} z_{a} \operatorname{RSSI}_{1 a} R S S I_{2 a} \ldots R S S I_{N a}\right]\) (3)
where fpa is a one-dimensional row vector with N+3 columns and RSSI1a–RSSINa represents the signal strength received by a from N base stations. However, as only m base stations can communicate with a, N-m zero values are included in N RSSI values. If the number of all fingerprint points in the space is n1, set n2=N+3; then, the fingerprint library can be represented as an n1×n2 matrix M. Then,
\(\mathbf{M}=\left[\begin{array}{ccc} x_{1} & y_{1} & z_{1} & R S S I_{11} \quad R S S I_{21} \ldots R S S I_{N 1} \\ && \ldots \\ x_{a} & y_{a} & z_{a} & R S S I_{1 a} \quad R S S I_{2 a} \ldots R S S I_{N a} \\ && \ldots \\ x_{n_{1}} & y_{n_{1}} & z_{n_{1}} & R S S I_{1 n_{1}} \quad R S S I_{2 n_{1}} \ldots R S S I_{N n_{1}} \end{array}\right]_{n_{1} \times n_{2}}\) (4)
Each line in the (4) represents a fingerprint point. Since n1 tends to infinity, it is difficult to obtain a matrix M composed of any point in space. Typically, the distance between fingerprint points is taken as c, and n1 is limited to a finite number n'1, so that the matrix M becomes a finite matrix \(M'_{n_1\times n_2}\). To improve the positioning accuracy, the distance between fingerprint points c should take smaller values. Thus, the amount of data in the fingerprint database M' is also considerably large, requiring a significant amount of time and cost to construct matrix M'. However, if c is too large, the positioning accuracy deteriorates again. Therefore, the construction of matrix M' is the key to influence the positioning accuracy.
3.1.2 Reconstruction Algorithm
According to the previous analysis, the fingerprints in M' contain several zero values and M' exhibits a certain low rank. Thus, a matrix reconstruction algorithm can be used to reconstruct the complete fingerprint library through a portion of the data in the fingerprint library.
The matrix reconstruction algorithms mainly include Singular value threshold(SVT), Fixed Point Continuation with Approxiamte SVD(FPCA), Accelerated proximal gradient(APG), OptSpace, Atomic Decomposition for Minimum Rank Approximation(ADMiRA) , and other algorithms.
Reference [20] has proved that under the same rank and sample ratio, the SVT algorithm takes the longest time, the OptSpace algorithm is the fastest, while the FPCA algorithm exhibits the smallest reconstruction error. Therefore, the FPCA algorithm is adopted in this study, and is implemented as follows:
Let us consider a partial fingerprint library \(\Psi\) as a subset of M'. The number of elements in \(\Psi\) is t, and t is much smaller than the total number of element in M', which is n'1×n2. The fingerprint library reconstructed from \(\Psi\) using the FPCA algorithm is X, which is the reconstructed fingerprint library of M'. \(Q_{\Psi}(\mathbf{X})\) is defined as the projection operator that reconstructs the fingerprint library X on \(X_{\Psi}\).
\(Q_{\Psi}(\mathbf{X})=\left\{\begin{array}{ll} X_{\Psi} & X_{\Psi} \in \Psi \\ 0 & \text { otherwise } \end{array}\right.\) (5)
where \(X_{\Psi}\) represents the element in X and corresponds to the equivalent element in \(X_{\Psi}\). Set \(Q_{\Psi}(\mathbf{M'})\) as the projection operator that M' on \(X_{\Psi}\). According to the matrix-filling theory, X should satisfy the following equation.
\(\left\{\begin{array}{ll} \min & \operatorname{rank}(\mathbf{X}) \\ \text { s.t. } & Q_{\Psi}(\mathbf{X})=Q_{\Psi}\left(\mathbf{M}^{\prime}\right) \end{array}\right.\) (6)
where \(\operatorname{rank}(\square)\) denotes the rank of the matrix, and rank(X) denotes the rank of X. Equation (6) is a non-convex function; therefore, the problem is an NP-hard problem, which is extremely difficult to solve. Thus, Candès and Recht proposed that (6) can be replaced by the matrix nuclear norm minimization problem in [21], and the systematic elaboration and detailed proofs were conducted in [22]. The nuclear norm of X is (7).
\(\|\mathbf{X}\|_{*}=\sum_{j=1}^{\operatorname{rank}(\mathbf{X})} \sigma_{j}\) (7)
where \(\|\mathbf{X}\|_{* }\) represents the nuclear norm of X, and σj represents the singular value j of X. Equation (7) is a convex function that can be solved by using semi-definite programming; thus, (6) can be transformed into (8)
\(\left\{\begin{array}{l} \min \quad\|\mathbf{X}\|_{*} \\ \text { s.t. } \quad Q_{\Psi}(\mathbf{X})=Q_{\Psi}\left(\mathbf{M}^{\prime}\right) \end{array}\right.\) (8)
and its Lagrangian version is (9).
\(\min \quad \mu\|\mathbf{X}\|_{*}+\frac{1}{2}\left\|Q_{\Psi}(\mathbf{X})-Q_{\Psi}\left(\mathbf{M}^{\prime}\right)\right\|_{F}^{2}\) (9)
where μ represents a constant, \(\left\|Q_{\Psi}(\mathbf{X})-Q_{\Psi}\left(\mathbf{M}^{\prime}\right)\right\|_{F}\) is the Frobenius norm of \(Q_{\mathbf{\Psi}}(\mathbf{X})-Q_{\mathbf{\Psi}}\left(\mathbf{M}^{\prime}\right)\). The X that needs to be reconstructed in (9) is replaced by X0 constructed from \(\Psi\). Then, we perform the iteration of the algorithm, and when the iteration is at generation a, we obtain (10).
\(\left\{\begin{array}{l} \mathbf{Y}_{\alpha}=\mathbf{X}_{\alpha}-\tau f\left(\mathbf{X}_{\alpha}\right) \\ \mathbf{X}_{\alpha+1}=D_{v}\left(\mathbf{Y}_{\alpha}\right) \end{array}\right.\) (10)
where τ represents a constant. \(f\left(\mathbf{X}_{\alpha}\right)=Q_{\Psi}^{*}\left(\left(Q_{\Psi}\left(\mathbf{X}_{\alpha}\right)-Q_{\Psi}\left(\mathbf{M}_{\alpha}^{\prime}\right)\right)\right)\), \(Q_{\Psi}^{*}\) represents the adjoint operator of \(Q_{\Psi}\), and Dv is the matrix shrinkage operator with v = τ×μ. When τ>0, we define Dv as (11).
\(\left\{\begin{array}{l} D_{v}\left(\mathbf{Y}_{\alpha}\right)=\mathbf{U}_{\mathbf{Y}_{\alpha}} d_{v}\left(\boldsymbol{\Sigma}_{\mathbf{Y}_{\alpha}}\right) \mathbf{V}_{\mathbf{Y}_{\alpha}}^{T} \\ d_{v}\left(\boldsymbol{\Sigma}_{\mathbf{Y}_{\alpha}}\right)=\operatorname{diag}\left\{\left[\left(\beta_{\mathbf{Y}_{\alpha}, j}-v\right)^{+}\right]\right\} \end{array}\right.\) (11)
In (11), \(\mathbf{U}_{\mathbf{Y}_{\alpha}}\) is an n'1×rank(Ya) orthogonal matrix, \(\mathbf{V}_{\mathbf{Y}_{\alpha}}\) is an n'2×rank(Ya) orthogonal matrix, and \(\mathbf{V}_{\mathbf{Y}_{\alpha}}^{T}\) is the transposition matrix of \(\mathbf{V}_{\mathbf{Y}_{\alpha}}\). \(\boldsymbol{\Sigma}_{\mathbf{Y}_{\alpha}}=\operatorname{diag}\left(\left\{\beta_{\mathbf{Y}_{\alpha}, j}\right\}_{1 \leq j \leq \delta<\operatorname{rank}\left(\mathbf{Y}_{\alpha}\right)}\right)\) is the approximate non-negative singularity matrix of Ya which is obtained by the Monte Carlo approximate SVD method, and 1≤δ<rank(Ya). The iteration of the algorithm can be stopped when (12) is satisfied.
\(\frac{\left\|\mathbf{X}_{\alpha+1}-\mathbf{X}_{\alpha}\right\|_{F}}{\max \left\{1,\left\|\mathbf{X}_{\alpha}\right\|_{F}\right\}}<x t o l\) (12)
where xtol is a small positive number. If the number of iterations when the algorithm satisfies (12) is a', X is finally expressed as (13).
\(\mathbf{X}=\mathbf{U}_{\mathbf{Y}_{\alpha^{\prime}}} d_{v}\left(\boldsymbol{\Sigma}_{\mathbf{Y}_{\alpha^{\prime}}}\right) \mathbf{V}_{\mathbf{Y}_{\alpha^{\prime}}}^{T}\) (13)
The FPCA algorithm steps are presented in Table 1.
Table 1. FPCA Algorithm Steps
3.2 Online Matching Stage
There are n'1×n2 data in the reconstructed fingerprint database X. Owing to the small spacing of fingerprint points c, therefore, the number of fingerprint points n'1 is larger, and the amount of data in the fingerprint database are large. Additionally, X should contain a large amount of zero value data as the original fingerprint matrix M'. However, the point only communicates with a partially “active” base station; thus, the data in X contains a large amount of redundant data, thereby increasing the time cost of online matching.
In response to the above problem, this study proposes a dynamic base station matching strategy, in which the optimal base station and multiple sub-optimal base stations are screened by the quality of the communication between point u and the base station, and the corresponding fingerprints in the fingerprint database are extracted, thus achieving the purpose of simplifying the database.
Finally, the fingerprint of point u is matched online with the fingerprints in the simplified fingerprint database to obtain the estimated location of point u.
3.2.1 Dynamic Base Station Matching Strategy
The schematic of the communication between point u and the base stations is illustrated in Fig. 4.
Fig. 4. Communication diagram of point and base stations
In Fig. 4, the set of base stations that can communicate with point u is BS(u), BS(u)∈BS. BSb represents the base station b in BS that can communicate with point u; therefore, BSb∈BS(u). Point u communicates with the activated base station BSb, and the other base stations in BS(u) are the interference base stations. SINRb(u) is expressed as the SNR between u and BSb, which can be expressed as (14).
\(\operatorname{SINR}_{b}(u)=\frac{P_{b} g_{b}(u)}{\sigma^{2}+\sum_{q \in B S(u) \atop q \neq b} P_{q} I_{q} g_{q}(u)}\) (14)
where σ2 denotes the noise power, Pb denotes the signal transmitting power of base station BSb, Ib∈I denotes the state of base station BSb, gb(u) denotes the channel gain between base station BSb and point u, BSq denotes the interfering base station, Pq denotes the signal transmitting power of the interfering base station BSq, Iq∈I denotes the state of base station BSq, and gq(u) denotes the channel gain between base station BSq and point u.
The communication quality indicator between point u and the communication base station BSb is Lb(u), which can be expressed as (15).
\(L_{b}(u)=P_{b} I_{b} g_{b}(u) \operatorname{SINR}_{b}(u)\) (15)
The communication quality indicator between point u and all the base stations in BS(u) is L(u)=[L1(u),L2(u),...Lb(u),...]. bbest(u) denotes the serial number of the base station with the best quality of communication for point u, which can be expressed as (16).
\(b_{b e s t}(u)=\underset{B S_{b} \in B S(u)}{\arg \max } L_{b}(u)\) (16)
The threshold value is set as \(\gamma=L_{b_{b e s t}(u)}(u) / 3\), where \(L_{b_{b e s t}(u)}(u) \) indicates the communication quality indicator of the most optimal communication between base station \(BS_{b_{b e s t}}(u)\) and point u. By using the threshold γ to eliminate the poor data in L(u), that is to say, the base station with poor communication quality with point u can be eliminated. The set of base stations with good communication quality with point u is \(BS_{match}(u)\), which contains the base stations that participate in the online matching of the DSR-FP algorithm.
3.2.2 Simplified Fingerprint Database
The serial numbers of base stations in \(BS_{match}(u)\) are set as 1–m' . Let us consider the fingerprint fpa of fingerprint point a as an example to illustrate the screening of fingerprints in the fingerprint library. After the screening, the fingerprint of fingerprint point a is defined as (17).
\(f p_{a}^{\prime}=\left[x_{a} y_{a} z_{a} R S S I_{1 a} \ldots R S S I_{m^{\prime} a}\right]\) (17)
As expressed in (17), the fingerprint fp'a after screening is composed of RSSI values numbered as 1–m' extracted from fingerprint fpa. Reconstructed fingerprint library X performs the same work for all the fingerprint points, and can be simplified as X1.
3.2.3 Matching Algorithm
This study adopts the KNN algorithm for fingerprint matching in the simplified fingerprint library X1. According to \(BS_{match}(u)\), the fingerprint of point u is defined as (18).
\(f p_{u}=\left[x_{u 0} y_{u 0} z_{u 0} R S S I_{1 u} \ldots R S S I_{m^{\prime} u}\right]\) (18)
Where since its coordinates are unknown, (xu0,yu0,zu0) is used instead of (xu,yu,zu) to indicate the coordinates of point u, and (xu0,yu0,zu0) are both set to 0. RSSI1u–RSSIm'u indicates the values of the signal strength received by point u from the base stations in \(BS_{match}(u)\). The RSSI root mean square error εui' between point u and the fingerprint point i' in X1 is defined in (19).
\(\varepsilon_{u i^{\prime}}=\sqrt{\frac{1}{m^{\prime}} \sum_{i=1}^{m^{\prime}}\left(R S S I_{i u}-R S S I_{i i^{\prime}}\right)^{2}}\) (19)
The minimum value of εui' is εmin. We select k(k≥2) values closest to εmin, and record the fingerprint points to which these k values correspond. Then, we average the coordinates of the k fingerprint points to obtain the estimated coordinates (xu',yu',zu')of point u
\(\left\{\begin{array}{l} x_{u}^{\prime}=\frac{1}{k} \sum_{i^{\prime\prime}=1}^{k} x_{i^{\prime \prime}} \\ y_{u}^{\prime}=\frac{1}{k} \sum_{i^{"}=1}^{k} y_{i^{"}} \\ z_{u}^{\prime}=\frac{1}{k} \sum_{i^{"}=1}^{k} z_{i^{"}} \end{array}\right.\) (20)
where xi",yi",zi" are the coordinates of the fingerprint point i" among the k fingerprint points.
3.3 Algorithm Flow
The algorithm is divided into two stages: offline library building stage and online matching stage.
Step 1: Start.
Step 2: Initialize parameters, including BS, N, I, P, σ2, c, etc.
Offline library building stage:
Step 3: Record data to construct partial fingerprint database \(\Psi\).
Step 4: Reconstruct the complete fingerprint library X using \(\Psi\) via the FPCA reconstruction algorithm.
Online matching stage:
Step 5: Obtain the service base station set \(BS_{match}(u)\) through the dynamic base station matching strategy.
Step 6: Extract the corresponding fingerprints from the complete fingerprint library X using the base station number in \(BS_{match}(u)\) to obtain the simplified fingerprint library X1 and to record the fingerprint fpu of point u.
Step 7: Estimate the coordinates of point u by matching fpu with the fingerprint in X1 using the KNN algorithm.
Step 8: Conclusion.
The DSR-FP algorithm flowchart is depicted in Fig. 5.
Fig. 5. DSR-FP algorithm flowchart
4. Feasibility Analysis
The FPCA algorithm presented in Section III-A of this paper uses the matrix-filling theory as the theoretical basis. The theory of matrix filling is the use of reconstruction algorithms to estimate unknown elements through known elements, provided that the matrix satisfies low rank properties, thus filling incomplete low rank matrices [23]. However, not all low-rank matrices can be reconstructed, and the following three examples illustrate the cases in which they cannot be reconstructed. When the low-rank matrix M' contains only one non-zero element, as shown in (21).
\(\mathbf{M}^{\prime}=\left[\begin{array}{cccccc} 0 & \ldots & 1 & 0 & \ldots & 0 \\ 0 & \ldots & 0 & 0 & \ldots & 0 \\ \ldots & \ldots & \ldots & \ldots & \ldots & \ldots \\ 0 & \ldots & 0 & 0 & \ldots & 0 \\ 0 & \ldots & 0 & 0 & \ldots & 0 \end{array}\right]\) (21)
When using some of its elements for reconstruction, we may obtain an all-zero partial matrix \(\Psi\), which cannot be used for the reconstruction algorithm. When only one row of elements in the low-rank matrix M' is not 0, and all the other elements are 0, as shown in the following formula.
\(\mathbf{M}^{\prime}=\left[\begin{array}{cccc} 0 & 0 & \ldots & 0 \\ 0 & 0 & \ldots & 0 \\ \ldots & \ldots & \ldots & \ldots \\ \omega_{1} & \omega_{2} & \ldots & \omega_{2} \\ \ldots & \ldots & \ldots & \ldots \\ 0 & 0 & \ldots & 0 \\ 0 & 0 & \ldots & 0 \end{array}\right]\) (22)
In (22), the element of ω1 ω2 ... ωZ is not 0, and the element of all other rows is 0. When using some of its elements for reconstruction, we may get an all-zero partial matrix \(\Psi\), which cannot be used for the reconstruction algorithm. When the low-rank matrix M' is obtained through the multiplication of the row vector and column vector, as in (23).
\(\mathbf{M}^{\prime}=\left[\begin{array}{c} \omega_{1} \\ \omega_{2} \\ \omega_{3} \\ \omega_{4} \end{array}\right] \times\left[\begin{array}{lll} \omega_{1}^{\prime} & \omega_{2}^{\prime} & \omega_{3}^{\prime} \end{array}\right]\) (23)
If the matrix \(\Psi\) after random sampling does not contain any element of the first column of M', then element ω1'cannot be restored, resulting in the final failure to restore M'. Examples (1) and (2) illustrate that the reconstruction algorithm cannot restore matrix M' when all the non-zero information is concentrated in very few positions. Example (3) illustrates that M' cannot be restored when the sampling is such that \(\Psi\) is missing some key elements.
Although the original fingerprint library M' suffers from low ranking affected by the states of the base stations, it does not result in all-zero rows or all-zero columns; therefore, situations as in examples (1) and (2) do not occur. To avoid the situation of example (3), statistics are taken in a way that approximates a random homogeneous sample: multiple statistics are considered for each fingerprint point, ensuring that the matrix \(\Psi\) is not completely missing elemental information for any row or column of M'.
Corresponding studies have been conducted on the conditions under which matrices can be precisely reconstructed. Candès et al. [21] demonstrated that when the row vector space and column vector space of a matrix do not agree with the standard matrix, then the matrix characterized by the nuclear paradigm minimization problem can be recovered from a small amount of randomly sampled data. This inconsistency is also known as strong incoherence and is defined and derived as follows. The SVD of M' is defined in (24).
\(\mathbf{M}^{\prime}=\sum_{1 \leq j \leq r a n k\left(\mathbf{M}^{\prime}\right)} \sigma_{j}^{\prime} w_{j} v_{j}^{T}\) (24)
where σj' represents the non-negative singularity j of M', wj represents the left singularity vector j of M', vj represents the right singularity vector j of M'. We set Tu to represent the orthogonal projection of M' in the column space and Tv to represent the orthogonal projection of M' in the row space [24], as follows:
\(\left\{\begin{array}{l} \mathbf{T}_{u}=\sum_{j \in \operatorname{rank}\left(\mathbf{M}^{\prime}\right)} u_{j} u_{j}^{*} \\ \mathbf{T}_{v}=\sum_{j \in \operatorname{rank}\left(\mathbf{M}^{\prime}\right)} v_{j} v_{j}^{*} \end{array}\right.\) (25)
A matrix symbolic mode E [23] of M' is shown in (26).
\(\mathbf{E}=\sum_{j \in \operatorname{rank}\left(\mathbf{M}^{\prime}\right)} u_{j} v_{j}^{*}\) (26)
Thus, we can obtain (27).
\(\left\{\begin{array}{l} \mathbf{T}_{u} \mathbf{E}=\mathbf{E}=\mathbf{E} \mathbf{T}_{v} \\ \mathbf{E}^{*} \mathbf{E}=\mathbf{T}_{v} \\ \mathbf{E} \mathbf{E}^{*}=\mathbf{T}_{u} \end{array}\right.\) (27)
Representing the strong incoherence of matrix M' by Tu, Tv, and E, two hypotheses are proposed here. Hypothesis 1 [24]. There exists a positive number μ1' such that the vectors h and h' belonging to the n'1×n'1 dimensional vector space and the vectors l and l' belonging to the n2×n2 dimensional vector space satisfy (28).
\(\left\{\begin{array}{l} \left|\left\langle e_{h}, \mathbf{T}_{u} e_{h^{\prime}}\right\rangle-\frac{\operatorname{rank}\left(\mathbf{M}^{\prime}\right)}{n_{1}^{\prime}} 1_{h=h^{\prime}}\right| \leq \mu_{1}^{\prime} \frac{\sqrt{\operatorname{rank}\left(\mathbf{M}^{\prime}\right)}}{n_{1}^{\prime}} \\ \left|\left\langle e_{l}, \mathbf{T}_{v} e_{l^{\prime}}\right\rangle-\frac{\operatorname{rank}\left(\mathbf{M}^{\prime}\right)}{n_{2}} 1_{l=l^{\prime}}\right| \leq \mu_{1}^{\prime} \frac{\sqrt{\operatorname{ran} k\left(\mathbf{M}^{\prime}\right)}}{n_{2}} \end{array}\right.\) (28)
Hypothesis 2 [24]. There exists a positive number μ2' such that the vectors h and l belonging to the n'1×n2 dimensional vector space satisfy (29).
\(\left|\mathbf{E}_{h l}\right| \leq \mu_{2}^{\prime} \frac{\sqrt{\operatorname{rank}\left(\mathbf{M}^{\prime}\right)}}{\sqrt{n_{1}^{\prime} n_{2}}}\) (29)
If μ1',μ2'≤μ', M' satisfies the strong incoherence similar to μ'. From the above, it can be seen that when the rank(M') of matrix M' is smaller than its number of rows and columns, it is always possible to determine μ' that satisfies hypotheses 1 and 2, making the matrix satisfy the strong incoherence condition. Because the data in the original fingerprint library M' contains many zero values, its rank is smaller than its number of rows and columns, and thus has a low rank, indicating M' that can satisfy the strong incoherence condition.
Candès et al. [24] established in the quantitative conditions that need to be met for data to be enumerated or sampled when a low-rank matrix satisfying the strong incoherence condition is reconstructed.
We set the low-rank matrix M' to satisfy the strong incoherence of μ', numerically asymptotic to \(\sqrt{\log \left(n_{3}\right)}\). We define n3=max(n'1,n2). If there is a constant C, we make the number of elements t of the partial fingerprint library \(\Psi\) satisfy (30).
\(t \geq C \mu^{\prime 2} n_{3} \operatorname{rank}\left(\mathbf{M}^{\prime}\right) \log ^{6} n_{3}\) (30)
Then, M' can obtain the unique solution of (8) or (9) with the probability of at least 1-n3-3. Therefore, the number of elements recorded in the simulation experiment should satisfy (30). Thus, based on the above arguments, M' can be reconstructed with a small amount of data.
5. Simulation Results and Analysis
In this study, simulation experiments were performed on the MATLAB platform. We consider an indoor positioning model for shopping malls and hospitals. We set A=50m, B=50m, Z=30m, such that the volume of the indoor positioning model is 50m×50m×30m. Next, we set the distance between adjacent fingerprint points as c=0.25cm, so that the number of fingerprint points n1 is 488521. Considering the super-intensive deployment of 5G base stations, set the total number of base stations to 50; thus, N=50. These base stations are located at the top of the model, and the number of activated base stations is set to 40. The point to be located is among randomly distributed locations in the room. The RSSI value of the fingerprints and that of the point to be located are calculated by (31).
\(R S S I=P+\text { gain }-\text { loss }-\text { noise }\) (31)
where P denotes the signal transmission power of the base station, gain denotes the channel gain, loss denotes the path loss for large-scale decline, small-scale decline, etc., and noise denotes the Gaussian white noise.
5.1 Low-rank Verification
According to N, the number of columns n2 of the original fingerprint library M' are 53, and the original fingerprint library M' is a matrix of 4888521×53 dimension. M' is obtained by conventional methods owing to the large amount of data. The RSSI data from the 1st to 10th base stations of the 1st to 40, 000th fingerprint points in M' are considered as the analysis data, and the singularity histogram is plotted in Fig. 6.
Fig. 6. Histogram of partial data singularities
In Fig. 6, the data are heavily influenced by the 1st to 4th base stations, which implies that the matrix contains a large amount of information concentrated in a small portion of the data, and the amount of information is small, consistent with the characteristics of a low-rank matrix. Additionally, the rank calculated by the MATLAB platform is 33, which is smaller than min(n'1,n2)=53, which also indicates that the fingerprint matrix is a low-rank matrix.
5.2 Error Analysis between Reconstruction Matrix and Original Matrix
The number of recorded elements t=136637024 is 52.7% of 4888521×53 and satisfies the reconstruction condition of (30) with the constant C=2×10-6. Using t data constituting the partial fingerprint library \(\Psi\), the FPCA algorithm is used to obtain the reconstruction matrix X to recover the remaining 47.3% of the data through 52.7% of the data. Comparing X and M' yields errors between the reconstruction matrix and theoretical matrix.
Owing to the large amount of data, only the 4th to 11th fingerprints from the 1st to 6th fingerprint points are provided. The corresponding data in the original matrix M' are presented in Table 2, and the corresponding data in the reconstruction matrix X are presented in Table 3.
Table 2. Original Matrix Data Sheet (dBm)
Table 3. Reconfiguration Matrix Data Sheet (dBm)
By comparing the data in Table 2 and Table 3, and it can be seen that there is a certain error between the reconstruction matrix X and the corresponding element of the original matrix M'. It is necessary to calculate the absolute and relative errors of the corresponding element to more visually reflect the accuracy of the reconstruction. The absolute error of the data corresponding to M' is presented in Table 4 and the relative error is presented in Table 5.
Table 4. Absolute Error Data Sheet (dBm)
Table 5. Relative Error Data Sheet (%)
From Table 4 and Table 5, it can be seen that the error of X with the corresponding elements of the part of M' is small, and the average relative error calculated from all the simulation data is 1.21%. Therefore, the influence on the positioning error is almost negligible.
5.3 Positioning Error Analysis
At SNR=10㏈, the DSR-FP positioning results are depicted in Fig. 7. The solid dots indicate the base station location, asterisks indicate the estimated location of the point to be located, and hollow dots indicate the real location of the point to be located.
Fig. 7. DSR-FP algorithm positioning results at SNR = 10 dB
From Fig. 8, it can be seen that at SNR=10㏈, the position of the point to be located as estimated by the DSR-FP algorithm basically coincides with the real position of the point to be located, indicating that the accuracy of the positioning results of the DSR-FP algorithm is high.
Fig. 8. Mean error analysis graph
The average error analysis of the traditional fingerprint matching algorithm and the DSR-FP positioning algorithm is depicted in Fig. 2, where the horizontal coordinate indicates the SNR ratio (unit: dB), the vertical coordinate indicates the average error (unit: m), the curve marked with asterisks indicates the average error of the traditional fingerprint matching algorithm, and the curve marked with circles indicates the average error of the DSR-FP algorithm.
As can be seen from Fig. 8, the average positioning error of the DSR-FP algorithm is smaller than the average error of the traditional fingerprint matching algorithm, indicating that the positioning error accuracy of the DSR-FP algorithm is higher. The average error of the DSR-FP algorithm is 0.3019 m at SNR=2㏈and 0.1552 m at SNR=20㏈, revealing that the DSR-FP algorithm exhibits better positioning accuracy as the SNR increases.
6. Conclusion
The DSR-FP algorithm proposed in this study firstly constructs a local fingerprint matrix from partial fingerprint data, and then reconstructs the matrix as a complete fingerprint library using the FPCA reconstruction algorithm. The to-be-located nodes are screened based on the dynamic base station matching policy to select the service base stations with the best communication quality and multiple sub-optimal service base stations to form a collection of service base stations. The corresponding fingerprints are then extracted from the fingerprint database based on the information from the service base station to form a simplified fingerprint database. Finally, the 3D estimated coordinates of the point to be located are obtained by the KNN matching algorithm. The algorithm reduces the time, complexity, and cost of building a fingerprint library by refactoring the algorithm and a dynamic base station matching strategy. Additionally, it can also reduce the interference of large fingerprint data in the fingerprint library, shorten the time of online location matching, and improve the positioning accuracy. The feasibility of the algorithm is demonstrated through theoretical analysis. The simulation results demonstrate that (1) the average relative error between the reconstructed fingerprint library and the original one is 1.21%, and the accuracy of the reconstructed fingerprint library is high; (2) the average error of the algorithm is 0.3019 m when the SNR is 2 dB and 0.1552 m when the SNR is 20 dB, indicating an improved positioning accuracy in comparison with that of the traditional fingerprint matching algorithm.
References
- Y. Zhang, L. Deng, and Z. Yang, "Indoor positioning based on FM radio signals strength," in Proc. of 2017 the First International Conference on Electronics Instrumentation & Information systmes(EIIS), pp. 1-5, 2018.
- A. Hameed and H. A. Ahmed, "Survey on indoor positioning applications based on different technologies," in Proc. of 2018 12th International Conference on Mathematics, Actuarial Science, Computer Science and Statistics(MACS), pp. 1-5, 2018.
- J. L. F. Ang, W. K. Lee, and B. Y. Ooi, "GreyZone: A Novel Method for Measuring and Comparing Various Indoor Positioning Systems," in Proc. of 2019 International Conference on Green and Human Information Techonolgoy, pp. 30-35, 2019.
- S. Wang, Y. Zhang, M. Waring and L. J. Lo, "Statistical analysis of wind data using Weibull distribution for natural ventilation estimation," Science and Technology for the Build Environment, vol. 24, no. 9, pp. 922-932, Feb. 2018. https://doi.org/10.1080/23744731.2018.1432936
- A. I. Aravanis, O. Munoz, A. Pascual-Iserte, and M. Di. Renzo, "On the Coordination of Base Stations in Ultra Dense Cellular Networks," in Proc. of 2019 IEEE 89th Vehicular Technology Conference, pp. 1-6, 2019.
- Y. Wang, S. Ma, and C. L. P. Chen, "TOA-Based Passive Localization in Quasi-Synchronous Networks," IEEE Communications Letters, vol. 18, no. 4, pp. 592-595, 2014. https://doi.org/10.1109/LCOMM.2014.021214.132662
- T. Qiao, Y. Zhang, and H. Liu, "Nonlinear Expectation Maximization Estimator for TDOA Localization," IEEE Wireless Communications Letters, vol. 3, no. 6, pp. 637-640, 2014. https://doi.org/10.1109/LWC.2014.2364023
- H. Li and L. Chen, "RSSI-Aware Energy Saving for Large File Downloading on Smartphones," IEEE Embedded Systems letters, vol. 7, no. 2, pp. 63-66, 2015. https://doi.org/10.1109/LES.2015.2426195
- N. Bnilam, E. Tanghe, J. Steckel, W. Joseph, and M. Weyn, "ANGLE: ANGular Location Estimation Algorithms," IEEE Access, vol. 8, pp. 14620-14629, 2020. https://doi.org/10.1109/access.2020.2966519
- Q. Chen and B. Wang, "FinCCM: Fingerprint Crowdsourcing, Clustering and Matching for Indoor Subarea Localization," IEEE Wireless Communications Letters, vol. 4, no. 6, pp. 677-680, 2015. https://doi.org/10.1109/LWC.2015.2482971
- G. Yang, L. Zhao, Y. Dai, and Y. Xu, "A KFL-TOA UWB indoor positioning method for complex environment," in Proc. of 2017 Chinese Automation Congress(CAC), pp. 3010-3014, 2017.
- Y. Jia, H. Tian, S. Fan, and B. Liu, "Motion Feature and Millimeter Wave Multi-path AoA-ToA Based 3D Indoor Positioning," in Proc. of 29th Annual International Symposium on Personal, Indoor and Mobile Radio Communications(PIMRC), pp. 1-7, 2018.
- S. Zhang, P. Du, C. Chen, W. D. Zhong, and A. Alphones , "Robust 3D Indoor VLP System Based on ANN Using Hybrid RSS/PDOA," IEEE Access, vol. 7, pp. 47769-47780, 2019. https://doi.org/10.1109/access.2019.2909761
- J. Zhang and G. Wang, "Enhanced Semidefinite Relaxation Method for TDOA/FDOA-Based Source Localization in Wireless Sensor Networks," Chinese Journal of Sensors and Actuators, vol. 31, no. 12, pp. 1912-1918, 2018.
- P. Bahl and V. N. Padmanabhan, "RADA: an in-building RF-based user location and tracking system," in Proc. of 19th Joint Conference of IEEE Computer & Communications Societies, vol. 2, no. 4, pp. 592-595, 2000. "
- S. Horsmanheimo, S. Lembo, L. Tuomimaki, S. Huilla, P. Honkamaa, M. Laukkan, and P. Kemppi, "Indoor Positioning Platform to Support 5G Location Based Services," in Proc. of 2019 IEEE International Conference on Communications Workshops, pp. 1-6, 2019.
- Z. Liu, X. Luo, and T. He, "Indoor positioning system based on the improved W-KNN algorithm," in Proc. of 2017 IEEE 2nd Advanced Information Technology, Electronic and Automation Control Conference, pp. 1355-1359, 2017.
- H. Elsawy, W. Dai, M. Alouini, and M. Z. Win, "Base Station Ordering for Emergency Call Localization in Ultra-Dense Cellular Networks," IEEE Access, vol. 6, pp. 301-315, 2018. https://doi.org/10.1109/access.2017.2759260
- J. Talvitie, M. Renfors, M. Valkama, and E. S. Lohan, "Method and Analysis of Spectrally Compressed Radio Images for Mobile-Centric Indoor Localization," IEEE Transactions on Mobile Computing, vol. 17, no. 4, pp. 845-858, 2018. https://doi.org/10.1109/tmc.2017.2741487
- F. Shen, "Research on Direction-of-Arrival Estimation in Array Signal Processing Based on Matrix Completion," M.S. thesis, Dept. of Electronic Engineering, XIDIAN University, Xi'an, China, 2017.
- E. J. Candès and B. Recht, "Exact matrix completion via convex optimization," Foundations of Computational Mathematics, vol. 9, no. 6, pp. 717-772, 2009. https://doi.org/10.1007/s10208-009-9045-5
- B. Recht, M. Fazel, and P. A. Parrilo, "Guaranteed Minimum-Rank Solutions of Linear Matrix Equations via Nuclear Norm Minimization," SIAM Review, vol. 52, no. 3, pp. 471-501, 2010. https://doi.org/10.1137/070697835
- S. Negahban and M. J. Wainwright, "Restricted strong convexity and weighted matrix completion: optimal bounds with noise," Journal of Machine Learning Research, vol. 13, pp. 1665-1697, 2012.
- E. J. Candès and T. Tao, "The power of convex relaxation: Near-optimal matrix completion," IEEE Transactions on Information Theory, vol. 56, no. 5, pp. 2053-2080, 2010. https://doi.org/10.1109/TIT.2010.2044061