A Kalman-ﬁlter-based fusion method for accurate urban localisation

The outage and degradation of the global navigation satellite system (GNSS) signals caused by the multipath phenomena reduce the location accuracy of these systems in urban envi-ronment. Hence, integrating an additional localisation technology with the GNSS, so that each technology complements the weakness of the other one, is an efﬁcient solution to improve this accuracy. The widespread availability of the Wi-Fi technology makes it the most appropriate additional technology. In this work, a fusion algorithm based on a Kalman ﬁlter is used to integrate the GPS localisation with Wi-Fi ﬁngerprinting localisation in urban environment. The fusion algorithm uses the positions delivered by these two systems to achieve an accurate estimation of the mobile position. The experimental results show that the performance of the proposed fusion method is more accurate than those of the individual methods and other fusion methods from the literature.


INTRODUCTION
Global navigation satellite systems (GNSSs) are intended to provide positioning in outdoor. They can achieve a reasonably good positioning in open environments. However, the positioning accuracy is reduced in the urban environments, due to reflections of satellite signals and the Non-Line-Of-Sight (NLOS) reception. The frequently outages and the multipath phenomena that affect the satellite signals can degrade the performance of positioning. In these situations, several alternative technologies can be used, such as the inertial navigation systems (INS) and the radio frequency (RF)-based systems, such as RF identification, ultra wideband (UWB), Bluetooth and Wi-Fi [1,2]. However, the drawback of these technologies is that they are not available everywhere, unlike the GNSS. Moreover, each one has its own limitations in such situations. Therefore, it is possible to take advantage of the indoor technologies that can cover urban areas, and combine them with GNSSs to build an accurate localisation system that works everywhere. Wi-Fi technology is commonly used to achieve positioning inside buildings, due to its availability in such areas, its low cost and its easy implementation. In addition, the widespread of the Wi-Fi signals over long distances makes it able to cover urban areas outside buildings. However, localisation using Wi-Fi is usually attenuated, due to the fluctuations of the Wi-Fi signal over time caused by the multipath phenomena [3]. Therefore, since each technology alone does not provide an acceptable solution to the positioning problem, the integration of different systems in a hybrid system may give a significant improvement in positioning accuracy. For example, combining the Wi-Fi fingerprinting localisation with the GPS positioning can provide a suitable solution for urban localisation. Indeed, it is expected that the strength of the Wi-Fi fingerprinting eliminates the weakness of the GPS and vice versa.
However, the accuracy and effectiveness of such hybrid localisation systems depend heavily on how these standalone methods are fused. Their main purpose should be how to build a global estimate by efficiently combining different single estimates, obtained from different sensors. Several fusion methods have been proposed in the specialised literature. Previous works [4][5][6][7][8] mainly focused on employing a particle filter (PF), which being time consuming is unsuitable for real-time implementation. This paper proposes an efficient fusion algorithm based on the Kalman filter (KF) to integrate the GPS and Wi-Fi localisation methods for localisation in an urban environment. A mobile user seeking to localise itself collects the GPS geographical longitude-latitude data, which are then transformed into a local Cartesian coordinate system, using the trilateration technique. At the same time, the location of this mobile user is estimated using the Wi-Fi receiver signal strength (RSS) through a fingerprinting method. Then, a KF is leveraged for efficiently fusing these two positioning methods. The main contributions of this work are as follows.
• Exploit the widespread of the indoor Wi-Fi signals to build an outdoor location fingerprinting system and fuse it with the GPS system to improve the location accuracy in urban areas. • Develop an efficient Wi-Fi fingerprinting method that uses a set of the RSS measurements, taking into account the balance between reducing the human effort during the training phase and collecting sufficient data to perform accurate localisation. • Propose a computationally light fusion method based on the KF to integrate the GPS and Wi-Fi positioning systems. The position provided by the GPS navigation is combined with the previous fused state estimate to get the predicted fused state estimate. Then, the position extracted from the Wi-Fi fingerprinting is used in the update phase to avoid the divergence of the model caused by degradation of the GPS signals. This proposed fusion method is called the KF-based fusion method.
The rest of this paper is organised as follows. Section 2 reviews some related works from the literature. The GPS navigation, the Wi-Fi fingerprinting and the proposed KF-based methods are described in Section 3. In Section 4, the experimental results are presented and discussed. Finally, some conclusions are drawn in Section 5.

LITERATURE REVIEW
Combination of several positioning systems is currently used to mitigate the noise produced by the individual systems and improve the positioning performance. Integration of GNSS and Wi-Fi systems can be performed at different levels [9]: assisted GNSS, direct fusion of the raw data and fusion of the feature vector. The assisted GNSS [10] aims to reduce the time required to calculate the first position after the startup of a GNSS receiver and to improve the sensitivity of the GNSS receiver. The direct fusion method combines the pseudoranges of the GNSS and Wi-Fi so that the latter complements the GNSS equations [11]. In the commonly used feature vector fusion method, the two systems perform positioning individually, and their estimates are then integrated, by using either a simple weighting process [12] or adaptive filters. The former usually weights the outcomes of the GNSS and Wi-Fi positioning techniques based on certain parameters, like the weather conditions. On the other hand, a recursive Bayesian framework is usually used to perform the fusion by adaptive filtering.
In integration-based positioning literature, the PF is widely used as a fusion technique to deal with nonlinear problem of sensor data. In [6] and [13], the PF was used to fuse the GNSS pseudoranges with the Wi-Fi measurements. The authors therein used the probabilistic measurement process models for GNSS and Wi-Fi as inputs. The fusion process is accomplished by multiplying the GNSS and the Wi-Fi likelihoods, calculated at each particle state, with appropriate weights. Similarly, the authors of [4] and [14] used the PF to integrate the INS and Wi-Fi systems. The particles are guided using the information coming from the INS system and then updated using the Wi-Fi estimates. On the other hand, Zampella et al. [15] used a two-level structure with a low-level pedestrian dead recognition (PDR) filter and a high-level PF to combine the PDR and RSS measurements for indoor positioning. In [16], we have used two PFs and a multiple-model approach to integrate the estimates coming from the GPS and Wi-Fi positioning systems. Indeed, the GPS and Wi-Fi are seen as two models, which interact by exchanging a part of their particles. However, the drawback of these approaches is the high computational load, caused by the PF. In real situations, it is necessary to achieve real-time localisation and navigation. To do so on a resource-limited platform, a simple and efficient fusion algorithm needs to be developed. For this purpose, we formulate the fusion problem as a linear problem; then, we apply a KF algorithm, which is computationally light.
Several studies have been investigated for low-cost integrated positioning. Most of them utilised the KF to combine the INS with Wi-Fi [17] or with GPS [18,19]. In [20], a cascaded KF for an integrated low-cost GPS/MEMS-IMU system is proposed. Two orientation KFs are first used to correct the orientation and estimate the gyroscope's bias error employing an accelerometer and a magnetometer and then cascaded with a position/velocity filter. In [21], a KF-based fusion method is proposed to fuse Bluetooth trilateration and dead reckoning. The KF merges the dead reckoning that is used for prediction with the estimate provided by the trilateration. In [22], a sensor fusion approach using impulse radio UWB with two-waytime-of-flight range estimation and inertial sensor data is presented. A navigation technique is proposed in [23] based on an adaptive KF to integrate INS and GPS navigation systems. To overcome the noise caused by INS drift and GPS degradation, the variances of process and measurements noises are continuously updated by considering the estimated and measured values. Although the previous research studies have extensively dealt with the problem of integrating positioning systems, they have been limited to the pedestrian INS-based navigation and its interaction with the GPS or with RF-based systems.

THE PROPOSED GNSS-WIFI LOCALISATION METHOD
The GNSS-WiFi localisation method proposed in this work consists of three steps: GPS localisation, Wi-Fi fingerprinting localisation and fusion. These steps are described in the following.

GPS localisation
It is well known that the GPS satellites continuously transmit their signals to the earth. The signals received from a satellite usually contain information about this satellite, such as its position, the transmitting time of the signal etc. A GPS receiver can obtain the distances separating it from the satellites by measuring the propagation time of the signals received from these satellites. Then, its location can be determined by applying the triangulation approach. Three visible satellites, at least, are sufficient for 2-D positioning, and an additional satellite is needed for 3-D positioning. The estimated position given by the GPS receiver is usually represented in the form of National Marine Electronics Association (NMEA) sentences. These NMEA sentences are specially formatted ASCII text, sent serially by the GPS receiver, which include the navigational data like the latitude and longitude etc. In our work, the longitude and latitude data are transformed into a local Cartesian coordinates through a transformation technique. This technique uses the trilateration approach, as shown in Figure 1, to obtain the local Cartesian coordinates of a point of interest; it is explained as follows.
• We fix three points, with known locations, in the measuring area as reference points (RPs). • We measure the geographic coordinates (longitudes and latitudes) of these RPs. • Given the longitude, lon, and the latitude, lat , of the point of interest and the longitudes, lon i , and the latitudes, lat i , of the RPs, the distances in metre, d i , i = 1, 2, 3, between the point of interest and the RPs are computed through the Harversian formula [24] as follows: where and R = 6378.137 × 10 3 m is the Earth radius.
• These calculated distances, d i , are then used together with the Cartesian coordinates of RPs (x i , y i ), i = 1, 2, 3, in the following equations to calculate the Cartesian coordinate (x, y) of the point of interest: • By applying the linearisation and the least-squares estimation to solve the above-mentioned system of nonlinear equations, we can calculate the position of the point of interest, (x, y) as follows [25]: where

Wi-Fi fingerprinting
The Wi-Fi fingerprinting technique is commonly used to locate the mobile user by matching the spatial locations and the RSS collected at these locations. As shown in Figure 2, this technique consists of two phases. The training phase, which is generally carried out offline, collects the RSS measurements, from several access points (APs), at predefined locations (RPs) in the measuring area and stores them with their associated locations in a database. During the location phase, the RSS measurement at an unknown location is collected online and compared to the fingerprints. The estimated location is the reference location or a combination of the reference locations whose fingerprints most closely match the observation. Several matching algorithms have been developed in the literature to estimate the user's position. These algorithms can be categorised into two types: deterministic methods, like the K-nearest neighbour methods [26][27][28], and probabilistic methods [29,30]. The deterministic methods commonly use the average of the RSS training samples to reduce the computational time and record data more compactly, compared to the probabilistic methods. However, they lack to handle the fluctuations of the RSS measurements over time. On the other hand, the probabilistic approach uses the distribution of the RSS measurements instead of their average. This approach presumes an a priori knowledge of the probability distribution of the user's location; it provides a better location accuracy than the deterministic approach [31].
The maximum likelihood estimator is a common probabilistic method for target localisation. It is based on the computation of the conditional probability of the measurement given the location. The measurement is the vector whose components are the RSSs received by the mobile from different APs. The posterior probability of location, l , given the measurement, x, is computed through the Bayes rule: where p(l ) is the prior distribution of location l . If unknown, p(l ) can be assumed to be a uniform distribution. p(x|l ) is the likelihood function that serves as a measure of the evidence from the data and p(x) is a normalising constant, given by where M denotes the number of RPs used in the measuring area. When the prior is uniform, the posterior distribution of the location is completely determined by the likelihood function. Therefore, it is of utmost importance to obtain a likelihood function that describes the distribution of the observables at all locations.
The Kernel function is a method that is widely used to calculate the likelihood function [29]. Assuming that in the training database, n RSSs (x l,i , i = 1, … , n) from an AP are stored for each RP, l , the kernel method assigns a probability mass, usually a Gaussian distribution, to each sample of the RSS values. A kernel function is, thus, a Gaussian distribution with a mean value x l,i and a proper standard deviation . The last one is an adjustable parameter used to represent the kernel width. The resulting likelihood function of an RSS sample, x, given a location l is represented by an equally weighted sum of all of the n Gaussian kernel functions: Under the assumption of independence between the RSS measurements collected from several APs, the joint probability distribution of the measurement vector x = [x 1 , x 2 , … ., x N ], conditionally to location l , p(x|l ) is calculated by multiplying the marginal distributions: where x j is the measurement collected from the jth AP and N is the number of the APs. The estimated position of the mobile user is the location l , among the locations of all RPs, that maximises (9).

Fusion of the GPS and Wi-Fi estimates
The GPS and Wi-Fi are two independent approaches that can be combined to compensate the weaknesses of each of them. The Wi-Fi method is useful for correcting the drift of the GPS approach, while the GPS approach allows smoothing the variations in the Wi-Fi method. The main purpose is to provide a single estimate, which is the best combination of the estimates provided by these two approaches. Combining the positions obtained with these two independent positioning methods must result in an increase of the localisation accuracy. The key goal is to have a better knowledge of the mobile user behaviour. However, the Wi-Fi fingerprinting suffers from discontinuities in its successive estimated positions, due to the RSS fluctuations. In other words, the estimated path of the mobile user is not coherent and realistic, since no constraint is imposed on two consecutive estimated positions. To avoid these discontinuities and get a smooth path, a KF, that uses the estimates provided by the GPS, is leveraged. On the other hand, the Wi-Fi estimates are used in the update phase of the KF to correct the drift of the predicted path that may occur if the GPS was used alone. Indeed, the positioning errors of the Wi-Fi method are reduced and its estimates are smoothed, and meanwhile, the drift of the GPS path is corrected. As shown in Figure 3, the estimate provided by the KF is fused with the new measurement coming from the GPS before being supplied to the prediction stage of this filter to enhance the prediction. This framework enables both methods to correct each other in a smart way. To achieve a low-cost fusion, we apply the KF algorithm, which is computationally light, to integrate the estimated positions provided by the GPS and Wi-Fi methods. The block diagram of the proposed GPS/Wi-Fi fusion algorithm is shown in Figure 3. The KF assumes that the current system state evolved from the prior state according to the following process equation: where x k is the state vector containing the system components of interest (position and velocity in 2-D coordinates) at time k, F is the state transition matrix and w k is the process noise, which is usually assumed to be zero mean Gaussian distributed, with covariance matrix Q, i.e. w k ∼ ℕ(0, Q). The measurements of the system are related to the state vector, according to the following model: where z k is the measurement vector, H k is the measurement matrix and v k is the measurement noise, which is also assumed to be a zero mean Gaussian white process with covariance R. A cycle of KF involves two phases, known as the prediction phase and the update phase. Let us denote byX k = [x k y kẋkẏk ] T the current fused state estimate. In our fusion method, the position coming from the GPS navigation (x GPS k , y GPS k ) is used together with the previous fused state estimateX k−1 to get the predicted fused state estimateX − k : where X * k−1 is obtained by replacing the position elements in X k−1 by their weighed combination with the GPS measurement where [X ] p denotes the position elements of matrix X and C GPS k is the covariance matrix of the GPS measurements. Equation (13) shows that the new position measurement coming from the GPS is integrated with the previous state estimate provided by the KF to compute the input to the predicting stage, at each instant k. This step corrects the inaccurate previous state estimate and thus improves the reliability of the prediction.
The predicted covariance matrix is updated by where P * k−1 is the covariance of X * k−1 , obtained by replacing in P k−1 the position elements by In urban areas, the GPS signals transmitted from some satellites can be blocked by obstacles, therefore reducing the number of visible satellites. This will result in a poor positioning accuracy if less than four satellites have a Line-of-Sight (LOS) view to the GPS receiver. Furthermore, these obstacles may cause the multipath phenomena, which significantly affect the location accuracy. In our system, the erroneous GPS estimates can lead to the divergence of the track. To avoid this divergence, the where H = ] is the measurement matrix and K k is the Kalman gain, which is calculated as follows:

PERFORMANCE EVALUATION
This section presents the experimental testbed area, the collection of data and the experimental results obtained with different fusion methods. The performance of the KF-based fusion method is compared to those of its individual technologies. In addition, this performance is also compared to those of other fusion methods from the literature.

The experimental testbed
To assess the performances of the KF-based fusion method, we used the same experiment that we have used in [16]. This experiment was carried out in the Electronics Department, University of Science and Technology of Oran. The area of interest, approximately 20 × 14 m, is a roof situated in the first floor and surrounded by a five-floor building from two sides and some trees from the two other sides. Figure 4 shows a picture of the testbed area given by Google Earth. Wi-Fi card. The information that can be collected includes the AP's name (SSID), AP's MAC address and the received signal strength in dBm. In our experiments, four APs of types TP-LINK TL-WA801ND and TP-Link TL-WA901ND were used to cover the testbed area. Three APs were situated in a room inside the building, and the fourth one was fixed in the middle of the testing area, as shown in Figure 6, where the black dots represent the RPs and the APs are indicated by the red stars. A total of 174 RPs, distant by 1 m, were selected over the measuring area. At each RP, 1000 Wi-Fi RSS samples were recorded from each AP at a rate of 20 samples/s. All these data were stored together with their associated locations in the database.
To collect the GPS geographical data, we used a GPS receiver of type Click Quectel L10, equipped with an antenna and a USB cable, as shown in Figure 5(b). The GPS receiver placed on the laptops' keyboard collected the geographic data every second and sent them to the laptop using the serial USB link. Then, these data were transformed into Cartesian coordinates by considering three RPs and applying the trilateration technique, as   Figure 6).

4.2
The experimental results Figure 7 plots the trajectory calculated by the KF-based fusion method, the true one and those estimated using the GPS and the Wi-Fi fingerprinting positioning methods. It can be observed that the GPS trajectory has approximately the same shape as the true trajectory, but it drifts from the true one, which results in a longer travelled distance. The average position error obtained with the GPS is about 3.95 m, as indicated in Table 1. The Wi-Fi estimates do not form a coherent trajectory, but represent a set of discontinuous positions obtained from the database by selecting the most similar RP. These estimates have large errors, with a mean error equal to 3.94 m. These errors are probably due to the remoteness of three indoor APs from the testing area, as well as the multipath effects. The estimated trajectory using the proposed fusion method is closer to the true one.    Table 1 compares the statistics of the location errors of the KF-based fusion method to those of the standalone GPS and Wi-Fi positioning methods. It illustrates that the proposed KFbased fusion approach achieves good positioning; on average, it enhances the location accuracy by 56%. We can also observe that the KF-based fusion method determines the user's location within 2.16 m, in 67% of cases, which mostly fulfils the criterion of accuracy localisation in an urban environment.
For a further evaluation of the performance of the proposed method, two other fusion methods were implemented in the present work, and their performances were compared with that of the KF-based fusion method. These methods are the KF state fusion method [32,33] and the Particle Filter Multiple Models (PFMM) fusion method [16].
The estimated trajectories obtained with these two methods are compared to that obtained with the KF-based fusion method in Figure 9. This figure shows that the path estimated with the KF-based fusion method is the one that follows the true path more closely. This method can determine the position of the mobile user with a mean error of 1.73 m, whereas the KF state and the PFMM fusion methods can determine this position with mean errors equal to 2.17 and 2.05 m, respectively. The CDFs for these two methods and the proposed KF-based fusion method are compared in Figure 10. This figure shows that the KF-based fusion method has the best performance, with an error that is in 67% of cases less than 1.69 m, compared to 2.83 and 2.52 m, for the KF state and PFMM methods, respectively.
The results previously presented were obtained by using the Kernel method in the Wi-Fi fingerprinting localisation. We have also conducted other experiments, in which this method was replaced by the weighted K nearest neighbours (WKNN) [27] and the enhanced WKNN (EWKNN) [28] fingerprinting methods, for assessing the robustness of the KF-based fusion approach against the used Wi-Fi fingerprinting method. In Figure 11, the estimates obtained by the GPS, the Wi-Fi WKNN and the Wi-Fi EWKNN are plotted together with their fused trajectories obtained by the KF-based fusion method. Their corresponding CDFs are also plotted in Figure 12. The Wi-Fi WKNN and the Wi-Fi EWKNN approaches can locate the mobile user with 5.28-and 4.97-m mean errors, respectively, when used alone. These errors are reduced to 1.80 and 1.76 m, respectively, when these estimates are fused with that of the GPS by the KF-based fusion method. Table 1 shows that the Kernel method achieved positioning with a mean error of 3.94 m, when operating alone, and 1.73 m when integrated with GPS positioning. From these results, we can observe that while the positioning errors obtained by the Wi-Fi WKNN and the Wi-Fi EWKNN approaches are greater than those obtained by the Kernel method (5.28 and 4.97 m against 3.94 m), the positioning errors obtained by their integrations with the GPS positioning are closer to that obtained by the integration of Kernel and GPS positioning methods (1.80 and 1.76 m against 1.73 m). This demonstrates the robustness of the KF-based fusion approach with respect to the selected Wi-Fi fingerprinting method. In addition, comparing these results with those obtained using the PFMM fusion method in [16] True path GPS Wi-Fi Proposed KF-based fusion FIGURE 13 Estimated trajectories obtained with different location methods using 1000 Wi-Fi RSS samples The results presented so far were obtained using only 100 RSS samples in the calibration phase of the fingerprinting technique. To enhance these results, we have increased this number to 1000 RSS samples. The track obtained in this case using the KF-based fusion approach, and the estimates coming from the GPS and Wi-Fi positioning techniques are plotted in Figure 13. We can observe that the fused trajectory follows more closely the true one compared to that presented in Figure 7. Its smoothness has also been enhanced and the positioning mean errors decreased (1.41 m against 1.73 m, as indicted in Table 2). The CDFs shown in Figure 14 validate the enhancement resulting from using 1000 training samples rather than only 100. However, the computational time is increased.
Besides the tracking accuracy, the computational complexity is an important factor that is used to assess the performance of a tracking algorithm. In real positioning and navigation, location calculation is commonly performed in the mobile device, which is usually equipped with limited resources. Therefore, it is necessary to implement a low-computational-cost sensor fusion algorithm. In the following, the computational cost of the KFbased fusion algoritm is compared to that of the KF state and the PFMM fusion methods. The PF has the highest computational cost. This high cost is due to the large number of particles. In terms of the size of the state, n, the complexity of PF  is ∈ (M n ), where M denotes the number of particles, whereas the complexity of KF is ∈ (n 3 ). The KF state fusion method uses two KFs in additon to the calculation of the fused state vector and the relevant covariance matrix, and hence, its complexity is more than twice that of the standard KF. The PFMM fusion method uses also two PFs and the multiple model algorithm, and hence, its complexity is more than twice that of the standard PF. Compared to these complexities, the complexity of the proposed KF-based fusion method is lower. It is indeed comparable to the complexity of the standard KF; the difference lies only in the wieghting operation that is performed for the fusion. In Table 3, the running times of the three fusion methods are compared. We used MATLAB R2014b installed on windows 10, 64 bits, operating on a laptop with i5-6200U CPU processor and 8 GB of RAM, to execute these algorithms. As can be observed from this table, the proposed KF-based fusion method has the lowest computational time.

CONCLUSION
This paper has presented a method to fuse the estimates provided by the GPS and Wi-Fi localisation methods, in order to enhance the tracking accuracy in an urban environment. The fusion is performed using a single KF, which results in a low complexity fusion method. The experimental results demonstrate that the KF-based fusion method improves the performances of the GPS and Wi-Fi localisation systems, taken indi-vidually, and outperforms other fusion methods from the literature to which it has been compared. The proposed KF-based fusion method improves the location accuracy of the standalone (GPS and Wi-Fi), KF state fusion and PFMM fusion methods by 64%, 16.6% and 20.3%, respectively. The employed Wi-Fi localisation method uses the fingerprinting technique and can therefore work under NLOS situations; indeed, in our experiment, most of the access points were placed indoor. By fusing the Wi-Fi and GPS localisations, the proposed method is able to achieve accurate positioning in urban areas, even when some satellites are in NLOS situation.