Research Article
Localization for mobile sensor network based on unscented Kalman filter with clipping and uncorrelated conversion
International Journal of Distributed Sensor Networks 2017, Vol. 13(11) Ó The Author(s) 2017 DOI: 10.1177/1550147717741104 journals.sagepub.com/home/ijdsn
Dan Jia, Weihua Li and Peng Wang
Abstract This article studies localization for mobile sensor network with incomplete range measurements, that is, the ranges between some pairs of sensors cannot be measured. Different from existing works that localize sensors one by one, the localization problem in this article is solved for the whole mobile sensor network. According to whether the ranges can be measured or not, all the sensors in the network are grouped to construct basic localization units. For the sensors in basic localization units, a constrained nonlinear model is first established to formulate their relative motion, where the motion states are chosen as ranges and cosine values of angles between ranges. Then, based on the established model, a constrained unscented Kalman filter is adopted to provide motion state estimation. In the constrained unscented Kalman filter, the clipping technique is introduced to handle the model constraints, and the uncorrelated conversion technique is introduced to make full use of measurements. Hence, the estimation accuracy can be improved. Finally, the distributed multidimensional scaling-map method is used to localize the whole sensor network using the estimated ranges, and a localization algorithm is presented. The effectiveness and advantages of the proposed algorithm are demonstrated through several simulation examples. Keywords Mobile sensor network, incomplete measurement, unscented Kalman filter, clipping, uncorrelated conversion, multidimensional scaling-map
Date received: 19 July 2017; accepted: 16 October 2017 Handling Editor: Shuai Li
Introduction Wireless sensor network (WSN) is a research hotspot in recent years and has been widely used in battlefield environment awareness, environment monitoring, robots cooperative control, unmanned combat and other fields.1 As a prerequisite and basis procedure in the WSN applications, the localization of WSN has attracted more and more researchers whose attention is concentrated on improving localization accuracy and effectiveness. According to the manoeuvrability of sensors, localization of WSN can be classified into two categories, that is, static sensor network localization and mobile sensor network localization. In the former category, the stationary sensors are considered, and lots of
effective algorithms have been put forward, see, for example, time of arrival (TOA) localization algorithm,2 time difference of arrival (TDOA) localization algorithm,3 angle of arrival (AOA) localization algorithm4 and received signal strength indicator (RSSI) localization algorithm.5–7 To improve the localization accuracy, some researches attend to introduce filters to
Information and Navigation College, Air Force Engineering University, Xi’an, China Corresponding author: Peng Wang, Information and Navigation College, Air Force Engineering University, Xi’an 710077, Shaanxi, China. Email:
[email protected]
Creative Commons CC-BY: This article is distributed under the terms of the Creative Commons Attribution 4.0 License (http://www.creativecommons.org/licenses/by/4.0/) which permits any use, reproduction and distribution of the work without further permission provided the original work is attributed as specified on the SAGE and Open Access pages (http://www.uk.sagepub.com/aboutus/ openaccess.htm).
2 design localization algorithms. The nonlinear filters (extended Kalman filter (EKF) and unscented Kalman filter (UKF)) and the multidimensional scaling-map (MDS-MAP) method are combined to design localization algorithms (see MDS-EKF and MDS-UKF algorithms),8 and the accuracy comparison of different algorithms is provided. However, neither the MDSUKF nor MDS-EKF algorithms can effectively deal with the sensors with manoeuvrability and cannot be applied for mobile sensor network localization. For the mobile sensor network, the manoeuvrability of sensors leads to time-varying structure of WSN, hence brings more challenges to the localization with high accuracy. In the localization of mobile sensor network, the Global Positioning System (GPS)/inertial navigation system (INS) information are generally used, and many algorithms have been proposed, see for example, localization algorithm based on joint distribution stateinformation filter9 and localization algorithm via an inertial navigation system–assisted single roadside unit.10 However, the GPS/INS devices are not only expensive but also unreliable in some practical conditions. Without using the GPS/INS information, the mobility of sensors is considered and the localization algorithm can be designed by introducing particle filter; see the Monte Carlo localization (MCL) algorithm11 and other improved MCL-based algorithms.11–18 In these MCL-based algorithms, the manoeuvrability of the mobile sensors to be localized is handled by generating particles with random directions and velocities, and the detection radii of the anchor sensors (i.e. sensors with known positions) are used to filter out the impossible particles. Then, the approximate positions of mobile sensors can be calculated by fusing the positions of possible particles. However, because some detailed measurements (e.g. ranges, angles) are not used by MCL-based algorithms, the accurate positions of mobile sensors cannot be obtained. Using the ranges and angles between the sensors to be localized and the anchor sensors, some other filters can be adopted in the localization algorithm design, see, for example, the square root-UKF (SR-UKF)19 and the SR-cubature Kalman filter (SR-CKF).20 However, in some general practical conditions, the angles between sensors cannot be measured, even the ranges between some pairs of sensors are unavailable (i.e. the range measurements are incomplete). For these conditions, the above localization algorithms are not suitable. Motivated by this situation, this article proposes to design a localization algorithm with incomplete range measurements. Considering that some sensors to be localized may not be detected by the anchor sensors, the localization of these sensors cannot be achieved independently. Hence, the clustering and merging methods, which are illustrated to be effective for static sensor network,21 are introduced into mobile sensor network
International Journal of Distributed Sensor Networks in this article. This contributes to achieving overall localization of mobile sensor network. By first grouping the whole sensor network into some basic localization units, the ranges between sensors can be compensated and refined with filtering. According to the compensated and refined ranges, the local sensor networks are obtained by clustering the whole sensor network, and then be localized and merged to achieve overall localization. Following the manners of the proposed algorithm, better performance of localization is obtained. The rest of this article is organized as follows. The localization problem for mobile sensor network is first stated in section ‘Problem statement’. Section ‘Localization for mobile sensor network’ details the design procedure of localization algorithm, with establishing the motion model in section ‘Relative motion model of basic localization unit’, proposing the filter design in ‘UKF with clipping and uncorrelated conversion’, clustering and merging for the whole sensor network in section ‘Clustering and merging’, and the complete localization algorithm in section ‘Mobile sensor network localization algorithm with incomplete measurement’. Finally, section ‘Simulation’ provides a demonstration of the advantages of the designed algorithm through several simulation examples, and section ‘Conclusion’ summarizes this article with a conclusion. Notation. For a WSN of N sensors, we denote N = f1, 2, . . . , N g as its index set. Rn and Rm 3 n represent the n-dimensional Euclidean space and m 3 ndimensional real matrix set, respectively. Ia:b = fa, a + 1, . . . , b 1, bg denotes the integer set from a to b. In denotes the n-dimensional identity matrix, and 0m 3 n the m 3 n-dimensional zero matrix. For a variable x, sat(x) denotes its saturation with magnitude 1, that is, sat(x) = sgn(x) minf1, j xjg with sgn() being a sign function. N (0, R) denotes the normal distribution with zero mean and covariance matrix R. diagfa1 , a2 , . . .g denotes a diagonal matrix with diagonal entries a1 , a2 , . . ..
Problem statement Consider a mobile sensor network with N sensors shown in Figure 1, where the sensors move in threedimensional (3D) space with unknown motion. At time t, the actual ranges among these sensors can be measured as rtij = dtij + eijt 2r, 8i, j 2 N
ð1Þ
where rtij 2 R, dtij 2 R and eijt ;N(0, R) denote the measured range, actual range and measurement error between sensors i and j, respectively, and r denotes the radius of each sensor. Due to some practical conditions such as range limitation, electronic interference and obstruction, the ranges among some sensors
Jia et al.
3
Figure 1. Mobile sensor network of N sensors moving with unknown motion.
cannot be measured, that is, the range measurements are incomplete. Based on the incomplete range measurements, the localization problem to be solved in this article is to calculate the absolute positions of all sensors i 2 N (denoted as xi 2 R3 ). To guarantee the practicability of localization without loss of generality, we assume that there are at least four anchor sensors indexed by ia , ja , . . . , 2 Na , where Na N denotes the index set of anchor sensors. Accordingly, the index set of sensors to be localized is denoted as Nl = NnNa . For each sensor i 2 Nl to be localized, most of the existing range-based approaches can calculate its absolute position xi based on the assumption that the information of at least one anchor sensor is available for sensor i. However, incomplete range measurements may violate this assumption and then disable these localization approaches. Motivated by this condition, this article contributes to present a localization approach for the mobile sensor network with incomplete range measurements.
Localization for mobile sensor network Using the incomplete measured ranges and the positions of anchor sensors Na , the whole mobile sensor network can be overall localized by introducing clustering and merging. Whereas these measured ranges are not precise due to ranging errors and mobility of sensors. By directly using these measured ranges, the localization with clustering and merging will result in low accuracy. Aiming at alleviation of these errors in measured ranges, a proper filter is designed to calculate more accurate estimated ranges. Out of requirement of filtering, a motion model should be first established to formulate the relative motion of sensor network. However, the motion model with high dimensions will lead to tremendous computational complexity of filtering. Therefore, the whole mobile sensor network N is preferred to be grouped into M basic localization units
Figure 2. The relative location of sensors in basic localization unit.
unit Nunit p ’s, p 2 I1:M . For each Np , the relative motion model is established as follows.
Relative motion model of basic localization unit Based on graph rigidity, at least four common sensors between clusters are required for clustering and merging in 3D space. Thus, five sensors are selected to construct a basic localization unit Nunit as the most simplified p scheme. For each basic localization unit at time t, the relative motion model can be established in two different forms: Model (1) relative range model, which describes the relative motion between the ranges among sensors. Model (2) relative coordinate model, which describes the relative motion between the position coordinates of sensors. Compared with model (1), the nonlinearity of model (2) is more significant, which introduces more complexity in the filtering process and leads to less precision of the localization results. Therefore, for each basic localization unit Nunit p , model (1) is adopted to construct a relative motion model. As shown in Figure 2, a basic localization unit composed of five sensors (i.e. A, B, C, D and E) is denoted as Nunit = fA, B, C, D, Eg; the angles between sensors p are denoted as u1t = \ADC, u2t = \ADB, u3t = \BDC, u4t = \BAC, u5t = \AEB, u6t = \AEC, u7t = \BEC and u8t = \AED at time t. As the sensors move from positions A, B, C, D, E at time t to positions A0 , B0 , C 0 , D0 , E0 at time t0 = t + Dt, the relative motion between them can be modelled in continuous-time form as (more details of the model establishment are provided in Appendix 1)
4
International Journal of Distributed Sensor Networks X_~t = ½ j_ t1 2 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 =6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 4
j_ t10
j_ t20
j_ t11 j11 t .. .
j_ t21 3
T j_ t28
7 7 7 7 20 7 jt 7 7 7 0 2 13 7 ~t w 7 .. 7 . 2 7 6w 7 6 ~t 7 7 7 6 0 7 6w ~ 3t 7 3 13 8 18 2 12 3 18 8 13 21 7 7 6 jt jt + jt jt jt jt (jt jt + jt jt )jt 7 6w 7 ~ 4t 7 j3t j8t 7 6 7 6 57 6 16 1 11 3 16 6 13 22 7 j3t j13 6 t + jt j t jt j t (j t j t + j t jt )j t ~t 7 w 7 7 j3t j6t 7 + G6 6 6 7 ~ w 8 18 5 15 6 18 8 16 23 7 7 6 t j6t j16 + j j j j (j j + j j )j 7 t t t t t t t t t t 6 77 7 j6t j8t 7 6w ~ 7 6 t 7 2 12 5 15 1 12 2 11 24 7 6w j1t j11 8 7 t + jt j t jt j t (j t j t + j t jt )j t 7 6 ~t 7 7 j1t j2t 6 97 7 4w 4 14 7 17 1 11 4 17 7 14 25 7 ~t 5 jt jt + jt jt jt jt (jt jt + jt jt )jt 7 j4t j7t 7 ~ 10 w t 4 14 9 19 2 12 4 19 9 14 26 7 jt jt + jt jt jt jt (jt jt + jt jt )jt 7 4 9 7 j t jt 7 9 19 5 15 7 19 9 17 27 7 j7t j17 t + jt j t jt j t (j t j t + j t jt )j t 7 7 j7t j9t 5 4 14 10 20 3 13 4 20 10 14 28
Remark 1. According to rigidity of graph, all the 10 are required to uniquely deterranges among unit Nunit p mine its topology. In this article, these ranges can be completed by the combination of model (2) and filter if nine of them are measured. This advantage is introduced by considering the relationship between the ranges and cosine values of angles in model (2) (see equation (46) in Appendix 1). The more the angles’ cosine values are incorporated in state, the less the ranges are required to be measurable. However, the dimension increase in state will lead to heavy computation burden and less measurements of range will lead to reduction in localization accuracy. Because the range between each pair of sensors is greater than 2r, and the cosine values of angles are between ½1, 1, the state vector X~t should satisfy the constraints
jt jt + jt jt jt jt (jt jt + jt jt )jt j4t j10 t
~t = f (X~t ) + GW ð2Þ
with the state vector X~t = ½ j1t = ½ dtAB dtCD d_ BC t
matrix H = ½ I10 010 3 18 and measurement error vector V~t = ½ eAB . . . eDE t t ;N(0, R).
X~t (i) 2r, 1 X~t (i) 1,
i 2 I1:10 i 2 I21:28
ð7Þ
For the convenience of filtering, we prefer to discretize models (2) and (6) by sampling it at instant tk , as
Xk + 1 = F(Xk ) + Gk Wk Zk = Hk Xk + Vk
ð8Þ
T
j2t j27 j28 t t AC AD AE dt dt dt dtBC dtBD dtBE dtCE dtDE d_ tAB d_ tAC d_ tAD d_ tAE d_ BD d_ BE d_ CD d_ CE d_ DE t
t
t
cos (u1t ) cos (u2t ) cos (u5t ) cos (u6t )
t cos (u3t ) cos (u7t )
ð3Þ
t
cos (u4t ) cos (u8t )
T
F(Xk ) = Xk +
the disturbance (seemed as the unknown relative acceleration) T ~t = ½ w W ~ 10 ~ 1t w t = ½ d€tAB d€tAC d€tAD d€tAE d€tBC T d€tBD d€tBE d€tCD d€tCE d€tDE
ð4Þ
and the disturbance gain matrix 2
3 010 3 10 G = 4 110 3 10 5 08 3 10
ð5Þ
The measurement model can be formulated as Z~t = HX~t + V~t
with the discrete-time transition function F(), the matrices Gk = dG and Hk = H, sampling period ~ t ;N(0, Q) Wk = W and Vk = d = tk + 1 tk , k ~ Vtk ;N(0, R). Here, the Runge–Kutta method is adopted to calculate the transition function as
ð6Þ
with the measurement vector Z~t = ½ rtAB rtAC rtAD T rtAE rtBC rtBD rtBE rtCD rtCE rtDE , the measurement
d(Fk1 + 2Fk2 + 2Fk3 + Fk4 ) 6
ð9Þ
with Fk1 = f (Xk ), Fk2 = f (Xk ) + (dFk1 =2), Fk3 = f (Xk ) + (dFk2 =2) and Fk4 = f (Xk ) + dFk3 .
UKF with clipping and uncorrelated conversion Due to the nonlinearity of model (2), a nonlinear filter should be used to provide estimation for ranges. However, for a nonlinear model, the original measurement cannot be fully used by filters based on linear minimum mean square error estimation,22 for example, Kalman-based filters. In this article, the uncorrelated conversion (UC), which is proved to be an effective approach to extract additional measurement information,22 is introduced to further improve the estimation performance. To additionally guarantee the physical constraints (7) for estimation, the constraint handling techniques (see the clipping technique23 and quadratic programming (QP) technique24) are required. Here, the
Jia et al.
5
clipping technique is used because the nonlinear converted measurement model (induced by UC) prevents the QP technique to be used. In this section, the UKF with appropriate computational complexity and acceptable accuracy is chosen, and the filter process with incorporating clipping and UC is detailed as follows: 1.
X^kjk1 =
xk1 = ½xk1, j = ½ X^k1
qffiffiffiffiffiffiffiffiffiffi X^k1 6 g(n) PXk1
ð10Þ
where X^k1 and PXk1 are the estimated state vector and corresponding covariance matrix at time instant tk1 , respectively; xk1, j ’s, j 2 I0:2n are the generated sigma points, with n = 28pbeing ffiffiffiffiffiffiffiffiffiffiffiffi the dimension of the state vector; and g(n) = n + l is the suggested scaling factor,24,25 with l = (n + k)a2 n, k = 3 n and 0 a 1. To guarantee the practical constraints (7) in filter, all the sigma points before and after propagation, respectively, are clipped according to the bounds of constraints, that is, for all j 2 I0:2n n o x+ (i) = max 2r, x (i) , 8i 2 I1:10 k1, j k1, j x+ k1, j (i) = sat x k1, j (i) , 8i 2 I21:28
+ vm j xkjk1, j
ð17Þ
j=0
with the weighting scalars vm j =
One-step prediction with clipping
Based on unscented transformation (UT), the sigma points of X^k1 are generated as
2n X
l n+l , 1 2(n + l) ,
j=0 j 2 I1:2n
ð18Þ
The corresponding covariance matrices can be calculated as 2n X
PXkjk1 =
T + ^ vcj (x+ kjk1, j Xkjk1 )(xkjk1, j Xkjk1 )
j=0
ð19Þ
And the one-step prediction of measurement is Z^kjk1 = Hk X^kjk1
ð20Þ
Accordingly, the corresponding covariance matrices can be calculated as PZkjk1 =
2n X
+
x
vcj (Z^kjk1, j Z^kjk1 )(Z^kjk1, j Z^kjk1 )T
j=0
ð21Þ ð11Þ ð12Þ
PXZ kjk1 =
2n X
T ^ ^+ ^ vcj (x+ kjk1, j Xkjk1 )(Zkjk1, j Zkjk1 )
j=0
ð22Þ
and
+
n o x+ (i) = max 2r, x (i) , 8i 2 I1:10 kjk1, j kjk1, j x+ kjk1, j (i) = sat xkjk1, j (i) , 8i 2 I21:28
with Z^kjk1, j = Hk x+ kjk1, j and ð13Þ ð14Þ
where xkjk1, j = F(x+ k1, j ) denotes the propagation of the jth sigma point. Remark 2. Note in physical constraint (7) that each element of state X~t is independent of each other. Hence, the clipping technique adopted here can be seemed as a special case of estimate projection,26 that is, equations (11) and (12) (equations (13) and (14)) are analytical solution of n o + T + x+ () = arg min (x () x () ) P(x() x () )
ð15Þ
x+ ()
s:t:
x+ () (i) 2r 1 x+ () (i) 1
i 2 I1:10 i 2 I21:28
ð16Þ
with any positive definite weighting matrix P. After clipping, the one-step prediction of state can be calculated as
( vcj =
l n + l + (1 1 2(n + l) ,
a2 + b),
j=0 j 2 I1:2n
ð23Þ
2. Measurement augmentation with UC To deeply explore the information of the measurement, the original measurement is converted uncorrelatively by introducing an effective approach and then augmented by the converted measurement. Because the converted measurement is uncorrelated with the original one, the augmentation of the original measurement can provide more useful information and then improve the accuracy of range estimation. The augmented measurement can be generated as follows. First, the reference distribution-based UC22 is introduced to uncorrelatively convert the original measurement. Denote Zrk as a reference random variable with r r the first two moments Zk and PZk . To incorporate more information of Zk into Zrk , the first two moments of Zr are chosen as
6
International Journal of Distributed Sensor Networks r Zk = E(Zk ) = Z^kjk1
ð24Þ
r
PZk = cov(Zk , Zk ) = PZkjk1
ð25Þ
Then, the UC of the original measurement can be defined as22 D Yk ¼ EZkr g(Zk Zkr ) = ’
2m X
ð
p(Zkr )g(Zk Zkr )dZkr
Now, the augmented measurement can be constructed as the combination of the original and uncorrelatively converted measurements, that is Zak = ½ ZTk
YTk
T
The mean of the augmented measurement Zak can be T a T T easily determined as Zk = ½ Z^ Y . The crosskjk1
ð26Þ r hm j g(Zk Zk, j )
ð31Þ
k
covariance between Xk and Zak and the covariance of Zak can be calculated by UT as
j=0
a
XZ XY PXZ kjk1 = ½ Pkjk1 Pkjk1 " Z # PZY Pkjk1 kjk1 Za Pkjk1 = T (PZY PYkjk1 kjk1 )
1=2 (PZkjk1 ) z=b
where g(z) = e is a nonlinear function with a selected positive scalar b, and p(Zkr ) denotes the specific probability density function of Zkr ½Zk,r j = ½ Zkr
r Zk 6 g(m)
qffiffiffiffiffiffiffi r PZk
ð27Þ
are the sigma points of Zkr generated by UT, and hm j
=
l m+l , 1 2(m + l) ,
PXY kjk1 =
2n X
T + ^ ^ vci (x+ kjk1, i Xkjk1 )(Ykjk1, i Ykjk1 )
i=0
j=0 j 2 I1:2m
ð28Þ
PZY kjk1 =
2m X
Remark 3. In equation (26), the converted measurement Yk is defined as the expectation of function g(Zk Zkr ). When the probability density function p(Zkr ) is unknown, the expectation can be calculated approximately by different numerical methods, for example, UT, Gaussion hypothesis quadrature rules or cubature rules. Here, the UT approximation is adopted. According to the definition in equation (26), the mean of the UC Yk can be determined as ð ð D Yk ¼ EZk ½Yk = p(Zk ) p(Zkr )g(Zk Zkr )dZkr dZk ’
i=0
2m X
y hm j g(Zk, i
j=0
|fflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflffl{zfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflffl} ð29Þ
where p(Zk ) denotes the specific probability density function of Zk qffiffiffiffiffiffiffiffiffiffiffiffi Z^kjk1 6 g(m) PZkjk1
2m X
hci (YZk, i Yk )(YZk, i Yk )T
i=0
P2m
+
r ^ hm j g(Zkjk1, i Zk, j ) denotes the P2n + m + ^ UC of Z^kjk1, i = Hk x+ i = 0 vi Ykjk1, i , kjk1, i , Ykjk1 = and
where Y+ kjk1, i =
hci =
j=0
l m + l + (1 1 2(m + l)
a2 + b)
i=0 i 2 I1:2m
ð34Þ
3. Estimation update With the augmented measurement Zak , the one-step prediction of state X^kjk1 can be updated by linear minimum mean square error estimator as
Zk,r j )
YZk, i
½Zyk, i = ½ Z^kjk1
hci (Zyk, i Z^kjk1 )(YZk, i Yk )T
i=0
PYkjk1 =
hm i
ð33Þ
with
are the associated weighting scalars.
2m X
ð32Þ
ð30Þ
are the sigma points of Zk generated by UT, hm i ’s are the associated weighting scalars as defined in equation P y r m (28), and YZk, i = 2m j = 0 hj g(Zk, i Zk, j ) denotes the y UC of the sigma point Zk, i . Notice that the equivalence of the first moments between Zk and Zr (i.e. equations (24) and (25)) implies Zk,r i = Zyk, i for all i 2 I0:2m .
a 1 Za a a X^k = X^kjk1 + PXZ kjk1 (Pkjk1 ) (Zk Zk )
ð35Þ
and the associated covariance matrix is calculated as a
a
a
T Z 1 XZ PXk = PXkjk1 PXZ kjk1 (Pk ) (Pkjk1 )
ð36Þ
The whole process of UKF with clipping and UC is summarized as Algorithm 1.
Clustering and merging According to estimated ranges in the basic localization unit unit at time unit Nunit p , the distance matrix Dp, k of Np instant tk is constructed as
Jia et al.
7
Algorithm 1. UKF with clipping and UC. Input: the updated measurement range Z k at time tk ; ^ k1 at time tk1 ; the estimated state vector X X the covariance matrix Pk1 at time tk1 . ^ k at time tk ; Output: the estimated state vector X the covariance matrix PXk at time tk . ^ k1 as equation (10). 1: Generate the sigma points xk1, j of state vector X 2: Clip the sigma points xk1, j to the bounds of constraints as equations (11) and (12). 3: Calculate propogated sigma points xkjk1, j . 4: Clip the propogated sigma points xkjk1, j as equations (13) and (14). ^ ^ 5: Using x+ kjk1, j to calculate the one-step prediction of state vector X kjk1 in equation (17) and measurement vector Z kjk1 as X Z XZ equation (20). And the corresponding covariance matrix Pkjk1 in equation (19), Pkjk1 in equation (21), and Pkjk1 in equation (22) can also be calculated. 6: Generate uncorrelated conversion of the original measurement Y k as equation (26). 7: Calculate the mean of the uncorrelated conversion Y k as equation (29). a Za 8: Calculate the corresponding covariance matrix PXZ kjk1 as equation (32) and Pkjk1 as equation (33). ^ k as equation (35) and PX as equation (36). 9: Calculate the estimation of X k
2
0 6^ 6 Xk (1) 6^ Dunit p, k = 6 Xk (2) 6 4 X^k (3) X^k (4)
X^k (1) 0 X^k (5) X^k (6) X^k (7)
3 X^k (2) X^k (3) X^k (4) 7 X^k (5) X^k (6) X^k (7) 7 7 0 X^k (8) X^k (9) 7 7 X^k (8) 0 X^k (10) 5 X^k (9) X^k (10) 0 ð37Þ
where X^k (i), i 2 f1, 2, . . . , 28g is the state variable at time instant tk . According to Dunit p, k , the distance matrix Dk of the global sensor network N can be constructed with entrances 8 P 1 > d^p,ij k , i 6¼ j and mij 6¼ 0 > < mij unit p2II:M , 8i, j2Np Dk (i, j) = > > : 0, otherwise ð38Þ
where d^p,ij k is the estimated range between sensors i and j in Dunit p, k , and mij is the number of basic localization units that include i and j. With the estimated ranges in N, a distributed MDSMAP localization algorithm is adopted in this article to localize the mobile sensor network. MDS-MAP method is first proposed by Shang et al.27 of Columbia University to localize sensors in networks. Directly using the MDS-MAP method in the localization of the whole sensor network N with incomplete measurement will lead to errors. An effective approach is first dividing N into O local sensor networks with complete measurement, then using the MDS-MAP method to calculate their accurate relative positions and finally merging these local sensor networks to obtain the relative positions of N. The absolute positions can be further acquired using the anchor sensors Na . The specific procedure of localization stage is as follows:
1.
Clustering and local-localization
According to the distance matrix Dk , the entrances of the connection matrix Lk can be calculated as 8 < 1, Lk (i, j) = 1, : 0,
Dk (i, j) 6¼ 0 j=i otherwise
ð39Þ
According to the connection matrix Lk , the global network can be clustered into clusters. Considering requirement in local-localization with the MDS-MAP method, all-pair estimated ranges between sensors in each cluster should be obtained. To this end, the process of clustering and local-localization is executed as Algorithm 2. For each local sensor network Cs , the MDS-MAP method in Algorithm 2 is briefly stated as follows. According to the distance matrix Dk , construct the inner product matrix Bs with entrances Bs (si , sj ) =
1 2 Dk (i, 1) + D2k ( j, 1) D2k (i, j) 2
ð40Þ
where si and sj are the indices of sensors i and j in Cs , respectively. By decomposing the inner product matrix as Bs = UEUT , the relative position matrix F^ks of the local sensor network Cs can be determined as T s s xi , x^j , . . . F^ks = ½^ pffiffiffiffiffi pffiffiffiffiffi pffiffiffiffiffi = diagf l1 , l2 , l3 g½u1 , u2 , u3
ð41Þ ð42Þ
s where x^i = ½xsi , ysi , zsi T is the relative position of sensor i in Cs ; l1 , l2 and l3 are the largest three eigenvalues of E; u1 , u2 and u3 are the corresponding eigenvectors in U.
2. Merging of local sensor networks
8
International Journal of Distributed Sensor Networks
Algorithm 2. Clustering and local-localization. Input: the distance matrix Dk ; the connection matrix Lk . Output: the local sensor networks Cs , s 2 I0:O1 ; the relative positions F s of sensor networks Cs . 1: for all node i 2 N do 2: for all node j 2 N do 3: if Lk (i, j) = 1 then 4: Add node j to the set Si = fj 2 NjLk (i, j) = 1g 5: end if 6: end for 7: end for 8: for all node i 2 N do 9: Update Si as Si = Si \ Sj , 8j 2 Si . 10: end for 11: Search for the set Si , i 2 N of largest cardinality, denoted as Si . All nodes in Si construct a reference sensor network C0 . 12: Calculate the relative positions of C0 using the MDS-MAP method. 13: Set s = 0, N0 = N Si . 14: while N0 6¼ [ do 15: Update s = s + 1 and N0 = N0 nSi . 16: Search for the set Si , i 2 N of largest cardinality, which can be denote as Si . All nodes in Si construct a local sensor network Cs . 17: Calculate the relative positions of Cs using the MDS-MAP method. 18: end while
According to the relative positions of the common sensors in different local sensor networks, the global map can be constructed using the rotation and translation method. Namely, merge other local sensor networks into the reference sensor network (i.e. the relative positions of the reference network C0 ) one by one. Assume that common nodes of the local reference network C0 and another local sensor network Cs are denoted by fa, b, c, d, . . .g. According to equation (43), each sensor i 2 Cs n(Cs \ C0 ) can be merged into the reference network C0 through rotation and translation method as
sensor network F^0k = ½^ x01 , x^02 , . . . , x^0N can be converted x1 , x^2 , . . . , x^N of the to the absolute positions F^k = ½^ global sensor network.
Mobile sensor network localization algorithm with incomplete measurement For a mobile sensor network N of N sensors, the localization algorithm for the whole mobile sensor network is given in Algorithm 3.
Simulation x^0i = V0s x^si + t0s
ð43Þ
with the rotation matrix
T T F^ks 1c 3 3 (Fks ) V0s = T T T F^ks 1c 3 3 (Fks ) F^ks 1c 3 3 (Fks ) T F^0k 1c 3 3 (F0k )
vector t0s = (F0k )T V0s (Fks )T , and F0k = 11 3 c F^0k =c are the cen-
and the translation where Fks = 11 3 c F^ks =c tral positions of Cs and C0 , respectively, and c is the number of common sensors.
To verify the proposed localization algorithm for mobile sensor network, several algorithms are compared in this section: 1. 2. 3. 4. 5.
Sequential Monte Carlo localization (SMCL) algorithm.13 MDS-MAP algorithm with EKF (MDS-EKF).8 MDS-MAP algorithm with UKF (MDSUKF).8 The proposed localization algorithm with QPUKF.24 The proposed localization algorithm without UC.
3. Global absolute positions generated Using the absolute position Fak of anchor sensors in Na and equation (43), the relative positions of the global
In the comparison, the ranging error ratio is set separately at 1% and 10%, and we take the root mean square error (RMSE)
Jia et al.
9
Algorithm 3. Mobile sensor network localization. Input: the incomplete measurement range Z k , k = 1, 2, . . .; the absolute positions F ak , k = 1, 2, . . . of anchor nodes Na . Output: the positions of the sensor network F^k , k = 1, 2, . . .. 1: Group N into M basic localization units Nunit p , p 2 I1:M according to the measurement information. 2: Set k = 1. 3: for all Nunit p , p 2 I1:M do ^ k and PX as Algorithm 1. 4: Calculated X k 5: Calculated Dunit p, k as equation (37). 6: end for 7: Calculated Dk and Lk as equations (38) and (39). 8: Clustering into O clusters Cs , s 2 O = I0:O1 and calculate the relative positions F sk , s 2 O as Algorithm 2. 9: Set mergetime = 1 10: while mergetime O 1 do 11: for all Cs , s 2 O do 12: if the number of common sensors of Cs and C0 is no less than 4 then 13: Merging the Cs into C0 by equation (43). 14: Update C0 = C0 [ Cs . 15: Update O = Onfsg. 16: end if 17: end for 18: end while 19: Using F ak , k = 1, 2, . . . to transform the relative positions F^k0 into absolute ones F^k by equation (43).
vffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi # u " N u1 X 2 t RMSE = (xi x^i ) N i=1
ð44Þ
to describe the localization error, and stress vffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi u N N u P P ij 2 ^ij 2 2 u (d d k ) ui = 1 i = 1 k Stress = u u N P N P 4 t d ijk
ð45Þ
i=1 j=1
to describe the topology error of mobile sensor network. The smaller the RMSE and stress are calculated, the higher the localization accuracy is achieved. Considering the sensor network composed of 10 mobile nodes in 3D space, and each node is free to move at an average speed of 3 m/s. Assuming that ranges among nodes in sensor network can be completely measured. The localization results of different localization algorithms under different range error ratios (denoted as e) are shown in Figures 3–12. In the simulation, the ranges are gradually increasing due to free movement of nodes in sensor network. The pre-set relative range error ratio leads to the increase in localization error (i.e. RMSE), as shown in Figures 3, 5 and 7. In Figures 3–6, both the average RMSE (0.37 m under 1% range error and 0.78 m under 10% range error) and the average stress (0.004 under 1% range error and 0.031 under 10% range error) of the proposed algorithm are much smaller than those of MDS-EKF, MDS-UKF and SMCL algorithms. This verifies the
higher localization accuracy of the proposed localization algorithm. In the framework of the proposed localization algorithm, the UKF with different techniques (i.e. UKF with QP,24 UKF with clipping and UKF with both clipping and UC) is compared to demonstrate the effectiveness of introducing clipping and UC. The performance comparison is displayed in Figures 7 and 8. Simulation results show that the average of RMSE is 0.61 and 1.35 m (4.17 and 5.98 m) for UKF with QP and clipping, respectively, under e = 1% (e = 10%); and the average of stress is 0.014 and 0.313 (0.077 and 0.218) for UKF with QP and clipping, respectively, under e = 1% (e = 10%). All of them are larger than
Figure 3. RMSE of localization algorithm with 1% range error.
10
International Journal of Distributed Sensor Networks
Figure 4. Stress of localization algorithm with 1% range error. Figure 7. RMSE of the localization algorithm with different types of UKF.
Figure 5. RMSE of localization algorithm with 10% range error.
Figure 8. Stress of the localization algorithm with different types of UKF.
Figure 6. Stress of localization algorithm with 10% range error.
UKF with both clipping and UC, which verifies the better performance of introducing clipping and UC. In the form of boxplot, the average values, 25th and 75th percentiles, and the maximum and minimum of RMSE and stress in different algorithms are illustrated in Figures 9–12. In these boxplots, the central mark
Figure 9. The boxplot for RMSE of different algorithms with e = 1%.
denotes the average value, the edges of the box denote the 25th and 75th percentiles, the upper and lower lines denote the maximum and minimum, and the separate
Jia et al.
11
Figure 10. The boxplot for stress of different algorithms with e = 1%. Figure 13. The average RMSE of proposed algorithm with different connectivities.
Figure 11. The boxplot for RMSE of different algorithms with e = 10%.
Figure 14. The average stress of proposed algorithm with different connectivities.
Figure 12. The boxplot for stress of different algorithms with e = 10%.
points are the abnormal data. The shape of the box clearly shows the distribution of the data. It is easy to notice that the average of RMSE and stress of the proposed localization algorithm are smaller than those of other localization algorithms and so are the
distributions. This demonstrates the accuracy and stability of the proposed algorithm. The comparison for time cost of these algorithms is provided in Table 1. It is easily seen that the proposed algorithm possesses the highest localization accuracy with an acceptable increase in time cost. Compared with the algorithm without UC, the proposed algorithm is more accurate, with a slight increase in time cost, which verifies the effectiveness of introducing UC. To verify the proposed node localization performance with incomplete measurement, we take the connectivity parameter C = l=l0 to describe the degree of connectivity in the whole wireless sensor network, with l denoting the number of the measurable ranges and l0 denoting the number of the ranges in the whole WSN. The localization results of proposed algorithm with different connectivities (ranging from 53:3% to 100%) are shown in Figures 13 and 14.
12
International Journal of Distributed Sensor Networks
Table 1. The comparison for average time cost of different algorithms. Algorithm
Average RMSE with 1% range error (m)
Average time cost before convergence (s)
Average time cost after convergence (s)
Average time cost (s)
SMCL MDS-EKF MDS-UKF QP-UKF Algorithm without UC The proposed localization algorithm
16.7226 2.5344 1.5132 0.9872 1.3511 0.3741
0.5635 0.0166 0.0304 0.5458 0.0157 0.0466
0.0393 0.0033 0.0061 0.2622 0.0136 0.0324
0.1441 0.0034 0.0062 0.2913 0.0136 0.0316
RMSE: root mean square error; SMCL: Sequential Monte Carlo localization; MDS-EKF: multidimensional scaling extended Kalman filter; MDS-UKF: multidimensional scaling unscented Kalman filter; QP-UKF: quadratic programming; UC: uncorrelated conversion.
It can be easily seen from Figures 13 and 14 that the lowest connectivity of the proposed algorithm can reach 53:3%. Note that when the sensor network connectivity is less than 66:7%, the average RMSE is about 20 30 m and the average stress is about 0:4 0:5 under different range errors. This is because the numbers of ranges in some basic localization units are less than 10, and the effectiveness of the proposed algorithm is guaranteed by clustering and merging methods and the relative motion model (see Remark 1). With the increase in connectivity, the accuracy of localization is gradually enhanced.
Conclusion In this article, the localization problem of mobile sensor network with incomplete measurement is investigated, and a localization algorithm is proposed. The effectiveness of the proposed localization algorithm is achieved by the relative motion model with physical constraints, the UKF with clipping and UC, and the clustering and merging methods. Comparison with other existing algorithms demonstrates that the proposed algorithm can achieve highest localization accuracy. For mobile sensor network with different connectivities, the proposed localization algorithm is still valid, and its localization accuracy is gradually improved with the increase in connectivity. Declaration of conflicting interests The author(s) declared no potential conflicts of interest with respect to the research, authorship, and/or publication of this article.
Funding The author(s) disclosed receipt of the following financial support for the research, authorship, and/or publication of this article: This work was supported by the National Nature Science Foundation of China under grants 61403414, 61773396, 41601436, 61571458 and 71503260; the China Postdoctoral Science Foundation under grants 2016M603042 and 2017T100817; the Natural Science Basic Research Plan
in Shaanxi Province of China under grants 2016JQ6070 and 2016JM6050; and Aero Science Fund under grant 20160196005.
References 1. Li JL, Du XF, Xing JC, et al. A self-localization algorithm for wireless sensor networks. In: Proceedings of the 24th Chinese control and decision conference, Taiyuan, China, 23–25 May 2012, pp.3836–3842. New York: IEEE. 2. Shen JY, Molisch AF and Salmi J. Accurate passive location estimation using TOA measurements. IEEE T Wirel Commun 2012; 11(6): 2182–2192. 3. Jiang W, Xu C, Pei L, et al. Multidimensional scalingbased TDOA localization scheme using an auxiliary line. IEEE Signal Proc Let 2016; 23(4): 546–550. 4. Wann CD and Lin HY. Hybrid TOA/AOA estimation error test and non-line of sight identification in wireless location. Wirel Commun Mob Com 2009; 9(6): 859–873. 5. Yao Y, Han Q, Xu X, et al. A RSSI-based distributed weighted search localization algorithm for WSNs. Int J Distrib Sens N 2015; 11(4): 1–11. 6. Yan H, Zheng J, Xiao Y, et al. Robust localization algorithm based on the RSSI ranging scope. Int J Distrib Sens N 2015; 11(2): 1–8. 7. Wang X, Wei X, Liu Y, et al. Received signal strengthbased localization for large space indoor environments. Int J Distrib Sens N 2017; 13(1): 1–12. 8. Chen S, Lu J and Lou X. Localization algorithm for wireless sensor networks based on MDS-MAP and nonlinear filtering. J Zhejiang Univ 2012; 46(5): 866–872 (in Chinese). 9. Ben Y, Guo Y, Li J, et al. Cooperative localization approach for robots based on joint distribution stateinformation filter. Syst Eng Electron 2015; 37(2): 385–393 (in Chinese). 10. Khattab A, Fahmy YA and Ahmed A. High accuracy GPS-free vehicle localization framework via an INSassisted single RSU. Int J Distrib Sens N 2015; 11(5): 1–16. 11. Hu L and Evans D. Localization for mobile sensor networks. In: Proceedings of the tenth international conference on mobile computing and networking, Philadelphia, PA, 26 September–1 October 2004, pp.45–57. New York: ACM. 12. Baggio A and Langendoen K. Monte-Carlo localization for mobile wireless sensor networks. Ad Hoc Netw 2006; 6(5): 718–733.
Jia et al. 13. Dil B, Stefan D and Havinga P. Range-based localization in mobile sensor networks. Wirel Sens Netw 2006; 3868: 164–179. 14. Sun Y, Shang J and Liu S. Monte Carlo mobile node localization algorithm based on sampling optimization. Syst Eng Electron 2010; 32(9): 2001–2004 (in Chinese). 15. Li W, Han C and Yan X. Sequential Monte Carlo implementation of PHD filter based on Kullback–Leibler divergence. Control Decis 2014; 29(6): 997–1002 (in Chinese). 16. Chen W, Zhang Y and Zhang Z. Monte Carlo localization algorithm for mobile node by reducing sampled area. Comput Eng Appl 2014; 50(21): 106–110 (in Chinese). 17. Shan Z, Liu L, Zhang Y, et al. A strong self-adaptivity localization algorithm based on gray prediction model for mobile nodes. J Electron Inf Technol 2014; 36(6): 1492–1497 (in Chinese). 18. Liu Z, Xi Z, Zhang S, et al. Sequence correlation optimized Monte Carlo localization. Acta Electron Sinica 2015; 43(10): 2110–2116 (in Chinese). 19. Wang B, Li Y, Qi G, et al. Bearings-only cooperative localization algorithm of multi-mobile robots based on square-root unscented Kalman filter. J Nanjing Univ Sci Technol 2015; 39(4): 440–446 (in Chinese). 20. Li L, Lang L and Chen M. Relative position cooperative localization algorithm of multi-robot based on SR-CKF. J Electron Meas Instrum 2016; 30(7): 1107–1113 (in Chinese). 21. Liu L, Du J and Guo D. A clustering approach for error beacon filtering in underwater wireless sensor networks. Int J Distrib Sens N 2016; 12(12): 1–10. 22. Lan J and Li X. Nonlinear estimation by LMMSE-based estimation with optimized uncorrelated augmentation. IEEE T Signal Proces 2015; 63(16): 4270–4283. 23. Kandepu R, Foss B and Imsland L. Applying the unscented Kalman filter for nonlinear state estimation. J Process Contr 2008; 18: 753–768. 24. Kols S, Foss B and Schei T. Constrained nonlinear state estimation based on the UKF approach. Comput Chem Eng 2009; 33(8): 1386–1401. 25. Van der Merwe R. Sigma-point Kalman filters for probabilistic inference in dynamic state-space models. PhD Thesis, Oregon Health and Science University, Portland, OR, 2004. 26. Simon D. Kalman filtering with state constraints: a survey of linear and nonlinear algorithms. LET Control Theory Appl 2010; 4(8): 1303–1308. 27. Shang Y, Ruml W, Zhang Y, et al. Localization from mere connectivity. In: Proceedings of the fourth ACM symposium on mobile ad-hoc networking and computing, Annapolis, MA, 1–3 June 2003, pp.201–212. New York: ACM.
13 8 1 AC 2 AD 2 CD 2 AD CD > > > (dt )2 = (dt )2 + (dt )2 2dt dt cos (ut ) > > > (dtAB ) = (dtAD ) + (dtBD ) 2dtAD dtBD cos (u2t ) > > > 2 2 2 > > (dtBC ) = (dtBD ) + (dtCD ) 2dtBD dtCD cos (u3t ) > > 2 2 2 < BC (dt ) = (dtAB ) + (dtAC ) 2dtAB dtAC cos (u4t ) 2 2 2 > (dtAB ) = (dtAE ) + (dtBE ) 2dtAE dtBE cos (u5t ) > > > > > (dtAC )2 = (dtAE )2 + (dtCE )2 2dtAE dtCE cos (u6t ) > > > 2 2 2 > > (d BC ) = (dtBE ) + (dtCE ) 2dtBE dtCE cos (u7t ) > > : tAD 2 2 2 (dt ) = (dtAE ) + (dtDE ) 2dtAE dtDE cos (u8t )
ð46Þ
and the first derivatives of cos (u1t ), . . . , cos (u8t ) are calculated as 2
2
d d (dtAD ) + (dtCD ) (dtAC ) cos (u1t ) = dt dt 2dtAD dtCD =
2
dtAD d_ tAD + dtCD d_ tCD dtAC d_ tAC (d_ tAD dtCD + dtAD d_ tCD ) cos (u1t ) dtAD dtCD 2
2
d d (dtAD ) + (dtBD ) (dtAB ) cos (u2t ) = dt dt 2dtAD dtBD
!
2
dtAD d_ tAD + dtBD d_ tBD dtAB d_ tAB (d_ tAD dtBD + dtAD d_ tBD ) cos (u2t ) dtAD dtBD
=
2
2
d d (dtBD ) + (dtCD ) (dtBC ) cos (u3t ) = dt dt 2dtBD dtCD =
!
2
!
dtBD d_ tBD + dtCD d_ tCD dtBC d_ tBC (d_ tBD dtCD + dtBD d_ tCD ) cos (u3t ) dtBD dtCD 2
2
d d (dtAB ) + (dtAC ) (dtBC ) cos (u4t ) = dt dt 2dtAB dtAD =
!
2
dtAB d_ tAB + dtAC d_ tAC dtBC d_ tBC (d_ tAB dtAC + dtAB d_ tAC ) cos (u4t ) dtAB dtAC
2 2 2
d d (dtAE ) + (dtBE ) (dtAB ) cos (u5t ) = dt dt 2dtAE dtBE
=
dtAE d_ tAE + dtBE d_ tBE dtAB d_ tAB (d_ tAE dtBE + dtAE d_ tBE ) cos (u5t ) dtAE dtBE 2
2
2
d d (dtAE ) + (dtCE ) (dtAC ) cos (u6t ) = dt dt 2dtAE dtCE =
!
dtAE d_ tAE + dtCE d_ tCE dtAC d_ tAC (d_ tAE dtCE + dtAE d_ tCE ) cos (u6t ) dtAE dtCE 2
2
2
d d (dtBE ) + (dtCE ) (dtBC ) cos (u7t ) = dt dt 2dtBE dtCE =
!
!
dtBE d_ tBE + dtCE d_ tCE dtBC d_ tBC (d_ tBE dtCE + dtBE d_ tCE ) cos (u7t ) dtBE dtCE 2
2
2
!
Appendix 1
d d (dtAE ) + (dtDE ) (dtAD ) cos (u8t ) = dt dt 2dtAE dtDE
Establishment of relative motion model
=
According to the cosine law, the relationship among ranges and angles can be formulated as
Therefore, j_ t21 , . . . , j_ t28 can be expressed as
dtAE d_ tAE + dtDE d_ tDE dtAD d_ tAD (d_ tAE dtDE + dtAE d_ tDE ) cos (u8t ) dtAE dtDE
14
International Journal of Distributed Sensor Networks 8 > j_ t21 = > > > > > > > > j_ t22 = > > > > > > > > j_ t23 = > > > > > > > < j_ t24 = > > j_ t25 = > > > > > > > > j_ t26 = > > > > > > > > j_ 27 = > > t > > > > : j_ 28 = t
8 18 2 12 3 18 8 13 21 j3t j13 t + jt j t jt j t (jt j t + j t j t )j t j3t j8t
hence, the relative motion model can be derived as equation (2).
6 16 1 11 3 16 6 13 22 j3t j13 t + jt j t jt j t (jt j t + j t j t )j t j3t j6t 8 18 5 15 6 18 8 16 23 j6t j16 t + jt j t jt j t (jt j t + j t j t )j t j6t j8t 2 12 5 15 1 12 2 11 24 j1t j11 t + jt j t jt j t (jt j t + j t j t )j t 1 2 jt jt 7 17 1 11 4 17 7 14 25 j4t j14 t + jt j t jt j t (jt j t + j t j t )j t j4t j7t 9 19 2 12 4 19 9 14 26 j4t j14 t + jt j t jt j t (jt j t + j t j t )j t j4t j9t 9 19 5 15 7 19 9 17 27 j7t j17 t + jt j t jt j t (jt j t + j t j t )j t j7t j9t 10 20 3 13 4 20 10 14 28 j4t j14 t + jt j t jt j t (jt j t + j t jt )j t j4t j10 t
ð47Þ