You are currently viewing a new version of our website. To view the old version click .
Sensors
  • Article
  • Open Access

4 September 2018

A Residual Analysis-Based Improved Particle Filter in Mobile Localization for Wireless Sensor Networks

,
and
Department of Computer and Communication Engineering, Northeastern University, Qinhuangdao 066004, China
*
Author to whom correspondence should be addressed.
This article belongs to the Special Issue Applications of Wireless Sensors in Localization and Tracking

Abstract

Wireless sensor networks (WSNs) have become a popular research subject in recent years. With the data collected by sensors, the information of a monitored area can be easily obtained. As a main contribution of WSN localization is widely applied in many fields. However, when the propagation of signals is obstructed there will be some severe errors which are called Non-Line-of-Sight (NLOS) errors. To overcome this difficulty, we present a residual analysis-based improved particle filter (RAPF) algorithm. Because the particle filter (PF) is a powerful localization algorithm, the proposed algorithm adopts PF as its main body. The idea of residual analysis is also used in the proposed algorithm for its reliability. To test the performance of the proposed algorithm, a simulation is conducted under several conditions. The simulation results show the superiority of the proposed algorithm compared with the Kalman Filter (KF) and PF. In addition, an experiment is designed to verify the effectiveness of the proposed algorithm in an indoors environment. The localization result of the experiment also confirms the fact that the proposed algorithm can achieve a lower localization error compared with KF and PF.

1. Introduction

Wireless Sensor Networks (WSN), which can be used in many fields such as urban management, environmental monitoring, disaster-relief, remote control of dangerous places, are a new multi-disciplinary overlapping research area. Compared with the Internet, which provides people with a fast and convenient way to communicate with each other, WSNs combine the logical information world with the real physical world, changing the way human beings and the world interact. A WSN is a comprehensive intelligent information processing platform which integrates sensor technology, microelectromechanical technology, advanced network and wireless communication technology. It has broad application prospects. Its development and application will have a far-reaching influence on all fields of human life. In brief, a wireless sensor network is a computation and communication network of sensors. These sensors are capable of computing and communicating with each other in a wireless way. The data collected by sensors is gathered together so that the information of a scene monitored by the network can be known easily.
Localization is widely applied as a key WSN technology. Due to the flexibility of WSNs, it is a powerful supplement of to the Global Positioning System (GPS), especially when locating indoors targets [1]. In the localization problem context, there are two types of nodes in WSNs: beacon nodes and unknown nodes. The coordinates of a beacon node are known a priori, while the coordinates of unknown nodes which are fixed on personnel or valuable equipment are unknown. There are several ways of localization through WSNs: time of arrival (TOA), time difference of arrival (TDOA), angle of arrival (AOA) and received signal strength (RSS). The TOA scheme obtains the distance between the unknown node and the beacon node through the propagation time, and once there are three or more beacon nodes the unknown node can be located. The TDOA scheme obtains the distance difference between the unknown node to any two different beacon nodes through the time difference of signal propagation between two beacon nodes and with three or more beacon nodes the unknown node can be located. The AOA scheme uses the angle of arrival. It is a high precision schem but it needs the extra hardware such as an antenna array. RSS is a low cost and low power consumption solution, but the localization accuracy is also lower compared with the other methods.
The above scheme can achieve high localization accuracy in an ideal environment. However, in practical scenarios there must be some errors. These errors can be simply summarized into two types. One of them is the measurement errors. These errors result from system noise or measurement noise which are also exist in many other subjects. Another error is the Non-Line-of-Sight (NLOS) error. Compared with the first type of error, NLOS error decreases the localization performance more severely. As the major challenge of localization, NLOS errors occur when the propagation of the signal is obstructed by some unknown obstacle. The NLOS error obeys different distribution functions for different scenes. In order to eliminate the negative effect of NOLS error, many algorithms are proposed. In general, these algorithms can be divided into two categories. One is detecting and selecting the measurements without NLOS error. The other is weighting the data without figuring out its propagation status.
In this paper, we adopt both ideas in the proposed algorithm. Firstly, we generate some particles around the target. By conducting a two-time residual analysis-based selection, some reasonable particles are picked out to locate the target. Then, these selected particles are weighted by their residuals to launch the localization. Thanks to the selection, the negative impact of NOLS error is decreased and a reasonable position of the target is figured out through the particles. Besides, the system error and the measurement error are also reduced by using the weighting algorithm in localization. The main contribution of this paper is listed as follows:
(1)
The residual analysis is used several times to ensure the effectiveness of the localization results.
(2)
The beacon nodes work together so that the particle filter process is simplified and the negative effect of NLOS errors can be decreased. The computational complexity of the proposed method is lower than that of the PF algorithm.
(3)
The proposed algorithm doesn’t make any assumption on the distribution of the NLOS error.
This paper is structured as follows: in Section 2, related works in localization technology are analyzed. The signal model and some background knowledge are illustrated in Section 3 and Section 4 explains the proposed algorithm in detail. The simulations and experimental results of the proposed method are shown in Section 5. Conclusions are drawn in Section 6. Some key notations are explained in Table 1.
Table 1. List of key notations.

3. Problem Statement

3.1. Signal Model

As shown in Figure 1, we assume there are N beacon nodes deployed randomly in a certain scenario in which an unknown node is to be located. The coordinate of each beacon node is known a priori and can be represented as [ x i , y i ] ( i = 1 , 2 , ... , N ) . The coordinates of the unknown node are unknown and represented as   [ x , y ] . When the direct propagation path between the beacon node and unknown node is blocked, the propagation state is NLOS propagation.
Figure 1. The localization result of the proposed algorithm.
Thus, the true distance between i-th beacon node [ x i , y i ] ( i = 1 , 2 , ... , N ) and the unknown node at time k can be represented by the following expression:
d i k = ( x i x ) 2 + ( y i y ) 2
The above equation describes the distance between i-th beacon node and the unknown node in an ideal scenario. However, there are some noises in the practical scenario, including system noise and measurement noise. In LOS state, the measuring distance between i-th beacon node and the unknown node is given by:
d ^ i k = ( x i x ) 2 + ( y i y ) 2 + ε
where, ε is the measurement error which follows a zero-mean Gaussian distribution with standard deviation σ i 2 .
In some complex environments, the direct path between the beacon node and unknown node may be blocked by an obstacle. The signal propagation ways are reflection, diffraction or refraction. The actual propagation distance will increase. Therefore, the measuring distance between i-th beacon node and the unknown node in NLOS state as [29,30]:
d ^ i k = ( x i x ) 2 + ( y i y ) 2 + ε + ε N L O S
where, ε N L O S is the NLOS error, it obeys different distribution in different scenario including Gaussian, uniform or exponential distribution.
When NLOS error obeys Gaussian distribution ε N L O S ~ N ( μ N L O S , σ N L O S 2 ) , it can be described as:
f ( ε N L O S ) = 1 2 π σ N L O S 2 exp ( ( ε N L O S μ N L O S ) 2 2 σ N L O S 2 )
When the NLOS error obeys a uniform distribution ε N L O S ~ U ( u min , u max ) , it can be described as:
f ( ε N L O S ) = { 1 u max u min , f o r   u min ε N L O S u max 0 ,   e l s e
When the NLOS error obeys an exponential distribution ε N L O S ~ E ( λ ) , it can be described as:
f ( ε N L O S ) = { λ 1 e ε N L O S / λ ,   ε N L O S 0 0 ,   ε N L O S < 0
Figure 2 shows the cumulative distribution function (CDF) of measurement noise and NLOS error. The measurement noise ε obeys a Gaussian distribution, i.e., ε ~N(0, 12). The NLOS error is uniform distribution, Gaussian distribution or experimental distribution, i.e., ε N L O S ~U(2, 6), ε N L O S ~N(2, 42), ε N L O S ~E(3).
Figure 2. The CDF for measurement noise and NLOS error.

3.2. A Brief Introduction to PF

The particle filter (PF) was developed in the late 1990s. It is another form of implementation of recursive Bayesian filtering [31]. The idea of PF is to use some random sample points to describe the probability distribution of the target. These sample points are called particles. Then, by adjusting the weight of each particle and the location of the sample points, the estimated value of the unknown node can be obtained through weighted value of the sample. It can be applied to any non-linear non- Gauss stochastic system in principle.
Based on Bayesian estimation theory and the Monte Carlo method, PF is reckoned as the most representative non-linear filtering implementation method. PF uses a bunch of particles to fit the target. Those particles which fit the target closely get bigger weight, and then get copied. After several rounds of filtering, particles can achieve a good fit to the target. PF doesn’t make any assumption about the probability density distribution of the NLOS error. When it comes to large measurement noise, PF can achieve better results than the Kalman Filter and other filtering algorithms. There are three major steps in particle filter. Firstly, PF generates a set of particles around the target as a prediction. By calculating the distance difference between the target to the node and particle to the node, the weight of the particles is given. Secondly, those particles with small weight are discarded. At the same time, those particles with big weight are copied. Then, the reserved and the copied particles undergo a weight normalization. After the normalization, the particles are used to locate the target. Finally, all particles adopt a random movement in a small range so that the particles will not gather together. These particles are prepared for the next localization.

4. Proposed Method

4.1. General Concept

In this paper, we assume that there are N beacon nodes and P particles to locate a mobile unknown node. The coordinate of the p-th particle can be represented as [ X p k , Y p k ] . As mentioned in Section 3, the measuring distance between the i-th beacon node and the unknown node at time k is described as d ^ i k . The distance between i-th beacon node and p-th particle at time k can be described as d i , p k . And then according to the distance difference, the weight of p-th particle to i-th beacon node at time k is given as W i , p k .
The flow chart of the proposed algorithm is presented in Figure 3.
Figure 3. Flow chart of the proposed algorithm.

4.2. Weighting Particles

The first step of the algorithm is to weight each particle. The weight of particles is directly concerned with the localization result. The proposed algorithm weights particles by residual analysis rather than the normal PF which weights particles from a Gaussian function. The proposed algorithm’s weighting process can be divided into three steps:
Firstly, calculate the distance difference from the p-th particle to the i-th beacon node and the unknown node to i-th beacon node at time k. The distance difference between them is defined as the residual of the p-th particle to the i-th beacon node at time k, which can be represented as r e s i , p k . It can be given by:
r e s i , p k = | d ^ i , p k d ^ i k |
Secondly, we calculate the residual of the p-th particle to every beacon node and sum them. This is defined as the residual of the p-th particle at time k, which can be represented as   r e s p k . It can be given by:
r e s p k = i = 1 N | d ^ i , p k d ^ i k |
Finally, obtain the reciprocal of the residual of the p-th particle at time k, and the weight of p-th particle at time k is acquired. It can be given by:
W p k = 1 / r e s p k
The pseudo code Algorithm 1 can be summarized as follows:
Algorithm 1. Weighting particles.
i n p u t   :   d ^ i , j k , d ^ i k
o u t p u t   :   W j k
for j = 1:P
r e s j k = 0
for i = 1:N
      r e s i , j k = a b s ( d ^ i , j k   d ^ i k )
      r e s j k = r e s i , j k + r e s j k
    end for
    for j = 1:P
      W j k = 1 / r e s j k
    end for
end for

4.3. Overall Selection

Once the weights of all particles are given, the algorithm launches its first selection. Since the weight represents the likelihood that a particle fits the unknown node, the reasonable particle should get a bigger weight. Therefore, the first selection picks up some bigger weight particles, and the threshold is defined as the average weight of these particles. Assuming there are in total S numbers of the particles which are selected from the first selection, the pseudo code Algorithm 2 can be summarized as follows:
Algorithm 2. Overall Selection.
i n p u t :   p a r t i c l e s   a n d   t h e i r   w e i g h t   W i k ( i = 1 , 2 , ... , P )
o u t p u t :   p a r t i c l e s   a n d   t h e i r   w e i g h t   W i k ( i = 1 , 2 , ... , S )
for j = 1:P
i f   ( W j k i = 1 P W i k / P   )
   particle reserved;
   else
particle discard;
end for
The selected particles are considered reasonable because the weight is bigger. However, once several beacon nodes judge the particle improperly, the particle can also get a bigger weight and pass the first selection. Therefore, the first selection is not a complete judgement. A second selection must be added to confirm these particles.

4.4. Local Selection

After the first selection, some particles of bigger weight are reserved. These particles are reasonable in an overall level. In contrast to the first selection, the second selection is conducted in a local level. Since the step of weighting remains the residuals of the particles, these residuals can be used to estimate the probability of the NLOS error. The residual which is bigger than the average value of these residuals is assumed to be involved with NLOS error. The percentage of these residuals is considered as the probability of the NLOS error, and it can be recorded as λ . Therefore, there should be about N ( 1 λ ) numbers of beacon nodes which are smaller than the average value of these residuals for its LOS propagation. The residual of particles to some certain beacon node can also become large when it is far away from the unknown node. Once it is bigger than the average value of residuals, it is considered as unreasonable. It will be discarded. The second selection as a supplement of the first selection avoids the mistake which can be made in first selection cause a local optimum. The pseudo code Algorithm 3 can be summarized as follows:
Algorithm 3. Local Selection.
Input: Reserved particles from Selection I and their weight
Output: Particles and their weight W i k ( i = 1 , 2 , ... , Q )
m = 0;
for i = 1:N
  for j = 1:P
i f ( r e s i , j k   p = 1 P r e s p k / P N )
m = m + 1;
end for
end for
λ = m / P N
t h r = N ( 1 λ )
for j = 1:P
n = 0;
 for i = 1:N
i f ( r e s i , j k   p = 1 P r e s p k / P N )
    n = n + 1;
  end for
if (n>thr)
  particle reserved;
else
  particle discard;
end for

4.5. Location Estimation

When the two-time selection is done, the algorithm uses the reserved particles to locate the unknown node. Before the localization starts, the number of reserved particles should be checked. If the propagation state is very bad, most propagation between beacon nodes and unknown node is under NLOS status, the second selection will deny the validity of the selected particles from the first selection. The contradiction between the first selection and the second selection results in no particles being left after the two-time selection. Then, the algorithm conducts localization using the particles selected from the first selection. Otherwise, those particles which pass the two-time selection are reserved to locate the unknown node. Assuming there are L particles reserved after the two-time selection, where L = S when the contradiction between the first selection and the second selection happens or L = Q when there is no contradiction between the first selection and the second selection.
Before the localization starts, the weight of the reserved particles should be normalized. The normalized weight of the p-th particles at time k is represented as N W p k . As for i-th beacon node, the distance d i s i k between it and the unknown node at time k is fit from the weights of the reserved particles and the distance from the reserved particles to the i-th beacon node.
The estimated distance d i s i k can be given by:
d i s i k = p = 1 L N W p k   d ^ i , p k
Then maximum likelihood is employed to get the coordinates of the unknown node. The maximum likelihood method can be explained by the following equations. Firstly, based on the coordinate of the unknown node and the beacon nodes the formula which illustrate the distance between the node and the unknown node can be written as follows:
{ ( x 1 x ) 2 + ( y 1 y ) 2 = ( d i s 1 ) 2 ( x N x ) 2 + ( y N y ) 2 = ( d i s N ) 2
Then, it can be simplified as follows:
{ 2 x ( x 1 x 2 ) + 2 y ( y 1 y 2 ) = ( d i s 2 ) 2 ( d i s 1 ) 2 ( x 2 2 + y 2 2 ) + ( x 1 2 + y 1 2 ) 2 x ( x 1 x N ) + 2 y ( y 1 y N ) = ( d i s N ) 2 ( d i s 1 ) 2 ( x N 2 + y N 2 ) + ( x 1 2 + y 1 2 )  
Representing it by a linear equation   A X = B , where A and B are defined by:
A = 2 [ ( x 1 x 2 ) ( y 1 y 2 ) ( x 1 x 3 ) ( y 1 y 3 ) ( x 1 x N ) ( y 1 y N ) ] B = [ ( d i s 2 ) 2 ( d i s 1 ) 2 ( x 2 2 + y 2 2 ) + ( x 1 2 + y 1 2 ) ( d i s 3 ) 2 ( d i s 1 ) 2 ( x 3 2 + y 3 2 ) + ( x 1 2 + y 1 2 ) ( d i s N ) 2 ( d i s 1 ) 2 ( x N 2 + y N 2 ) + ( x 1 2 + y 1 2 ) ]
Finally, the estimated coordinate of the unknown node is:
[ x , y ] T = ( A T A ) 1 A T B

4.6. Particle Copy and Movement

When the localization is finished, the reserved particles are going to be used in the next localization. Therefore, a copy layer is constructed to decide the particle copy progress. The length of each layer is the value of particle’s weight. Due to the weight normalization, the total length of the constructed layer is 1. As the layer is constructed, a random number whose value obeys uniform distribution from minimum value zero to maximum value one is generated. The random number falls into a certain layer. Then the corresponding particle copies for one time. The copy process continues for P times which are the total number of the particles. The scheme ensures the particles with bigger value of weight got more chance to be copied and avoid the situation of local optimum.
The pseudo code Algorithm 4 can be summarized as follows:
Algorithm 4. Particle copy.
s e t t i n g   L a y e r s   L = ( 0 , N W 1 k , N W 1 k + N W 2 k , ... , i = 1 L 1 N W i k , 1 )
for m = 1:P
  Generate rand number r;
for j = 1:L
     i f ( r < L j + 1 )
     copy particle j;
     break;
end for
end for
When the copy processing is completed, the new particles take a small range movement in which the variance of coordinate of the reserved particles obeys a zero-mean Gaussian distribution with standard deviation σ p 2 , avoiding the gathering of these particles. Particles now can be used for the next localization. The movement of particles can be given by:
( X p k + 1 , Y p k + 1 ) = ( X p k , Y p k ) + N ( 0 , σ p 2 )

5. Simulation and Experiment Results

5.1. Simulation Results

In this section, we evaluate the performance of the proposed residual analysis-based improved particle filter (RAPF) algorithm. We compared the proposed method with the Kalman filter (denoted as KF) and particle filter (denoted as PF). The simulation is performed using MATLAB. The position of beacon nodes for each Monte Carlo run is uniformly deployed in the 100 m × 100 m square space. The propagation condition between the unknown node and beacon node is generated randomly with probability α . The simulation results are obtained over 1000 Monte Carlo runs. We consider the Root Mean Square Error (RMSE) as the performance metric, it can be given by:
RMSE = 1 K t n i = 1 t n k = 1 K ( ( x ( k ) x ^ i ( k ) ) 2 + ( y ( k ) y ^ i ( k ) ) 2 )
where t n = 1000, K = 100, [ x ( k ) , y ( k ) ] is the true position of the target at time k, and [ x ^ i ( k ) , y ^ i ( k ) ] is the estimated position for the i-th run at time k.

5.1.1. The NLOS Errors Obey a Gaussian Distribution

The default parameter values in the simulation are shown in Table 2.
Table 2. The default parameter values.
Figure 4 shows a one-time localization result of RAPF. As we can see from the picture, the proposed algorithm achieves a reasonable result even when the beacon nodes are deployed randomly.
Figure 4. The localization result of RAPF.
Figure 5 reveals the localization error of each sample point. Compared with the KF and PF algorithms, the proposed algorithm displays a lower localization error.
Figure 5. The localization error at each sample points.
Figure 6 shows the cumulative distribution function of the localization error. It can be seen that ninety percent of the errors of the RAPF are less than 6.2 m. In contrast, the errors of KF and PF are 12 m and 9.3 m, respectively.
Figure 6. The cumulative distribution error of the localization error.
The standard deviation of measurement noise σ i is also considered. As we can see from Figure 7, the RMSE increases when the σ i changes from 1 to 7. The performance of the RAPF is better than that of the other two algorithms. Compared with the KF and PF algorithms, the localization accuracy of RAPF is improved about 17.841% and 11.897%, respectively.
Figure 7. The RMSE versus the standard deviation of measurement noise σ i .
Figure 8 shows the impact of number of beacon nodes on localization error. Compared with KF and PF, the RAPF algorithm has better localization result as the number of beacon nodes increases. As the number of beacon nodes increases, more beacon node re under LOS condition in which KF will get a better localization result than PF. When the number of beacon nodes is 5, the localization accuracy of RAPF improves by 23.336% and 15.393% compared with KF and PF.
Figure 8. The RMSE versus the number of beacon nodes.
To further evaluate the performance of the RAPF algorithm, we compare the RMSE as the mean and standard deviation of NLOS error in Figure 9 and Figure 10. It can be seen that the localization errors of all three algorithms increase with the NLOS error increases. As shown in Figure 9, the average RMSE of RAPF algorithm is 2.024 m, however the average RMSE of KF and PF algorithm are 2.554 and 2.379 m. In Figure 10, the RMSE of RAPF increases slowly compared with KF. When the standard deviation of NLOS error is larger ( σ N L O S = 9 ), the localization accuracy of RAPF improves 25.093% and 15.307% compared with KF and PF algorithms.
Figure 9. The RMSE versus the mean of NLOS error.
Figure 10. The RMSE versus the standard deviation of NLOS error.
Figure 11 shows the impact of the probability of LOS propagation α on the localization error. It can be observed that the α values have a significant impact on localization error.
Figure 11. The RMSE versus the probability of LOS propagation α .
The localization error decreases with the α increases. This is because the larger α , the less the NLOS interference is. The localization accuracy of RAPF improves by 20.067% and 17.392% compared with KF and PF.

5.1.2. The NLOS Errors Obey a Uniform Distribution

The default parameter values in the simulation are shown in Table 3.
Table 3. The default parameter values.
Figure 12 and Figure 13 show the localization error when the NLOS error obeys a uniform distribution, i.e., ε N L O S ~ U ( 2 , 12 ) . Figure 12 shows the relationship between the localization error and sample points. It can be observed that the proposed method possesses the highest localization accuracy for the most sample points. Figure 13 shows the cumulative distribution function of the localization error. Ninety percent of the errors in RAPF are less than 8 m. In contrast, the Kalman filter and particle filter errors reach 11.3 m and 9.3 m, respectively. RAPF achieves lowest localization error.
Figure 12. The localization error at each sample points.
Figure 13. The CDF versus the localization error.
Figure 14 shows the effect of the measurement noise on localization error. The standard deviation of measurement noise σ i increases from 1 to 7. The results demonstrate that performance of the RAPF algorithm is obviously better than that of the other algorithms, but compared with PF, the advantage of the RAPF is not obvious when σ i is large. The localization accuracy of RAPF improves 10.824% and 5.749% in comparison with KF and PF.
Figure 14. The RMSE versus σ i .
Figure 15 shows the localization error when the number of beacon nodes changes. As we can see, the more beacon nodes deployed, the less localization error is obtained. KF and RAPF are greatly affected by the number of beacon nodes. Among the three algorithms, RAPF always achieves the lowest error. When the number of beacon nodes is 10, the localization accuracy of RAPF improves 12.637% and 12.605%, compared with KF and PF.
Figure 15. The RMSE versus the number of beacon nodes.
The parameter of NLOS error is considered in Figure 16. The performance of the three algorithms degrades when the U max increase. RAPF shows the best localization result. It improves 10.270% and 8.963% in comparison with KF and PF.
Figure 16. The RMSE the U max .

5.1.3. The NLOS Errors Obey Exponential Distribution

The default parameter values in the simulation are shown in Table 4.
Table 4. The default parameter values.
Figure 17 and Figure 18 show the localization results when the NLOS error obeys the experimental distribution, i.e., ε N L O S ~ E ( λ ) . Figure 17 shows the effect of the standard deviation of the measurement noise σ i on the RMSE. It can be observed that the localization performance of KF is similar to that of the PF when σ i . is small ( σ i = 1 ). The localization errors of the three algorithms increase when the measurement noise increases. The RAPF algorithm displays the best localization accuracy.
Figure 17. The RMSE versus σ i .
Figure 18. The RMSE versus the parameter λ .
Figure 18 illustrates the impact of parameter λ on the localization performance between the RAPF and other methods. When the NLOS effect is weak ( λ = 1 ), the performance of the RAPF is similar to that of the KF. However, the KF algorithm is greatly affected by the parameter λ . The PF and RAPF algorithm are comparatively stable. When the NLOS effect is strong ( λ   =   8 ), the performance of the RAPF improves 24.829% and 13.995% compared with KF and PF.

5.1.4. Computational Complexity Analysis

In this subsection, we analyze the computational complexity of the three algorithms. The three algorithms are codeds using Matlab R2016a. The test platfoem is a Windows 10 Professional PC with Intel(R) Core(TM) i7-7700 CPU @ 3.60 GHz and 8.00 GB RAM.
We use the running time to illustrate the computational complexity. The running time is calculated through the MATLAB TIC_TOC functions for elapsed time. TIC_TOC is a directory of MATLAB programs which consider the MATLAB tic and toc functions for computing elapsed time.
As shown in Table 5, the KF algorithm has the lowest computational complexity. The PF algorithm has the highest running time. This is because PF must take some time to generate and adjust particles. Every node in the PF generates its own particles resulting in the highest running time of PF. In RAPF, all beacon nodes use a set of particles together. The computational complexity of RAPF is relatively moderate.
Table 5. The running times.

5.2. Experiment Results

To verify the localization performance of RAPF, we design a real experiment in a practical environment. The chirp spread spectrum (CSS) localization system which is built with a nanoLOC chip is used to obtain the measurements. The CSS node is presented in Figure 19.
Figure 19. CSS node.
As shown in Figure 20, the progress of measuring between beacon node and the mobile node in CCS localization system is as follows:
Figure 20. The progress of measuring for CSS localization system.
Firstly, node A sends a data package to node B. As the data package is received in node B, it takes some time for node B to deal the data package and reply an acknowledgement to A. The time spent by node B is represented as T r e p l y B . When the acknowledgement is received, node A calculates the time which is represented as T r o u n d A .
Secondly, node B sends a data package to node A. As the data package is received in node A, it takes some time for node A to deal the data package and reply an acknowledgement to B. The time spent by node A is represented as T r e p l y A .
Thirdly, when node B receives the acknowledgement, it calculates the time which is represented as T r o u n d B and sends it to node A.
Finally, based on the four measurements the time of propagation between node A and node B can be given by:
T = ( T r o u n d B T r e p l y A ) + ( T r o u n d A T r e p l y B ) 4
As shown in Figure 21, there are eight beacon nodes and one unknown node deployed in a room for our experiment. The beacon nodes are deployed around the desk. The desk is the obstacle which causes NLOS propagation. In this experiment, the unknown node moves outside the desk for one loop. Forty sample points are obtained. In this experiment, the measurement frequency of CSS nodes is 20 Hz. The average of the 20 distance measurements can be obtained at each sampling point in order to weaken the adverse impacts imposed to localization accuracy. When the measurements are obtained, this localization algorithm is applied with the measurements using MATLAB to testify the localization performance in practical environments.
Figure 21. The practical environment.
After the measurements are collected, we compare the localization error of the proposed algorithm and the other two algorithms. The localization error and its CDF are represented in Figure 22 and Figure 23. The average localization error of RAPF is 1.1521 m. The localization error of KF and PF reach 1.6718 m and 1.4735 m, respectively. Analyzing the result, we can see RAPF achieves a lower localization error than the other two algorithms. It improves about 31.08% compared to KF and 21.81% compared to PF. As shown in Figure 23, ninety percent of the localization in RAPF is less than 2 m. In contrast, the Kalman filter and particle filter values are 3.2 m and 2.7 m, respectively.
Figure 22. Localization error at each sample points.
Figure 23. The CDF versus the localization error.

6. Conclusions

In this paper, we have proposed a residual analysis-based particle filter algorithm. The proposed algorithm takes the particle filter as a main body. Residual analysis is used in this algorithm to enhance the accuracy of the localization results. RAPF uses residuals to weight particles and select reasonable particles. The residual of particle is fully used in this algorithm. Besides, the proposed algorithm doesn’t make any assumption on the distribution of the NLOS error which means RAPF is robust to any type of NLOS errors. The simulation result and the experiment result confirm the robustness of RAPF. Moreover, RAPF estimates the distance from the unknown node to beacon nodes in this paper, it also can be used to estimate the coordinate of the target. In the future, we will attempt to investigate the performance of the proposed algorithm in RSS and AOA localization. Moreover, the implementation of the proposed method in a distributed way is another inteersting further research topic.

Author Contributions

L.C. and L.F. conceived and designed the experiments; L.F. performed the experiments; L.C. and Y.W. analyzed the data; L.F. contributed analysis tools; L.C. and L.F. wrote the paper.

Funding

This work was supported by the National Natural Science Foundation of China under Grant No. 61803077 and No. 61403068; Natural Science Foundation of Hebei Province under Grant No. F2015501097 and No. F2016501080; Fundamental Research Funds for the Central Universities under Grant No. N172304024 and N152302001.

Conflicts of Interest

The authors declare that there is no conflict of interests regarding the publication of this paper.

References

  1. Buehrer, R.M.; Wymeersch, H.; Vaghefi, R.M. Collaborative Sensor Network Localization: Algorithms and Practical Issues. Proc. IEEE 2018, 106, 1089–1114. [Google Scholar] [CrossRef]
  2. Shi, X.F.; Chew, Y.H.; Yuen, C.; Yang, Z.Y. A novel mobile target localization algorithm via HMM-based channel sight condition identification. Peer-to-Peer Netw. Appl. 2017, 10, 808–822. [Google Scholar] [CrossRef]
  3. Zhang, L.; Huang, D.J.; Wang, X.H.; Schindelhauer, C.; Wang, Z. Acoustic NLOS Identification Using Acoustic Channel Characteristics for Smartphone Indoor Localization. Sensors 2017, 17, 727. [Google Scholar] [CrossRef] [PubMed]
  4. Yan, L.B.; Lu, Y.; Zhang, Y.R. An Improved NLOS Identification and Mitigation Approach for Target Tracking in Wireless Sensor Networks. IEEE Access 2017, 5, 2798–2807. [Google Scholar] [CrossRef]
  5. Ma, T.Y.; Wang, B.B.; Pei, S.Y.; Zhang, Y.L.; Zhang, S.; Yu, J.X. An Indoor Localization Method Based on AOA and PDOA Using Virtual Stations in Multipath and NLOS Environments for Passive UHF RFID. IEEE Access 2018, 6, 31772–31782. [Google Scholar] [CrossRef]
  6. Choi, J.S.; Lee, W.H.; Lee, J.H.; Kim, S.C. Deep Learning Based NLOS Identification with Commodity WLAN Devices. IEEE Trans. Veh. Technol. 2018, 67, 3295–3303. [Google Scholar] [CrossRef]
  7. Pak, J.M.; Ahn, C.K.; Shi, P.; Shmaliy, Y.S.; Lim, M.T. Distributed Hybrid Particle/FIR Filtering for Mitigating NLOS Effects in TOA-Based Localization Using Wireless Sensor Networks. IEEE Trans. Ind. Electron. 2017, 64, 5182–5191. [Google Scholar] [CrossRef]
  8. Gazzah, L.; Najjar, L.; Besbes, H. Hybrid RSS/AOA hypothesis test for NLOS/LOS base station discrimination and location error mitigation. Trans. Emerg. Telecommun. Technol. 2016, 27, 626–639. [Google Scholar] [CrossRef]
  9. Pandey, O.J.; Sharan, R.; Hegde, R.H. Localization in Wireless Sensor Networks Using Visible Light in Non-Line of Sight Conditions. Wirel. Pers. Commun. 2017, 97, 6519–6539. [Google Scholar] [CrossRef]
  10. Shi, X.F.; Mao, G.Q.; Yang, Z.Y.; Chen, J.M. MLE-based localization and performance analysis in probabilistic LOS/NLOS environment. Neurocomputing 2017, 270, 101–109. [Google Scholar] [CrossRef]
  11. Yang, X.F.; Zhao, F.; Chen, T.J. NLOS identification for UWB localization based on import vector machine. Int. J. Electron. Commun. 2018, 87, 128–133. [Google Scholar] [CrossRef]
  12. Momtaz, A.A.; Behnia, F.; Amiri, R.; Marvasti, F. NLOS Identification in Range-Based Source Localization: Statistical Approach. IEEE Sens. J. 2018, 18, 3745–3751. [Google Scholar] [CrossRef]
  13. Tomic, S.; Beko, M.; Dinis, R.; Bernardo, L. On Target Localization Using Combined RSS and AoA Measurements. Sensors 2018, 18, 1266. [Google Scholar] [CrossRef] [PubMed]
  14. Tomic, S.; Beko, M. A bisection-based approach for exact target localization in NLOS environments. Signal Process. 2018, 143, 328–335. [Google Scholar] [CrossRef]
  15. Abu-Shaban, Z.; Zhou, X.Y.; Abhayapala, T.D. A Novel TOA-Based Mobile Localization Technique under Mixed LOS/NLOS Conditions for Cellular Networks. IEEE Trans. Veh. Technol. 2016, 65, 8841–8853. [Google Scholar] [CrossRef]
  16. Ding, C.; Qi, H.D. Convex Euclidean distance embedding for collaborative position localization with NLOS mitigation. Comput. Optim. Appl. 2017, 66, 187–218. [Google Scholar] [CrossRef]
  17. Wang, J.; Zhang, L.M.; Gao, Q.H.; Pan, M.; Wang, H.Y. Device-Free Wireless Sensing in Complex Scenarios Using Spatial Structural Information. IEEE Trans. Wirel. Commun. 2018, 17, 2432–2442. [Google Scholar] [CrossRef]
  18. Yang, X.F. NLOS Mitigation for UWB Localization Based on Sparse Pseudo-Input Gaussian Process. IEEE Sens. J. 2018, 18, 4311–4316. [Google Scholar] [CrossRef]
  19. Vilà-Valls, J.; Closas, P. NLOS mitigation in indoor localization by marginalized Monte Carlo Gaussian smoothing. EURASIP J. Adv. Signal Process. 2017, 62, 1–11. [Google Scholar] [CrossRef]
  20. Wang, G.; So, A.M.; Li, Y.M. Robust Convex Approximation Methods for TDOA-Based Localization Under NLOS Conditions. IEEE Trans. Signal Process. 2016, 64, 3281–3296. [Google Scholar] [CrossRef]
  21. Park, C.H.; Chang, J.H. Robust time-of-arrival source localization employing error covariance of sample mean and sample median in line-of-sight/non-line-of-sight mixture environments. EURASIP J. Adv. Signal Process. 2016, 89, 1–11. [Google Scholar] [CrossRef]
  22. Li, W.L.; Jia, Y.M.; Du, J.P. TOA-based cooperative localization for mobile stations with NLOS mitigation. J. Frankl. Inst. 2016, 353, 1297–1312. [Google Scholar] [CrossRef]
  23. Gaber, A.; Omar, A. Utilization of Multiple-Antenna Multicarrier Systems and NLOS Mitigation for Accurate Wireless Indoor Positioning. IEEE Trans. Wirel. Commun. 2016, 15, 6570–6587. [Google Scholar] [CrossRef]
  24. Biswas, P. Semidefinite Programming for Ad Hoc Wireless Sensor Network Localization. In Proceedings of the 3rd International Symposium on Information Processing in Sensor Networks, Berkeley, CA, USA, 26–27 April 2004; pp. 46–54. [Google Scholar]
  25. He, S.; Hu, T.; Chan, S.-H.G. Contour-based Trilateration for Indoor Fingerprinting Localization. In Proceedings of the 13th ACM Conference on Embedded Networked Sensor Systems, Seoul, Korea, 1–4 November 2015; pp. 225–238. [Google Scholar]
  26. Tomic, S.; Beko, M.; Dinis, R.; Tuba, M.; Bacanin, N. RSS-AoA-Based Target. Localization and Tracking in Wireless Sensor Networks, 1st ed.; River Publishers: Alsbjerg, Denmark, 2017; pp. 113–155. [Google Scholar]
  27. Tomic, S.; Beko, M.; Dinis, R.; Tuba, M.; Bacanin, N. Bayesian methodology for target tracking using combined RSS and AoA measurements. Phys. Commun. 2017, 25, 158–166. [Google Scholar] [CrossRef]
  28. Vicente, D.; Tomic, S.; Beko, M.; Dinis, R.; Tuba, M.; Bacanin, N. Kalman Filter for Target Tracking Using Coupled RSS and AoA Measurements. In Proceedings of the International Wireless Communications and Mobile Computing Conference (IWCMC), Valencia, Spain, 26–30 June 2017; pp. 2004–2008. [Google Scholar]
  29. Wang, W.; Wang, G.; Zhang, J.; Li, Y.M. Robust Weighted Least Squares Method for TOA-Based Localization under Mixed LOS/NLOS Conditions. IEEE Commun. Lett. 2017, 21, 2226–2229. [Google Scholar] [CrossRef]
  30. Wang, W.; Wang, G.; Zhang, F.; Li, Y.M. Second-Order Cone Relaxation for TDOA-Based Localization under Mixed LOS/NLOS Conditions. IEEE Signal. Process. Lett. 2016, 23, 1872–1876. [Google Scholar] [CrossRef]
  31. Arulampalam, M.S.; Maskell, S.; Gordon, N.; Clapp, T. A Tutorial on Particle Filters for Online Nonlinear/Non-Gaussian Bayesian Tracking. IEEE Trans. Signal Process. 2002, 50, 174–188. [Google Scholar] [CrossRef]

Article Metrics

Citations

Article Access Statistics

Multiple requests from the same IP address are counted as one view.