1. Introduction
Localization and tracking play an important role in many military, industry, transportation, and tourism applications, including tracking airplanes, positioning a new product in the workshop, tracking the behavior of wild, protected animals, positioning firefighters inside a burning building, or guiding visitors to find the right track. The most popular and familiar localization method, as we all know, is the Global Positioning System (GPS). With GPS chips being embedded in many personal devices such as smartphones, sports watches, and traffic navigators, GPS localization has been proven very suitable for consumers. Through the Global Navigation Satellite System (GNSS), GPS system provides timing data to localization devices from multiple satellites. The device can trilaterate its position on the earth by using this data. The GPS system works well in clear view environments or open spaces, but encounters a problem in indoor environments where the signal suffers from non-line-of-sight (NLOS) propagation. In this case, indoor localization technology gradually developed.
An indoor localization system is a framework consisting of a network of customized or commercial devices that are used to wirelessly locate people or objects inside an indoor environment. For localization purposes, some technologies require extensive and additional deployment of infrastructure covering the service area individually [
1,
2,
3,
4]. They may take much manpower and material resources on specialized client devices or tags attached to an object. Relatively speaking, the superiority of Received Signal Strength Indicator (RSSI)-based Wireless Local Area Networks (WLAN) positioning is embodied incisively and vividly [
5,
6]. There are two options for RSSI-based positioning: one option is to exploit the Access Points (APs) locations and the radio propagation path-loss models; another is fingerprinting algorithms with building floor plans. However, since the AP locations are not usually accessible and the path-loss model is uncertain, it makes this approach less attractive. The fingerprinting method has been shown to achieve more accurate positioning results than the method based on path-loss models. It does not require any extra investment cost in deploying APs by employing schemes of Wi-Fi fingerprinting [
7,
8,
9], i.e., widespread APs installed in the building can be used for location estimation. Not only that, but the mobile devices are also widely available nowadays and are equipped with WLAN interface so there is no need for additional hardware to change or attach.
The RSSI fingerprint-based technique, however, requires an offline phase in which RSSI measurements are collected at known locations to initial training or calibration fingerprint data. Then, the position of a target device (TD) is estimated by matching an immediate RSSI measurement with the training data in the online phase [
10,
11]. In the offline phase, fingerprint collection is usually labor- and time-intensive, which eventually reduces localization efficiency and increases the cost. In addition, the measured RSSI values depend on fingerprint density, positions of access points, and locations of indoor objects. The cost of these manual calibrations holds back the widespread adoption of fingerprinting indoor localization. What is more serious is that the RSSI of AP is a variable varying with time, as shown in
Figure 1, the signal heat map of an AP changes (dBm) on 27 September and 27 October, 2017. The test position is in indoor environment comprised of walls, doors, furniture, and people. It is obvious that the heat maps are different in a fixed area. Consequently, a new fingerprinting updated system is required whenever the environment alters in the indoor area [
12].
To address this problem, several approaches for reducing fingerprinting load or updating the fingerprinting survey radio map have been proposed. One solution is proposed in [
13], which considers having an incomplete fingerprint radio map with realistic coverage gaps, and studies the performance of several interpolation methods for recovering the missing fingerprint data. In the localization framework using unsupervised manifold alignment [
14], it requires very little of the fingerprinting load, some crowdsourcing-based RPs, and plan coordinates of the indoor area. Further, without building a full fingerprinted radio map of the indoor environment, a scheme tries to construct the radio map with limited calibration [
15]. However, all these works just attach importance to reduce the effort of creating the radio map, but ignore the localization accuracy. There is a lack of methods to achieve an acceptable accuracy as well as reduction of the signal acquisition.
In this paper, we propose a Fingerprint Renovation System (FRS) to further reduce the fingerprinting load while still maintaining high exactness in performance. In the offline phase, we first built a fingerprinting radio map, as done traditionally. After that, the system is renovated, using a modified hybrid EKF–GPR algorithm, combining Extended Kalman Filter (EKF) and Gaussian Process Regression (GPR), where crowdsourcing-based points [
16] add the localization region. In our research, a crowdsourcing-based point is defined as RP in a certain location when the original radio map needs an upgrade, and a crowdsourcing-based signal is defined as the RSSI value at the crowdsourcing-based point. In the online phase, a dynamic localization subset is detected to reduce computational cost. Then, the Weighted K Nearest Neighbor (WKNN) [
17] employing ACS methods will be used for positing the TD. In order to make FRS fully limpid, we show our novel contributions as follows:
As altered environment may be frequent in the radio map maintenance phase, we propose a novel and fast effective algorithm, which renovates the radio map by detecting the crowdsourcing-based signal. EKF–GPR is used to estimate the renovated radio map. The initial radio map is acted as state variable, and the crowdsourcing-based signal is treated as observed variable. The renovated radio map is also the state variable in the next renovation phase. In a real experiment environment, data collection works of 1030 fingerprint points are replaced by 50 crowdsourcing-based points, while the localization error is only increased by 19.2%.
In the online phase, the calculation of matching algorithm using each fingerprint of the entire radio map is too large. In our proposed system, a specified amount of fingerprints is picked up randomly to execute the matching algorithm. The randomly subset of radio map is S1. Then, a subset S2 in the entire radio map is produced around fingerprints acquired by matching algorithm, and an accurate position can be acquired.
When choosing the matching algorithm, the ACS method is presented to replace the Cosine Similarity [
18]. Errors in localization results are caused by using Cosine Similarity when the target point (TP) and chosen RPs are on the same line, because Cosine Similarity only spots the differences from the vector direction. In order to correct this error, Cosine Similarity is adjusted to improve the localization accuracy in this paper.
Figure 2 shows the framework of the proposed algorithms, which consists of the offline phase and online phase. The rest of the paper is organized as follows. We first introduce studies that relate to updating the radio map, including some major symbols, in
Section 2.
Section 3 proposes EKF–GPR algorithms for automatically updating the indoor positioning model. After that, we present the method of acquiring the subset in the whole fingerprinting radio map in
Section 4, and ACS method is used to actualize the localization of TD in
Section 5. In order to test and verify the FRS, we evaluate our methods with Wi-Fi data obtained in a real indoor environment in
Section 6. Finally, we conclude this article. Though the study is in the context of Wi-Fi fingerprinting, our FRS is an independent and general method. The FRS, therefore, may be used with any fingerprint signal, such as Bluetooth, Near Field Communication (NFC), cellular networks, and Radio Frequency Identification (RFID).
2. Related Work
The RSSI fingerprint matching method is used as the basic scheme of many indoor localization systems at present. It is an infrastructure-free approach without the requirement of utilizing expensive hardware. A common practice to construct an initialization radio map is to manually collect fingerprints at numerous known locations in the entire localization site. The radio map requires to update the area of interest to provide the accuracy that meets the requirements of daily life. The fingerprinting radio map can be updated automatically using crowdsourcing and machine learning methods [
19,
20]. As in previous studies [
21], it is assumed that volunteers turn on their WLAN modules to contribute their traces of RSSI measurements while carrying wireless devices, i.e., mobile phones, in a localization building. First of all, a fingerprinting radio map should be built as the initialization data map.
It is required to generate a RSSI radio map during the offline phase of fingerprint-based localization. The construction of the fingerprinting radio map begins by dividing the site of interest into grids, which needs to know the floor plan in advance. RSSI values of the wireless signals transmitted by APs are gathered in calibration points inside the grids and stored into the radio map. This radio map is used for estimating the user’s location during the online phase [
22].
In the offline phase of two-dimensional (2-D) model, we divide the certain physical area into
R known small cells.
is defined as the center coordinates of these cells and:
is modelled as reference points (RPs). RSSI values from all access points (APs) within a certain range are measured and stored in the fingerprint data base, which is a measurement of data vectors that can be shown as:
where
j = 1, 2, …,
R,
R is the number of reference points(RPs),
A is the number of APs selected in the localization area,
is the RSSI value from the
i-th AP at RP
. The unique Media Access Control (MAC) address is used to discriminate different APs. Regularly, RSSI from many APs are detectable somewhere in a particular area, for those APs too weak to detect or under a certain value (e.g., −100 dBm) are set as
. Then, all fingerprint signals in the radio map are:
In the online phase, the RSSI of the target is surveyed as:
The important notations are listed in
Table 1. The radio map can be modified or updated before applying it in the online phase. In our system, it will be freshened with the help of crowdsourcing and EKF–GPR algorithms.
3. EKF–GPR Algorithms
The Kalman Filter has been associated with indoor localization in numerous researches. However, the function of the Kalman Filter in these research is, more often than not, concentrated upon path prediction and navigation [
23,
24,
25,
26]. There are few studies about using the Kalman Filter in fingerprint radio map updating, especially in combination with GPR. For all we know, GPR is used to update the radio map in [
27] and estimate the virtual RPs’ RSSI values in [
28], but it is only GPR. On the other hand, the predictive capabilities are limited by the noise covariance and uncertainty of system model in classical filter algorithms. To solve this problem, GPR is used to provide the uncertainty of predictive value in combining EKF. The EKF–GPR algorithms do not depend on observation model and parametric prediction. Using non-parametric regression, all their parameters can be learned from training data.
3.1. EKF in Fingerprint Radio Map Renovation
In our proposed system, the primary method used in renovating the fingerprint is EKF. The EKF iteratively estimates the fingerprint radio map and updates the estimate with crowdsourcing-based points. In the renovation process, the crowdsourcing-based signal measurement equation is represented as a nonlinear model, and therefore, linearization should be performed to derive a linear equation. The EKF deals with the real-time linearization of the system function at the previous state estimate, and also includes the real-time linearization of the observation function at the corresponding predicted RSSI.
We model the localization state equation as a noisy measurement given by
where the superscript
k is the index for the discrete time sequence,
is assumed to be white Gaussian noise (AWGN) with a normal probability distribution of mean 0 and variance
,
.
When we get the crowdsourcing-based signals, the model is defined as:
where
is the noiseless RSSI value at location
from AP
i, and
is the measurement noise which is modeled as additive Gaussian noise and
. In crowdsourcing-based schemes, the input locations
of clients also contain uncertainty due to localization errors. Therefore, we consider beyond the standard Equation (6) the input location with error
:
where
is the actual 2-D location of crowdsourcing-based point,
The diagonal matrix
is 2-by-2 size assuming each dimension is independent, that is,
where
is the uncertainty of input location
, and all the non-diagonal elements of matrix
are zero. Then, we can achieve the equation from (6) and (7):
Taylor approximation [
29] using noisy input
:
where
is the derivative of function
with regard to
. The measurement equation in time sequence
k, therefore, can be modeled as:
The measurement noise is additive Gaussian noise and
. Measurement covariance matrix
is diagonal.
Table 2 summarizes the EKF processing.
The key components of an EKF are the state prediction and measurement models, which probabilistically describe the fingerprint evolution and the measurements returned by the crowdsourcing-based signals, respectively. As show in
Table 2, these models are parametric descriptions of the radio map updating. The noise components and parameters of the models can be estimated from more than one crowdsourcing-based signal. Even though such EKF models are very efficient, their updating capabilities are limited because they often ignore the model aspects of the radio map renovation process.
3.2. GPR in Fingerprint Radio Map Renovation
GPR is an impressive, non-parametric method for learning regression functions from sample data. The fundamental advantages of GPR are their ability to learn noise and smoothness parameters from training data, their ability to provide uncertainty estimates, and their modeling flexibility [
30].
In our proposed system, GPR is designed as an enhancement of measurement models and parametric prediction for EKF. In this section, we discuss the formulation of GP. The crowdsourcing-based measurement models is show in (9), then the RSSI values
can be rewritten as:
where
is additive Gaussian noise and
. We define the covariance function
, which represents the correlation of two RSSIs at input locations
and the RP
. In that way, the transfer function between location
of the crowdsourcing-based point and its RSSI is defined as a Gaussian process:
where
is mean value, and
is the covariance. The covariance of RSSI can be expressed from [
31]:
where
and
denote any two localizations,
if
a =
b, and 0 otherwise. As shown in
Section 2,
L is an
R-by-2 matrix. Corresponding to the locations
L,
is the vector of crowdsourcing-based RSSIs. Then the covariance matrix of
is shown:
Here,
is the
R-by-
R covariance matrix over all
R input RSSIs and
I is the identity matrix of size
R. All input RSSI values are jointly Gaussian process,
, where
is a vector of
R mean RSSIs about all locations in
L. Based on (11) and (13), then the predicted mean RSSI
is given by
where
diag{·} is a diagonal matrix expression,
is an
R-by-2 matrix, it contains
R derivative function values about
. In that way, the predictive variance of the RSSI is given by
So far, the evolution of the dynamic fingerprinting radio map is represented by the Gaussian process alone. GPR expresses relationship between the crowdsourcing-based signals and next state of radio map.
3.3. EKF–GPR Algorithm in FRS
Extended Kalman Filters and Gaussian Process Regression are used in conjunction to create the EKF–GPR algorithm. The block diagram of the EKF–GPR algorithm is shown in
Figure 3. The EKF–GPR algorithm first employs EKF to predict the renovation result of the radio map and then uses GPR to correct and estimate the error of the EKF prediction. As we all know, there is a certain prediction error in the EKF because of the uncertainty. The prediction error is associated with state estimation to excavate the correlation in EKF–GPR algorithm.
We first use the GPR prediction model to generate the predicted mean:
Conditioned on observation training data
P, as shown in (3), the
defines a Gaussian predictive distribution, and
is prediction data. Then, the input location error
in (7) can be transformed:
where
corresponds directly to the
GPR uncertainty. The linearization of the prediction model is shown as:
It is the sum of the identity matrix and the partial derivative of the GPR mean function. A change in any of the fingerprinting radio maps of the previous state has a direct effect on the renovation state. Meanwhile the GPR mean function only represents the change in time domain, and therefore the identity matrix is necessary. As shown step (3) of
Table 2, estimation error covariance is achieved using these matrices:
According the GPR model, the predicted observation and the error covariance are shown as
Then the linearization of the observation model is:
From above, we can obtain the Kalman gain:
The update of the mean and estimation error covariance:
Given the verified EKF model, for each crowdsourcing-based signal, EKF–GPR calculates at each RP
j the predicted signal mean (25) and RSSI estimation error covariance (26). The EKF–GPR algorithm employs the prediction model
as the input vector and the prediction errors mean
as the corresponding output in each training signal. As shown in
Figure 3, we train the GPR over a set of training data
and
. Note that EKF–GPR utilizes a model-based EKF and a standard GPR by combining them in a cascade form.
4. Subset of Radio Map
Radio map is generally built in a special server, with enough hardware resource that makes it unhindered to renovate itself. In the online phase, the resource of handheld devices is constrained. The complexity of the localization algorithm is usually proportionate to the localization accuracy. On condition that the localization algorithm is confirmed, the subset of radio map using for locating should be as concise as possible. On the other hand, for the sake of preserving user privacy and to make the location system scalable, the localization algorithm should be run on the mobile unit. Hence, the scale of the radio map need to be considered. In this section, a way of subset, which runs on the final localization unit, is presented to reduce the complexity of algorithm.
In order to reduce the computation complexity, choosing only a subset of the radio map for the positioning is a convenient way. However, the subset selection usually comes at the expense of a complexity algorithm, such as machine learning techniques [
32] or principal component analysis [
33].
These methods bring difficulties to the localization themselves. Two stages of subset are proposed in our method to solve this issue.
In the first stage, a random subset
S1 is obtained from the whole radio map. Before that, the elements of matrix
P in (3) is randomly sequenced to form a new matrix
:
The idea of
S1 selection can be expressed in a mathematical form as follows:
where
is subset 1 of radio map,
is the number of access points in subset 1, and
,
R is still the number of RPs in initializing radio map. In (28), the first
RPs among out-of-order array
are chosen, hence,
can be obtained.
An appropriate localization algorithm, ACS in our method, is run based on
S1. The result is a certain amount RPs from
S1, which can be expressed as
where
,
, is the number of the nearest neighbor RPs in
S1 and it is decided by different scenes and algorithms. Then, we revive more intensive RPs in
by judging which ones are around the elements of
, which is subset 2 (
S2). In order to illustrate the whole subset choosing process, we show it in an unsophisticated indoor environment in
Figure 4. The area filled by red triangles in (d) of
Figure 4 is
S2 and it is the final subset which is used to acquire accurate localization.
5. Localization Based on Adjusted Cosine Similarity
During the online phase, the RSSI value in real time at the TP is compared with radio map using certain matching algorithm, such as Euclidean Distance and Cosine Similarity [
34]. The algorithm of Euclidean Distance could not deliver a high localization accuracy because some statistical regularities are ignored in Euclidean Distance, which can be estimated from the TP and fingerprint radio map. On the other hand, the two algorithms can also be combined with K Nearest Neighbor (KNN) [
35] and WKNN methods which focus on the calibration or calibration-free method to deal with the RSSI value difference between the RP and the TP. The KNN algorithm uses the RSSI of TP to search for K closest matches of RPs in fingerprint, then taking the mean value of these K location coordinates. WKNN is expanded on the basis of KNN but gives different weights to these K-referenced coordinates. In this paper, Cosine Similarity and WKNN are chosen to achieve TP localization.
Traditionally, Cosine Similarity investigates the correlation of RP and TP from the view point of similarity. The expression of Cosine Similarity is shown as
However, there are deficiencies about Cosine Similarity, in that it only spots the differences from the vector direction, but ignores the absolute value. Errors in the localization result are made when using Cosine Similarity when the TP and
K RPs are on the same line. In order to address this concern, the ACS method is presented in this paper. The correlation between RSSI vectors
and
is based on ACS, i.e.,
where
is the average RSSI value from the all APs at the TP, and:
In the KNN method,
K coordinates of most similar RPs to TP are employed to calculate the mean value. The expression is given as follows,
where
is the measurement localization coordinate of TP, is the coordinates of
K RPs. Without assigning weight, KNN is the basic Nearest Neighbor algorithm. Meanwhile, it is assigned a weight to every coordinate according to the value of similarity in the WKNN method. Normally,
is the weight of the
j-th selected RP, which can be calculated as
In this way, the coordinate of TP using WKNN can be shown as
In order to illustrate the improvement of ACS, we carry out an experiment in a real indoor environment. We performed the tests in the second floor of School of Electronics and Information in Northwestern Polytechnical University (NWPU). There are three APs (AP1-5c:dd:70:b6:89:71, AP2-5c:dd:70:b6:92:51, AP3-5c:dd:70:b6:75:71), that are formed in a straight line in the corridor, as shown in
Figure 5. The RSSIs of T1 and T2 are shown in
Table 3.
The similarity between T1 and T2 using (31) is 0.9945, and there is a remarkable homogeneity between them. If this situation is emerged in localization phrase, T1 and T2 will be judged as two very close points. However, we can see that there is a certain interval between them. Unlike the Cosine Similarity, the similarity value is 0.703 using (32). T1 and T2 are no longer that close, which meets the actual circs better.
7. Conclusions
The RSSI fingerprint technique has the advantages of simplicity, deployment practicability, and supplying reasonable accuracy. Therefore, fingerprinting localization has attracted a lot of attention. However, it is hard to upgrade a fingerprint radio map due to harsh force and intensive labor requirements. In this paper, we have proposed and tested indoor localization with FRS, a subset of a radio map, and ACS, which achieves precise indoor localization.
We tested our proposed system in a real indoor environment. For altered RSSI in different date, FRS efficiently renovated the radio map, used new fingerprint with suitable algorithms and then found the location of the TP. Compared to the mean localization 3.72 m of un-renovated radio map, we achieved 2.99 m mean error using the renovated radio map. The localization accuracy is promoted about 19.6% and this value is raising as the amount of crowdsourcing-based points increases.
Moreover, the subset choosing of radio map reduces localization computation in the proposed FRS. In our experiment, it needs repeating ACS of a total of 1030 times without subset. This number is only 125 for each TP and the computation reduced about 87% in the online phase. We also consider that the FRS can use the ACS algorithm introduced to improve their positioning systems.