# Sequential Multidimensional Scaling with Kalman Filtering for Location Tracking

Authors: Lan Anh Trinh; Nguyen Duc Thang; Dang Viet Hung; Tran Cong Hung
Journal: International Journal of Distributed Sensor Networks
 (2015)

---

## Abstract

Localization always plays a critical role in wireless sensor networks for a wide range of applications including military, healthcare, and robotics. Although the classical multidimensional scaling (MDS) is a conventionally effective model for positioning, the accuracy of this method is affected by noises from the environment. In this paper, we propose a solution to attenuate noise effects to MDS by combining MDS with a Kalman filter. A model is built to predict the noise distribution with regard to additive noises to the distance measurements following the Gaussian distribution. From that, a linear tracking system is developed. The characteristics of the algorithm are examined through simulated experiments and the results reveal the advantages of our method over conventional works in dealing with the above challenges. Besides, the method is simplified with a linear filter; therefore it suits small and embedded sensors equipped with limited power, memory, and computational capacities well.


---

## Body

## 1. Introduction

The sensor, a device that is able to measure and respond to physical input from the environment, has important roles that emerged in our daily life. In addition, a set of sensors embedded with communication capability can form a wireless sensor network to perform complicated tasks. One of the most important applications involves military areas where sensor networks are used for spying, map exploration, and topographic reconstruction. To do so, localization is critical to indicate the position of each sensor with others in a global context. Usually a wireless sensor network is a set of up to hundreds of nodes, in which each node is able to sense the surrounding environment, to perform computations and to communicate with other nodes to accomplish a task. Node localization is needed to report the origin of events in the network, to assist group querying of sensors and geographical routing, and to address network coverage. Therefore, knowing node location is crucial.For decades, localization has mainly been based on Global Positioning System (GPS). However, GPS devices are too big to be fitted into tiny sensors. In addition, GPS cannot be implemented in indoor localization and consumes a lot of energy to be operated. A great deal of efforts over the past few years has focused on the indoor localization problem and on energy saving for small and embedded devices of sensors. A more innovative technique is angle-of-arrival (AOA) that estimates the direction of the arrival signal to point out the location. However, these techniques need antenna systems, resulting in highly complex hardware requirements. Additional drawbacks are connected to errors caused by multipath and non-line-of-sight phenomena.The practical approach suitable for sensor nodes deals with locating nodes by measuring distances between them. The survey of existing approaches is introduced in [1]. There are many solutions available for finding the distance between two sensors. For wireless devices, the general technique involves the received signal strength indicator (RSSI) method that measures the power of the signal at receiver to locate mobile station. Other approaches, including time-of-arrival (TOA) and time-difference-of-arrival (TDOA), analyze the differences between the emitted and returned light from a source to a destination. In recent works [2, 3], non-line-of-sight errors are significantly mitigated with TOA measurement, making this approach promising for practical applications. Basically, the position of an object is determined by converting the obtained measurements to draw circles centered at known-base stations and estimating the intersection of the circles. The intersection of three circles is sufficient to locate a point corresponding to the sensor node in two dimensions (2D). It is noted that the more the distances are discovered from a sensor to its neighbors, the higher the chances will be that the position of that sensor is located exactly. In general, all pairwise distances of all sensors should be used. An effective method to recover the localization maps of sensor nodes using all pairwire distances in a network copes with the multidimensional scaling (MDS). MDS refers to a family of approaches employed for exploratory analysis of multidimensional data. The MDS method was originally proposed by Torgerson [4] where the algorithm was based on metric analyses and the law of cosine to place objects in the Euclidean coordinate system that reflects measured distances or dissimilarity between them. The technique was also applied to represent multidimensional data, especially images in a low-dimensional space for visualization. Till then many researchers attempted to introduce MDS in numerous applications like environmental monitoring, surveillance, transportation, and healthcare. Another important role we want to focus on in this paper is to address localization problems for sensor network [5] and mobile devices [6, 7] with MDS. Agrawal and Patel [5] took advantage of the MDS algorithm for localization in wireless sensor networks that consist of a large number of nodes. The approach was analyzed with numerous simulations to address shortcomings caused by anisotropic network topology and complex terrain. Yet the analysis of the communication costs, messaging complexity, and power consumption was lacking. With regard to the sensor power limits to exploit the distance of nodes in a large-scale network, in [8] the MDS-MAP algorithm has been introduced to approximate the Euclidean distance by the shortest path between nodes. Based on the known local connectivity, a 2D map is constructed and the shortest path is found with Dijkstra’s algorithm. In addition, MDS is also applicable for 3D positioning through distance measurement [9–11].Based on MDS and its variant MDS-MAP, improved MDSs have been proposed. Wu et al. [12] developed a dynamic mobility-assisted MDS localization technique for a mobile sensor network. This method highly depends on the degree of a network since virtual nodes are added to acquire precise locations, causing more data to be transferred over a network and increasing computation cost. In [13], the classical MDS was combined with a neural network to improve location accuracy. Hierarchical MDS (HMDS) [14], ordinal MDS [15], universal MDS [16], improved MDS [17, 18], and deterministic annealing MDS [19] focus on the optimization of MDS. Cluster MDS [20, 21] divided a large network into subgroups so that the estimation on the big matrices is mitigated. Distributed MDS [22] helped share the computational workloads with different sensors in the network. In another aspect, there has been increasing interest on extending the classical MDS algorithm to deal with the environment artifacts on distance measurements.Previously, filtering algorithms have been developed to attenuate measurement errors caused by tracking equipment such as radars and biosensors. However, there is a lack of research focusing on tracking nodes when the distance measurements are available. The main obstacle involves the nonlinear equation expressed to estimate location with respect to the distance between nodes. One of the methods of avoiding nonlinear calculation in tracking involves nonparametric method of the particle filter (PF) [23] in which the node distribution is described by a set of particles. A probabilistic model was established to constrain the distance between nodes. To perform the inference with both unitary and pairwise elements in the probabilistic model, the mean field was used [24]. Since mean field is variational inference, it requires a loop procedure to approximate and to replace the pairwise elements with the unitary ones. The computational time needed for particle filter is highly dependent on the convergence of the mean field approximation. Another kind of nonparametric inference is based sampling process of Markov chain Monte Carlo [25, 26]. Yet, sampling data from a highly multivariate distribution of sensor nodes is complicated. Concerning the parametric based methods, in [27], the nonlinear equation presenting the relationship between the locations of nodes and their distance measurement is linearized by partial derivatives. Consequently extended Kalman (EKL) filter is applied for localization. However, with regard to a large number of nodes, EKL easily leads to a suboptimal solution. Alternatively, the Kalman (KL) filter [23] constructs a linear filter for the tracking problem. Since MDS presents a good model for positioning nodes with distances, the linear KL filter combined with MDS tracking is able to extend tracking with independent nodes to a model where the distances of nodes are taken into account. Besides, the effective implementation of a linear filter makes it suitable for broader practical applications.In this paper, we propose a linear KL filter integrated with MDS for tracking the location of nodes. We show an effective way to find the changing location of a node when the corresponding pairwise distance is measured; from that the KL filter is designed. The paper is organized as follows. Section2 presents the essentials of classical MDS, KL filter, EKL filter, and our proposed tracking filter. Section 3 describes experimental results. Finally, we conclude our work and present further discussion in Section 4.


## 2. Methods

### 2.1. Classical MDS for Localization

So far, MDS [5–7, 28] has been proposed to establish a linear transformation to locate a set of nodes in multidimensional space to fit the similarity between nodes. Suppose that there are N-sensor nodes in a network noted by x
1
,
x
2
,
… and let d
i
j be the dissimilarity measure between ith and jth nodes denoted by the N
×
N pairwise dissimilarity matrix of d
i
j. For the sensor localization problem, the dissimilarity is presented by the Euclidean distance between two points x
i
=
[
x
i
1
,
x
i
2
,
…
,
x
i
m
]
T and x
j
=
[
x
j
1
,
x
j
2
,
…
,
x
j
m
]
T: (1)
d
i
j
=
x
i
-
x
j
=
∑
k
=
1
m
x
i
k
-
x
j
k
2
,where m is the number of dimensions. The target of classical MDS is to find an assignment of nodes [
x
1
,
x
2
,
…
,
x
N
], x
i
=
[
x
i
1
,
x
i
2
,
…
,
x
i
m
]
T, in m-dimensional space that minimizes a target function F
(
Y
) expressed as(2)
F
Y
=
1
2
∑
i
N
∑
j
N
d
i
j
-
y
i
-
y
j
2
X
=
argmin
Y
⁡
F
Y
,where y
i
=
[
y
i
1
,
y
i
2
,
…
,
y
i
m
]
T is a vector in m-dimensional space. In MDS, the elements of X are calculated in two stages including estimating the double centered squared distance matrix and applying eigenvalue decomposition on this double centered squared distance matrix. First, the double centered squared distance matrix is denoted by a matrix B
=
-
1
/
2
C
N
D
C
N, where C
N is a centering operator and is computed as C
N
=
I
N
-
1
/
N
1
1
T, 1 is the column-vector of N ones, and D
i
j
=
d
i
j
2. The elements of matrix B are defined as(3)
b
i
j
=
-
1
2
d
i
j
2
-
1
N
∑
r
=
1
N
d
r
j
2
-
1
N
∑
r
=
1
N
d
i
r
2
+
1
N
2
∑
r
=
1
N
∑
s
=
1
N
d
r
s
2
.It has been shown that B is a matrix of the dot products of all vectors x
i, where d
i
j is calculated using the Euclidean distance [29]. The coefficient 1
/
N appearing in this equation is used to locate the origin of the space where all vectors x
i belong. Since B is positive semidefinite matrix, its eigenvectors always exist.In the second stage, the matrixX is obtained by calculating matrices U and V which result from performing singular decomposition (SVD) to the matrix B:(4)
B
=
U
V
U
T
,
X
=
V
1
/
2
U
T
,where U and V contain all eigenvectors and eigenvalues of the double centered squared distance matrix B. Assume that the eigenvectors are ordered by decreasing eigenvalues and m eigenvectors are retained corresponding to the dimension of the space. The jth coordinate of the vector i is given by(5)
x
i
j
=
λ
j
U
i
j
,where λ
j is the jth eigenvalue of B and U
i
j is the element of U.Performing the SVD of a matrixB with size N
×
N is time consuming [30, 31] since it costs O
(
N
3
) computations with QR decomposition to estimate all eigenvectors and eigenvalues of B. Fortunately, the location problems commonly deal with two- or three-dimensional spaces. Therefore, the complete SVD is unnecessary. In this work, we utilize the fast-fixed point algorithm to estimate the largest eigenvectors of B. In particular, we express the eigenvector estimation as the optimization problem as(6)
minimize
w
⁡
w
T
B
wsubject to w
=
1. This optimization problem is effectively solved by the fast-fixed point updates as follows:(7)
w
⟵
B
w
.The normalization is applied at each iteration, w
←
w
/
w. Consequently, the pth eigenvector is found in a similar manner, while the Gram-Schmidt process is used to make the pth eigenvector uncorrelated with the other eigenvectors:(8)
w
p
⟵
B
w
p
,
w
p
⟵
w
p
-
∑
j
=
1
p
-
1
w
p
T
w
j
w
j
.The eigenvalue corresponding to each eigenvector is simply calculated as (9)
λ
p
=
B
w
p
.The incremental updates presented in (8) and (9) need several iterations to converge.


### 2.2. Kalman Filtering

The KL filter [23] is the estimate of hidden states of a system given its measurements (or observations). This filter deals with the appearance of Gaussian noise in both state transition and measurement process. The KL filter is modeled by(10)
θ
k
=
F
k
θ
k
-
1
+
w
k
-
1
,
Z
k
=
H
k
θ
k
+
ν
k
,where w
k
-
1 and ν
k are the Gaussian noises coming from the transition process from state k
-
1 to k and from measurement, θ
k is the state of the system at the time index k, and Z
k is the measurement of H
k
θ
k. The matrix F
k is used to predict the state from the previous one and the matrix H
k presents the measurements given the state. Suppose that the process error w
k
-
1and measurement error v
k are zero mean Gaussian noises with covariance matrices of Q
k and R
k, respectively. The predictions thereby are performed by (11)
θ
k
∣
k
-
1
=
F
k
θ
k
-
1
,
P
k
∣
k
-
1
=
F
k
P
k
-
1
F
k
T
+
Q
k
.Meanwhile, a set of updated equations [23] are given by (12)
δ
Z
k
=
Z
k
-
H
k
θ
k
∣
k
-
1
,
S
k
=
H
k
P
k
∣
k
-
1
H
k
T
+
R
k
,
K
k
=
P
k
∣
k
-
1
H
k
T
S
k
-
1
,
X
k
=
X
k
∣
k
-
1
+
K
k
δ
Z
k
,
P
k
=
I
-
K
k
H
k
P
k
∣
k
-
1
,where I is the identity matrix, δ
Z
k is the difference between predicted observation and measurement, P
k is the covariance matrix of state errors, and K
k is the Kalman gain.


### 2.3. MDS with Kalman Filter for Tracking Location of Nodes

Obviously, the function to locate sensor nodes from distance realized in (5) is nonlinear and is based on eigenvalue decomposition. Therefore, it is complicated to establish a direct model to reflect the pairwise distance errors with the node locations. In this work, we track the changes of the double centered square distance matrix B
k from the given measurement D
k. The state of the tracking system is the vector (13)
θ
k
=
v
e
c
t
B
k
.Meanwhile, the measurement vector Z
k is the double centered square distance matrix of the real distance measurement D
~
k:(14)
Z
k
=
v
e
c
t
-
1
2
J
D
~
k
J
.It is obvious that the noise model to reflect the measurement error Z
k no longer follows Gaussian noise and the KL filter cannot be applied. In order to find the error ν
k of estimating Z
k, we start from the measurement error of the distances between two sensor nodes i and j: (15)
d
~
i
j
,
k
=
d
i
j
,
k
+
ω
i
j
,
k
,where ω
i
j
,
k
~
N
(
0
,
σ
i
j
,
k
2
) is independent and identically distributed (i.i.d) noise and d
~
i
j
,
k is the actual distance measured by sensors. Let N
(
0
,
σ
i
j
,
k
2
) be Gaussian noise with zero mean and variance σ
i
j
,
k
2. A model widely used in the literature assumes that artifacts increase with a longer measurement distance [22, 32]. In this case, σ
i
j
,
k
2
=
d
i
j
,
k
2
/
γ
2, where γ is a constant value. In this work, errors to estimate the squared distance matrix D
k, D
i
j
,
k
=
d
i
j
,
k
2 are expressed by a vector ξ
k
=
v
e
c
t
(
E
k
), where (16)
E
i
j
,
k
=
r
i
j
,
k
2
-
d
i
j
,
k
2
=
2
d
i
j
,
k
ω
i
j
,
k
+
ω
i
j
,
k
2
≈
2
d
i
j
,
k
ω
i
j
,
k
.Since the value of d
i
j
,
k is unknown, the estimation ofξ
k is nontrivial. We use d
~
i
j
,
k instead to further approximate [
E
]
i
j
,
k as [
E
]
i
j
,
k
≈
2
d
~
i
j
,
k
ω
i
j
,
k. Therefore, the covariance matrix of this measurement error is defined as(17)
R
k
=
E
ξ
k
ξ
k
T
=
4
Ψ
k
Ξ
k
Ψ
k
,
Ψ
k
=
diag
⁡
d
~
11
,
k
,
d
~
12
,
k
,
…
,
d
~
N
N
,
k
,
Ξ
k
=
diag
⁡
σ
11
,
k
2
,
σ
12
,
k
2
,
…
,
σ
N
N
,
k
2
.Based on the definition of B
k
=
-
1
/
2
C
N
D
~
k
C
N, we have(18)
Z
k
=
v
e
c
t
B
k
=
-
1
2
C
N
⊗
C
N
v
e
c
t
D
~
k
,where ⊗ is the Kronecker product. Let Λ
=
C
N
⊗
C
N; the covariance matrix of estimating Z
k is given by(19)
E
v
e
c
t
B
k
v
e
c
t
B
k
T
=
Λ
Ψ
k
Ξ
k
Ψ
k
Λ
.Now, we establish the state equation and the measurement error for tracking sensor position based on MDS. Let the definition of the state of the system be a vector with size N
2
×
1, θ
k
=
v
e
c
t
(
B
k
). The corresponding state equation can be presented as (20)
θ
k
=
F
θ
k
-
1
+
w
k
,where F
=
I
N
2. A variety of the model can be concerned to describe the transition process from θ
k
-
1 to θ
k. Nevertheless, we employ a low motion estimate in which a moving step is modeled by a random walk process with variance Q
k
=
σ
w
2
I
N
2. Meanwhile, Z
k holds the measurements of the pairwise distance matrix after being doubled centered: (21)
Z
k
=
v
e
c
t
B
~
k
=
H
θ
k
+
ν
k
,where H is simply defined as I
N
2. Finally, the covariance matrix of ν
k is computed by(22)
R
k
=
E
ν
k
ν
k
T
=
Λ
Ψ
k
Ξ
k
Ψ
k
Λ
.After all matrices F
k, H
k, Q
k, and R
k are well defined, prediction and update are performed normally as described in (11) and (12), respectively. Since the state of the system described by B
k is tracked on each frame, the corresponding eigenvector and eigenvalue are computed and the node location is found. Note that the nodes from B
k are centered around the origin since B
k is doubly centered. Therefore, some beacons with known locations are used to perform registration of rigid transformations including translation, rotation, and reflection to move a point cloud to the right position.LetX
A and X
B be the coordinates of beacons of two consecutive snapshots. The registration of rotation/reflection matrix R is computed by minimizing(23)
R
=
minimize
R
⁡
X
A
-
R
X
B
2
.The solution for this problem is acquired by estimating the SVD of matrix X
A
X
B
T
=
U
A
B
Λ
A
B
V
A
B
T and(24)
R
=
U
A
B
V
A
B
T
.Let μ
A and μ
B be the centers of the two sets A and B, respectively. With regard to the above transformation, the whole set of nodes Y
B is registered to the whole set Y
A by(25)
Y
B
=
R
Y
B
-
μ
A
+
μ
B
.


### 2.4. Tracking with Extended Kalman Filtering

In EKL [23], the matrices F
k and H
k in (10) are described by nonlinear functions: (26)
θ
k
=
f
θ
k
-
1
+
w
k
-
1
,
Z
k
=
h
θ
k
+
ν
k
.The prediction and update steps are performed normally in which the Jacobian matrices of f and g are used to present F
k and H
k, respectively:(27)
F
k
=
∂
f
∂
θ
θ
k
-
1
,
H
k
=
∂
h
∂
θ
θ
k
.Besides, there are some modifications on (11) and (12) given as follows: (28)
θ
k
∣
k
-
1
=
f
θ
k
-
1
δ
Z
k
=
Z
k
-
h
θ
k
∣
k
-
1
.In the work presented in [27], the EKL filter is applied for tracking nodes with the pairwise measurements. Similarly, we establish the testing environment where the distance measurements are available. Therefore, the measurement vector Z
k, a vector with a size N
2
×
1, is expressed by(29)
Z
k
=
v
e
c
t
d
~
11
,
k
⋯
d
~
1
N
,
k
⋮
⋱
⋮
d
~
N
1
,
k
⋯
d
~
N
N
,
k
=
d
11
,
k
d
12
,
k
⋯
d
N
N
,
k
T
+
ν
k
.As aforementioned, d
~
i
j
,
k is the actual range measured by sensors. The same additive noises as presented by (15) are used to model the artifacts on the measurements. Thus the noise vector ν
k is formed by concatenating the i.d.d noise sources ω
i
j
,
k
~
N
(
0
,
σ
i
j
,
k
2
), σ
i
j
,
k
2
≈
d
~
i
j
,
k
2
/
γ
2, and(30)
v
k
=
v
e
c
t
ω
11
,
k
⋯
ω
1
N
,
k
⋮
⋱
⋮
ω
N
1
,
k
⋯
ω
N
N
,
k
=
ω
11
,
k
ω
12
,
k
⋯
ω
N
N
,
k
T
.The corresponding covariance matrix R
k of ν
k is modeled by(31)
R
k
=
d
~
11
,
k
2
γ
2
⋯
0
⋮
⋱
⋮
0
⋯
d
~
N
N
,
k
2
γ
2
N
2
×
N
2
.The state of a system θ
k is a vector of a size m
N
×
1 created by v
e
c
t
(
ϕ
k
), where(32)
ϕ
k
=
x
1
,
k
,
x
2
,
k
,
…
,
x
N
,
k
=
x
11
,
k
x
21
,
k
⋯
x
N
1
,
k
x
12
,
k
x
22
,
k
⋯
x
N
2
,
k
⋮
⋮
⋮
⋮
x
1
m
,
k
x
2
m
,
k
⋯
x
N
m
,
k
.It is noted that x
i
,
k
=
[
x
i
1
,
k
,
x
i
2
,
k
,
…
,
x
i
m
,
k
]
T is the coordinate of the point i in the snapshot k. The transition from θ
k
-
1 to θ
k is simply presented by the random walk process with the variance Q
k
=
σ
w
2
I
N
2, F
k
=
I
m
×
N, and f
θ
k
-
1
=
F
k
θ
k
-
1. However, the function h
(
θ
k
) is nonlinear:(33)
h
θ
k
=
d
11
,
k
d
12
,
k
⋯
d
N
N
,
k
Tin which d
i
j
,
k
=
x
i
,
k
-
x
j
,
k
=
∑
l
=
1
m
(
x
i
l
,
k
-
x
j
l
,
k
)
2. Thus, the Jacobian matrix H
k
=
(
∂
h
/
∂
θ
)
θ
k is a matrix of partial derivatives ∂
d
i
j
,
k
/
∂
x
i
l
,
k and ∂
d
i
j
,
k
/
∂
x
j
l
,
k, j
=
1,2
,
…
,
m.From the definedF
k, H
k, Q
k, and R
k, the predict and update steps of EKL are performed normally as KL filter. However, as H
k is the Jacobian matrix of the nonlinear function in high dimensional space, the update of EKL may approach the suboptimal solution. Thus, the number of nonlinear constraints is usually relaxed by applying EKL on separate groups of nodes and the tracking results are combined for the whole network.


## 2.1. Classical MDS for Localization

So far, MDS [5–7, 28] has been proposed to establish a linear transformation to locate a set of nodes in multidimensional space to fit the similarity between nodes. Suppose that there are N-sensor nodes in a network noted by x
1
,
x
2
,
… and let d
i
j be the dissimilarity measure between ith and jth nodes denoted by the N
×
N pairwise dissimilarity matrix of d
i
j. For the sensor localization problem, the dissimilarity is presented by the Euclidean distance between two points x
i
=
[
x
i
1
,
x
i
2
,
…
,
x
i
m
]
T and x
j
=
[
x
j
1
,
x
j
2
,
…
,
x
j
m
]
T: (1)
d
i
j
=
x
i
-
x
j
=
∑
k
=
1
m
x
i
k
-
x
j
k
2
,where m is the number of dimensions. The target of classical MDS is to find an assignment of nodes [
x
1
,
x
2
,
…
,
x
N
], x
i
=
[
x
i
1
,
x
i
2
,
…
,
x
i
m
]
T, in m-dimensional space that minimizes a target function F
(
Y
) expressed as(2)
F
Y
=
1
2
∑
i
N
∑
j
N
d
i
j
-
y
i
-
y
j
2
X
=
argmin
Y
⁡
F
Y
,where y
i
=
[
y
i
1
,
y
i
2
,
…
,
y
i
m
]
T is a vector in m-dimensional space. In MDS, the elements of X are calculated in two stages including estimating the double centered squared distance matrix and applying eigenvalue decomposition on this double centered squared distance matrix. First, the double centered squared distance matrix is denoted by a matrix B
=
-
1
/
2
C
N
D
C
N, where C
N is a centering operator and is computed as C
N
=
I
N
-
1
/
N
1
1
T, 1 is the column-vector of N ones, and D
i
j
=
d
i
j
2. The elements of matrix B are defined as(3)
b
i
j
=
-
1
2
d
i
j
2
-
1
N
∑
r
=
1
N
d
r
j
2
-
1
N
∑
r
=
1
N
d
i
r
2
+
1
N
2
∑
r
=
1
N
∑
s
=
1
N
d
r
s
2
.It has been shown that B is a matrix of the dot products of all vectors x
i, where d
i
j is calculated using the Euclidean distance [29]. The coefficient 1
/
N appearing in this equation is used to locate the origin of the space where all vectors x
i belong. Since B is positive semidefinite matrix, its eigenvectors always exist.In the second stage, the matrixX is obtained by calculating matrices U and V which result from performing singular decomposition (SVD) to the matrix B:(4)
B
=
U
V
U
T
,
X
=
V
1
/
2
U
T
,where U and V contain all eigenvectors and eigenvalues of the double centered squared distance matrix B. Assume that the eigenvectors are ordered by decreasing eigenvalues and m eigenvectors are retained corresponding to the dimension of the space. The jth coordinate of the vector i is given by(5)
x
i
j
=
λ
j
U
i
j
,where λ
j is the jth eigenvalue of B and U
i
j is the element of U.Performing the SVD of a matrixB with size N
×
N is time consuming [30, 31] since it costs O
(
N
3
) computations with QR decomposition to estimate all eigenvectors and eigenvalues of B. Fortunately, the location problems commonly deal with two- or three-dimensional spaces. Therefore, the complete SVD is unnecessary. In this work, we utilize the fast-fixed point algorithm to estimate the largest eigenvectors of B. In particular, we express the eigenvector estimation as the optimization problem as(6)
minimize
w
⁡
w
T
B
wsubject to w
=
1. This optimization problem is effectively solved by the fast-fixed point updates as follows:(7)
w
⟵
B
w
.The normalization is applied at each iteration, w
←
w
/
w. Consequently, the pth eigenvector is found in a similar manner, while the Gram-Schmidt process is used to make the pth eigenvector uncorrelated with the other eigenvectors:(8)
w
p
⟵
B
w
p
,
w
p
⟵
w
p
-
∑
j
=
1
p
-
1
w
p
T
w
j
w
j
.The eigenvalue corresponding to each eigenvector is simply calculated as (9)
λ
p
=
B
w
p
.The incremental updates presented in (8) and (9) need several iterations to converge.


## 2.2. Kalman Filtering

The KL filter [23] is the estimate of hidden states of a system given its measurements (or observations). This filter deals with the appearance of Gaussian noise in both state transition and measurement process. The KL filter is modeled by(10)
θ
k
=
F
k
θ
k
-
1
+
w
k
-
1
,
Z
k
=
H
k
θ
k
+
ν
k
,where w
k
-
1 and ν
k are the Gaussian noises coming from the transition process from state k
-
1 to k and from measurement, θ
k is the state of the system at the time index k, and Z
k is the measurement of H
k
θ
k. The matrix F
k is used to predict the state from the previous one and the matrix H
k presents the measurements given the state. Suppose that the process error w
k
-
1and measurement error v
k are zero mean Gaussian noises with covariance matrices of Q
k and R
k, respectively. The predictions thereby are performed by (11)
θ
k
∣
k
-
1
=
F
k
θ
k
-
1
,
P
k
∣
k
-
1
=
F
k
P
k
-
1
F
k
T
+
Q
k
.Meanwhile, a set of updated equations [23] are given by (12)
δ
Z
k
=
Z
k
-
H
k
θ
k
∣
k
-
1
,
S
k
=
H
k
P
k
∣
k
-
1
H
k
T
+
R
k
,
K
k
=
P
k
∣
k
-
1
H
k
T
S
k
-
1
,
X
k
=
X
k
∣
k
-
1
+
K
k
δ
Z
k
,
P
k
=
I
-
K
k
H
k
P
k
∣
k
-
1
,where I is the identity matrix, δ
Z
k is the difference between predicted observation and measurement, P
k is the covariance matrix of state errors, and K
k is the Kalman gain.


## 2.3. MDS with Kalman Filter for Tracking Location of Nodes

Obviously, the function to locate sensor nodes from distance realized in (5) is nonlinear and is based on eigenvalue decomposition. Therefore, it is complicated to establish a direct model to reflect the pairwise distance errors with the node locations. In this work, we track the changes of the double centered square distance matrix B
k from the given measurement D
k. The state of the tracking system is the vector (13)
θ
k
=
v
e
c
t
B
k
.Meanwhile, the measurement vector Z
k is the double centered square distance matrix of the real distance measurement D
~
k:(14)
Z
k
=
v
e
c
t
-
1
2
J
D
~
k
J
.It is obvious that the noise model to reflect the measurement error Z
k no longer follows Gaussian noise and the KL filter cannot be applied. In order to find the error ν
k of estimating Z
k, we start from the measurement error of the distances between two sensor nodes i and j: (15)
d
~
i
j
,
k
=
d
i
j
,
k
+
ω
i
j
,
k
,where ω
i
j
,
k
~
N
(
0
,
σ
i
j
,
k
2
) is independent and identically distributed (i.i.d) noise and d
~
i
j
,
k is the actual distance measured by sensors. Let N
(
0
,
σ
i
j
,
k
2
) be Gaussian noise with zero mean and variance σ
i
j
,
k
2. A model widely used in the literature assumes that artifacts increase with a longer measurement distance [22, 32]. In this case, σ
i
j
,
k
2
=
d
i
j
,
k
2
/
γ
2, where γ is a constant value. In this work, errors to estimate the squared distance matrix D
k, D
i
j
,
k
=
d
i
j
,
k
2 are expressed by a vector ξ
k
=
v
e
c
t
(
E
k
), where (16)
E
i
j
,
k
=
r
i
j
,
k
2
-
d
i
j
,
k
2
=
2
d
i
j
,
k
ω
i
j
,
k
+
ω
i
j
,
k
2
≈
2
d
i
j
,
k
ω
i
j
,
k
.Since the value of d
i
j
,
k is unknown, the estimation ofξ
k is nontrivial. We use d
~
i
j
,
k instead to further approximate [
E
]
i
j
,
k as [
E
]
i
j
,
k
≈
2
d
~
i
j
,
k
ω
i
j
,
k. Therefore, the covariance matrix of this measurement error is defined as(17)
R
k
=
E
ξ
k
ξ
k
T
=
4
Ψ
k
Ξ
k
Ψ
k
,
Ψ
k
=
diag
⁡
d
~
11
,
k
,
d
~
12
,
k
,
…
,
d
~
N
N
,
k
,
Ξ
k
=
diag
⁡
σ
11
,
k
2
,
σ
12
,
k
2
,
…
,
σ
N
N
,
k
2
.Based on the definition of B
k
=
-
1
/
2
C
N
D
~
k
C
N, we have(18)
Z
k
=
v
e
c
t
B
k
=
-
1
2
C
N
⊗
C
N
v
e
c
t
D
~
k
,where ⊗ is the Kronecker product. Let Λ
=
C
N
⊗
C
N; the covariance matrix of estimating Z
k is given by(19)
E
v
e
c
t
B
k
v
e
c
t
B
k
T
=
Λ
Ψ
k
Ξ
k
Ψ
k
Λ
.Now, we establish the state equation and the measurement error for tracking sensor position based on MDS. Let the definition of the state of the system be a vector with size N
2
×
1, θ
k
=
v
e
c
t
(
B
k
). The corresponding state equation can be presented as (20)
θ
k
=
F
θ
k
-
1
+
w
k
,where F
=
I
N
2. A variety of the model can be concerned to describe the transition process from θ
k
-
1 to θ
k. Nevertheless, we employ a low motion estimate in which a moving step is modeled by a random walk process with variance Q
k
=
σ
w
2
I
N
2. Meanwhile, Z
k holds the measurements of the pairwise distance matrix after being doubled centered: (21)
Z
k
=
v
e
c
t
B
~
k
=
H
θ
k
+
ν
k
,where H is simply defined as I
N
2. Finally, the covariance matrix of ν
k is computed by(22)
R
k
=
E
ν
k
ν
k
T
=
Λ
Ψ
k
Ξ
k
Ψ
k
Λ
.After all matrices F
k, H
k, Q
k, and R
k are well defined, prediction and update are performed normally as described in (11) and (12), respectively. Since the state of the system described by B
k is tracked on each frame, the corresponding eigenvector and eigenvalue are computed and the node location is found. Note that the nodes from B
k are centered around the origin since B
k is doubly centered. Therefore, some beacons with known locations are used to perform registration of rigid transformations including translation, rotation, and reflection to move a point cloud to the right position.LetX
A and X
B be the coordinates of beacons of two consecutive snapshots. The registration of rotation/reflection matrix R is computed by minimizing(23)
R
=
minimize
R
⁡
X
A
-
R
X
B
2
.The solution for this problem is acquired by estimating the SVD of matrix X
A
X
B
T
=
U
A
B
Λ
A
B
V
A
B
T and(24)
R
=
U
A
B
V
A
B
T
.Let μ
A and μ
B be the centers of the two sets A and B, respectively. With regard to the above transformation, the whole set of nodes Y
B is registered to the whole set Y
A by(25)
Y
B
=
R
Y
B
-
μ
A
+
μ
B
.


## 2.4. Tracking with Extended Kalman Filtering

In EKL [23], the matrices F
k and H
k in (10) are described by nonlinear functions: (26)
θ
k
=
f
θ
k
-
1
+
w
k
-
1
,
Z
k
=
h
θ
k
+
ν
k
.The prediction and update steps are performed normally in which the Jacobian matrices of f and g are used to present F
k and H
k, respectively:(27)
F
k
=
∂
f
∂
θ
θ
k
-
1
,
H
k
=
∂
h
∂
θ
θ
k
.Besides, there are some modifications on (11) and (12) given as follows: (28)
θ
k
∣
k
-
1
=
f
θ
k
-
1
δ
Z
k
=
Z
k
-
h
θ
k
∣
k
-
1
.In the work presented in [27], the EKL filter is applied for tracking nodes with the pairwise measurements. Similarly, we establish the testing environment where the distance measurements are available. Therefore, the measurement vector Z
k, a vector with a size N
2
×
1, is expressed by(29)
Z
k
=
v
e
c
t
d
~
11
,
k
⋯
d
~
1
N
,
k
⋮
⋱
⋮
d
~
N
1
,
k
⋯
d
~
N
N
,
k
=
d
11
,
k
d
12
,
k
⋯
d
N
N
,
k
T
+
ν
k
.As aforementioned, d
~
i
j
,
k is the actual range measured by sensors. The same additive noises as presented by (15) are used to model the artifacts on the measurements. Thus the noise vector ν
k is formed by concatenating the i.d.d noise sources ω
i
j
,
k
~
N
(
0
,
σ
i
j
,
k
2
), σ
i
j
,
k
2
≈
d
~
i
j
,
k
2
/
γ
2, and(30)
v
k
=
v
e
c
t
ω
11
,
k
⋯
ω
1
N
,
k
⋮
⋱
⋮
ω
N
1
,
k
⋯
ω
N
N
,
k
=
ω
11
,
k
ω
12
,
k
⋯
ω
N
N
,
k
T
.The corresponding covariance matrix R
k of ν
k is modeled by(31)
R
k
=
d
~
11
,
k
2
γ
2
⋯
0
⋮
⋱
⋮
0
⋯
d
~
N
N
,
k
2
γ
2
N
2
×
N
2
.The state of a system θ
k is a vector of a size m
N
×
1 created by v
e
c
t
(
ϕ
k
), where(32)
ϕ
k
=
x
1
,
k
,
x
2
,
k
,
…
,
x
N
,
k
=
x
11
,
k
x
21
,
k
⋯
x
N
1
,
k
x
12
,
k
x
22
,
k
⋯
x
N
2
,
k
⋮
⋮
⋮
⋮
x
1
m
,
k
x
2
m
,
k
⋯
x
N
m
,
k
.It is noted that x
i
,
k
=
[
x
i
1
,
k
,
x
i
2
,
k
,
…
,
x
i
m
,
k
]
T is the coordinate of the point i in the snapshot k. The transition from θ
k
-
1 to θ
k is simply presented by the random walk process with the variance Q
k
=
σ
w
2
I
N
2, F
k
=
I
m
×
N, and f
θ
k
-
1
=
F
k
θ
k
-
1. However, the function h
(
θ
k
) is nonlinear:(33)
h
θ
k
=
d
11
,
k
d
12
,
k
⋯
d
N
N
,
k
Tin which d
i
j
,
k
=
x
i
,
k
-
x
j
,
k
=
∑
l
=
1
m
(
x
i
l
,
k
-
x
j
l
,
k
)
2. Thus, the Jacobian matrix H
k
=
(
∂
h
/
∂
θ
)
θ
k is a matrix of partial derivatives ∂
d
i
j
,
k
/
∂
x
i
l
,
k and ∂
d
i
j
,
k
/
∂
x
j
l
,
k, j
=
1,2
,
…
,
m.From the definedF
k, H
k, Q
k, and R
k, the predict and update steps of EKL are performed normally as KL filter. However, as H
k is the Jacobian matrix of the nonlinear function in high dimensional space, the update of EKL may approach the suboptimal solution. Thus, the number of nonlinear constraints is usually relaxed by applying EKL on separate groups of nodes and the tracking results are combined for the whole network.


## 3. Experimental Results

This section shows the performance of the proposed tracking algorithm when compared with conventional approaches of localization without tracking. First of all, a fully connected network ofN
=
20 sensor nodes in 2D is used for evaluation. The nodes are initially distributed in an area of 100
m
×
100
m and four beacons at the coordinates (20, 20) m, (20, 80) m, (80, 20) m, and (80, 80) m are fixed for the rigid registration of nodes. At each time snapshot, the nodes move away from the beacons in both vertical and horizontal directions. The moving step is uniformly assigned in the range (0, 2) m. With regard to noise increases proportional to the distance between nodes, the accuracy of location estimation decays overtime. To compare the performance of alternative approaches, the mean error distance (MED) at the k-snapshot is calculated as(34)
M
E
D
k
=
∑
i
=
1
N
d
i
,
k
N
,where d
i
,
k is distance difference between the real (x
~
i
,
k
,
y
~
i
,
k) and the estimated location (
x
i
,
k
,
y
i
,
k
) of the nodes d
i
,
k
=
(
x
i
,
k
-
x
~
i
,
k
)
2
+
(
y
i
,
k
-
y
~
i
,
k
)
2.As aforementioned, the distance measurements are affected by additive noise due to the power loss of the signal during transmission. The amplitude or variance of the noise is proportional to the distance between nodes by the equationσ
i
j
2
=
d
i
j
2
/
γ
2. For the first evaluation, we compare MED over the snapshot for different value of γ, in particular, 10
l
o
g
10
γ
=
10
d
B, 1
0
l
o
g
10
γ
=
20
d
B, and 10
l
o
g
10
γ
=
30
d
B, respectively, and show the compared results in Figure 1. Once the nodes move far away from the origin, the noises raise more effects on the range measurement. Thus the localization outcomes acquired by MDS are less accurate. Meanwhile, the errors specified by MED of our MDS integrated with KL filter are attenuated and are lower than that of conventional MDS. Besides, MED returned by conventional MDS may be as large as several hundreds of meters. The MED estimated by our approach is approximately less than 5 m with 10
l
o
g
10
γ
=
30
d
B, less than 20 m with 10
l
o
g
10
γ
=
20
d
B, and less than 50m with 10
l
o
g
10
γ
=
10
d
B. This shows the efficiency of our proposed approach to enhance the performance of location tracking.Figure 1
MED versus snapshot for (a)10
l
o
g
10
γ
=
10
d
B, (b) 10
l
o
g
10
γ
=
20
d
B, and (c) 10
l
o
g
10
γ
=
30
d
B.
(a)
(b)
(c)The qualitative evaluation of the MDS combined with KL filter is conducted by showing the positions between the original nodes and their estimations. An example of distribution of sensor nodes at the snapshot 200 andγ
=
50 is depicted in Figure 2. Due to noises, the estimated positions are shifted far from the true coordinates of nodes. From another aspect, an example of trajectories of a node at the snapshot 300 found by MDS and our method are compared with the ground truth as described in Figure 3 (10
l
o
g
10
γ
=
20
d
B). Obviously, the moving trajectory of a node found by MDS presents rapid changes even between two consecutive snapshots. The node trajectory found by MDS filtered with KL is smoother and more fitted to the real movement of nodes.Figure 2
True and estimated position of sensor nodes.
(a)
Localization by conventional MDS
(b)
Localization by our proposed MDS combined with KL filterFigure 3
Estimated trajectories of sensor nodes.Finally, we evaluate the efficiency of the proposed approach against conventional MDS [5–7] described in Section 2.1 and EKL [27] in Section 2.3 for tracking nodes based on the range measurements. Two fully connected networks of N
=
10 and of N
=
20 sensors in 2D are examined. To estimate the overall accuracy of locating the position of nodes over 500 snapshots, we compute the average MED. The overall comparison is shown in Figure 4 where different values of γ are validated. Although EKL mitigates the artifacts of range measurements, the proposed MDS with tracking is always superior to both conventional MDS and EKL to address localization problems.Figure 4
Averaged MED over 500 snapshots versusγ.
(a)
Number of nodesN
=
10
(b)
Number of nodesN
=
20


## 4. Conclusions and Future Work

In this paper, an effective tracking algorithm has been proposed for tracking the position of sensors by measuring the distances between them. Basically using three beacons with known locations, a sensor is approximately located. In the case a pairwise distance matrix of all sensor nodes is provided, MDS is utilized. However, due to the energy loss of transmitting signals from a source to a detector, the distance measurement is affected with noise. In particular, the noise level increases when a sensor node is far away from the others. This correspondingly reduces the accuracy of the MDS approach. Therefore, we have combined conventional MDS with the KL filter for location tracking. Our proposed approach is validated with simulation experiments and we showed that our algorithm is superior to the conventional MDS and EKL tracking on the localization accuracy. The algorithm is effective and significantly reduces the noise effects from a real environment. Therefore, the proposed method has potential to address mobile sensor localization with the practical requirement of high accuracy localization.In future work, we target applying our algorithm to partially connected networks where the distance measurement is feasible for only close-by nodes. Besides, the KL filter can be extended into the Bernoulli filter [33] to address the localization problem of switching the states (on/off) of sensors.



---

*Source: 584912-2015-11-11.xml*