AN ABSTRACT OF THE DISSERTATION OF
Tianzhu Qiao for the degree of Doctor of Philosophy in Electrical and Computer
Engineering presented on September 18, 2014.
Title: Position Estimation in Indoor Localization System
Abstract approved:
Huaping Liu
Indoor positioning systems can be used for many applications such as indoor navigation,
emergence response, asset monitoring, and shopper assistance. Due to the weak received
signal and multipath reflection, the global positioning system (GPS) generally does not
work in indoor environments. There are a variety of radio frequency (RF) signals and
systems available for indoor localization, e.g., radio-frequency identification (RFID), cellular network, Bluetooth, WiFi, and ultrawideband (UWB) systems. For high-precision
localization using RF signals, commonly used techniques include time-of-arrival (TOA)
and time-difference-of-arrival (TDOA). Although various aspects of TOA and TDOA
systems have been studied extensively, new techniques are still needed to improve two
key position estimation aspects: accuracy and complexity.
In the first part of this dissertation, we focus on position estimation methods assuming line-of-sight (LOS) propagation. Anchor layout is an important area that affects
localization performance. Generally the Cramér-Rao lower bound (CRLB) can be used
to find the optimal anchor layout. However, it is computationally expensive and not suitable for fast deployment. We propose an incremental anchor layout method (ICALM)
based on the largest range measurement change criterion, which is very easy to implement.
For TOA systems, an improved method of moments (IMOM) algorithm is proposed
to improve the estimation accuracy at the expense of a slightly increased computational
complexity. For TDOA systems, we propose a maximal likelihood (ML) based coarse
position estimation method to provide the initial position for the nonlinear least squares
(NLLS) method. The goal of this proposed method is to substantially increase the stability of the NLLS method. In order to reduce estimation complexity, we propose a nonlinear expectation maximization (NLEM) based estimator. This estimator transforms the
high-dimensional estimation problem into several 1-dimensional problems, which does
not need any matrix manipulations and is much simpler to implement than the NLLS
and ML methods.
In practice, none-line-of-sight (NLOS) links often exist. In the second part of this
dissertation, we focus on methods for NLOS mitigation. When all the range measurements suffer from severe NLOS errors, no methods could work well without additional
information. However, when only part of the range measurements suffer from NLOS
propagation, and the LOS range measurements are sufficient for position estimation, it
is possible to improve the accuracy without any a priori information. We propose an
improved least median squares (ILMedS) algorithm, which uses the residue to weight all
the anchors and adaptively searches for the largest group of the reliable links for final
estimation. It greatly decreases the probability of reaching the outliers and increases the
accuracy. At the same time, all the methods developed for the LOS scenarios can be
directly applied as the core estimator.
Since ILMedS needs to calculate a location estimate for each subset, its computational complexity is high. We propose a particle filter based position estimation (PFPE)
method for NLOS mitigation, which uses particles to represent the potential target.
Each particle utilizes the range measurements to update its position. It is much easier
to implement than the ILMedS method, while their performances are very similar.
c
Copyright
by Tianzhu Qiao
September 18, 2014
All Rights Reserved
Position Estimation in Indoor Localization System
by
Tianzhu Qiao
A DISSERTATION
submitted to
Oregon State University
in partial fulfillment of
the requirements for the
degree of
Doctor of Philosophy
Presented September 18, 2014
Commencement June 2015
Doctor of Philosophy dissertation of Tianzhu Qiao presented on September 18, 2014.
APPROVED:
Major Professor, representing Electrical and Computer Engineering
Director of the School of Electrical Engineering and Computer Science
Dean of the Graduate School
I understand that my dissertation will become part of the permanent collection of
Oregon State University libraries. My signature below authorizes release of my
dissertation to any reader upon request.
Tianzhu Qiao, Author
TABLE OF CONTENTS
Page
1
Introduction
1.1 Introduction
2
1
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1
1.2 Summary of Contribution . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6
1.3 Dissertation Outline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8
Signal Model
10
2.1 TOA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.1.1 PDF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.1.2 FIM and CRLB . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.2 TDOA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.2.1 PDF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.2.2 FIM and CRLB . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.3 Range Measurement Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.4 CRLB Simulation
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.5 Incremental Anchor Layout Method
2.5.1 TOA . . . . . . . . . . . .
2.5.2 TDOA . . . . . . . . . . .
2.5.3 Cluster TDOA . . . . . . .
2.5.4 Simulation . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
24
25
28
29
33
2.6 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
3
Method of Moments Estimator
38
3.1 First Order Method of Moments Estimator for TOA Systems
3.1.1 Issues of the MOM Algorithm . . . . . . . . . . . .
3.1.2 Performance in AWGN . . . . . . . . . . . . . . . .
3.1.3 Iterative Approach . . . . . . . . . . . . . . . . . . .
3.1.4 IMOM Approach . . . . . . . . . . . . . . . . . . . .
3.1.5 Computational Complexity . . . . . . . . . . . . . .
3.1.6 Simulation . . . . . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
38
41
42
45
47
50
51
3.2 Second Order Method of Moments . . .
3.2.1 Issues of the MOM Algorithm
3.2.2 Performance in AWGN . . . .
3.2.3 Computational Complexity . .
3.2.4 Simulation . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
55
56
57
58
58
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
TABLE OF CONTENTS (Continued)
Page
3.2.5 Comparisons between the First and Second Order MOM Estimators 60
3.3 TDOA .
3.3.1
3.3.2
3.3.3
. . . . . . . . . . . . . . . .
Performance in AWGN . .
Computational Complexity
Simulation . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
63
64
66
66
3.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
4
Nonlinear Least Square Estimator
70
4.1 TOA . .
4.1.1
4.1.2
4.1.3
4.1.4
4.1.5
4.1.6
. . . . . . . . . . . . . . . .
Comparison between NLLS
Online NLLS Estimator . .
Performance in AWGN . .
Linearization Error . . . .
Computational Complexity
Simulation . . . . . . . . .
. . . . . . . . . . . . . . . . . .
and Gradient Descent Method
. . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
70
72
74
75
76
77
78
4.2 TDOA .
4.2.1
4.2.2
4.2.3
. . . . . . . . . . . . . . . .
Covariance Matrix . . . . .
Computational Complexity
Simulation . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
82
84
85
85
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
4.3 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
5
Maximum Likelihood Estimator
89
5.1 TOA . .
5.1.1
5.1.2
5.1.3
. . . . . . . . . . . . . . . .
SMACOF Algorithm . . .
Computational Complexity
Simulation . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
89
90
94
94
5.2 TDOA .
5.2.1
5.2.2
5.2.3
. . . . . . . . .
Computational
Simulation . .
Application . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
96
101
101
105
. . . . . . .
Complexity
. . . . . . .
. . . . . . .
5.3 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
6
Nonlinear Expectation Maximization Algorithm
109
6.1 TOA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
6.1.1 General EM Algorithm . . . . . . . . . . . . . . . . . . . . . . . . 109
TABLE OF CONTENTS (Continued)
Page
6.1.2 Nonlinear Expectation Maximization Approach . . . . . . . . . . . 115
6.1.3 Computational Complexity . . . . . . . . . . . . . . . . . . . . . . 118
6.1.4 Simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
6.2 TDOA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
6.2.1 Computational Complexity . . . . . . . . . . . . . . . . . . . . . . 124
6.2.2 Simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
6.3 Experimental Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
6.4 Comparison of Various Position Estimation Methods . . . . . . . . . . . . . 128
6.5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
7
Non-line-of-sight Mitigation
134
7.1 ILMedS
7.1.1
7.1.2
7.1.3
7.1.4
7.1.5
NLOS Mitigation . . . . . . . . . . .
Analysis of the conventional LMedS
Proposed ILMedS Algorithm . . . .
Outlier Probability . . . . . . . . . .
Computational Complexity . . . . .
Simulation . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
138
138
139
140
141
142
7.2 Particle
7.2.1
7.2.2
7.2.3
7.2.4
Filter for NLOS Mitigation . . . .
Particle Filter Position Estimation
Outlier Probability . . . . . . . . .
Computational Complexity . . . .
Simulation . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
148
150
152
152
153
.
.
.
.
.
7.3 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
8
Conclusion and Future Work
159
8.1 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
8.2 Future Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
Bibliography
160
LIST OF FIGURES
Figure
Page
1.1
AOA based localization, where θ is the target, v 1 and v 2 are anchors. . .
2
1.2
Illustration of AOA receiver antenna array. . . . . . . . . . . . . . . . . .
2
1.3
TOA based localization system. . . . . . . . . . . . . . . . . . . . . . . . .
3
2.1
System model for TOA based localization. . . . . . . . . . . . . . . . . . . 11
2.2
Illustration of TOA range measurement. . . . . . . . . . . . . . . . . . . . 11
2.3
Illustration of TDOA range measurement. . . . . . . . . . . . . . . . . . . 16
2.4
CRLB: 4 anchors at the corner and 25 target locations in the middle.
2.5
CRLB: Comparison between TOA and TDOA systems. . . . . . . . . . . 22
2.6
CRLB: Comparison between TOA and TDOA systems assuming Type I
error. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.7
ICALM: Illustration of the aisle layout for retail stores. . . . . . . . . . . 25
2.8
ICALM: Illustration of anchor layout for TOA localization. . . . . . . . . 25
2.9
ICALM: Illustration of anchor layout for TDOA localization. . . . . . . . 29
. . 22
2.10 ICALM: General anchor layout for cluster TDOA localization, where v k+1
is chosen to detect the x-axis direction displacement better than v k . . . . 30
2.11 Anchor layout for cluster TDOA localization. . . . . . . . . . . . . . . . . 31
2.12 Anchor layout for TOA localization simulation. . . . . . . . . . . . . . . . 34
2.13 ICALM: Average CRLB (x-coordinate) versus the location of v 4 for TOA
systems (nm ∼ N (0, 0.01)). . . . . . . . . . . . . . . . . . . . . . . . . . . 35
2.14 ICALM: Average CRLB (x-coordinate) versus the location of v 4 for TDOA
systems (nm ∼ N (0, 0.01)). . . . . . . . . . . . . . . . . . . . . . . . . . . 35
2.15 ICALM: Anchor layout for cluster TDOA simulation. . . . . . . . . . . . . 36
2.16 ICALM: Average CRLB (x-coordinate) contour for the cluster TDOA
systems with a third cluster on the x-z plan. . . . . . . . . . . . . . . . . 37
LIST OF FIGURES (Continued)
Figure
Page
3.1
MOM1: Estimated position. . . . . . . . . . . . . . . . . . . . . . . . . . . 41
3.2
MOM1: Comparison between the CRLB and estimated MSE. . . . . . . . 42
3.3
MOM1: Comparison between the original CRLB, new CRLB, theoretical
MSE and the estimated MSE. . . . . . . . . . . . . . . . . . . . . . . . . . 45
3.4
MOM1: Performances with different reference anchors. . . . . . . . . . . . 47
3.5
MOM1: Simulated MSE curves of the proposed IMOM algorithm, MOMLS, and MOM-WLS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
3.6
MOM1: Performances of the IMOM, MOM-LS, MOM-WLS, and NLLSWLS methods (Type I error, θ = [0.6, 0.6]T ). . . . . . . . . . . . . . . . . 52
3.7
MOM1: Performances of the IMOM, MOM-LS, MOM-WLS, and NLLSWLS methods (Type II error, θ = [0.6, 0.6]T , σ 2 = 0.05). . . . . . . . . . . 53
3.8
MOM1: Performances of the IMOM, MOM-LS, and MOM-WLS methods
(Type I error, 25 targets). . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
3.9
MOM1: Performances of the IMOM, MOM-LS, and MOM-WLS methods
(Type II errors, 4 NLOS links, 25 targets). . . . . . . . . . . . . . . . . . . 54
3.10 MOM2: Estimated position of MOM2 method. . . . . . . . . . . . . . . . 56
3.11 MOM2: Comparison between the CRLB and estimated MSE. . . . . . . . 57
3.12 MOM2: Simulated MSE curves of the proposed IMOM, MOM-LS, and
MOM-WLS methods. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
3.13 MOM2: Performances of the IMOM, MOM-LS, and MOM-WLS methods
(Type I error). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
3.14 MOM2: Performances of the IMOM, MOM-LS, and MOM-WLS methods
(Type II error, 4 NLOS links). . . . . . . . . . . . . . . . . . . . . . . . . 60
3.15 MOM2: Comparison between the first and second order MOM estimators. 61
3.16 MOM TDOA: Estimated position. . . . . . . . . . . . . . . . . . . . . . . 67
3.17 MOM TDOA: Performance of the MOM method (Type I error, 8 anchors). 67
LIST OF FIGURES (Continued)
Figure
Page
3.18 MOM TDOA: Performance of the MOM method (Type II error, 8 anchors,
8 NLOS links). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
4.1
NLLS: Estimated position after first iteration in the absence of noise. . . . 78
4.2
NLLS: Estimated position after the second iteration in the absence of noise. 79
4.3
NLLS: Convergence performance in AWGN errors. . . . . . . . . . . . . . 79
4.4
NLLS: Simulated MSE curves of the NLLS method. . . . . . . . . . . . . 80
4.5
NLLS: Performances of the NLLS-LS and NLLS-WLS methods (Type I
error). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
4.6
NLLS: Performances of the NLLS-LS and NLLS-WLS methods (Type II
error, 4 NLOS links). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
4.7
NLLS TDOA: Convergence performance in AWGN errors. . . . . . . . . . 86
4.8
NLLS TDOA: Simulated MSE curves of the NLLS method. . . . . . . . . 86
4.9
NLLS TDOA: Performances of the NLLS-LS and NLLS-WLS methods
(Type I error). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
4.10 NLLS TDOA: Performances of the NLLS-LS and NLLS-WLS methods
(Type II error, 4 NLOS links). . . . . . . . . . . . . . . . . . . . . . . . . 88
5.1
SMACOF: Illustration of the surrogate and stress functions. . . . . . . . . 92
5.2
SMACOF: Convergence performance in AWGN errors. . . . . . . . . . . . 94
5.3
SMACOF: Simulated MSE curves of the SMACOF method. . . . . . . . . 95
5.4
SMACOF: Performances of the SMACOF and weighted SMACOF methods (Type I error). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
5.5
SMACOF: Performances of the SMACOF and weighted SMACOF methods (Type II error, 4 NLOS links). . . . . . . . . . . . . . . . . . . . . . . 96
5.6
SMACOF TDOA: Convergence performance in AWGN errors. . . . . . . . 102
5.7
SMACOF TDOA: Simulated MSE curves of the SMACOF method.
. . . 103
LIST OF FIGURES (Continued)
Figure
Page
5.8
SMACOF TDOA: Performance of the SMACOF method (Type I error). . 103
5.9
SMACOF TDOA: Performance of the SMACOF method (Type II error,
4 NLOS links). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
5.10 SMACOF TDOA: Anchor layout for field test. . . . . . . . . . . . . . . . 106
5.11 SMACOF TDOA: Experimental results obtained in a large building. . . . 107
6.1
NLEM: Convergence performance in AWGN errors. . . . . . . . . . . . . . 119
6.2
NLEM: Simulated MSE curves of the NLEM method. . . . . . . . . . . . 119
6.3
NLEM: Performances of the NLEM and weighted NLEM algorithms (Type
I error). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
6.4
NLEM: Performances of the NLEM and weighted NLEM algorithms (Type
II error, 4 NLOS links). . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
6.5
NLEM TDOA: Convergence performance in AWGN errors. . . . . . . . . 124
6.6
NLEM TDOA: Simulated MSE curves of the NLEM method. . . . . . . . 125
6.7
NLEM TDOA: Performances of the NLEM and weighted NLEM methods
(Type I error). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
6.8
NLEM TDOA: Performances of the NLEM and weighted NLEM methods
(Type II error, 4 NLOS links). . . . . . . . . . . . . . . . . . . . . . . . . 126
6.9
System layout of the cluster TDOA experiment. . . . . . . . . . . . . . . . 127
6.10 Computational complexity of various TOA localization estimator. . . . . . 129
6.11 Performances of various TOA localization estimators (Type I error). . . . 129
6.12 Performances of various TOA estimators (Type II error, 4 NLOS links). . 130
6.13 Computational complexity of various TDOA localization estimators. . . . 131
6.14 Performances of various TDOA localization estimators (Type I error). . . 132
6.15 Performances of various TDOA localization estimators (Type II error, 4
NLOS links). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
LIST OF FIGURES (Continued)
Figure
Page
7.1
NLOS: Illustration of the area of possible positioning solutions when all
anchors suffer from NLOS offsets. . . . . . . . . . . . . . . . . . . . . . . . 136
7.2
NLOS: Illustration of the system layout with 1 NLOS link. . . . . . . . . 137
7.3
NLOS: Illustration of reaching an ‘outlier’ estimate with the LMedS algorithm, where θ is the true target location and θ 0 is the estimated target
location. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
7.4
ILMedS: Probability of reaching an outlier as the final position estimate
with the LMedS and the proposed ILMedS methods (M = 8, L = 3 and
K = 56). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
7.5
ILMedS: Anchor and the target locations for simulation. . . . . . . . . . . 142
7.6
ILMedS: The estimated position with LMedS algorithm (σ(1%), NLOS
offset (5%), 1 NLOS link). . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
7.7
ILMedS: The estimated position with the proposed ILMedS method (σ(1%),
NLOS offset (5%), 1 NLOS link). . . . . . . . . . . . . . . . . . . . . . . . 143
7.8
ILMedS: Performances of four algorithms: NLLS, Wang’s method, LMedS,
and the proposed ILMedS method (Type I error). . . . . . . . . . . . . . . 144
7.9
ILMedS: Performances of four algorithms: NLLS, Wang’s method, LMedS,
and the proposed ILMedS method (Type II error, 1 NLOS link). . . . . . 145
7.10 ILMedS: Performances of four algorithms: NLLS, Wang’s method, LMedS,
and the proposed ILMeds method(Type II error, 8 NLOS links). . . . . . 145
7.11 ILMedS: Performances of four methods: NLLS, Wang’s method, LMedS,
and the proposed ILMedS method (Type III error, NLOS offset 10%). . . 146
7.12 ILMedS: Performances of four methods: NLLS, Wang’s method, LMedS,
and the proposed ILMedS method (Type III error, NLOS offset 50%). . . 147
7.13 ILMedS: Performances of four methods: NLLS, Wang’s method, LMedS,
and the proposed ILMedS method (Type III error, NLOS offset 100%). . 147
7.14 PFPE: Illustration of particle updating process. . . . . . . . . . . . . . . . 151
LIST OF FIGURES (Continued)
Figure
Page
7.15 PFPE: Probability of reaching an outlier as the final position estimate
with the LMedS, ILMedS, and PFPE methods, where (M = 8 and L = 3). 153
7.16 PFPE: Comparison of the computational complexity of the ILMedS and
PFPE methods. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
7.17 PFPE: Performance comparison of five methods: NLLS, Wang’s method,
LMedS, ILMedS, and PFPE methods (Type I error). . . . . . . . . . . . . 155
7.18 PFPE: Performance comparison of five methods: NLLS, Wang’s method,
LMedS, ILMedS, and PFPE methods (Type II error, 1 NLOS link). . . . 156
7.19 PFPE: Performance comparison of five methods: NLLS, Wang’s method,
LMedS, ILMedS, and PFPE methods (Type II error, 8 NLOS link). . . . 156
7.20 PFPE: Performance comparison of NLLS, Wang’s method, LMedS, ILMedS,
and PFPE methods (Type III error, NLOS offset 10%). . . . . . . . . . . 157
7.21 PFPE: Performance comparison of NLLS, Wang’s method, LMedS, ILMedS,
and PFPE methods (Type III error, NLOS offset 50%). . . . . . . . . . . 157
7.22 PFPE: Performance comparison of NLLS, Wang’s method, LMedS, ILMedS,
and PFPE methods (Type III error, NLOS offset 100%). . . . . . . . . . . 158
LIST OF TABLES
Table
Page
2.1
Comparison of the average CRLB (x-coordinate) of the ICALM and the
optimal solution for TOA systems. . . . . . . . . . . . . . . . . . . . . . . 34
2.2
Comparison of the average CRLB (x-coordinate) of the ICALM and the
optimal solution for TDOA systems. . . . . . . . . . . . . . . . . . . . . . 36
2.3
Comparison of the CRLB (x-coordinate) of the ICALM and the optimal
solution for cluster TDOA systems. . . . . . . . . . . . . . . . . . . . . . . 37
5.1
Test results for the NLLS method with the proposed SMACOF method
providing a coarse estimate as its initial position. . . . . . . . . . . . . . . 107
6.1
Test result of the NLLS method (10 iterations). . . . . . . . . . . . . . . . 127
6.2
Test result of the NLEM method (10 outer iterations + 5 inner iterations). 128
6.3
Computational complexity of various TOA localization estimators. . . . . 128
6.4
Computational complexity of various TDOA localization estimators. . . . 131
LIST OF ALGORITHMS
Algorithm
Page
1
GMOM estimator for TOA systems. . . . . . . . . . . . . . . . . . . . . . 46
2
IMOM estimator for TOA systems. . . . . . . . . . . . . . . . . . . . . . . 48
3
Nonlinear least squares estimator for TOA systems.
4
Online nonlinear least squares estimator for TOA systems. . . . . . . . . . 75
5
Nonlinear least squares estimator for TDOA systems.
6
SMACOF estimator for TOA systems. . . . . . . . . . . . . . . . . . . . . 93
7
SMACOF estimator for TDOA systems. . . . . . . . . . . . . . . . . . . . 101
8
NLEM estimator for TOA systems. . . . . . . . . . . . . . . . . . . . . . . 118
9
NLEM estimator for TDOA systems. . . . . . . . . . . . . . . . . . . . . . 123
. . . . . . . . . . . . 72
. . . . . . . . . . . 84
LIST OF NOTATIONS
ha, bi
The inner product of vectors a and b.
N (µ, σ 2 )
The normal distribution with mean µ and variance σ 2 .
U(a, b)
The uniform distribution between [a, b].
k.k
`2 norm.
diagv(A)
The column vector formed by the main diagonal of matrix A.
diag(A)
The diagonal matrix formed by vector A.
tr(A)
The trace of matrix A.
1M
The M × 1 column vector with all its elements equal to 1.
AT
The transpose of matrix A.
IM
The M × M identity matrix.
vm
The known coordinates of the mth anchor.
θ
The unknown coordinates of the target.
LIST OF ABBREVIATIONS
1-D
one dimensional.
2-D
two dimensional.
3-D
three dimensional.
AOA
angle of arrival.
AWGN
additive white Gaussian noise.
CRLB
Cramér-Rao lower bound.
DAQ
data acquisition.
EM
expectation maximization.
FIM
Fisher information matrix.
GMOM
generalized method of moments.
GPS
global positioning system.
ICALM
incremental anchor layout method.
ILMedS
improved least median of squares.
IMOM
improved method of moments.
IR
impulse radio.
LMedS
least median of squares.
LOS
line-of-sight.
LS
least squares.
ML
maximum likelihood.
LIST OF ABBREVIATIONS (Continued)
MOM
method of moments.
MSE
mean square error.
NLEM
nonlinear expectation maximization.
NLLS
nonlinear least squares.
NLOS
non-line-of-sight.
PDF
probability density function.
PFPE
particle filter based position estimation.
PRF
pulse repetition frequency.
RF
radio frequency.
RFID
radio-frequency identification.
RMS
root mean square.
RSS
received signal strength.
SMACOF
scaling by majorizing a complicated function.
TDOA
time difference of arrival.
TOA
time of arrival.
UAA
uniform angular array.
UWB
ultra-wideband.
WLS
weighted least squares.
Chapter 1: Introduction
1.1 Introduction
Indoor positioning systems can be used for many applications [1–8] such as indoor navigation, emergence response, asset monitoring, and shopper assistance [3, 4, 9, 10].
The global positioning system (GPS) [11], which is widely used for outdoor localization and navigation, is generally not suitable to establish indoor locations, due to the
weak received signal and poor accuracy. There are a variety of radio frequency (RF)
signals and systems available for indoor localization. The radio-frequency identification
(RFID) [12] technologies can be deployed at very low cost, but their accuracy and coverage are poor. Cellular network [13] provides the best coverage with a very low accuracy.
Bluetooth and WiFi signals [12, 14] can achieve an accuracy of several meters with good
coverage and relative low cost. With dedicated hardware, ultra-wideband (UWB) [15–18]
signal can achieve centimeter level accuracy.
Another challenge of localization systems is to extract the location information from
the above RF signals. There exist many technologies. For example, received signal
strength (RSS) [2] uses the signal strength to estimate the distance between the target
and the anchors, which works for most RF signals. It is very easy to implement and
widely applied in many existing commercial systems. To estimate the distance, it requires
precise channel information between the target and the anchors. When the channel is
relatively static, it can be measured during the system setup phase. However, for many
indoor localization applications, the environment changes dynamically, and so does the
channel. Thus, it becomes very expensive to maintain the precise channel information,
which limits the applications of such approaches.
Another method is the angle of arrival (AOA) technique [4, 19–22]. At each receiver,
the direction of the received signal (Figure 1.1) is estimated. Typically, an antenna array
(Figure 1.2) is required to estimate the input signal direction, which makes it expensive
to deploy, and in order to measure the AOA precisely, the distance between the target
and the anchor antenna array should be sufficiently large, so that incoming signals are
2
planar to all the antennas in the same array [2]. However, if the target is far away from
the receivers, the estimated position is very sensitive to the measurement error in the
AOA. Thus, the AOA is not widely used for high accuracy indoor localization.
v1
α1
θ
α2
v2
Figure 1.1: AOA based localization, where θ is the target, v 1 and v 2 are anchors.
d2,1
α
a1
a2
a3
Figure 1.2: Illustration of AOA receiver antenna array.
Time of arrival (TOA) [23–26] measures the time of flight of the RF signal between
the target and the anchor. There are many ways to estimate the TOA [27, 28]. For
example, for impulse radio (IR) UWB based systems, first peak [29], leading edge [27]
and search-subtract-and-readjust (SSR) [23] methods are widely used to estimate the
TOA. As the signal propagation speed is known in advance, the distance can be easily
calculated from the TOA as,
r = cτ,
(1.1)
where r is the measured distance, c is the speed of light and τ is the measured TOA. To
3
v1
r1
θ
v2
r2
Figure 1.3: TOA based localization system.
measure the TOA, the target and the anchors must be precisely synchronized. Generally,
it is difficult to synchronize the target and the anchors, but it is easy to synchronize only
the receivers at fixed locations. For example, all receivers might be connected via cables.
There exist methods to reduce the synchronization requirement by including additional
hardware in the system [30] at the expense of a decreased system performance.
Time difference of arrival (TDOA) [31–34] is similar to TOA. It measures the distance
difference between the target and the anchors. Thus, it does not require synchronization
between the target and the anchors, which makes it easier to implement than TOA and is
a good candidate for high-precision localization [2, 27] with a small sacrifice in accuracy.
However, for a system consisting of a large number of anchors (e.g., to cover a big area),
anchor synchronization is still a challenge. In this case, cluster TDOA is applied to
further reduce the synchronization requirement [28]. A cluster TDOA system consists
of several clusters, and the anchors in the same cluster are located in a small area (e.g.,
1m × 1m grid), which can be easily synchronized. Clusters work independently. Thus,
it is very easy to deploy.
In this dissertation, we will focus on TOA and TDOA (conventional as well as cluster TDOA) techniques, since they are widely used in high accuracy indoor localization
systems. Although various aspects of TOA and TDOA systems have been studied extensively, new techniques are still needed to improve two key position estimation aspects:
accuracy and complexity [23, 35].
Anchor layout is an important area that affects localization performance. Generally
4
the Cramér-Rao lower bound (CRLB) can be used to find the optimal anchor layout
[36–41]. However, it is computationally expensive and not suitable for fast deployment.
We propose an incremental anchor layout method (ICALM) based on the maximum
range measurement change criterion, which is very easy to implement.
When the range measurements are noisy, the geometric techniques do not work well
[2, 7], and for TDOA systems, the estimation is computationally very complex.
In this case, two types of least squares (LS) estimators are widely used for location
estimation [2]: method of moments (MOM) and nonlinear least squares (NLLS). MOM
methods [42–48] require one extra anchor to linearize the range measurement equations
(Chapter 3), which limits its application. For TOA systems, MOM is computationally
efficient and easy to implement. For TDOA systems, the linearization process will greatly
increase the range measurement noise. Thus, the performance is very poor, and it is
appropriate to be used as a coarse position estimation method.
Instead of using the extra anchor as in the MOM method, NLLS [11,13,49] uses Taylor
expansion to linearize the range measurement equations. It can be proved that under
additive white Gaussian noise (AWGN) range measurement errors, NLLS can achieve a
performance that is close to the CRLB. However, since it uses iterations to approach the
optimal solution, its computational complexity is very high. In Chapter 3, we propose
an improved method of moments (IMOM) algorithm for TOA systems, which greatly
improves the performance at the expense of a slightly increased complexity [50]. In
Chapter 6, we propose a nonlinear expectation maximization (NLEM) method to simplify
the estimation process. It transforms the high dimensional estimation problem into
several one dimensional (1-D) problems, which does not need any matrix manipulations
and is much simpler to implement than the NLLS and the scaling by majorizing a
complicated function (SMACOF) methods [51].
Since NLLS relies on Taylor expansion to linearize the range measurement equations,
if the reference position for Taylor expansion is far away from the true target location,
NLLS might diverge [49, 52]. When the system coverage is small, using a fixed initial
position (e.g., the center of the anchor-formed contour) might work fine. When the
system coverage is large, it is very difficult to fix the initial position for all potential
target locations. In this case, the MOM method can be used to calculate the initial
position, if the system has at least one additional anchor. However, the additional anchor
might not always be available, and for TDOA systems, the MOM method cannot even
5
provide a reliable coarse estimate. In [53–57], the authors developed a SMACOF method
to solve the symmetric dissimilarity matrices, which can be viewed as the n-dimensional
location estimation problem for TOA systems. Such method can be directly applied
to the two dimensional (2-D)/three dimensional (3-D) case, which turns out to be the
maximum likelihood (ML) estimator. In Chapter 5, we propose a robust SMACOF based
ML estimator for TDOA [52] localization. Similar to the NLLS method, it also needs
iterations to approach the solution. However, the mean square error (MSE) is guaranteed
to decrease after each iteration. Thus, it is much more robust than the NLLS method.
It also achieves a performance that is close to the CRLB without requiring additional
anchors. Since its convergence speed is slower compared with the NLLS method, it can
be applied to estimate the coarse position with only a few iterations.
When non-line-of-sight (NLOS) links exist, the traditional methods (e.g., NLLS [11],
MOM [42, 43, 50]) do not work well. Generally, there are two approaches to deal with
the NLOS problem [4, 5, 58, 59]: NLOS identification and NLOS mitigation. NLOS
identification methods try to identify the NLOS range measurements, for example, with a
priori statistical information about the NLOS and line-of-sight (LOS) links [5]. Generally
it can be done during the range measurement estimation phase.
If NLOS error exists in the observed range measurements, without additional processing, it will introduce a bias to the estimated position, which will greatly decrease
the localization accuracy. In this case, NLOS mitigation must be applied to reduce the
impact of the NLOS offset.
There are a number of algorithms for NLOS mitigation [5, 58–76]. Most existing
NLOS mitigation methods require a priori information. The Kalman filtering methods,
developed in [65–68], utilize a priori statistical information about the NLOS and LOS
range measurements (e.g., the variance of the range error). In [69], a machine learning algorithm is proposed for both NLOS identification and mitigation by tracking the
difference between the characteristics of the NLOS and LOS links, which are assumed
to be known in advance. The linear programming method, proposed in [70], requires
perfect detection of the NLOS links. Thus, its applications are limited and its computational complexity is very high. Some NLOS mitigation methods do not require a priori
knowledge about the LOS and NLOS links. For example, in [63], the author proposed
a quadratic programming method for NLOS mitigation, which does not need a priori
information. In [64], a closed form NLOS mitigation algorithm is developed, which uses
6
the intersection points formed by the range measurement circles to estimate the target
location. However, their performances are far away from the CRLB.
In [60, 61], the authors proposed the least median of squares (LMedS) algorithm,
which does not need any a priori information. It searches for a subset of the anchors
with the least median of squares error (residue). Thus, the NLOS links will be discarded.
However, it has several drawbacks: (1) In order to deal with potential scenarios that there
are many NLOS links, the subset size must be chosen to be small. Thus, it might discard
too many range measurements, which otherwise can provide better performance; (2) it
might reach an outlier as the final estimate. In Chapter 7, we propose an improved
least median of squares (ILMedS) method [77], which uses the residue to weight all the
anchors and adaptively searches for the biggest group of anchors with high weight for
the final estimation. Analysis and simulation results show that it can greatly decrease
the probability of reaching the outlier and improve the accuracy.
Since ILMedS needs to calculate the estimate for each subset, its computational
complexity is high. Thus, we propose a particle filter based position estimation (PFPE)
method for NLOS mitigation, which uses particles to represent the potential target. Each
particle uses the range measurements to update its position. It is much simpler than the
ILMedS method, while their performances are very similar.
1.2 Summary of Contribution
Anchor layout is an important area that affects localization performance. Generally the
CRLB can be used to find the optimal anchor layout [36–41]. However, it is computationally expensive and not suitable for fast deployment. We first develop the ICALM based
on the largest range measurement change criterion. Since it does not need brute-force
searching, it is very easy to implement and suitable for fast deployment.
The NLLS method [11, 13, 49] is widely used in TOA and TDOA based position
systems, as it achieves a performance that is close to the CRLB under AWGN range
measurement errors. However, its computational complexity is very high since it uses
iterations to approach the optimal solution. On the other hand, the MOM estimator
[42–48] is very easy to implement, but its performance is much worse than the NLLS
method, especially for TDOA systems. For TOA systems, we develop the IMOM method
[50] to improve the estimation accuracy of the conventional MOM method at the expense
7
of a slightly increased computational complexity. It efficiently utilizes the variances of the
range measurement and the target location. As the NLLS estimator, it has a performance
also approaching the CRLB. For TDOA systems, we propose the NLEM method, which
transforms the high dimensional estimation problem into several 1-D problems. It does
not need any matrix manipulations and is much simpler to implement than the NLLS
method. It can also achieve a performance that is close to the CRLB.
Since the NLLS method relies on Taylor expansion to linearize the range measurement equations, it is very sensitive to the choices of the initial position [49]. If the initial
position is too far away from the true position, the algorithm might diverge. Generally,
there are two methods to set the initial position: fixed initial position and coarse estimation. When the system coverage is small, a fixed position (e.g., the contour center of the
localization coverage area) can be used as the initial position. When the coverage area is
large, it is very difficult to find one position that works for all the potential targets. Due
to the simplicity of implementation, the MOM algorithm is a good candidate for providing a coarse estimate. However, since the MOM method requires additional anchor
to linearize the range measurement equations, its application is limited. Furthermore,
for TDOA systems, the accuracy of the MOM method is often too poor to provide a
reliable coarse estimate. Thus, we propose a SMACOF based ML estimator for TDOA
systems [52], whose MSE is guaranteed to decrease after each iteration. In addition, it
does not require additional anchor. However, since its convergence speed is slower than
the NLLS method, it can be used to provide a coarse estimate with only a few iterations.
NLOS mitigation is critical for indoor localization systems. For a system with severe
NLOS offsets, the classic methods (e.g., MOM, NLLS) cannot achieve a good performance, since the NLOS offset will bring a bias to the estimation. Many methods have
been developed for NLOS mitigation [5, 58–76]. Most existing methods rely on a priori
information to improve the estimation accuracy. Such methods work well for some particular scenarios, but they are very expensive to maintain and their applications are limited.
Thus, the LMedS method [60], which does not require any a priori information, becomes
very attractive. However, since LMedS tends to discard more range measurements than
necessary, its performance can be improved. Thus, we propose an ILMedS method [77],
which uses the residue to weight all the anchors and adaptively chooses the anchors with
large weights to estimate the final position. Since the proposed ILMedS method [77]
maximizes the number of reliable range measurements in the final estimation, it greatly
8
decreases the probability of reaching the outlier and improves the estimation accuracy.
In addition, the ILMedS method can take any methods developed for LOS cases as the
core estimator.
Since ILMedS needs to obtain an estimate for each subset, its computational complexity is high. We develop the PFPE method for NLOS mitigation, which uses particles
to represent the potential target. In this scheme, each particle utilizes the range measurements to update its position. It is much simpler than the ILMedS method, while
achieving a performance similar to that of the latter.
1.3 Dissertation Outline
Chapter 2 provides the system models for both TOA and TDOA localization systems.
The CRLB [78] is derived and supplemented with simulation results. Then, we develop
the ICALM for anchor layout. This method is much easier to implement than the CRLB
approach and is suitable for fast system deployment.
Chapter 3 analyzes the MOM scheme, which is very easy to implement. However,
simulation results show that there is a big gap between the CRLB and the estimated
MSE with the MOM scheme. The proposed IMOM algorithm is discussed in detail in
this chapter. We show that it achieves a performance that is close to the CRLB at the
expense of a slightly increased computational complexity.
In Chapter 4, we discuss the classical NLLS method, which can achieve an accuracy
that is close to the CRLB under AWGN range measurement errors. However, it is very
sensitive to the choices of the initial position for Taylor expansion, especially when the
system coverage is large. In this case, the methods proposed in Chapter 3 and 5 can be
applied to find the coarse target location.
In Chapter 5, the SMACOF based maximum likelihood estimator is presented. It can
be directly applied for the 2-D/3-D position estimation problem for TOA systems. Then,
we propose the SMACOF based estimator for TDOA systems. The MSE is guaranteed
to decrease after each iteration with the proposed method. Thus, it is much more stable
than the NLLS method. However, since its convergence speed is slower than the NLLS
method, it can be used as a coarse position estimator.
The NLEM estimator is developed in Chapter 6. This scheme transforms the high dimensional estimation problem into several 1-D problems and eliminates matrix operation
9
in both TOA and TDOA systems. It is much easier to implement than the NLLS and
SMACOF methods. The comparison of the computational complexity and performance
of various estimators are provided at the end of this chapter.
In Chapter 7, we discuss new NLOS mitigation methods. Most existing NLOS mitigation methods require a priori information, which limits their applications. The proposed ILMedS method, which uses the residue to weight all the anchors and adaptively,
includes all the reliable anchors in the final estimation. Compared with the conventional
LMedS method, it greatly improves the estimation accuracy and decreases the probability of reaching an outlier. In addition, since the ILMedS method can take any LOS
estimation methods as the core estimator, all methods discussed in the previous chapters can be applied here. Since ILMedS needs to calculate a location estimate for each
subset, its computational complexity is high. The proposed PFPE method for NLOS
mitigation, which aims to lower complexity, is also discussed in detail in this chapter.
This scheme uses particles to represent the potential target and each particle utilizes the
range measurements to update its position.
10
Chapter 2: Signal Model
TOA and TDOA are widely used in high accuracy indoor localization systems. In this
chapter, the signal models and CRLB for both TOA and TDOA are presented. Anchor
layout is very important for the localization performance. Generally CRLB can be used
to find the good layout. However, its computational complexity is very high. We propose
the ICALM, which can be used for fast system deployment.
2.1 TOA
Figure 2.1 shows a typical TOA localization system, where θ is the unknown target, v m ,
m = [1, 2, · · · , M ] are the anchors whose positions are known. The range measurements
between the target and the mth anchor are written as:
rm (i) = dm (θ) + bm + nm (i), m = [1, 2, . . . , M ], i = [1, 2, . . . , N ],
(2.1)
where rm (i) is the observed range measurement between the target and the mth anchor,
i denotes the sampling instants, dm (θ) = kθ − v m k is the true distance between the
target and the mth anchor, sometimes written as dm for simplicity, bm is the positive
NLOS offset, v m is the known location of the mth anchor, θ is the unknown location of
the target, and nm (i) is the range measurement error, which will be called the noise component sometimes in the rest of the dissertation for convenience. During one sampling
interval i = [1, 2, . . . , N ], bm is fixed, for 3-D case v m = [xm , ym , zm ]T , and θ = [x, y, z]T .
Typically, for a particular anchor, nm (i), i = [1, · · · , N ], are modeled as independent and
identically distributed zero-mean Gaussian random variables; for different anchors, the
2 ).
variances of nm (i), m = [1, · · · , M ] are different, that is, nm (i) ∼ N (0, σm
Figure 2.2 illustrates the TOA range measurements. Without loss of generality, we
assume the transmitter sends out a signal at t0 . For LOS cases, at time tm > t0 , the mth
anchor receives the signal. Thus, the estimated range measurement is rm = dm + nm =
cτm + nm , where τm = tm − t0 is the signal propagation delay. For NLOS cases, the
direct path between the target and the mth anchor is blocked; thus the anchor receives
11
vM
v1
v2
r2 (i)
r1 (i)
rM (i)
···
θ
r3 (i)
r4 (i)
rm (i)
vm
v3
v4
···
Figure 2.1: System model for TOA based localization.
the further delayed signal at t0m , instead of tm . The estimated range measurement is
0 + n , where τ 0 = t0 − t . Clearly for TOA systems, d
rm = dm + bm + nm = cτm
0
m
m
m
m
is always positive as it represents the distance between two points. Similarly, bm is also
positive since NLOS will always cause an extra propagation delay.
dm
rm
t0
tm
(a) LOS
dm
rm
t0
bm
tm
t′m
(b) NLOS
Figure 2.2: Illustration of TOA range measurement.
Let us define
T
r = r1 (1), . . . , rM (1), r1 (2), . . . , rM (2), . . . , r1 (N ), . . . , rM (N ) M N ×1 ,
d(θ) = [d1 , . . . , dM , d1 , . . . , dM , . . . , d1 , . . . , dM ]TM N ×1 ,
b=
[b1 , . . . , bM , b1 , . . . , bm , . . . , b1 , . . . , bM ]TM N ×1 ,
T
n = n1 (1), . . . , nM (1), n1 (2), . . . , nM (2), . . . , n1 (N ), . . . , nM (N ) M N ×1 .
(2.2a)
(2.2b)
(2.2c)
(2.2d)
12
Then the range measurements can be written in vector-matrix form as,
r = d(θ) + b + n.
(2.3)
2.1.1 PDF
From Eq. (2.1), we have
rm (i) = dm + bm + nm (i),
2 ). So the
where nm (i) is the AWGN with probability density function (PDF) N (0, σm
PDF of rm (i) can be written as,
1
f (rm (i)|θ) = p
2
2πσm


 r (i) − d − b 2 
m
m
m
.
exp −
2


2σm
(2.4)
The joint PDF for the range measurements can be written as,
f (r|θ) =
(2π)
MN
2
1
QM
N
m=1 σm


N X
M
 X
2 
1
exp −
r
(i)
−
d
−
b
.
m
m
m
2


2σm
(2.5)
i=1 m=1
Or in vector-matrix form,

T −1



r
−
d(θ)
−
b
C
r
−
d(θ)
−
b
1
f (r|θ) = p
,
exp −


2
(2π)M N det(C)
(2.6)
where
h
i
2
2
2
2
2
2
C = diag σ1 , · · · , σM , σ1 , · · · , σM , · · · , σ1 , · · · , σM
and diag(A) denotes the diagonal matrix formed by the vector A.
,
M N ×M N
(2.7)
13
2.1.2 FIM and CRLB
From Eq. (3.31) in [78], we have, for r ∼ N (µ(θ), C(θ)), the (k, l)th element of the
Fisher information matrix (FIM) is given by,
I(θ)k,l =
∂µ(θ)
∂θk
T
−1
C(θ)
∂µ(θ)
∂θl
1
−1 ∂C(θ)
−1 ∂C(θ)
+ tr C(θ)
, (2.8)
C(θ)
2
∂θk
∂θl
where tr(A) denotes the trace of matrix A, µ(θ) = d(θ) + b and C(θ) = C. Since
C(θ) = C is not a function of θ,
∂C(θ)
∂θk
I(θ)k,l =
=N
= 0, ∀k. Then Eq. (2.8) can be simplified as
∂µ(θ)
∂θk
T
C(θ)−1
∂µ(θ)
∂θl
M
X
1 ∂µm (θ) ∂µm (θ)
,
2
σm
∂θk
∂θl
(2.9)
m=1
where µm (θ) = dm + bm . Also, it is reasonable to assume that b is not a function of θ.
Thus, for 3-D case (θ = [x, y, z]T ), the first order derivative of the unknown target is
given by,
∂µm (θ)
∂dm
=
∂x
∂x
p
∂ (x − xm )2 + (y − ym )2 + (z − zm )2
=
∂x
x − xm
=p
(x − xm )2 + (y − ym )2 + (z − zm )2
x − xm
.
=
dm
(2.10)
Similarly
∂µm (θ)
y − ym
=
,
∂y
dm
∂µm (θ)
z − zm
=
.
∂z
dm
(2.11a)
(2.11b)
14
Thus the (1, 1)th element of the FIM is written as
I(θ)1,1 = N
=N
=N
M
X
1 ∂µm (θ) ∂µm (θ)
2
σm
∂x
∂x
m=1
M
X
m=1
M
X
m=1
1 x − xm x − xm
2
σm
dm
dm
1 (x − xm )2
.
2
σm
d2m
Similarly,
I(θ)2,2 = N
I(θ)3,3 = N
M
X
1 (y − ym )2
,
2
σm
d2m
m=1
M
X
m=1
1 (z − zm )2
,
2
σm
d2m
and
I(θ)1,2 = I(θ)2,1 = N
I(θ)1,3 = I(θ)3,1 = N
I(θ)2,3 = I(θ)3,2 = N
M
X
1 (x − xm )(y − ym )
,
2
σm
d2m
m=1
M
X
m=1
M
X
m=1
1 (x − xm )(z − zm )
,
2
σm
d2m
1 (y − ym )(z − zm )
.
2
σm
d2m
The CRLB is the inverse of the FIM, expressed as
CRLB = I(θ)−1 .
(2.12)
15
2.2 TDOA
For the TDOA case, without loss of generality, when the first anchor (v 1 ) is chosen as
the reference, the observed range measurements are written as
rm,1 (i) = rm (i) − r1 (i)
= dm (θ) − d1 (θ) + bm − b1 + nm (i) − n1 (i).
(2.13)
Figure 2.3 illustrates the TDOA range measurement. For TDOA systems, no synchronization is required between the target and anchors. The anchors do not know when
the target sends the signal. Suppose at an unknown time instant t0 the target sends the
signal and anchor v 1 is selected as the reference. For LOS cases, the anchor v 1 receives
the signal at time t1 ; and v m receives the signal at time tm . Thus,
r1 = d1 + n1 = c(t1 − t0 ) + n1 ,
(2.14a)
rm = dm + nm = c(tm − t0 ) + nm .
(2.14b)
Since v 1 is selected as the reference anchor, t0 can be canceled by subtracting r1 from
rm and the range measurement is written as
rm,1 = rm − r1
= dm − d1 + nm − n1
= c(tm − t0 ) − c(t1 − t0 ) + nm − n1
= c(tm − t1 ) + nm − n1 .
(2.15)
For NLOS cases, the direct paths between the target and anchors are blocked; thus the
anchors receive the delayed signal. So the range measurements are written as
r1 = d1 + b1 + n1 = c(t01 − t0 ) + n1 ,
rm = dm + bm + nm = c(t0m − t0 ) + nm .
(2.16a)
(2.16b)
16
The relative range is written as
rm,1 = rm − r1
= dm − d1 + bm − b1 + nm − n1
= c(t0m − t0 ) − c(t01 − t0 ) + nm − n1
= c(t0m − t01 ) + nm − n1 .
(2.17)
Different from TOA systems, the true distance for TDOA systems (dm −d1 ) is not always
positive. It depends on the relative position between the target and the two anchors (e.g.,
v m , v 1 ). Similarly, the NLOS offset (bm − b1 ) is not always positive either. Since for
TDOA systems, only rm,1 needs to be estimated, it is not necessary to know exactly
when the target sends out the signal, which means no synchronization is needed between
the target and anchors.
d1
r1
t0
t1
rm,1
dm
rm
t0
tm
(a) LOS
d1
r1
t0
b1
t1 t′1
rm,1
dm
rm
t0
bm
tm t′m
(b) NLOS
Figure 2.3: Illustration of TDOA range measurement.
Similarly, define
T
r 1 = r2,1 (1), . . . , rM,1 (1), . . . , r2,1 (N ), . . . , rM,1 (N ) ,
d1 (θ) = [d2 − d1 , . . . , dM − d1 , . . . , d2 − d1 , . . . , dM − d1 ]T ,
(2.18a)
(2.18b)
17
b1 = [b2 − b1 , . . . , bM − b1 , . . . , b2 − b1 , . . . , bM − b1 ]T ,
(2.18c)
T
n1 = n2 (1) − n1 (1), . . . , nM (1) − n1 (1), . . . , n2 (N ) − n1 (N ), . . . , nM (N ) − n1 (N ) .
(2.18d)
Then the range measurements can be written in vector-matrix form as,
r 1 = d1 (θ) + b1 + n1 .
(2.19)
2.2.1 PDF
From Eq. (2.13), the range measurements for TDOA systems are written as
rm,1 (i) = dm − d1 + bm − b1 + nm (i) − n1 (i),
2 ). So the PDF of the range measurements
where nm (i) is the AWGN with PDF N (0, σm
can be written as,


2 

r
(i)
−
d
+
d
−
b
+
b
1
m,1
m
1
m
1
exp −
.
f (rm,1 (i)|θ) = p
2 + σ2)
2
2


2(σ
2π(σm + σ1 )
m
1
(2.20)
Note that rm,1 (i) is just the linear combination of rm (i). Thus, they also have a multivariate normal distribution. The joint PDF for the range measurements can be written
as,


 r − d (θ) − b T C −1 r − d (θ) − b 
1
1
1
1
1
1
1
f (r 1 |θ) = p
exp −
,


2
(2π)(M −1)N det(C 1 )
1
(2.21)
where C 1 is the covariance matrix which is defined as
C 1 = diag(C 01 , C 01 , · · · , C 01 )(M −1)N ×(M −1)N ,
(2.22)
18
and

σ 2 + σ12
σ12
···
 2
 σ2
σ32 + σ12 · · ·
1

C 01 = 
..
..
..

.
.
.

σ12
σ12
σ12

σ12
..
.



.


2 + σ2
· · · σM
1
(2.23)
2.2.2 FIM and CRLB
Similar to TOA systems, from Eq. (3.31) in [78], we have, for r ∼ N (µ(θ), C(θ)), the
(k, l)th element of the FIM is given by,
I(θ)k,l =
∂µ(θ)
∂θk
T
−1
C(θ)
∂µ(θ)
∂θl
1
−1 ∂C(θ)
−1 ∂C(θ)
C(θ)
+ tr C(θ)
,
2
∂θk
∂θl
(2.24)
where µ(θ) = d1 (θ) + b1 and C(θ) = C 1 . Similarly, since C(θ) = C 1 is not a function
of θ,
∂C(θ)
∂θk
= 0, ∀k. Then Eq. (2.24) can be simplified as
∂µ(θ) T
−1 ∂µ(θ)
=
C(θ)
∂θk
∂θl
T
∂µ1 (θ)
0−1 ∂µ1 (θ)
=N
C1
,
∂θk
∂θl
I(θ)k,l
(2.25)
where µ1 (θ) = [d2 − d1 + b2 − b1 , · · · , dM − d1 + bM − b1 ]T . It is reasonable to assume
that bm is not a function of θ. Thus, the first order derivative of the unknown target is
given by
∂µ1 (θ)
∂(d2 − d1 ) ∂(d3 − d1 )
∂(dM − d1 ) T
.
=
,
,··· ,
∂θk
∂θk
∂θk
∂θk
(2.26)
For 3-D cases, θ = [x, y, z]T ,
∂dm ∂d1
x − xm x − x1
−
=
−
.
∂x
∂x
dm
d1
(2.27)
19
Similarly
∂dm ∂d1
y − ym y − y1
−
,
−
=
∂y
∂y
dm
d1
∂dm ∂d1
z − zm z − z1
−
.
−
=
∂z
∂z
dm
d1
(2.28a)
(2.28b)
Proposition 1. The choice of the reference anchor does not affect the CRLB.
Proof. Let r s be the range measurements vector where v s is selected as the reference
anchor. Since rm − rs = (rm − r1 ) − (rs − r1 ), r s is the linear combination of the original
TDOA range measurements r 1 ∼ N (µ1 , C 1 ). Thus,
r s = Ar1 ,
(2.29)
where A is a full rank square matrix. Thus, r s ∼ N (Aµ1 , AC 1 AT ). From Eq. (2.25),
the FIM from the new range measurements r s is
I s (θ)k,l =
∂µs
∂θk
T
C −1
s
∂µs
∂θl
∂Aµ1 T
T −1 ∂Aµ1
=
(AC 1 A )
∂θk
∂θl
T
∂µ1
∂µ1
T
T −1
=
A (AC 1 A ) A
.
∂θk
∂θl
(2.30)
Defining C 0s = AT (AC 1 AT )−1 A, we have
C 0s C 1 AT = AT (AC 1 AT )−1 AC 1 AT
= AT .
(2.31)
Since A is a full rank matrix,
C 0s C 1 = I.
(2.32)
20
Thus we have
I s (θ)k,l =
=
∂µ1
∂θk
T
∂µ1
∂θk
T
T −1
T
A (AC 1 A )
C −1
1
∂µ1
∂θl
A
∂µ1
∂θl
= I(θ)k,l .
(2.33)
It shows that the linear transformation does not change the FIM, nor does it change
the CRLB. It agrees with the intuition, because the linear transformation (full rank)
does not change the information we have. So the CRLB remains unchanged.
2.3 Range Measurement Errors
For the range measurement errors, we use the same model defined in [60]:
1. Type I error
In this case, LOS link exists between the target and each anchor. For example, there are no objects blocking the target-anchor path. In this case, the main
error of the range measurements can be modeled as an additive noise with Gaussian distribution, where a% denotes the Type I error with distribution nm (i) ∼
N (0, (a% × dm )2 ), and dm is the true distance defined in Eq. (2.1). All the algo-
rithms that will be discussed in Chapters 3, 4, 5 and 6 work under this scenario.
But it does not mean that these methods can only work in the Type I error scenario.
In Chapter 7, we will show how to apply these methods to NLOS mitigation.
2. Type II Error
The LOS path between the target and the anchor is slightly blocked, e.g., by people
or other minor objects between them. For example, the objects between the target
and the anchor are small and not close to either the target or the anchor. Thus,
NLOS offsets exist in the range measurements, but are not severe. The NLOS
offset can be modeled as a uniform distribution bm ∼ U(0, b% × dm ), where b ≤ 5.
As shown in the following chapters, under such scenario, the classic methods (e.g.,
21
NLLS, MOM) still work well.
3. Type III error
In this scenario, the NLOS offset in the range measurement is severe. For example,
there are many small objects located between the target and the anchor. The
NLOS offset can be modeled as a uniform distribution bm ∼ U(0, b% × dm ), where
b ≤ 100. In this case, the classic methods (e.g., NLLS, MOM) do not work well,
since the NLOS offset will cause a big bias in the final estimate. In Chapter 7, we
discuss methods to deal with Type III error.
4. Type IV error
In this case, the path between the target and the anchor is completely blocked.
For example, the target is right behind a huge object, which blocks the path to the
anchor. In this case, the NLOS offset is too severe for the range measurements to
provide any useful target location information. Such range measurements will be
detected during the range estimation phase and then discarded.
2.4 CRLB Simulation
We run simulation for the 2-D case since it is easy to show the result in the 2-D diagram. Figure 2.4 shows the anchors ({(±1, ±1)}) and targets with index (x, y =
[−0.6, −0.3, 0, 0.3, 0.6]). For the following simulations, we use the same index for the
targets, if it is not specified.
Figure 2.5 shows the CRLB for each target location, where the variances of the range
measurement errors are chosen to be σ 2 = [0.063, 0.141, 0.070, 0.061]T and N = 50.
With the same setting, TOA systems perform slightly better than TDOA systems. One
reason is that TOA systems have M N range measurements, while TDOA systems only
have (M − 1)N range measurements. So TOA systems have more information about
the target location than TDOA systems. Secondly, the subtraction operation in TDOA
systems will increase the noise level, which can be verified with Eq. (2.13).
Figure 2.6 shows the CRLB for TOA and TDOA systems assuming Type I error,
where σ(a%) denotes the AWGN error with distribution nm (i) ∼ N (0, (a% × dm )2 ) and
N = 50. It is observed that their performances are very close, although the expected
TOA performance is slightly better than the TDOA case.
22
Target
Anchor
2
1
1
0.8
0.6
5
10
15
20
25
4
9
14
19
24
3
8
13
18
23
2
7
12
17
22
1
6
11
16
21
0.4
0.2
y
0
−0.2
−0.4
−0.6
−0.8
3
−1
4
−1
−0.5
0
x
0.5
1
Figure 2.4: CRLB: 4 anchors at the corner and 25 target locations in the middle.
−4
CRLB(x−coord)
12
x 10
TOA
TDOA
10
8
6
0
5
10
15
Target Index
20
25
−4
CRLB(y−coord)
14
x 10
TOA
TDOA
12
10
8
6
4
0
5
10
15
Target Index
20
25
Figure 2.5: CRLB: Comparison between TOA and TDOA systems.
23
TOA
TDOA
−4
CRLB
10
−5
10
1
2
3
4
5
σ(a%)
6
7
8
9
Figure 2.6: CRLB: Comparison between TOA and TDOA systems assuming Type I
error.
24
2.5 Incremental Anchor Layout Method
The performance of indoor localization systems highly depends on the anchor layout. For
all TOA, TDOA and cluster TDOA systems, the CRLB is widely used to optimize the
anchor layout such that the system will achieve the best performance for some specific
target locations. For example, in [38, 40], the authors proposed a uniform angular array
(UAA) based anchor layout method for TDOA systems, which minimizes the CRLB for
some specific target location [37]. In [41], a ring array based anchor layout geometry is
proposed for TOA, TDOA, and AOA systems, which is also based on minimizing the
CRLB. In [28,33], the author derived an optimal anchor geometry for TOA systems with
a single cluster. In [76], the author optimized the anchor layout for mobile positioning
in urban areas. Generally, an anchor layout that works best for all target locations does
not exist, and the optimized anchor layout can be achieved by minimizing the average
CRLB or similar criteria [32, 36, 37].
However, for indoor localization, the optimal layout might not be suitable for practical deployment, since the anchor locations are also constrained by the physical limitation
of the room. For example, the optimal position predicted by UAA might not be able to
hold the anchor; for most cases the anchor might only be mounted on the walls, ceiling
or floor. In this case, the CRLB cannot immediately predict the anchor positions. The
brute force searching method can be applied to obtain suboptimal solutions, but such an
approach is expensive for fast system deployment. Furthermore, if a system has already
been installed, the method based on the overall CRLB optimization is also impractical.
For example, it is often necessary to add more anchors to the system to meet coverage
and performance requirements. With the CRLB approach, if a new anchor is to be
added, all existing anchors must be relocated.
Also in practice, the accuracy of certain dimension might be more important than
others. For example, in retail store with well designed aisles as illustrated in Figure 2.7,
the distance between two adjacent aisles is generally large (e.g., 2 meters in y direction);
while product items placed in the same aisle are much closer to each other (e.g., 0.5
meters in x direction). Thus, to locate products, the accuracy along x direction will be
much more stringent than along y direction. This requires the anchor layout to provide
a higher accuracy along the x direction than the y direction.
We propose an incremental anchor layout method (ICALM) that is useful for practical
25
y
Aisle k + 1
Aisle k
Aisle k − 1
x
Figure 2.7: ICALM: Illustration of the aisle layout for retail stores.
system deployment. Given existing anchors, a new anchor to be added into the network
finds its best location while the existing anchors are untouched. The same procedure
can be used to relocate any anchor for better performance.
2.5.1 TOA
Figure 2.8 shows the system layout for TOA localization, where v k = [xk , yk , zk ]T is the
new anchor to be added to the system whose position is to be optimized. Without loss
of generality, we assume that v k is added mainly to improve the x-axis accuracy of the
target θ = [x, y, z]T .
vk
vk′
θ θ′
x
Figure 2.8: ICALM: Illustration of anchor layout for TOA localization.
As depicted in Figure 2.8, when the target is moved from θ to θ 0 , the change of TOA
26
will be
∆T OAx = kv k − θk − v k − θ 0 .
(2.34)
Using triangle inequality theorem, we have
kv k − θk − v k − θ 0 ≤ θ − θ 0 .
(2.35)
So the change of TOA (∆T OAx ) is always no greater than the target displacement
θ − θ 0 . Also ∆T OAx reaches the maximum when the anchor is on the line of θ → θ 0
(e.g., at location v 0k ). In this case, when the target moves from θ to θ 0 , the system can
detect the same amount of displacement. In other words, when the target located at θ
is estimated as θ 0 , the anchor v 0k can easily detect such offset. Thus, it is possible to use
some methods (e.g., least squares or maximum likelihood methods [5, 50, 52]) to improve
the performance by compensating for such offset.
Thus, if we roughly know the target location and its moving direction or the direction
for minimal estimation error, e.g., the x-axis in Figure 2.8, we can place the anchor on
that line. In practice, for most cases, the anchor can only be mounted at some specific
locations (e.g., the wall) and no optimal v 0k may be found for the anchor.
Without loss of generality, suppose the target is at θ = [0, 0, 0]T , θ 0 = [∆x, 0, 0]T ,
and v k = [xk , yk , zk ]T , where xk ≥ ∆x ≥ 0 and ∆x is the small displacement. Rewrite
the range measurement change equation here for convenience:
∆T OAx = kv k − θk − v k − θ 0 q
q
2
2
2
2
2
2
= xk + yk + zk − (xk − ∆x) + yk + zk .
(2.36)
As it is assumed that xk ≥ ∆x ≥ 0, Eq. (2.36) can be simplified as
∆T OAx =
q
q
x2k + yk2 + zk2 − (xk − ∆x)2 + yk2 + zk2 .
(2.37)
27
Taking the derivative of ∆T OAx with respect to xk , we have
xk − ∆x
∂∆T OAx
xk
−q
.
=q
∂xk
2
2
2
2
2
2
xk + yk + zk
(xk − ∆x) + yk + zk
(2.38)
Since xk ≥ ∆x ≥ 0, it is easy to see
xk − ∆x
xk
q
≥q
x2k + yk2 + zk2
(xk − ∆x)2 + yk2 + zk2
xk dk (θ 0 ) ≥ (xk − ∆x)dk (θ)
⇔
x2k dk (θ 0 )2 ≥ (xk − ∆x)2 dk (θ)2
⇔
x2k (yk2 + zk2 ) ≥ (xk − ∆x)2 (yk2 + zk2 )
⇔
x2k ≥ (xk − ∆x)2 .
⇔
Thus
∂∆T OAx
∂xk
(2.39)
≥ 0, ∀xk ≥ ∆x ≥ 0. In other words, if yk and zk are fixed, the bigger the
xk , the larger the ∆T OAx . In this case, to improve the performance, the anchor should
be located far away from the target.
Now we take the derivative of ∆T OAx with respect to yk :
∂∆T OAx
=
∂yk
∂
q
q
x2k + yk2 + zk2 − (xk − ∆x)2 + yk2 + zk2
yk
yk
=
−
kv k − θk v k − θ 0 


< 0, ∀yk > 0


= 0, ∀yk = 0 .



> 0, ∀y < 0

∂yk
(2.40)
k
Thus, for fixed xk and zk , the smaller the |yk |, the bigger the ∆T OAx ; when yk = 0,
∆T OAx reach its maximum. It agrees with the result in Eq. (2.35) and the observation
made from Figure 2.8: for the 2-dimensional case, v 0k (yk0 = 0) is the optimal anchor
position, which can detect the largest amount of the target displacement in x direction.
28
Similarly, taking the derivative of ∆T OAx with respect to zk , we have,




< 0,
∂∆T OAx 
= 0,

∂zk



> 0,
∀zk > 0
∀zk = 0 .
(2.41)
∀zk < 0
Thus for fixed xk and yk , the smaller the |zk |, the bigger the ∆T OAx ; when zk = 0,
∆T OAx reach its maximum.
Similar results can be obtained when ∆x < 0 or xk < 0.
So, to improve the x-axis dimension performance of the target θ = [x, y, z]T , the
anchor v k = [xk , yk , zk ]T need to be placed according to Proposition 2:
Proposition 2.
When yk and zk are fixed, the bigger the distance |xk − x|, the bigger the ∆T OAx .
When xk and zk are fixed, the smaller the distance |yk − y|, the bigger the ∆T OAx .
When xk and yk are fixed, the smaller the distance |zk − z|, the bigger the ∆T OAx .
2.5.2 TDOA
The change of TDOA is written as
∆T DOAx = kv k − θk −kv 1 − θk − v k − θ 0 − v 1 − θ 0 ,
(2.42)
where v 1 is the reference anchor. According to Proposition 1, for TDOA systems, the
choice of the reference anchor does not affect the performance. Without loss of generality,
suppose x1 < 0 as depicted in Figure 2.9. If x1 > 0, we can simply choose another anchor
v s as the reference (xs < 0), which will not affect the performance. Thus, Eq. (2.42)
can be simplified as
∆T DOAx = v 1 − θ 0 −kv 1 − θk +kv k − θk − v k − θ 0 .
(2.43)
29
Since v 1 is independent of v k , we have
argmax(∆T DOAx ) = argmax kv k − θk − v k − θ 0 ,
vk
(2.44)
vk
which is same as the one defined in the TOA case (Eq. (2.37)). Thus, same conclusions
for TOA systems can be reached for TDOA systems.
v1
vk
θ θ′
x
Figure 2.9: ICALM: Illustration of anchor layout for TDOA localization.
2.5.3 Cluster TDOA
For TDOA systems, since all the anchors are synchronized, one anchor can be chosen
as the reference for all the other anchors. However, for cluster TDOA systems, only
the anchors in the same cluster are synchronized and each cluster has its own reference
anchor.
Figure 2.10 shows one cluster with two anchors, (e.g., v k and v k+1 ) to be added
to the system to improve the x-axis accuracy. Here we assume the distance between
the two anchors is fixed (kv k − v k+1 k = d). Without loss of generality, we assume that
v k+1 can detect the x-axis direction displacement better than v k , e.g., xk+1 > xk > 0,
yk > yk+1 > 0, zk > zk+1 > 0. Based on the conclusion made in Section 2.5.1, it
is easy to see that the assumption holds under such conditions. And v k+1 = [xk +
d cos β cos α, yk − d cos β sin α, zk − d sin β]T , where α and β are illustrated in Figure 2.10.
30
z
vk
α
vk+1
β
y
x
Figure 2.10: ICALM: General anchor layout for cluster TDOA localization, where v k+1
is chosen to detect the x-axis direction displacement better than v k .
Without loss of generality, let ∆x > 0, we have
∆T DOAx = kv k+1 − θk −kv k − θk − (v k+1 − θ 0 − v k − θ 0 )
= kv k+1 − θk − v k+1 − θ 0 − kv k − θk − v k − θ 0 .
(2.45)
The second equation comes from the assumption that v k+1 can detect ∆T DOAx better
than v k . And
∂∆T DOAx
−(xk + d cos β cos α)d cos β sin α (yk − d cos β sin α)d cos β cos α
=
−
∂α
kv k+1 − θk
kv k+1 − θk
−(xk + d cos β cos α − ∆x)d cos β sin α (yk − d cos β sin α)d cos β cos α
−
+
v k+1 − θ 0 v k+1 − θ 0 ≈
−d∆x cos β sin α
v k+1 − θ 0 .
(2.46)
So it reaches the maximum when α = 0. Similarly, it reaches the maximum when β
equals 0. Thus, we have
Proposition 3. For fixed v k , v k+1 = [xk +d, yk , zk ]T roughly gives the best performance.
Such configuration also has obvious implementation advantages. In the following
derivation, we assume v k+1 = [xk + d, yk , zk ]T (Figure 2.11). Thus the change of TDOA
31
vk
θ θ′
vk+1
x
Figure 2.11: Anchor layout for cluster TDOA localization.
can be written as
q
q
2
2
2
∆T DOAx = (xk + d) + yk + zk − (xk + d − ∆x)2 + yk2 + zk2
q
q
2
2
2
− xk + yk + zk + (xk − ∆x)2 + yk2 + zk2 .
(2.47)
Taking the derivative of ∆T DOAx with respect ot d, we have
∂∆T DOAx
xk + d − ∆x
xk + d
−q
=q
∂d
(xk + d)2 + yk2 + zk2
(xk + d − ∆x)2 + yk2 + zk2
≥ 0.
(2.48)
It shows that:
Proposition 4. For cluster TDOA systems, the bigger the distance between v k and
v k+1 , the better the performance.
It also agrees with the intuition, since the cluster TDOA systems trade accuracy for
implementation simplicity by placing the anchors of the same cluster within a small area.
The estimation performance can be improved by increasing the cluster size.
Taking the derivative of ∆T DOAx with respect to xk , we have
∂∆T DOAx
xk + d
xk + d − ∆x
xk
xk − ∆x
−
.
=
−
+
0
∂xk
kv k+1 − θk
kv k − θk
v k+1 − θ
vk − θ0 (2.49)
32
Since


xk − ∆x
∂ 
xk

−q

q
∂xk
x2k + yk2 + zk2
(xk − ∆x)2 + yk2 + zk2
=q
yk2 + zk2
x2k + yk2 + zk2
3
yk2 + zk2
−q
3
(xk − ∆x)2 + yk2 + zk2
≤ 0.
Thus
∂∆T DOAx
∂xk
(2.50)
≤ 0. So ∆T DOAx decreases as xk increases. In other words, for fixed
yk , zk and d, the estimation accuracy improves as xk decreases.
Similarly, taking the derivative of ∆T DOAx with respect to yk , we have
∂∆T DOAx
yk
yk
yk
yk
−
.
=
−
+
∂yk
kv k+1 − θk v k+1 − θ 0 kv k − θk v k − θ 0 (2.51)
And as


yk
∂ 
yk

−q

q
∂xk
x2k + yk2 + zk2
(xk − ∆x)2 + yk2 + zk2
=q
−yk xk
x2k + yk2 + zk2
3
(xk − ∆x)yk
+q
3
(xk − ∆x)2 + yk2 + zk2


≤ 0 y 2 + z 2 − 2x2 ≥ 0
k
k
k
.

2
2
2
> 0 yk + zk − 2xk < 0
(2.52)
Note that the second and higher order of ∆x are neglected in obtaining the last equation.
Thus, roughly


∂∆T DOAx ≤ 0

∂yk
> 0
yk2 + zk2 − 2x2k ≥ 0
yk2 + zk2 − 2x2k < 0
.
(2.53)
33
Similarly, taking the derivative of ∆T DOAx with respect to zk , we have


∂∆T DOAx ≤ 0

∂zk
> 0
yk2 + zk2 − 2x2k ≥ 0
yk2 + zk2 − 2x2k < 0
.
(2.54)
In practice, to improve the performance, xk will be chosen to be as close to the target
as possible. Thus, yk2 + zk2 − 2x2k ≥ 0 holds. In this case, we should also decrease yk and
zk to improve performance, if possible. So for cluster TDOA systems, to get the best
performance along x-axis, one should:
1. Choose the line v k → v k+1 parallel to x-axis, e.g., v k+1 = [xk + d, yk , zk ]T .
2. Choose d as large as possible.
3. Choose xk close to the potential target location.
4. Adjust yk , zk based on Eqs. (2.53) and (2.54).
2.5.4 Simulation
Figure 2.12 shows the system layout for the TOA/TDOA simulation, which covers a
10m × 10m area. Three anchors are located at (0, 0), (0, 10) and (10, 0). The goal is to
add another anchor v 4 to improve the accuracy along the x-axis, where v 4 is restricted
to be on the edges of the 10m × 10m rectangle (e.g., the edges could be walls of the
room).
Figures 2.13 and 2.14 show the average CRLB (x-coordinate) of all the targets corresponding to the location of v 4 for TOA and TDOA systems, respectively. It shows that
if v 4 can be placed along the x = 0 edge (e.g., x4 = 0), average CRLB (x-coordinate)
reaches the minimum when the y4 is around the center (y4 ≈ 5). It agrees with the con-
clusion made in Section 2.5.1, since for the fixed x4 = 0, y4 = 5 is close to the average
y-coordinate of the possible targets. Similarly, if v 4 can be placed along the y = 10 edge
(e.g., y4 = 10), average CRLB (x-coordinate) reaches the minimum when x4 is at the end
points (x4 ≈ 0 or x4 ≈ 10). Also x4 ≈ 10 is better than x4 ≈ 0 because the system has
an anchor at [0, 10]T . Thus, if v 4 = [0, 10]T , its only usage is to improve the observed
range measurement of that anchor, rather than providing new information about the
34
10
Anchor
Target
9
8
7
y(m)
6
5
4
3
2
1
0
0
2
4
6
8
10
x(m)
Figure 2.12: Anchor layout for TOA localization simulation.
Table 2.1: Comparison of the average CRLB (x-coordinate) of the ICALM and the
optimal solution for TOA systems.
CRLB proposed (m2 ) CRLB optimal (m2 )
Edge x4 = 0
0.0048
0.0047
Edge x4 = 10
0.0047
0.0045
Edge y4 = 0
0.0055
0.0055
Edge y4 = 10
0.0051
0.0051
target location. Note that the CRLB is not symmetric at x4 = 5, since first, the CRLB
is based on all the anchors, while the proposed method is only based on the v 4 ; second,
it is the average of all the targets and the original anchor layout is not symmetric along
the x-axis.
Tables 2.1 and 2.2 compare the performance of the proposed method and the optimal
solution for TOA and TDOA systems, respectively. The optimal solution is obtained by
brute force searching (with step 0.1m). It can be seen that the proposed method is very
close to the optimal solution. The small gap between the proposed method and the
optimal value is because that the proposed method does not take other anchor positions
into account and is optimized by itself.
Figure 2.15 shows the system layout for the cluster TDOA simulation. Two receiver
35
−3
x 10
CRLB x−coordinate (m2)
7.5
7
6.5
6
5.5
5
4.5
10
10
8
5
6
4
y(m)
0
2
0
x(m)
Figure 2.13: ICALM: Average CRLB (x-coordinate) versus the location of v 4 for TOA
systems (nm ∼ N (0, 0.01)).
−3
x 10
CRLB x−coordinate (m2)
14
12
10
8
6
4
10
10
8
5
6
4
y(m)
0
2
0
x(m)
Figure 2.14: ICALM: Average CRLB (x-coordinate) versus the location of v 4 for TDOA
systems (nm ∼ N (0, 0.01)).
clusters (e.g., in the 1m × 1m grid) cover the area of 10m × 10m × 5m, while target
locations are chosen on the grid with a 50cm step in each of the three spatial dimensions.
36
Table 2.2: Comparison of the average CRLB (x-coordinate) of the ICALM and the
optimal solution for TDOA systems.
CRLB proposed (m2 ) CRLB optimal (m2 )
Edge x4 = 0
0.0096
0.0090
Edge x4 = 10
0.0052
0.0047
Edge y4 = 0
0.0095
0.0095
Edge y4 = 10
0.0053
0.0053
Cluster unit 1
Cluster unit 2
Target
5
4
z(m)
3
2
1
0
10
10
8
5
6
4
y(m)
0
2
0
x(m)
Figure 2.15: ICALM: Anchor layout for cluster TDOA simulation.
One additional cluster (cluster 3) is to be added to the system to improve the accuracy
of x-axis, which is constrained to be mounted on the x-z plane. In practice, x-z plane
could be a wall, so it is easy to mount the cluster there. Figure 2.16 shows the contour
of the average CRLB (x-coordinate), while (x, z)-coordinates are the center of cluster
3. The range measurement error is ∼ N (0, (0.01dm )2 ) and dm is the true distance
between the target and the mth anchor. It clearly shows that the performance of the
x-coordinate reaches the maximum when the cluster is placed close to the center of the
x-z plane (Table 2.3), as expected from the analysis in Section 2.5.3.
37
0.13
9
0.104
8
0.0874
7
0.0721
0.0653
6
x(m)
0.062
5
0.0637
0.0721
4
0.0874
3
0.104
2
0.13
1
0.5
0.143
1
1.5
2
2.5
z(m)
3
3.5
4
4.5
Figure 2.16: ICALM: Average CRLB (x-coordinate) contour for the cluster TDOA systems with a third cluster on the x-z plan.
Table 2.3: Comparison of the CRLB (x-coordinate) of the ICALM and the optimal
solution for cluster TDOA systems.
CRLB proposed (m2 ) CRLB optimal (m2 )
0.0626
0.0620
2.6 Conclusion
In this chapter, the signal models for both TOA and TDOA systems are presented. The
range measurement error for indoor localization is also briefly discussed. The CRLB is
derived, which can be used as a benchmark for all the estimation algorithms. Then, we
propose the ICALM for TOA, TDOA, and cluster TDOA localization systems based on
the maximum range measurement change criterion. Compared to the traditional CRLB
based methods, ICALM does not require exhaustive search nor does it need to know
positions of the existing anchors. Thus, it can be applied to fast system deployment,
especially for the cluster TDOA systems, where clusters work independently. The same
procedure can also be used to optimize the layout of a network that has been deployed.
38
Chapter 3: Method of Moments Estimator
When there is a noise in the range measurements, the classical geometric techniques
do not work well [2, 7]. In addition, if the system has more anchors, it is difficult for
the geometric method to include all anchors in the estimation for better performance.
In this case, the least squares (LS) method [42, 43, 78] can be applied to improve the
performance by including all the anchors in the estimation. However, there is still a
gap between the estimation performance and the CRLB. Thus, we propose an improved
method of moments (IMOM) approach, which can achieve a performance that is close
to the CRLB at the expense of a slightly increased computational complexity [50].
3.1 First Order Method of Moments Estimator for TOA Systems
For 1-D case, the range measurements is written as
rm (i) = dm + nm (i)
= |x − xm | + nm (i).
(3.1)
Taking the average or expectation, we have
r̄m = |x − xm | + n̄m ,
where r̄m =
1
N
PN
i=1 rm (i),
and n̄m =
1
N
PN
i=1 nm (i).
(3.2)
It is reasonable to assume that we
know the relative positions between the target and each anchor. In other words, it is
known in advance that x > xm or x < xm . Without loss of generality, let us assume that
all the first M1 (1 ≤ M1 ≤ M ) anchors satisfy x > xm , m = 1, 2, · · · , M1 , and the other
anchors satisfy x < xm , m = M1 + 1, M1 + 2, · · · , M ,


r̄ + x = x + n̄ ,
m
m
m

−r̄m + xm = x − n̄m ,
∀m = 1, 2, · · · , M1
∀m = M1 + 1, M1 + 2, · · · , M
.
(3.3)
39
In vector-matrix form
r̃ = Hθ + ñ,
(3.4)
where
T
r̃ = r̄1 + x1 , · · · , r̄M1 + xM1 , −r̄M1 +1 + xM1 +1 , · · · , −r̄M + xM ,
T
ñ = n̄1 , · · · , n̄M1 , −n̄M1 +1 , · · · , −n̄M ,
and H = 1M is the M × 1 column vector with all its elements equal to 1. Apply the LS
estimator [42, 43, 78],
θ̂ = (H T C −1 H)−1 H T C −1 r̃,
(3.5)
where
2
2
2
2
C = diag [σ12 , σ22 , · · · , σM
,
σ
,
σ
,
·
·
·
,
σ
]
,
M1 +1 M1 +2
M
1
and diag(A) denotes the diagonal matrix formed by vector A.
The 2-D and 3-D cases are much more complex than the 1-D case, since the range
measurements are not linear functions of the target location. Recall the observed range
measurements,
rm (i) = dm + nm (i).
Take the expectation operation on both sides,
r̄m = E rm (i) = dm + E nm (i) = dm .
(3.6)
Taking the square operation on both sides, for 3-D case, we have
r̄m = d2m = (x − xm )2 + (y − ym )2 + (z − zm )2 .
(3.7)
40
Choose v1 = [x1 , y1 , z1 ]T as the reference position, and subtract it from Eq. (3.7),
2
r̄m1
= 2x(xm − x1 ) + 2y(ym − y1 ) + 2z(zm − z1 ),
(3.8)
where
2
2
2
2
r̄m1
= −r̄m
+ r̄12 + x2m + ym
+ zm
− x21 − y12 − z12 .
In vector-matrix form,
r M1 = H M1 θ,
(3.9)
where
h
iT
2
2
2
r M1 = r̄2,1
, r̄3,1
, . . . , r̄M,1
,


x2 − x1 y2 − y1 z2 − z1


 x3 − x1 y3 − y1 z3 − z1 


H M1 = 2 
.
..
..
..


.
.
.


xM − x1 yM − y1 zM − z1
Apply the LS estimator,
−1
H TM1 r M1
θ̂ M1 = H TM1 H M1
= H LS r M1 ,
(3.10)
where
−1
H LS = H TM1 H M1
H TM1 .
It is easy to see that:
Proposition 5. For clean range measurements, the choice of the reference anchor does
not affect the estimation result.
Proof. The proof is similar to the proof of Proposition 1.
41
3.1.1 Issues of the MOM Algorithm
Figure 3.1 shows the estimated position with the MOM estimator, where v ref = [−1, −1]T ,
σ 2 = [0.063, 0.141, 0.070, 0.061]T and N = 50. Figure 3.2 compares the theoretical CRLB
and the estimated MSE. It is observed that the MSE is not smooth for all the target
locations:
1. Generally, if the target location is close to the reference point, then the MSE is
small.
2. If the targets’ y coordinate are fixed (for example y = −0.6), the variances of the
estimated x coordinate look similar.
3. If the targets’ x coordinate are fixed (for example x = −0.6), the variances of the
estimated y coordinate look similar.
1
Estimated position
True position
Anchor position
2
0.8
0.6
1
MSE=0.0030
5
10
15
20
25
4
9
14
19
24
3
8
13
18
23
2
7
12
17
22
1
6
11
16
21
0.4
y
0.2
0
−0.2
−0.4
−0.6
−0.8
MSE=0.0021
−1
3
−1
4
−0.5
0
x
0.5
Figure 3.1: MOM1: Estimated position.
1
42
−3
MSE (x−coord)
x 10
CRLB
Estimated MSE
1.5
1
0.5
0
5
10
15
Target index
20
25
10
15
Target index
20
25
−3
MSE (y−coord)
2.5
x 10
2
CRLB
Estimated MSE
1.5
1
0.5
0
5
Figure 3.2: MOM1: Comparison between the CRLB and estimated MSE.
3.1.2 Performance in AWGN
In the previous section, the MOM estimator is derived without considering the noise.
Here the noise is taken into consideration. As the squaring operation on the observed
range measurements is nonlinear, it might enhance the noise. Thus, the CRLB needs to
be derived again. Taking the time average over the observed range measurements (Eq.
(2.1)), we have
ˆm,
r̄ˆm = dm + n̄
where r̄ˆm =
1
N
PN
i=1 rm (i),
ˆm =
and n̄
1
N
PN
i=1 nm (i).
(3.11)
Take the square operation,
2
ˆ m + n̄
ˆ 2m .
r̄ˆm
= d2m + 2dm n̄
(3.12)
It is reasonable to assume that compared to the true distance dm , the noise component
ˆ 2m . Then, we can approximate Eq. (3.12)
is small. Thus, we may neglect the third term n̄
43
as
2
ˆm.
r̄ˆm
≈ d2m + 2dm n̄
(3.13)
For 3-D case, if we choose v 1 = [x1 , y1 , z1 ]T as the reference position, and subtract it
from Eq. (3.13), then we have,
ˆm,
ˆ 1 − 2dm n̄
r̃m,1 = 2x(xm − x1 ) + 2y(ym − y1 ) + 2z(zm − z1 ) + 2d1 n̄
(3.14)
where
2
2
2
r̃m,1 = −r̄ˆm
+ r̄ˆ12 + x2m + ym
+ zm
− x21 − y12 − z12 ,
ˆm = 2
2dm n̄
N
dm X
d2 2
).
nm (i) ∼ N (0, 4 m σm
N
N
i=1
In vector-matrix form,
r M1 = H M1 θ + nM1 ,
(3.15)
where H M1 is same as the one defined in the previous section,
T
r M1 = r̃2,1 , r̃3,1 , · · · , r̃M,1 ,
ˆ 1 − d2 n̄
ˆ 2 , d1 n̄
ˆ 1 − d3 n̄
ˆ 3 , . . . , d1 n̄
ˆ 1 − dM n̄
ˆM T .
nM1 = 2 d1 n̄
The covariance matrix is,
C M1 =
4
N
=
4
N


d22 σ22 + d21 σ12
d21 σ12
...
d21 σ12




d21 σ12
d23 σ32 + d21 σ12 . . .
d21 σ12




.
.
.
.
.
.


.
.
.
...


2
2
2
2
2
2
2
2
d1 σ1
d1 σ1
. . . dM σM + d1 σ1
h
i
4
2
diag d22 σ22 , d23 σ32 , · · · , d2M σM
+ d21 σ12 1M −1 1TM −1 .
N
(3.16)
Note that Eq. (2.8) can still be used to calculate the CRLB. However, since C(θ) = C M1
is a function of θ, we need to include the second term in Eq. (2.8). The (k, l)th element
44
of the FIM is given by Eq. (2.8):
I(θ)k,l =
∂µ(θ)
∂θk
T
C(θ)−1
∂µ(θ)
∂θl
+
1
∂C(θ)
∂C(θ)
tr C(θ)−1
,
C(θ)−1
2
∂θk
∂θl
where,
µ(θ) = H M1 θ,
h
iT
∂µ(θ)
= 2 x2 − x1 x3 − x1 · · · xM − x1 ,
∂x
h
iT
∂µ(θ)
= 2 y2 − y1 y3 − y1 · · · yM − y1 ,
∂y
h
iT
∂µ(θ)
= 2 z 2 − z1 z 3 − z1 · · · zM − z1 ,
∂z
and

(x − x2 )σ22 + (x − x1 )σ12


(x − x1 )σ12
∂C(θ)
8 
=

..
∂x
N 
.

(x − x1 )σ12
(x − x1 )σ12
(x − x3 )σ32 + (x − x1 )σ12
..
.
(x − x1 )σ12
...
...
..
.

(y − y2 )σ22 + (y − y1 )σ12


(y − y1 )σ12
∂C(θ)
8 
=

..
∂y
N 
.

(y − y1 )σ12
(y − y1 )σ12
(y − y3 )σ32 + (y − y1 )σ12
..
.
(y − y1 )σ12
...
...
..
.

(z − z2 )σ22 + (z − z1 )σ12


(z − z1 )σ12
∂C(θ)
8 
=

..
∂z
N 
.

(z − z1 )σ12
(z − z1 )σ12
2
(z − z3 )σM
+ (z − z1 )σ12
..
.
(z − z1 )σ12
...
...
..
.
...
...
...

(x − x1 )σ12


(x − x1 )σ12

,
..

.

2
+ (x − x1 )σ12
(x − xM )σM

(y − y1 )σ12


(y − y1 )σ12

,
..

.

2
+ (y − y1 )σ12
(y − yM )σM

(z − z1 )σ12


(z − z1 )σ12

.
..

.

2
(z − zM )σM
+ (z − z1 )σ12
Figure 3.3 shows the new CRLB and the theoretical MSE of the MOM estimator, where
v ref = [−1, −1]T , σ 2 = [0.063, 0.141, 0.070, 0.061]T and N = 50. It is observed that the
CRLB is very close to the original one (Figure 2.5), which means the nonlinear process
in the MOM method does not apparently increase the noise level. The theoretical MSE
matches the estimated MSE very well. However, there also exists an obvious gap between
45
the CRLB and MSE.
−3
MSE (x−coord)
x 10
Original CRLB
New CRLB
Theoretical MSE
Estimated MSE
1.5
1
0.5
0
5
10
15
Target index
20
25
10
15
Target index
20
25
−3
MSE (y−coord)
2.5
x 10
2
1.5
Original CRLB
New CRLB
Theoretical MSE
Estimated MSE
1
0.5
0
5
Figure 3.3: MOM1: Comparison between the original CRLB, new CRLB, theoretical
MSE and the estimated MSE.
3.1.3 Iterative Approach
Since in general the covariance matrix is not an identity matrix, we can use the weighted
least squares (WLS) method to estimate the target location as
−1
θ̂ M1 = H TM1 C −1
H
H TM1 C −1
m1
M1
M1 r M1 .
(3.17)
Proposition 6. For the WLS estimator, the choice of the reference anchor does not
affect the estimation result.
Proof. According to the proof of Proposition 1 and Eq. (3.15), if we choose v s as the
reference position, then the corresponding range measurement equations are r s = Ar M1 ,
where A is a full rank square matrix. Its covariance matrix is AC M1 AT . Thus, the WLS
46
estimator is
−1
θ̂ s = H TM1 AT (AC M1 AT )−1 AH m1
H TM1 AT (AC M1 AT )−1 Ar M1
−1
= H TM1 C −1
H
H TM1 C −1
m1
M1
M1 r M1 .
(3.18)
The second equation comes from AT (AC M1 AT )−1 A = C −1
M1 . So the choice of the
reference anchor does not affect the estimation result.
However, for the LS estimator, the choice of the reference anchor does change the
estimation result. In the next section, we will show how to improve the estimation
accuracy with the proper choice of the reference anchor.
Since C M1 depends on the unknown target location, we cannot directly apply the
WLS method. In this case, the iterative method can be used to update the covariance
matrix estimation and the target estimation, which is also known as the generalized
method of moments (GMOM) [45].
Algorithm 1 GMOM estimator for TOA systems.
1:
Initialize θ̂
2:
repeat
0
3:
Reconstruct C M1 with Eq. (3.16) and θ̂
4:
6:
Estimate
θ̂ with
Eq. (3.17)
k
k−1 if θ̂ − θ̂ < θ then
break
7:
end if
5:
8:
k−1
k
until maximum iteration reached or convergence
This method has a good performance, which will be shown in Section 3.1.6. However,
it requires iteration to estimate the covariance matrix and the target location, which
makes it computationally much more complex than the LS method.
47
3.1.4 IMOM Approach
Let us examine the least squares algorithm again. If we ignore C M1 , and still use the
LS algorithm to estimated the target location, we have
θ̂ M1 = H LS r M1 .
The MSE is given as
MSE (θ̂ M1 ) = var(θ̂ M1 )
= var (θ + H LS nM1 )
= H LS C M1 H TLS .
(3.19)
Eqs. (3.10), (3.16), and (3.19) show that the MSE depends on the reference anchor
2 , m = 1, 2, · · · M .
position as well as d2m σm
Figure 3.4 shows the MSE performance of the MOM estimator with respect to the
reference anchors, where σ 2 = [0.063, 0.141, 0.070, 0.061]T and N = 50. It clearly shows
that the estimation accuracy depends on the reference anchor position. For each specific
target location, one reference position might perform better than the others.
−3
5
x 10
Original CRLB
4.5
vref=[1, 1]T
MSE (x−coord + y−coord)
vref=[−1, 1]T
4
3.5
vref=[−1, −1]T
vref=[1, −1]T
3
2.5
2
1.5
1
0
5
10
15
Target index
20
25
Figure 3.4: MOM1: Performances with different reference anchors.
48
So without resorting to iterations to estimate the covariance matrix (Eq. (3.16)),
the accuracy of the MOM-LS estimator can still be improved by selecting the optimal
reference anchor position (v ref ):
argmin
tr MSE(θ̂ M1 ) ,
(3.20)
2 ,m=[1,2,··· ,M ]
v ref |d2m σm
where
tr MSE(θ̂ M1 ) = tr H LS C M1 H TLS
= tr H TLS H LS C M1
T h
iT
4
2
=
diagv H TLS H LS
d22 σ22 , · · · , d2M σM
N
4d2 σ 2 + 1 1 tr 1T H TLS H LS 1 ,
N
(3.21)
and diagv(A) denotes the column vector formed by the main diagonal of A (a matrix).
So if the variance of the range measurements and target locations are known, Eqs.
(3.20) and (3.21) can be used to find the optimal reference anchor position.
• Variance of the range measurements When there are many range measurements
from each anchor (e.g., N > 30), the variance can be estimated from range measurements. If estimates of the range variances cannot be obtained, then they are
assumed to be the identical for all anchors.
• Target positions The unknown target location can be estimated from the initial
MOM-LS estimates.
This analysis leads to the following IMOM estimator:
Algorithm 2 IMOM estimator for TOA systems.
1: MOM-LS: Randomly choose one anchor as the reference position to estimate the
target location (θ̂ LS ).
2:
Optimizing: Use θ̂ LS to calculate the optimal anchor position with Eqs. (3.20) and
(3.21). Then, use that anchor position as the reference position to estimate θ̂.
49
3.1.4.1 Estimation Performance
The first term of Eq. (3.21) represents the MSE of the ideal LS estimator when the
observed distances from the reference anchor (v 1 ) to the target is error free; the second
term is the MSE caused by the noise.
Evaluating Eq. (3.21) requires the inverse of a non-diagonal matrix. For a specific
anchor layout, we apply a coordinate transformation ([x, y, z]T → [x0 , y 0 , z 0 ]T ) such that:
1. The reference anchor is at the origin (v 1 = [0, 0, 0]T ).
2.
1
M
P
0
m ym
≈ 0,
1
M
P
0
m zm
≈ 0,
1
M
0 0
m xm ym
P
≈ 0,
1
M
P
0 0
m x m zm
≈ 0,
1
M
0 0
m ym zm
P
≈
0, assuming that there are a large number of anchors and the anchor layout is optimized [37].
−1
0
In this case, H 0T
becomes a diagonal matrix. Eq. (3.21) clearly shows that
M1 H M1
4 0T 0 T
2
tr H LS H LS argmin d2m σm
N
m
T h
iT
4
0
2 2
2 2
≤
diagv H 0T
H
d
σ
,
·
·
·
,
d
σ
LS
LS
2 2
M M
N
T
4
0
2
tr H 0T
,
≤
argmax d2m σm
LS H LS
N
m
(3.22)
and
0
tr H 0T
LS H LS
where the coefficient
T
1
4
−1
= tr
1
=
4
1
1
1
P 02 + P 02 + P 02
mxm
my m
mz m
0
H 0T
M1 H M1
H 0T
M1
0
H 0T
M1 H M1
−1
H 0T
M1
T !
!
,
(3.23)
comes from the definition of H M1 (Eq. 3.9). Similarly,
0
0
T
0T
tr 1T H 0T
LS H LS 1 = tr H LS 11 H LS
P 0 !2
xm
1
=
≥ 0.
Pm 0 2
4
mxm
(3.24)
From Eqs. (3.22), (3.23), and (3.24), it is found that the second term of Eq. (3.21)
50
cannot be ignored.
The first term of Eq. (3.21) can also be viewed as the MSE from the ideal LS estimator
by removing the reference anchor position. For simplicity, all anchors are assumed equally
important in determining the system performance when range measurements are noise
free. Thus, the second term of Eq. (3.21) will dominate the performance. For the same
reason, the values of Eq. (3.24) for different anchor positions will be approximately
2
equal. Therefore, choosing d21 σ12 = argmin d2m σm
will apparently decrease the overall
m
MSE of the system. The maximum reduction in MSE with the proposed IMOM method
is
1
N
P 0 !2 2 2
2 2
mxm
.
argmax dm σm − argmin dm σm
P 02
m
m
mxm
(3.25)
3.1.5 Computational Complexity
The number of multiplications is used here to indicate the complexity. For complexity
of various operations, we assume the complexity of the division or square root operation
is equal to the same size multiplication.
Since H LS only depends on the anchor position, which can be calculated in advance,
the original MOM method needs around 5M multiplications and no matrix inversion.
The improved method needs around M 2 + 12M multiplications and no matrix inversion.
The MOM-WLS needs 2M multiplications to initialize. For each iteration, it requires
about 3M 2 +10M multiplications and inversion of two matrices (3×3 and (M −1)×(M −
1)). In a typical scenario with 10 iterations, it requires approximately 30M 2 + 102M
multiplications and inversion of 20 matrices.
When M is small (e.g., M < 10), the proposed IMOM algorithm is computationally
much more attractive than the WLS estimators. When M is large (e.g., M > 50), we can
use the second term of Eq. (3.21) to select the optimal reference anchor in the proposed
IMOM algorithm, which results in 13M multiplications.
51
3.1.6 Simulation
We use the following equations to calculate the mean square error (MSE) of the estimator.
We run L Monte Carlo rounds for each target location to obtain the MSE:
L
MSEx =
MSEy =
2
1X
x̂(l) − x ,
L
(3.26a)
1
L
(3.26b)
l=1
L
X
l=1
2
ŷ(l) − y ,
T
where x̂(l), ŷ(l) is the estimated target location. For all the following simulations, the
reference anchor of the MOM-WLS method is chosen as [−1, −1]T , and the maximum
number of iteration for the MOM-WLS is set to be 10, if not specified.
Figure 3.5 shows the MSEs of the proposed IMOM method, MOM-LS, and MOMWLS. The noise variances are chosen to be σ 2 = [0.063, 0.141, 0.070, 0.061]T and N = 50.
For the IMOM sub-optimal method, the second term of Eq. (3.21) is used to select the
optimal reference anchor position. If the reference position is fixed to [−1, −1]T , for
the target that is far away from it, the MSE is relatively large. And the MSE of the
estimation from the IMOM method is very close to the CRLB for most target locations.
2 )
Comparison of MSE versus the average variance of the range measurements (σavg
of the proposed IMOM method, MOM-LS, MOM-WLS and NLLS-WLS (Chapter 4) is
given in Figure 3.6, where θ = [0.6, 0.6]T . The maximum number of iteration for the
2 is calculated according to the
NLLS-WLS method is set to be 10. In the simulation, σavg
variance of the range measurements and the average distance between the target and the
2 , 2σ 2 ].
anchors. For each simulation, noise variance is randomly chosen between [0.5σavg
avg
2 , the MSE is the averaged value over 200000 runs. It is observed that the
For each σavg
MSE of the proposed IMOM method is very consistent under different noise levels, and
is very close to those of the MOM-WLS and NLLS-WLS. Figure 3.7 shows the MSE
of the range measurements with Type II error, where the NLOS offset (b%) denotes
the random positive NLOS error with uniform distribution bm ∼ U(0, b% × dm ). It
is observed that the proposed IMOM method achieves a performance nearly identical
to the MOM-WLS and NLLS-WLS algorithms, which is much better than the MOM
method, but has a significantly lower computational complexity than MOM-WLS and
52
−3
MSE (x−coord)
1.5
x 10
CRLB
MOM−LS
MOM−WLS
IMOM sub−optimal
IMOM
1
0.5
0
5
10
15
Target index
20
25
10
15
Target index
20
25
−3
x 10
MSE (y−coord)
2
1.5
CRLB
MOM−LS
MOM−WLS
IMOM sub−optimal
IMOM
1
0.5
0
5
Figure 3.5: MOM1: Simulated MSE curves of the proposed IMOM algorithm, MOM-LS,
and MOM-WLS.
NLLS-WLS methods.
−1
MSE (x−coord+y−coord)
10
−2
10
−3
10
18
MOM−LS
MOM−WLS
NLLS−WLS
IMOM sub−optimal
IMOM
20
22
24
26
28
30
32
Avarage variance of the range measurement error (dB)
34
Figure 3.6: MOM1: Performances of the IMOM, MOM-LS, MOM-WLS, and NLLS-WLS
methods (Type I error, θ = [0.6, 0.6]T ).
53
−2
MSE (x−coord+y−coord)
10
−3
10
MOM−LS
MOM−WLS
NLLS−WLS
IMOM sub−optimal
IMOM
−4
10
1
1.5
2
2.5
3
3.5
NLOS offset (%)
4
4.5
5
Figure 3.7: MOM1: Performances of the IMOM, MOM-LS, MOM-WLS, and NLLS-WLS
methods (Type II error, θ = [0.6, 0.6]T , σ 2 = 0.05).
Figure 3.8 compares the performances of the MOM-LS, MOM-WLS and the proposed
IMOM algorithm assuming Type I error. The notation σ(a%) denotes the AWGN error
with distribution nm (i) ∼ N (0, (a% × dm )2 ). The MSE is calculated from the average
of the total 25 targets depicted in Figure 2.4. After 10 iterations, the MOM-WLS
approaches the CRLB. The performance of the proposed IMOM method is very close to
the MOM-WLS and CRLB.
Figure 3.9 simulated the performance of the proposed IMOM method, MOM-LS and
MOM-WLS method under the Type II error, where nm ∼ N 0, (0.05dm )2 and N = 50.
When NLOS offsets are small (Type II error), the proposed IMOM method still performs
much better than the MOM-LS method.
54
−3
MSE (x−coord+y−coord)
10
−4
10
CRLB
MOM−LS
MOM−WLS
IMOM sub−optimal
IMOM
−5
10
1
2
3
4
5
σ (%)
6
7
8
9
Figure 3.8: MOM1: Performances of the IMOM, MOM-LS, and MOM-WLS methods
(Type I error, 25 targets).
−2
10
MSE (x−coord+y−coord)
CRLB
MOM−LS
MOM−WLS
IMOM sub−optimal
IMOM
−3
10
−4
10
1
1.5
2
2.5
3
3.5
NLOS offset (%)
4
4.5
5
Figure 3.9: MOM1: Performances of the IMOM, MOM-LS, and MOM-WLS methods
(Type II errors, 4 NLOS links, 25 targets).
55
3.2 Second Order Method of Moments
Recall that the range measurements are written as
rm (i) = dm + nm (i).
Taking the second moment, we have
2
2
2
(i) = d2m + σm
.
r̄m
= E rm
(3.27)
For 3-D case, choose v 1 = [x1 , y1 , z1 ]T as the reference anchor, and subtract it from Eq.
(3.27),
r̃m1 = 2x(xm − x1 ) + 2y(ym − y1 ) + 2z(zm − z1 ),
(3.28)
where
2
2
2
2
r̃m1 = −r̄m
+ r̄12 + x2m + ym
+ zm
− x21 − y12 − z12 + σm
− σ12 .
In vector-matrix form,
r M2 = H M2 θ,
(3.29)
where
T
r M2 = r̃2,1 , r̃3,1 , . . . , r̃M,1 ,


x2 − x1 y2 − y1 z2 − z1


 x3 − x1 y3 − y1 z3 − z1 


H M2 = 2 
.
.
.
.
.
.
.


.
.
.


xM − x1 yM − y1 zM − z1
The LS estimator is,
−1
θ̂ M2 = H TM2 H M2
H TM2 r M2 .
(3.30)
56
3.2.1 Issues of the MOM Algorithm
Figures 3.10 and 3.11 show, respectively, the estimated position and the corresponding
MSE, where v ref = [−1, −1]T , σ 2 = [0.063, 0.141, 0.070, 0.061]T and N = 50. These
curves are very close to the ones shown in Figures 3.1 and 3.2, which are what is expected
from the derivation.
1
Estimated position
True position
Anchor position
2
0.8
0.6
1
MSE=0.0035
5
10
15
20
25
4
9
14
19
24
3
8
13
18
23
2
7
12
17
22
1
6
11
16
21
0.4
y
0.2
0
−0.2
−0.4
−0.6
−0.8
MSE=0.0023
−1
3
−1
4
−0.5
0
x
0.5
1
Figure 3.10: MOM2: Estimated position of MOM2 method.
57
−3
MSE (x−coord)
x 10
CRLB
Estimated MSE
1.5
1
0.5
0
5
10
15
Target index
20
25
10
15
Target index
20
25
−3
MSE (y−coord)
2.5
x 10
2
CRLB
Estimated MSE
1.5
1
0.5
0
5
Figure 3.11: MOM2: Comparison between the CRLB and estimated MSE.
3.2.2 Performance in AWGN
Taking the time average of the range measurements, we have
2
r̄ˆm
=
N
1 X
rm (i)2
N
i=1
=
d2m
N
N
dm X
1 X
+2
nm (i) +
nm (i)2 .
N
N
i=1
(3.31)
i=1
We consider practical scenarios where the received signals are sufficiently strong so that
P
2
relatively the noise is small. In such a case, the third term N1 N
i=1 nm (i) may be
neglected:
2
r̄ˆm
≈ d2m + 2
N
dm X
nm (i).
N
(3.32)
i=1
Note that Eqs. (3.13) and (3.32) are identical. So under small noise approximation,
the CRLB and MSE of the second order MOM estimator and the first order MOM
estimator discussed in Section 3.1.2 are exactly same. Therefore, the same iterative
58
method (Section 3.1.3) and the proposed IMOM method (Section 3.1.4) for the first
order MOM estimator can be applied here.
3.2.3 Computational Complexity
Since the second order MOM estimator needs to calculate the square of each range measurement, which needs M N multiplications, it needs around M N + 4M multiplications
in total but no matrix inversion is needed.
It seems that for the LS method, the first order MOM estimator is much simpler
than the second order MOM estimator. However, if we apply the improved method, the
first and second order MOM estimator require nearly the same number of multiplications,
since the first order MOM needs (N +2)M extra multiplications to estimate the variance
of the range measurements, while for the second order MOM, it is embedded in Eq.
(3.31).
3.2.4 Simulation
Figure 3.12 shows the simulation result of the second order MOM estimator. The noise
variances are chosen to be σ 2 = [0.063, 0.141, 0.070, 0.061]T and N = 50. The results are
very close to the first order MOM estimator, which is expected from the derivations.
Figure 3.13 shows the simulated performance of the IMOM, MOM-LS and MOMWLS methods assuming Type I error, where σ(a%) denotes the AWGN error with distribution nm (i) ∼ N (0, (a% × dm )2 ) and N = 50. It is observed that the performance of
the proposed method is very close to the MOM-WLS method.
Figure 3.14 shows the simulated performance of the IMOM, MOM-LS and MOM
WLS methods assuming Type II error, where nm ∼ N 0, (0.05dm )2 and N = 50. The
NLOS offset (b%) denotes the NLOS error with distribution bm ∼ U(0, b% × dm ). When
the NLOS offset is small, the performance of the proposed method is still much better
than that of the MOM-LS method.
59
−3
MSE (x−coord)
1.6
x 10
CRLB
MOM−LS
MOM−WLS
IMOM sub−optimal
IMOM
1.4
1.2
1
0.8
0.6
0
5
10
15
Target index
20
25
10
15
Target index
20
25
−3
x 10
MSE (y−coord)
2.5
CRLB
MOM−LS
MOM−WLS
IMOM sub−optimal
IMOM
2
1.5
1
0.5
0
5
Figure 3.12: MOM2: Simulated MSE curves of the proposed IMOM, MOM-LS, and
MOM-WLS methods.
−3
MSE (x−coord+y−coord)
10
−4
10
CRLB
MOM−LS
MOM−WLS
IMOM sub−optimal
IMOM
−5
10
1
2
3
4
5
σ (%)
6
7
8
9
Figure 3.13: MOM2: Performances of the IMOM, MOM-LS, and MOM-WLS methods
(Type I error).
60
−2
10
MSE (x−coord+y−coord)
CRLB
MOM−LS
MOM−WLS
IMOM sub−optimal
IMOM
−3
10
−4
10
1
1.5
2
2.5
3
3.5
NLOS offset (%)
4
4.5
5
Figure 3.14: MOM2: Performances of the IMOM, MOM-LS, and MOM-WLS methods
(Type II error, 4 NLOS links).
3.2.5 Comparisons between the First and Second Order MOM Estimators
Figure 3.15 compares the first and second order IMOM estimators, where the noise
variances are chosen to be σ 2 = [0.063, 0.141, 0.070, 0.061]T and N = 50. It shows that
the first order MOM estimator performs slightly better than the second order MOM
estimator, although from the analysis, their performances should be similar. This is
because in the derivation, the small noise term is ignored for simplicity.
P
2
N
1
For the first order MOM estimator, we neglect the noise N i=1 nm (i) . Take the
61
−3
MSE (x−coord)
1.6
x 10
CRLB
IMOM1
IMOM2
1.4
1.2
1
0.8
0.6
0
5
10
15
Target index
20
25
−3
MSE (y−coor)
1.6
x 10
CRLB
IMOM1
IMOM2
1.4
1.2
1
0.8
0.6
0
5
10
15
Target index
20
25
Figure 3.15: MOM2: Comparison between the first and second order MOM estimators.
expectation:

 1
E 
N
N
X
i=1
2 


N
N
X
X
1
1

nm (i)  = E 
nm (i1 )
nm (i2 )
N
N
i1 =1
=
i2 =1
N
N
1 XX
E nm (i1 )nm (i2 )
2
N
i1 =1 i2 =1
=
N
N
1 XX 2
σm δ(i1 − i2 )
N2
i1 =1 i2 =1
=
2
σm
N
.
(3.33)
62
The second moment is expressed as

 1
E 
N
N
X
i=1
2 
1
nm (i) 
N
N
X
2 

nm (i) 
i=1


N
N
N
N
X
X
X
X
1
1
1
1
= E
nm (i1 )
nm (i2 )
nm (i3 )
nm (i4 )
N
N
N
N
i1 =1
i2 =1
i3 =1
i4 =1
N
N
N
N
1 XXXX
E nm (i1 )nm (i2 )nm (i3 )nm (i4 )
4
N
i1 =1 i2 =1 i3 =1 i4 =1
1 4
2 2
= 4 3N σm
+ 3N (N − 1)σm
σm
N
3σ 4
.
= m
N2
=
(3.34)
Thus the variance is written as

2 
N
4
4
X
σm
2σm
 1
 3σ 4
var 
nm (i)  = m
−
=
.
N
N2
N2
N2
(3.35)
i=1
For the second order MOM estimator, we neglect the term
1
N
PN
2
i=1 nm (i) .
Its ex-
pectation is


N
N
X
1
1 X 2
2
E
nm (i)2  =
σm = σm
.
N
N
i=1
i=1
(3.36)
63
Its second moment is expressed as

2 


N
N
N
X
X
X
1
1
1


E 
nm (i1 )2   = E 
nm (i1 )2
nm (i2 )2 
N
N
N
i1 =1
i1 =1
i2 =1
N
N
1 XX 2
2
E
n
(i
)
n
(i
)
m 1
m 2
N2
i1 =1 i2 =1
1 4
2 2
= 2 3N σm
+ N (N − 1)σm
σm
N
N 2 + 2N 4
=
σm .
N2
=
(3.37)
Therefore,

N
4
X
N 2 + 2N 4
2σm
1
2 2
nm (i) =
σ
−
(σ
)
=
.
var 
m
m
N
N2
N

(3.38)
i=1
So the small noise ignored in the first order MOM estimator is smaller than the one in
the second order MOM estimator. That is why the performance of the first order MOM
estimator is slightly better than that of the second order MOM estimator.
3.3 TDOA
In [46–48], the authors proposed a MOM method for TDOA systems. Instead of estimating the target location θ = [x, y, z]T only, it tries to estimate an additional parameter
d1 , which is the distance between the target and the reference anchor v 1 . Since it needs
to estimate one additional parameter, it also requires at least one additional anchor.
Take the expectation over the range measurements:
r̄m,1 + d1 = dm ,
where r̄m,1 = E(rm,1 (i)). The square of the distance between the target and an anchor
is expressed as:
2
(x − xm )2 + (y − ym )2 + (z − zm )2 = r̄m,1
+ 2d1 r̄m,1 + d21 .
(3.39)
64
We also have
(x − x1 )2 + (y − y1 )2 + (z − z1 )2 = d21 .
(3.40)
Subtracting Eq. (3.40) from Eq. (3.39), we have
2
2x(x1 − xm ) + 2y(y1 − ym ) + 2z(z1 − zm ) − 2d1 r̄m,1 = r̄m,1
.
In vector-matrix form
r tdoa = H tdoa θ tdoa ,
(3.41)
where
iT
h
2
2
2
r tdoa = r̄2,1
,
r̄3,1
· · · r̄M,1
h
iT
θ tdoa = θ T d1 ,

x − x 2 y1 − y2 z 1 − z2
 1
 x 1 − x 3 y1 − y3 z1 − z3

H tdoa = 2 
..
..
..

.
.
.

x1 − xM y1 − yM z1 − zM
(3.42a)
(3.42b)
−r̄2,1


−r̄3,1 

.
.. 
. 

−r̄M,1
(3.42c)
3.3.1 Performance in AWGN
The sample mean over the range measurements is expressed as
ˆ m − n̄
ˆ1,
r̄ˆm,1 + d1 = dm + n̄
where r̄ˆm,1 =
1
N
PN
i=1 rm,1 (i)
ˆm =
and n̄
1
N
PN
i=1 nm (i).
(3.43)
The square of the distance
between the target and an anchor is expressed as:
2
ˆ m − n̄
ˆ1)
(x − xm )2 + (y − ym )2 + (z − zm )2 = r̄ˆm,1
+ 2d1 r̄ˆm,1 + d21 − 2(r̄ˆm,1 + d1 )(n̄
(3.44)
65
It is reasonable to assume that the noise is much smaller than the true distance. Thus,
ˆ m − n̄
ˆ 1 )2 in Eq. (3.44). Subtracting Eq. (3.40) from Eq. (3.44),
we can neglect the (n̄
we have
2
ˆ m,1 ,
− n̄
2x(x1 − xm ) + 2y(y1 − ym ) + 2z(z1 − zm ) − 2d1 r̄ˆm,1 = r̄ˆm,1
ˆ m,1 = 2(r̄ˆm,1 + d1 )(n̄
ˆ m − n̄
ˆ 1 ) ∼ N (0,
where n̄
4(r̄ˆm,1 +d1 )2
2 + σ 2 )).
(σm
1
N
(3.45)
The covariance matrix
of the range measurements is written as
C tdoa =
4 A + Bσ12 B T ,
N
(3.46)
where
h
i
2 ,
A = diag (r̄2,1 + d1 )2 σ22 · · · (r̄M,1 + d1 )2 σM
h
iT
B = r̄2,1 + d1 · · · r̄M,1 + d1 .
(3.47a)
(3.47b)
With Woodbury matrix identity [79], the inverse of C tdoa can be obtained with
C −1
tdoa
N
=
4
A−1 BB T A−1
A−1 − 2
σ1 + B T A−1 B
!
.
(3.48)
In vector-matrix form, the range measurements equation is written as
r tdoa = H tdoa θ tdoa + ntdoa ,
(3.49)
h
i
where ntdoa = n̄2,1 n̄3,1 · · · n̄M,1 . The MSE of the LS estimator can be written as
MSE = var(θ)
T
−1
−1
T
T
T
T
= H tdoa H tdoa
H tdoa C tdoa
H tdoa H tdoa
H tdoa
= H LS C tdoa H TLS ,
−1
where H LS = H Ttdoa H tdoa
H Ttdoa .
(3.50)
66
3.3.2 Computational Complexity
The LS method needs approximately 9(M − 1) multiplications and the inverse of one
(4 × 4) matrix. The WLS method needs approximately 2(M − 1) multiplications to
initialize, and 5(M −1)2 +26(M −1) multiplications and the inverse of one (4×4) matrix
per iteration. For a typical application with 10 iterations, it requires approximately
50(M − 1)2 + 262(M − 1) multiplications and the inverse of 10 (4 × 4) matrices.
3.3.3 Simulation
Figure 3.16 shows the anchor layout, target locations, and the estimated target locations,
where σ 2 = 0.001 and N = 50. Even when the range measurement errors are very small,
the performance is still poor.
Figures 3.17 shows the simulated performance of the MOM method assuming Type I
error, where σ(a%) denotes the AWGN error with distribution nm (i) ∼ N (0, (a%×dm )2 )
and N = 50. Figure 3.18 shows the simulated performance of the MOM method assuming
Type II error, where nm ∼ N 0, (0.05dm )2 . The NLOS offset (b%) denotes the NLOS
error with distribution bm ∼ U(0, b% × dm ). It is observed that the performance of the
MOM method is far away from the CRLB.
Thus, for TDOA systems, MOM is not a good choice for fine position estimation.
For some scenarios, it might be used to provide a coarse position estimate.
67
1.5
1
2
Estimated
position
True position
Anchor position
3
1
5
10
15
20
25
4
9
14
19
24
3
8
13
18
23
2
7
12
17
22
1
6
11
16
21
0.5
y
0
4
8
−0.5
−1
5
7
6
−1.5
−1.5
−1
−0.5
0
x
0.5
1
1.5
Figure 3.16: MOM TDOA: Estimated position.
−1
10
−2
MSE (x−coord+y−coord)
10
−3
10
−4
10
−5
10
CRLB
MOM
−6
10
1
2
3
4
5
σ (%)
6
7
8
9
Figure 3.17: MOM TDOA: Performance of the MOM method (Type I error, 8 anchors).
68
−1
10
CRLB
MOM
−2
MSE (x−coord+y−coord)
10
−3
10
−4
10
−5
10
1
1.5
2
2.5
3
3.5
NLOS offset (a%)
4
4.5
5
Figure 3.18: MOM TDOA: Performance of the MOM method (Type II error, 8 anchors,
8 NLOS links).
69
3.4 Conclusion
In this chapter, the MOM algorithms for both TOA and TDOA systems are presented.
For TOA systems, the MOM method is very easy to implement. Analysis and simulation results show that it can achieve a good performance. However, there is still a
performance gap between the CRLB and the estimated MSE. We propose the IMOM to
significantly improve the accuracy at the expense of a slightly increased computational
complexity. For TDOA systems, since the linearization stage of the MOM method will
greatly enhance the noise, the performance is too poor to provide a reliable estimate.
70
Chapter 4: Nonlinear Least Square Estimator
The MOM techniques presented in Chapter 3 require an additional anchor to linearize the
range measurement equations, which might not always be available. In addition, there is
still a performance gap between the estimated MSE and the CRLB. For TOA systems,
the proposed IMOM method [50] can be used to improve the performance. However,
for TDOA systems, the performance of the MOM method is too poor to even provide a
reliable coarse estimate. In this case, the NLLS method [11,13,49] can be used, which can
achieve a performance that is close to the CRLB under AWGN range measurement error
for both TOA and TDOA systems, and it does not require additional anchors. However,
since NLLS relies on Taylor expansion to linearize the range measurement equations, it
is very sensitive to the choices of the initial position. When the initial position is far
away from the target, it might diverge. In addition, its computational complexity is very
high since it uses iterations to approach the optimal solution.
4.1 TOA
From Eq. (2.1), the range measurements are written as
rm (i) = dm + nm (i).
Taking the time average, we have
r̄m = dm + n̄m ,
where r̄m =
1
N
PN
i=1 rm (i)
and n̄m =
1
N
PN
i=1 nm (i).
(4.1)
In vector-matrix form
r̄ = d(θ) + n̄,
where
h
iT
r̄ = r̄1 r̄2 · · · r̄M ,
(4.2)
71
h
iT
d(θ) = d1 d2 · · · dM ,
h
iT
n̄ = n̄1 n̄2 · · · n̄M .
The covariance matrix of the range measurements is written as
h
i
1
2
2
2
C=
diag σ1 σ2 · · · σM .
N
(4.3)
T
θ̂ = argmin r̄ − d(θ) C −1 r̄ − d(θ) .
(4.4)
Apply the LS estimator
θ
However, it is not easy to obtain a closed-form solution since d(θ) is not a linear function
of θ, but Taylor expansion can be used to provide an approximation [49]. Using the first
order Taylor expansion, we have
d(θ) ≈ d(θ 0 ) − ḋ(θ 0 ) (θ − θ 0 ) ,
(4.5)
where




ḋ(θ 0 ) = 


∂d1 (θ)
∂x
∂d2 (θ)
∂x
∂d1 (θ)
∂y
∂d2 (θ)
∂y
∂d1 (θ)
∂z
∂d2 (θ)
∂z
∂dM (θ)
∂x
∂dM (θ)
∂y
∂dM (θ)
∂z
..
.
..
.
..
.







,
(4.6)
θ=θ 0
and
∂kθ − v m k
x − xm
∂dm (θ)
=
=
,
∂x
∂x
dm
∂dm (θ)
y − ym
=
,
∂y
dm
∂dm (θ)
z − zm
=
.
∂z
dm
(4.7a)
(4.7b)
(4.7c)
72
Then
r̄ ≈ d(θ 0 ) + ḋ(θ 0 ) (θ − θ 0 ) + n̄.
(4.8)
Thus the LS estimator can be written as,
T
−1
θ̂ = argmin r̄ − d(θ 0 ) − ḋ(θ 0 )(θ − θ 0 ) C
r̄ − d(θ 0 ) − ḋ(θ 0 )(θ − θ 0 ) . (4.9)
θ
From [78], the closed-form solution for the LS estimator is,
−1
θ̂ = θ 0 + ḋ(θ 0 )T C −1 ḋ(θ 0 )
ḋ(θ 0 )T C −1 r̄ − d(θ 0 ) .
(4.10)
Eq. (4.10) can be used to estimate θ. However, for the first order Taylor expansion
(Eq. (4.8)) to be valid, the reference location θ 0 should be close to the target location
θ; otherwise, the approximation error will be large [49]. Thus, the following iterative
method is applied to estimate θ.
Algorithm 3 Nonlinear least squares estimator for TOA systems.
1: Initialize θ 0
2:
repeat
k
3:
Estimate θ̂ with Eq. (4.10)
4:
if k θ̂ − θ̂
5:
k
break
6:
end if
7:
Set θ 0 = θ̂
8:
k−1
k< εθ then
k
until maximum iteration reached or convergence
4.1.1 Comparison between NLLS and Gradient Descent Method
As shown in Eq. (2.5), the joint PDF of the range measurements is
f (r|θ) =
(2π)
MN
2
1
QM
N
m=1 σm


N X
M
 1X

1
2
exp −
rm (i) − dm
.
2
 2

σm
i=1 m=1
73
Thus, the ML estimator is written as
θ̂ ML = argmax f (r|θ)
θ
= argmax log f (r|θ)
θ


N X
M
X
2
1
rm (i) − dm .
= argmin
2
σm
θ
(4.11)
i=1 m=1
Since Eq. (4.11) is not a quadratic function, it cannot not be solved by setting its first
derivatives to zero. However, it can be approached with the gradient descent method:
θ k+1 = θ k − η∇J (θ k ),
(4.12)
where η is the step size,
J(θ) =
∇J(θ k ) =
N X
M
X
2
1
rm (i) − dm ,
2
σ
i=1 m=1 m
h
iT
∂J(θ)
∂x
∂J(θ)
∂y
∂J(θ)
∂z
θ=θ k
(4.13a)
,
(4.13b)
and


N X
M
X
2
∂ 
∂J(θ)
1
=
rm (i) − dm 
2
∂x
∂x
σm
i=1 m=1
= −2
N X
M
X
∂dm
1
rm (i) − dm
2
σm
∂x
i=1 m=1
M
X
= −2N
m=1
1
∂dm
.
(r̄m − dm )
2
σm
∂x
(4.14)
Thus,
∇J(θ k ) = −2N ḋ(θ k )T C −1 r̄ − d(θ k ) ,
(4.15)
74
where

∂d1
∂x

 .
ḋ(θ k ) =  ..

∂dM
∂x
∂d1
∂y
..
.
∂dM
∂y
∂d1
∂z


.. 
. 

∂dM
∂z
,
k
θ=θ
h
i
2
2
2
C = diag σ1 σ2 · · · σM ,
h
iT
d(θ k ) = d1 d2 · · · dM
θ=θ k
.
Eq. (4.12) can be rewritten as
θ k+1 = θ k + 2N η ḋ(θ k )T C −1 r̄ − d(θ k ) .
(4.16)
Note that Eq. (4.16) is same as the NLLS method (Eq. (4.10)), except for the step size.
−1
1
If we let η = 2N
ḋ(θ k )T C −1 ḋ(θ k )
, then they are exactly same.
4.1.2 Online NLLS Estimator
Same as the MOM estimator described in Chapter 3, the NLLS estimator requires a
complete set of data; that is, the estimation cannot start until all the data are available.
For some cases this is reasonable. For example, the localization server will process the
observed range measurements only when it finishes collecting all of them. For many cases,
the data might come in sequence and processor memory could be limited. For example,
the algorithm runs in a DSP or application specific integrated circuit (ASIC). In this
case, the classical sequential LS discussed in [78] can also be applied here. Suppose
at time index k the range measurement is rm (i). The sequential LS method can be
summarized as follows.
75
Algorithm 4 Online nonlinear least squares estimator for TOA systems.
1: Initialize
θ̂(0) = 0,
Σ(0) = I.
2:
3:
Taylor expansion with Eq. (4.8), where θ 0 = θ̂(k − 1).
Estimator update
θ̂(k) = θ̂(k − 1) + K(k) r(k) − h(k)θ̂(k − 1) ,
(4.17)
where
K(k) =
Σ(k − 1)h(k)
,
2 + hT (k)Σ(k − 1)h(k)
σm
r(k) = rm (i) − dm (θ 0 ) + ḋm (θ 0 )θ 0 ,
h(k) = ḋm (θ 0 ).
4:
Covariance update:
Σ(k) = I − K(k)hT (k) Σ(k − 1).
(4.18)
The sequential algorithm eliminates the iteration and matrix inversion required by
the NLLS algorithm. The estimate from the previous range measurement can be used
for Taylor expansion of the current range measurement. Strictly speaking, due to Taylor
expansion, such a process is an approximation to the original NLLS algorithm.
4.1.3 Performance in AWGN
Neglecting the error from Taylor expansion, we have
r̄ = d(θ 0 ) + ḋ(θ 0 ) (θ − θ 0 ) + n̄.
76
The LS estimator is rewritten as
−1
θ̂ = θ 0 + ḋ(θ 0 )T C −1 ḋ(θ 0 )
ḋ(θ 0 )T C −1 r̄ − d(θ 0 )
−1
= θ 0 + ḋ(θ 0 )T C −1 ḋ(θ 0 )
ḋ(θ 0 )T C −1 d(θ 0 ) + ḋ(θ 0 )(θ − θ 0 ) + n̄ − d(θ 0 )
−1
= θ 0 + ḋ(θ 0 )T C −1 ḋ(θ 0 )
ḋ(θ 0 )T C −1 ḋ(θ 0 )(θ − θ 0 ) + n̄
−1
(4.19)
= θ + ḋ(θ 0 )T C −1 ḋ(θ 0 )
ḋ(θ 0 )T C −1 n̄.
Thus, the MSE of the LS estimator can be expressed as
−1
−1
T
T
−1
MSE(θ̂) = var θ + ḋ(θ 0 ) C ḋ(θ 0 )
ḋ(θ 0 ) C
−1
T −1
T −1
ḋ(θ 0 ) C ḋ(θ 0 )
= var
ḋ(θ 0 ) C n̄
=E
n̄
T !
−1
−1
ḋ(θ 0 )T C −1 ḋ(θ 0 )
ḋ(θ 0 )T C −1 n̄ ḋ(θ 0 )T C −1 ḋ(θ 0 )
ḋ(θ 0 )T C −1 n̄
T
= ḋ(θ 0 ) C
−1
ḋ(θ 0 )
−1
T
ḋ(θ 0 ) C
−1
T
E(n̄n̄ )
T
ḋ(θ 0 ) C
−1
ḋ(θ 0 )
−1
T
ḋ(θ 0 ) C
−1
T
T
−1
−1
= ḋ(θ 0 )T C −1 ḋ(θ 0 )
ḋ(θ 0 )T ḋ(θ 0 )T C −1 ḋ(θ 0 )
ḋ(θ 0 )T C −1
−1
−1 T
= ḋ(θ 0 )T C −1 ḋ(θ 0 )
ḋ(θ 0 )T C −1 ḋ(θ 0 ) ḋ(θ 0 )T C −1 ḋ(θ 0 )
=
T
ḋ(θ 0 ) C
−1
ḋ(θ 0 )
−1 T
.
(4.20)
It is clear that Eqs. (4.20) and (2.12) are identical. So by ignoring the bias from Taylor
expansion, the NLLS estimator achieves a performance that is close to the CRLB.
4.1.4 Linearization Error
For simplicity, in analyzing the linearization error, we ignore the AWGN:
1
r̄m ≈ dm (θ 0 ) + ḋm (θ 0 )(θ − θ 0 ) + (θ − θ 0 )T d̈(θ 0 )(θ − θ 0 ).
2
(4.21)
77
For the 3-D case

d̈(θ 0 ) =
∂2
2 dm
 ∂x
2
∂

 ∂y∂x dm
∂2
∂z∂x dm
∂2
∂x∂y dm
∂2
d
∂y 2 m
2
∂
∂z∂y dm

∂2
∂x∂z dm 
∂2

∂y∂z dm 
2
∂
d
∂z 2 m θ=θ 0
,
(4.22)
where
(y − ym )2 + (z − zm )2
∂2
d
=
,
m
∂x2
d3m
∂2
(x − xm )(y − ym )
dm = −
,
∂x∂y
d3m
and similarly for all the other terms. Thus,

(ym − y0 )2 + (zm − z0 )2
−(xm − x0 )(ym − y0 )
1 

d̈(θ 0 ) = 3  −(xm − x0 )(ym − y0 )
(xm − x0 )2 + (zm − z0 )2
dm
−(xm − x0 )(zm − z0 )
−(ym − y0 )(zm − z0 )
1
2
= 3 kv m − θ 0 k I 3 − (v m − θ 0 )(v m − θ 0 )T ,
dm

−(xm − x0 )(zm − z0 )

−(ym − y0 )(zm − z0 ) 

(xm − x0 )2 + (ym − y0 )2
(4.23)
where I 3 is the 3 × 3 identity matrix. From [64], we have
1
= (θ − θ 0 )T d̈(θ 0 )(θ − θ 0 )
2
1
= 3 (θ − θ 0 )T kv m − θ 0 k2 I 3 − (v m − θ 0 )(v m − θ 0 )T (θ − θ 0 )
2dm
1 = 3 kv m − θ 0 k2 kθ − θ 0 k2 − hv m − θ 0 , θ − θ 0 i2
2dm
(4.24)
According to Cauchy-Schwarz inequality [80], ≥ 0. Thus, the linearization error can
be viewed as a small NLOS offset.
4.1.5 Computational Complexity
The LS estimator needs M multiplications to initialize, and 19M multiplications and
the inversion of one (3 × 3) matrix for estimation per iteration. For a typical scenario
with 10 iterations, it needs around 191M multiplications and the inversion of 10 (3 × 3)
78
matrices.
The WLS estimator needs M multiplications to initialize, and 22M multiplications
and inversion of one (3 × 3) matrix for estimation per iteration. For a typical scenario
with 10 iterations, it needs around 221M multiplications and inversion of 10 (3 × 3)
matrices.
4.1.6 Simulation
Figure 4.1 shows the estimated target locations from the first iteration in the absence of
noise, where the initial position is chosen as [0, 0]T . The difference between the estimated
position and the true position can be clearly seen from the figure. This is because Eq.
(4.8) is valid only when the reference position is close to the true position.
Figure 4.2
Anchor position
True position
Estimated position
1
0.8
0.6
0.4
y
0.2
0
−0.2
−0.4
−0.6
−0.8
−1
−1
−0.5
0
x
0.5
1
Figure 4.1: NLLS: Estimated position after first iteration in the absence of noise.
shows the estimated position after the second iteration. Now the estimated position is
very close to the true position for almost all the target locations.
Figure 4.3 shows the convergence of the NLLS algorithm. In all cases, the NLLS
algorithm converges after 5 iterations. So for the following simulations, the maximum
number of iteration will be set to be 10.
Figure 4.4 shows the MSE of the estimated position. The noise variances are chosen
79
Anchor position
True position
Estimated position
1
0.8
0.6
0.4
0.2
y
0
−0.2
−0.4
−0.6
−0.8
−1
−1
−0.5
0
x
0.5
1
Figure 4.2: NLLS: Estimated position after the second iteration in the absence of noise.
−3
MSE (x−coord + x−coord)
10
σ=0.1
σ=0.03
σ=0.01
−4
10
−5
10
−6
10
0
5
10
15
Iterations
20
25
30
Figure 4.3: NLLS: Convergence performance in AWGN errors.
to be σ 2 = [0.063, 0.141, 0.070, 0.061]T and N = 50. After 10 iterations, the MSE
approaches the CRLB for all target locations.
Figure 4.5 compares the performances of the NLLS-LS and NLLS-WLS algorithms
80
−3
MSE (x−coord)
6
x 10
CRLB
NLLS 1 iteration
NLLS 10 iterations
4
2
0
0
5
10
15
Target index
20
25
20
25
−3
MSE (y−coord)
6
x 10
CRLB
NLLS 1 iteration
NLLS 10 iterations
4
2
0
0
5
10
15
Target index
Figure 4.4: NLLS: Simulated MSE curves of the NLLS method.
assuming Type I error. The notation σ(a%) denotes the AWGN error with distribution
nm (i) ∼ N (0, (a% × dm )2 ). The performance of NLLS-WLS matches the CRLB very
well. The gap between the CRLB and NLLS-LS estimate is because NLLS-LS does not
include the covariance matrix in the estimation.
Figure 4.6 compares the performances of the NLLS-LS and NLLS-WLS algorithms
assuming Type II error, where nm ∼ N 0, (0.05dm )2 and N = 50. The NLOS offset
(b%) denotes the NLOS error with distribution bm ∼ U(0, b% × dm ). Since the NLOS is
not severe for this case, the NLLS estimator still works well, but the gap between the
CRLB and the estimated MSE increases as the NLOS offset increases, as expected.
81
−3
MSE (x−coord + y−coord)
10
−4
10
−5
10
CRLB
NLLS−LS
NLLS−WLS
−6
10
1
2
3
4
5
σ (%)
6
7
8
9
Figure 4.5: NLLS: Performances of the NLLS-LS and NLLS-WLS methods (Type I
error).
−2
10
MSE (x−coord + y−coord)
CRLB
NLLS−LS
NLLS−WLS
−3
10
−4
10
1
1.5
2
2.5
3
3.5
NLOS offset (%)
4
4.5
5
Figure 4.6: NLLS: Performances of the NLLS-LS and NLLS-WLS methods (Type II
error, 4 NLOS links).
82
4.2 TDOA
Similar idea can be applied to TDOA systems. From Eq. (2.13), the range measurements
for TDOA systems are written as
rm,1 (i) = dm − d1 + nm (i) − n1 (i).
Taking the sample mean, we have
r̄m,1 = dm − d1 + n̄m − n̄1 ,
where r̄m,1 =
1
N
PN
i=1 rm,1 (i),
n̄m =
1
N
PN
(4.25)
i=1 nm (i).
In vector-matrix form, it can be
r̄ 1 = d1 (θ) + n̄1 ,
(4.26)
written as
where
T
r̄ 1 = r̄2,1 , r̄3,1 , · · · , r̄M,1 ,
d1 (θ) = [d2 − d1 , d3 − d1 , · · · , dM − d1 ]T ,
n̄1 = [n̄2 − n̄1 , n̄3 − n̄1 , · · · , n̄M − n̄1 ]T .
The covariance matrix is


σ22 + σ12
σ12
···
σ12


2
σ32 + σ12 · · ·
σ12 
1 
 σ1

C=

.
..
..
..
..

N
.
.
.
.


2 + σ2
σ12
σ12
· · · σM
1
(4.27)
Applying the LS estimator, we have
T
θ̂ = argmin r̄ 1 − d1 (θ) C −1 r 1 − d1 (θ) .
(4.28)
θ
Similar to TOA systems, here d1 (θ) is not a linear function either. Thus, the same
Taylor expansion method can be applied. Using the first order Taylor expansion, we
83
have
d1 (θ) ≈ d1 (θ 0 ) − ḋ1 (θ 0 ) (θ − θ 0 ) ,
(4.29)
where
ḋ1 (θ 0 ) =
h
∂d1 (θ)
∂x
∂d1 (θ)
∂y
i
∂d1 (θ)
∂z
θ=θ 0
,
and
∂ θ − v j+1 −kθ − v 1 k
∂d1 (θ)j
=
∂x
x
x − xj+1 x − x1
=
−
,
dj+1
d1
(4.30)
j = 1, 2, · · · , M − 1. Similarly,
∂d1 (θ)j
y − yj+1 y − y1
=
−
,
∂y
dj+1
d1
∂d1 (θ)j
z − zj+1 z − z1
=
−
.
∂z
dj+1
d1
(4.31a)
(4.31b)
Then
r̄ 1 ≈ d1 (θ 0 ) + ḋ1 (θ 0 ) (θ − θ 0 ) + n̄1 .
(4.32)
−1
θ̂ = θ 0 + ḋ1 (θ 0 )T C −1 ḋ1 (θ 0 )
ḋ1 (θ 0 )T C −1 r̄ 1 − d1 (θ 0 ) .
(4.33)
So the LS estimator is,
Same as TOA systems, iterations are needed to mitigate the offset due to Taylor expansion. This method is summarized as follows.
84
Algorithm 5 Nonlinear least squares estimator for TDOA systems.
1: Initialize θ 0
2:
repeat
k
3:
Estimate θ̂ with Eq. (4.33)
4:
if k θ̂ − θ̂
5:
k
break
6:
end if
7:
Set θ 0 = θ̂
8:
k−1
k< εθ then
k
until maximum iteration reached or convergence
4.2.1 Covariance Matrix
Eq. (4.27) shows that the covariance matrix is not an identity matrix. The main diagonal
elements can be estimated as
N
2
σm
+
σ12
1 X
=
(rm,1 (i) − r̄m,1 )2 ,
N −1
(4.34)
i=1
and σ12 can be estimated as
N
σ12
1 X
(rm,1 (i) − r̄m,1 )(rl,1 (i) − r̄l,1 ),
=
N −1
(4.35)
i=1
where l 6= m. For the weight least squares method, the algorithm needs to calculate the
inverse of the (M − 1) × (M − 1) matrix


σ22 + σ12
σ12
···
σ12


2
σ32 + σ12 · · ·
σ12 
1 
 σ1

C=


.
.
.
.
.
.
.
.


N
.
.
.
.


2 + σ2
σ12
σ12
· · · σM
1
1
=
A + 1M −1 σ12 1TM −1 ,
N
(4.36)
85
h
i
2
2
2
where A = diag σ2 σ3 · · · σM . With the Woodbury matrix identity [79], its
inverse can be obtained with
C −1 = N
A−1 −
A−1 1M −1 1TM −1 A−1
!
σ12 + 1TM −1 A−1 1M −1
.
(4.37)
4.2.2 Computational Complexity
The LS estimator needs M −1 multiplications to initialize, and 19(M −1) multiplications
and inversion of one (3 × 3) matrix for estimation per iteration. For a typical scenario
with 10 iterations, it needs approximately 191(M − 1) multiplications and the inversion
of 10 (3 × 3) matrices.
The WLS estimator needs (M − 1)2 + 3(M − 1) multiplications to initialize, and
3(M −1)2 +19(M −1) multiplications and inversion of one (3×3) matrix for estimation per
iteration. For a typical scenario with 10 iterations, it needs about 31(M −1)2 +193(M −1)
multiplications and the inversion of 10 (3 × 3) matrices.
For both TOA and TDOA systems, with the LS estimator, the number of multipli-
cations required are similar. With the WLS estimator, the computational complexity in
terms of the number of multiplications needed for TDOA systems is a lot higher than
that for TOA systems because the covariance matrix for the former case is non-diagonal,
requiring inversion and multiplication of the covariance matrix.
4.2.3 Simulation
Figure 4.7 shows the convergence performance of the NLLS algorithm. In all cases,
the NLLS algorithm converges after 5 iterations. So for the following simulations, the
maximum number of iterations will be set to be 10.
Figure 4.8 shows the MSE of the estimated position, where the noise variances are
chosen to be σ 2 = [0.063, 0.141, 0.070, 0.061]T and N = 50. While after the first iteration
the gap between MSE and CRLB is large, but after 10 iterations, the MSE approaches
the CRLB for all target locations.
Figure 4.9 compares the performances of the LS and WLS algorithms assuming Type
I error together with the CRLB as the baseline for comparison. Definition of other
86
−2
10
σ=0.1
σ=0.03
σ=0.01
−3
MSE (x−coord + y−coord)
10
−4
10
−5
10
−6
10
0
5
10
15
Iterations
20
25
30
Figure 4.7: NLLS TDOA: Convergence performance in AWGN errors.
−3
MSE (x−coord)
3
x 10
CRLB
NLLS 1 iteration
NLLS 10 iterations
2.5
2
1.5
1
0.5
0
5
10
15
Target index
20
25
20
25
−3
MSE (y−coord)
4
x 10
CRLB
NLLS 1 iteration
NLLS 10 iterations
3
2
1
0
0
5
10
15
Target index
Figure 4.8: NLLS TDOA: Simulated MSE curves of the NLLS method.
parameters are the same as used in previous results of this chapter. The performance of
NLLS-WLS approaches the CRLB, and the small gap between them is because NLLS-LS
does not include the covariance matrix in the estimation.
MSE (x−coord + y−coord)
87
−4
10
−5
10
CRLB
NLLS−LS
NLLS−WLS
1
2
3
4
5
σ (%)
6
7
8
9
Figure 4.9: NLLS TDOA: Performances of the NLLS-LS and NLLS-WLS methods (Type
I error).
Figure 4.10 compares the performances of the NLLS-LS and NLLS-WLS algorithms
assuming Type II error, where nm ∼ N 0, (0.05dm )2 and N = 50. The NLOS offset
(b%) denotes the NLOS error with distribution bm ∼ U(0, b% × dm ). In this case, since
the NLOS is not severe, the NLLS estimator still works well, but the gap between the
CRLB and the estimated MSE increases as the NLOS offset increases, as expected.
88
−3.1
MSE (x−coord + y−coord)
10
CRLB
NLLS−LS
NLLS−WLS
−3.3
10
−3.5
10
−3.7
10
−3.9
10
1
1.5
2
2.5
3
3.5
NLOS offset (a%)
4
4.5
5
Figure 4.10: NLLS TDOA: Performances of the NLLS-LS and NLLS-WLS methods
(Type II error, 4 NLOS links).
4.3 Conclusion
In this chapter, the NLLS algorithm for both TOA and TDOA systems is presented.
The analysis and simulation results show that it can achieve a performance that is close
to the CRLB under AWGN range measurement errors. However, the NLLS estimator
is much more complex than the MOM estimator, since it requires iteration to approach
the optimal solution. In addition, since Taylor expansion is sensitive to the choices of
the initial position, NLLS might diverge if the initial position is far away from the target
location.
89
Chapter 5: Maximum Likelihood Estimator
Compared with the MOM method, the NLLS method presented in Chapter 4 greatly
improves the performance. However, as it relies on Taylor expansion to linearize the
range measurement equations, it is sensitive to the choices of the initial position [49, 52].
It might diverge if the initial position is far away from the target. When the system
coverage is small, the fixed initial position (e.g., the center of the anchor-formed contour)
works well. When the system coverage is large, it is very difficult to fix the initial position
for all potential target locations. In this case, the MOM/IMOM method can be used to
estimate the initial position, if the system has at least one additional anchor. However,
the additional anchor might not always be available, and for TDOA systems, the MOM
method cannot even provide a reliable coarse estimate.
In [53–57], the authors developed a SMACOF method to solve the symmetric dissimilarity matrices, which can be viewed as the n-dimensional location estimation problem
for TOA systems. Such method can be directly applied to the 2-D/3-D case. For TDOA
systems, we propose a robust SMACOF based ML estimator [52]. Similar to the NLLS
method, it also needs iterations to approach the solution. However, the MSE is guaranteed to decrease after each iteration. Thus, it is much more robust than the NLLS
method. It also achieves a performance that is close to the CRLB without requiring any
additional anchors. Since its convergence speed is much slower than the NLLS method,
it can be applied to provide a coarse position estimate for other estimators such as NLLS.
5.1 TOA
Recall that the range measurements in vector-matrix form are written as
r = d(θ) + n,
90
where n is the noise with covariance matrix C that is diagonal. The joint PDF of the
observed range measurements is (Eq. (2.5))
f (r|θ) =
(2π)
MN
2
1
QM
N
m=1 σm


N X
M
 1X

1
2
rm (i) − dm
exp −
.
2
 2

σm
i=1 m=1
Thus, the ML estimator is written as
θ̂ ML = argmax f (r|θ)
θ
= argmax log f (r|θ)
θ


N X
M
X
2
1
rm (i) − dm .
= argmin
2
σm
θ
(5.1)
i=1 m=1
Eq. (5.1) is not a quadratic function, and it cannot not be readily solved by setting its
first derivatives to zero. However, by finding a quadratic surrogate function, the optimal
solution can be approached via iteration.
5.1.1 SMACOF Algorithm
Let us define the stress function δ(θ)
N X
M
X
2
1
rm (i) − dm .
δ(θ) =
2
σm
(5.2)
i=1 m=1
It is clear that δ(θ) is identical to the cost function to be minimized in the ML estimator
(Eq. (5.1)). Expanding this stress function, we have
δ(θ) =
N X
M
X
2
1
rm (i) − dm (θ)
2
σm
i=1 m=1
N X
M
X
1 2
2
=
r
(i)
+
d
(θ)
−
2r
(i)d
(θ)
m
m
m
m
2
σm
i=1 m=1
= ηr + ηd − 2ρr,d ,
(5.3)
91
where
ηr =
ηd =
ρr,d =
N X
M
X
1
r (i)2 ,
2 m
σm
i=1 m=1
N X
M
X
i=1 m=1
N X
M
X
i=1 m=1
(5.4a)
1
d (θ)2 ,
2 m
σm
(5.4b)
1
r (i)dm (θ),
2 m
σm
(5.4c)
ηr is a constant since it is independent of θ, ηd is a quadratic function of θ, and ρr,d is
a function of θ, but not quadratic.
So if some proper quadratic surrogate functions can be found for ρr,d , the problem
can be solved via iteration. The individual term of ρr,d is written as
1
1
rm (i)dm (θ) = 2 rm (i)kθ − v m k .
2
σm
σm
Since rm (i) is the range measurement between the target and the mth anchor,
0. According to Cauchy-Schwarz inequality [80]
kθ − v m k ≥
hθ − v m , θ 0 − v m i
0
,
θ − v m 1
2 rm (i)
σm
≥
(5.5)
where ha, bi denotes the inner product of vectors a and b. Therefore, from [53–57,81,82],
1
1
rm (i)dm (θ) = 2 rm (i)kθ − v m k
2
σm
σm
1
hθ − v m , θ 0 − v m i
0
,
≥ 2 rm (i)
θ − v m σm
(5.6)
∀θ = [x, y, z]T . Let us define the surrogate function
τ (θ, θ 0 ) = ηr + ηd − 2
M
N X
X
1
hθ − v m , θ 0 − v m i
0
r
(i)
.
2 m
θ − v m σm
i=1 m=1
(5.7)
92
It is easy to verify that
δ(θ) ≤ τ (θ, θ 0 ),
(5.8a)
δ(θ 0 ) = τ (θ 0 , θ 0 ).
(5.8b)
Eq. (5.8b) comes from
N X
M
X
1
hθ 0 − v m , θ 0 − v m i
0
τ (θ , θ ) = ηr + ηd − 2
r
(i)
m
2
θ − v m σm
0
0
= ηr + ηd − 2
i=1 m=1
N X
M
X
i=1 m=1
1
rm (i)θ 0 − v m 2
σm
= δ(θ 0 ).
Figure 5.1 illustrates the stress function and the surrogate function. The minimums of
the surrogate functions are successfully approaches the one of the stress function via
iteration.
f (θ)
τ (θ, θk−1 )
δ(θ)
τ (θ, θ )
k
θk
θk−1
θ
Figure 5.1: SMACOF: Illustration of the surrogate and stress functions.
Obviously, the surrogate function τ (θ, θ 0 ) is a quadratic function. Its minimum can
be reached by setting its first derivative to zero. Let
"
#
N M
∂τ (θ, θ 0 ) X X 1
2rm (i)(x0 − xm )
=
2(x − xm ) − = 0.
2
θ 0 − v m ∂x
σm
i=1 m=1
93
Thus,
PN PM
i=1
x=
1
2
m=1 σm
PN
i=1
= PM
1
1
2
m=1 σm
1
N
where r̄m =
PN
i=1 rm (i).
rm (i)(x0 −xm )
xm + θ0 −v
k
mk
PM
1
2
m=1 σm
"
#
M
X
1
r̄m (x0 − xm )
xm + θ 0 − v m ,
σ2
m=1 m
(5.9)
Similarly,
y = PM
1
1
2
m=1 σm
z = PM
1
1
2
m=1 σm
#
"
M
X
1
r̄m (y 0 − ym )
ym + 2
θ 0 − v m ,
σm
m=1
(5.10)
"
#
M
X
1
r̄m (z 0 − zm )
zm + 2
θ 0 − v m .
σm
m=1
(5.11)
So the algorithm can be summarized as follows.
Algorithm 6 SMACOF estimator for TOA systems.
1:
Initialize θ̂
2:
repeat
0
k
3:
Estimate θ̂ with Eqs. (5.9), (5.10), and (5.11)
4:
if k θ̂ − θ̂
5:
6:
7:
k
break
k−1
k< εθ then
end if
until maximum iteration reached or convergence
The derivation above shows that the value of the stress function is guaranteed to
decrease after each iteration. Thus, the SMACOF is much more stable than the NLLS
method, and is not sensitive to the choices of the initial position.
94
5.1.2 Computational Complexity
The SMACOF method needs about M multiplications to initialize, and 10 multiplications per iteration. For a typical scenario requiring 20 iterations, it needs approximately
201M multiplications. The weighted method needs about 261M multiplications, but no
matrix inversion is needed.
5.1.3 Simulation
Figure 5.2 shows the convergence performance of the SMACOF algorithm. It shows
that when the range measurement error is small, the algorithm converges slowly. For
example, when σ = 0.1, it needs about 8 iterations to converge; while σ = 0.01, it needs
13 iterations. In all cases, the SMACOF algorithm converges well after 13 iterations. So
for the following simulations, we set the maximum number of iteration to be 20. And
compared to the NLLS method (Figure 4.3), the SMACOF method converges much more
slowly than the NLLS method.
−1
10
σ=0.1
σ=0.03
σ=0.01
−2
MSE (x−coord + y−coord)
10
−3
10
−4
10
−5
10
−6
10
0
5
10
15
Iterations
20
25
30
Figure 5.2: SMACOF: Convergence performance in AWGN errors.
Figure 5.3 shows the MSE of the estimated target locations together with the CRLB.
The noise variances are chosen to be σ 2 = [0.063, 0.141, 0.070, 0.061]T and N = 50. It is
95
observed that after the first iteration, the MSE is still far away from the CRLB. After
10 iterations, the MSE is very close to the CRLB. Here the noise level is relatively large,
and 10 iterations are sufficient, as expected in Figure 5.2.
MSE (x−coord)
0.2
CRLB
SMACOF 1 iteration
SMACOF 10 iterations
0.15
0.1
0.05
0
0
5
10
15
Target index
20
25
20
25
MSE (y−coord)
0.2
CRLB
SMACOF 1 iteration
SMACOF 10 iterations
0.15
0.1
0.05
0
0
5
10
15
Target index
Figure 5.3: SMACOF: Simulated MSE curves of the SMACOF method.
The performance of the SMACOF and the weighted SMACOF methods assuming
Type I error is shown in Figure 5.4. For the unweighted method, the covariance matrix
is set to be the identity matrix. The notation σ(a%) denotes the AWGN error with
distribution nm (i) ∼ N (0, (a% × dm )2 ). Both algorithms work well under the chosen
conditions. Since the unweighted method does not utilize the covariance matrix in the
estimation, there is a gap between the estimation performance of the SMACOF method
and the CRLB. After 20 iterations, the weighted method approaches the CRLB in most
cases. When the range measurement error is very small (e.g., σ(1%)), SMACOF converges quite slow; after 20 iterations, it still does not converge to the optimal value,
causing the gap between the estimated MSE and the CRLB, as expected.
Figure 5.5 shows the performance assuming Type II error, where nm ∼ N (0, (0.05dm )2 )
and N = 50. The NLOS offset (b%) denotes the NLOS error with distribution bm ∼
U(0, b% × dm ). Since the NLOS is not severe, the SMACOF estimator still works well,
but the gap between the CRLB and the estimated MSE increases as the NLOS offset
increases.
MSE (x−coord + y−coord)
96
−4
10
−5
10
CRLB
SMACOF
SMACOF−W
1
2
3
4
5
σ (%)
6
7
8
9
Figure 5.4: SMACOF: Performances of the SMACOF and weighted SMACOF methods
(Type I error).
−2
10
MSE (x−coord + y−coord)
CRLB
SMACOF
SMACOF−W
−3
10
−4
10
1
1.5
2
2.5
3
3.5
NLOS offset (a%)
4
4.5
5
Figure 5.5: SMACOF: Performances of the SMACOF and weighted SMACOF methods
(Type II error, 4 NLOS links).
5.2 TDOA
Recall the joint PDF written in Eq. (2.21)


T −1

r 1 − d1 (θ) C
r 1 − d1 (θ) 
1
.
f (r 1 |θ) = p
exp −


2
(2π)(M −1)N det(C)
97
For TDOA systems, the ML estimator is very complex since the covariance matrix is not
diagonal. The traditional way is to apply the eigen-value decomposition C = V T ΛV ,
where V V T = I and Λ is the diagonal matrix. It is clear that
−1
= V T Λ−1 V .
C −1 = V T ΛV
(5.12)
Thus the ML estimator is
θ̂ ML = argmax f (r 1 |θ)
θ
= argmax log f (r 1 |θ)
θ
T
= argmin r 1 − d1 (θ) C −1 r 1 − d1 (θ)
θ
T
= argmin r 1 − d1 (θ) V T Λ−1 V r 1 − d1 (θ)
θ
T
= argmin V r 1 − V d1 (θ) Λ−1 V r 1 − V d1 (θ) .
(5.13)
θ
The ML estimator can be implemented by following the same method depicted in the
previous section to provide the optimal solution. However, its computational complexity
is very high. As shown in the previous section, SMACOF converges much slower than
NLLS. It is a good candidate to provide a coarse estimate, rather than the fine estimate,
which requires a large number of iterations. Thus, the eigen-value decomposition process
will be unnecessary if the unweighted SMACOF method can provide a robust coarse
estimate.
Thus, for simplicity, here we ignore the covariance matrix. The stress function δ(θ)
to be minimized is defined as [52, 55, 57]:
δ(θ) =
M
X
m=2
2
r̄m,1 − dm (θ) + d1 (θ) ,
(5.14)
98
where r̄m,1 =
1
N
PN
i=1 rm,1 (i).
Expanding the stress function, we have
δ(θ) =
M
X
m=2
2
r̄m,1 − dm (θ) + d1 (θ)
= ηr + ηd − 2ρr,d ,
(5.15)
where
ηr =
ηd =
ρr,d =
M
X
2
r̄m,1
,
m=2
M X
m=2
M
X
m=2
(5.16a)
dm (θ)2 + d1 (θ)2 ,
(5.16b)
r̄m,1 dm (θ) − r̄m,1 d1 (θ) + d1 (θ)dm (θ) ,
(5.16c)
ηr is a constant since it is independent of θ, ηd is a quadratic function of θ, and ρr,d
is not a quadratic function of θ. Consequently, δ(θ) is not a quadratic function, and
the common method to find the minimum by setting its first partial derivative to zero
cannot be applied here.
However, if a quadratic surrogate function for ρr,d is available, then the minimum
of the stress function can be determined via iteration. First, we consider the case that
r̄m,1 ≥ 0, and examine the individual terms of ρr,d :
1) r̄m,1 dm (θ): the same technique used in the SMACOF algorithm [55] can be applied
here. From the Cauchy-Schwarz inequality [80]:
θ − vm , θ0 − vm
0
dm (θ) = kθ − v m k ≥
θ − v m := α(v m , θ, θ 0 ),
(5.17)
where θ 0 is obtained either from the previous iteration or an initial guess, ha, bi
denotes the inner product of vectors a and b. It is easy to see
dm (θ 0 ) = α(v m , θ 0 , θ 0 ).
(5.18)
99
2) r̄m,1 d1 (θ): it is easy to show that
2
kθ − v 1 k2 + θ 0 − v 1 d1 (θ) = kθ − v 1 k ≤
2θ 0 − v 1 := β(v 1 , θ, θ 0 ),
(5.19)
d1 (θ 0 ) = β(v 1 , θ 0 , θ 0 ).
(5.20)
and
3) d1 (θ)dm (θ): applying the same method used in Eq. (5.17) to d1 (θ) and dm (θ), we
have
θ − vm , θ0 − vm θ − v1 , θ0 − v1
0
0
d1 (θ)dm (θ) ≥
θ − v m θ − v 1 := γ(v 1 , v m , θ, θ 0 ),
(5.21)
and
d1 (θ 0 )dm (θ 0 ) = γ(v 1 , v m , θ 0 , θ 0 ).
(5.22)
With Eqs. (5.17), (5.19), and (5.21), we can define
0
τ (θ, θ ) = ηr + ηd − 2
M
X
τm,1 (θ, θ 0 ),
(5.23)
m=2
where for the case that r̄m,1 ≥ 0,
τm,1 (θ, θ 0 ) = r̄m,1 α(v m , θ, θ 0 ) + γ(v 1 , v m , θ, θ 0 ) − r̄m,1 β(v 1 , θ, θ 0 ).
(5.24)
Similarly, for the case that r̄m,1 < 0,
τm,1 (θ, θ 0 ) = r̄m,1 β(v m , θ, θ 0 ) + γ(v 1 , v m , θ, θ 0 ) − r̄m,1 α(v 1 , θ, θ 0 ).
(5.25)
100
Note that τ (θ, θ 0 ) is a quadratic function and it is easy to verify
δ(θ) ≤ τ (θ, θ 0 ),
(5.26a)
δ(θ 0 ) = τ (θ 0 , θ 0 ).
(5.26b)
Therefore, τ (θ, θ 0 ) is a valid quadratic surrogate function for δ(θ). Its minimum can be
obtained by setting its first derivatives to zero. For 3-D localization, we have
M
X ∂τm,1 (θ, θ 0 )
∂τ (θ, θ 0 )
∂ηd
=
−2
= 0.
∂x
∂x
∂x
(5.27)
m=2
After some algebraic simplifications, we have
M
X
am (1, 1)x +
m=2
M
X
am (1, 2)y +
m=2
M
X
am (1, 1)z =
m=2
M
X
dm (1),
(5.28)
m=2
where for r̄m,1 ≥ 0 case,
r̄m,1
2(x0 − xm )(x0 − x1 )
−
am (1, 1) = 2 + θ 0 − v 1 θ 0 − v m θ 0 − v 1 ,
(x0 − xm )(y 0 − y1 ) + (x0 − x1 )(y 0 − ym )
0
am (1, 2) = −
,
θ − v m θ 0 − v 1 (x0 − xm )(z 0 − z1 ) + (x0 − x1 )(z 0 − zm )
0
am (1, 3) = −
,
θ − v m θ 0 − v 1 r̄ x
r̄m,1 (x0 − xm )
m,1 1 dm (1) = xm + x1 + θ 0 − v m + θ 0 − v 1 (x0 − x1 ) v m , θ 0 − v m + (x0 − xm ) v 1 , θ 0 − v 1
0
−
.
θ − v m θ 0 − v 1 The derivation for the case of r̄m,1 < 0 is similar. Similarly, by setting
∂τ (θ,θ 0 )
∂z
(5.29a)
(5.29b)
(5.29c)
(5.29d)
∂τ (θ,θ 0 )
∂y
= 0 and
= 0, we obtain two more linear equations of x, y and z,
M
X
m=2
am (2, 1)x +
M
X
m=2
am (2, 2)y +
M
X
m=2
am (2, 3)z =
M
X
m=2
dm (2),
(5.30)
101
M
X
am (3, 1)x +
m=2
M
X
am (3, 2)y +
m=2
M
X
am (3, 3)z =
m=2
M
X
dm (3),
(5.31)
m=2
where the coefficients a and d take a similar form as the ones defined in Eq. (5.29). The
algorithm is summarized below:
Algorithm 7 SMACOF estimator for TDOA systems.
1:
Initialize θ̂
2:
repeat
0
3:
Find the surrogate function τ (θ, θ 0 ) with Eq. (5.23), where θ 0 = θ̂
4:
6:
Estimate
θ̂ with
Eqs. (5.28), (5.30), and (5.31)
k
k−1 if θ̂ − θ̂ < θ then
break
7:
end if
5:
8:
k−1
k
until maximum iteration reached or convergence
The above derivation shows that with the SMACOF algorithm, the stress function
in Eq. (5.14) is guaranteed to decrease after each iteration.
5.2.1 Computational Complexity
For TDOA systems, the method is much more complex than TOA systems. It needs
about M −1 multiplication to initialize and 42(M −1) multiplications per iteration. For a
typical scenario with 30 iterations, it requires approximately 1261(M −1) multiplications
and the inversion of 30 (3 × 3) matrix per estimation.
5.2.2 Simulation
Figure 5.6 shows the convergence of the SMACOF algorithm. It shows that when the
range measurement error is small, the algorithm becomes slow to converge. For example,
when σ = 0.1, it needs about 15 iterations to converge; while at σ = 0.01, it needs about
25 iterations. In all cases, the SMACOF algorithm converges well after 25 iterations. So
for the following simulations, the maximum number of iterations is set to be 30. Also,
102
compared with the NLLS method (Figure 4.7), the SMACOF method converges a lot
slower.
0
10
σ=0.1
σ=0.03
σ=0.01
−1
MSE (x−coord + y−coord)
10
−2
10
−3
10
−4
10
−5
10
−6
10
0
5
10
15
Iterations
20
25
30
Figure 5.6: SMACOF TDOA: Convergence performance in AWGN errors.
Figure 5.7 shows the MSE of the estimated position, where the noise variances are
chosen to be σ 2 = [0.063, 0.141, 0.070, 0.061]T and N = 50. It is observed that while
after the first iteration the MSE is still far away from the CRLB, after 30 iterations, the
MSE is close to the CRLB for all target locations.
Figure 5.8 shows the performance of the SMACOF assuming Type I error together
with the CRLB. The notation σ(a%) denotes the AWGN error with distribution nm (i) ∼
N (0, (a% × dm )2 ). Since the covariance matrix is neglected in the estimation for sim-
plicity, there is a gap between the MSE of the estimated position and the CRLB.
Figure 5.9 shows the performance assuming Type II error, where nm ∼ N (0, (0.05dm )2 )
and N = 50. The NLOS offset (b%) denotes the NLOS error with distribution bm ∼
U(0, b%×dm ). In this case, since NLOS is not severe, the SMACOF estimator still works
well. But the gap between the CRLB and the estimated MSE increases as the NLOS
offset increases.
103
MSE (x−coord)
0.25
CRLB
SMACOF 1 iteration
SMACOF 30 iterations
0.2
0.15
0.1
0.05
0
0
5
10
15
Target index
20
25
20
25
MSE (y−coord)
0.25
CRLB
SMACOF 1 iteration
SMACOF 30 iterations
0.2
0.15
0.1
0.05
0
0
5
10
15
Target index
MSE (x−coord + y−coord)
Figure 5.7: SMACOF TDOA: Simulated MSE curves of the SMACOF method.
−4
10
−5
10
CRLB
SMACOF
1
2
3
4
5
σ (%)
6
7
8
9
Figure 5.8: SMACOF TDOA: Performance of the SMACOF method (Type I error).
104
−3.1
MSE (x−coord + y−coord)
10
CRLB
SMACOF
−3.3
10
−3.5
10
−3.7
10
−3.9
10
1
1.5
2
2.5
3
3.5
NLOS offset (a%)
4
4.5
5
Figure 5.9: SMACOF TDOA: Performance of the SMACOF method (Type II error, 4
NLOS links).
105
5.2.3 Application
For TDOA systems, the SMACOF method requires much more computational resource
than other methods because of its slower convergence. On the other hand, in AWGN the
NLLS method can achieve an accuracy that is close to the CRLB, but is not guaranteed
to converge [11, 42]; if the initial position chosen is far away from the actual target
location, then the large offset from Taylor expansion [11] will likely cause the NLLS
method to diverge.
Divergence becomes a more serious problem when the system coverage area is large
since it becomes more difficult to fix one initial position for all possible target locations.
In this case, the MOM algorithm [42–45, 50] can be applied to provide a coarse position
estimate as the initial position for the NLLS method. However, the MOM algorithm
requires at least one more additional anchor to linearize the range measurement equations
[42–45,50] by canceling the quadratic terms, which is costly and sometimes not available.
Furthermore, for TDOA systems, the performance of the MOM method is very poor.
Thus, the proposed SMACOF method can be applied to find the coarse estimate for the
NLLS estimator with a few of iterations.
The proposed algorithm has been implemented in a field test as follows. A pulsed
UWB TDOA localization system is set up in a large vacant metal-structure building,
covering a space of approximately 17m × 22m × 4m. Figure 5.10 shows the layout of the
anchors.
We first simulate NLLS localization with this anchor configuration, while target locations are chosen on the grid with a 30cm step in each of the three spatial dimensions.
With clean range measurements, the target locations where the NLLS estimator fails to
converge given a fixed initial position (at around the center of the contour formed by the
anchors) are also shown in Figure 5.10. As observed, the NLLS algorithm diverged at
14% of the target locations. This high divergence rate with the NLLS method is because
of the large coverage area, making it difficult to fix one initial position for all target locations. If the initial position is randomly chosen within the cube formed by the anchors,
the NLLS estimator diverges at 30% of all target locations. The divergence ratio is even
higher because for the targets near the edge or corner, there is higher probability that
the randomly chosen initial position will be further away from the targets than the fixed
initial position (at around the center of contour formed by the anchors).
106
For comparison, the proposed algorithm with a maximum of 10 iterations is applied
to determine a coarse position as the initial position for the NLLS estimator. With this
implementation, the NLLS algorithm now converges for all target locations.
Anchor locations
Target locations where NLLS diverges
400
z(cm)
300
200
100
0
3000
2000
2000
1500
1000
1000
0
y(cm)
500
−1000
0
x(cm)
Figure 5.10: SMACOF TDOA: Anchor layout for field test.
Figure 5.11 shows the anchor layout, target locations, and the locations where the
NLLS method fails to converge (with a fixed initial position set at the center of the
anchor-formed contour) of the experiment conducted in the large vacant building. The
experimental system uses a commercial pulsed UWB transmitter operating in the 3.15GHz range as the target. Each of the four receive antennas is connected to an amplifier/filter board we designed in our lab to form the anchors placed as shown in Figure
5.11. The four antenna/amplification/filtering units are then connected to a real-time
sampling scope operating at 12.5Gsps. The sampled data is transferred to a PC through
Ethernet for range estimation and localization. Each location estimate is generated from
40µs of data, covering an interval of about 400 pulses. For the NLLS method, a fixed
location near the center of the contour formed by the anchors is set as the initial position.
The actual positions of the targets are precisely measured by using a commercial laser
with millimeter accuracy. In contrast to the simulation results in Figure 5.10 where the
NLLS method diverges at 14% of the target locations, here the NLLS method diverges
at only 4 out of a total of 70 measured locations. This is because the z values of all the
locations where measurement took place are close to the z-values of the initial position
chosen, and the targets are concentrated around the center area.
107
Anchor locations
Target locations
Target locations where NLLS diverges
400
z(cm)
300
200
100
0
3000
2000
2000
1500
1000
1000
0
y(cm)
500
−1000
0
x(cm)
Figure 5.11: SMACOF TDOA: Experimental results obtained in a large building.
Table 5.1 shows the localization results with field test data. To obtain these results,
first the proposed algorithm with a maximum of 10 iterations is used to provide a coarse
estimate for each target location. This coarse estimate is then used as the initial position
for the NLLS estimator also with a maximum of 10 iterations. After this additional data
is supplied, the NLLS now converges at all 70 target locations. As expected, the accuracy
of the z-coordinate is much worse than those of x- and y-coordinates, because the anchor
spread in the z-direction is only 4m, whereas in the x- and y-directions it is about 20m.
Table 5.1: Test results for the NLLS method with the proposed SMACOF method
providing a coarse estimate as its initial position.
average( |error| ) std( |error| )
x
2.9 cm
2.8 cm
y
5.7 cm
3.68 cm
z
29.9 cm
13.58 cm
5.3 Conclusion
In this chapter, we first present the classical SMACOF algorithm for TOA systems. Then
we propose a SMACOF based ML estimator for TDOA systems. Similar to the NLLS
method, the proposed scheme uses iterations to approach the optimal solution. Unlike
108
the NLLS method, the MSE with the proposed scheme is guaranteed to decrease after
each iteration. Thus, it is much more stable, and is not as sensitive to the choices of
the initial position as the NLLS method. Since its convergence speed is slower than the
NLLS method, it is a good candidate as a robust coarse position estimator.
109
Chapter 6: Nonlinear Expectation Maximization Algorithm
The NLLS method [11,13,49] presented in Chapter 4 achieves a performance that is close
to the CRLB. However, the NLLS method requires complex matrix operation, which
makes it difficult to implement. Especially for TDOA systems, since the covariance
matrix is not a diagonal matrix, the NLLS method requires multiplication and inversion
of large matrices. The SMACOF method [52–57, 81, 82], which is more stable than
the NLLS method, also involves matrix operation, and is computationally even more
complex than the NLLS method. The expectation maximization (EM) algorithm [51,
83–85] is widely used to transform a high dimensional estimation problem into several 1dimension problems. In this chapter, we propose a nonlinear expectation maximization
(NLEM) algorithm for both TOA and TDOA localization, which does not need any
matrix operation. Thus, its computational complexity is much lower than the NLLS and
SMACOF methods, while their performances are similar, all approaching the CRLB.
6.1 TOA
6.1.1 General EM Algorithm
The general EM algorithm developed in [51, 83, 84] is presented here for convenience.
Later, we will show how the EM method can be applied in localization systems.
Let us define
r = H(rc ),
(6.1)
where r is observed (incomplete) data set with PDF f (r|θ), θ is the unknown parameter vector, rc is the complete data set with PDF f (rc |θ), and H(·) is a non-invertible
transformation. From Eq. (6.1), it is clear that once rc is known, r is determined. Thus,
we have
f (rc , r|θ) = f (r|rc , θ)f (rc |θ) = f (rc |θ),
(6.2)
110
where f (rc , r|θ) is the joint PDF of r and rc given θ. With Eq. (6.2) and Bayes’ rule,
we have
f (rc |θ) = f (rc |r, θ)f (r|θ),
(6.3)
where f (rc |r, θ) is the conditional PDF of rc given r. Taking the logarithm of both sides,
we have
log f (rc |θ) = log f (rc |r, θ) + log f (r|θ) ,
(6.4)
log f (r|θ) = log f (rc |θ) − log f (rc |r, θ) .
(6.5)
or
The conditional expectation given r at parameter value θ 0 is expressed as
Z
Er,θ0 (·) =
(·)f (rc |r, θ 0 )drc .
(6.6)
From Eqs. (6.5) and (6.6), we have
Er,θ0 log f (r|θ) = Er,θ0 log f (rc |θ) − Er,θ0 log f (rc |r, θ) .
(6.7)
Since log f (r|θ) is a constant, we have
Er,θ
0
log f (r|θ)
= log f (r|θ) .
(6.8)
Thus, Eq. (6.7) is simplified as
log f (r|θ) = Er,θ0 log f (rc |θ) − Er,θ0 log f (rc |r, θ) .
(6.9)
111
Let
L(θ) = log f (r|θ) ,
U (θ, θ 0 ) = Er,θ0 log f (rc |θ) ,
V (θ, θ 0 ) = Er,θ0 log f (rc |r, θ) .
(6.10a)
(6.10b)
(6.10c)
Then Eq. (6.9) is written as
L(θ) = U (θ, θ 0 ) − V (θ, θ 0 ).
(6.11)
Using Jensen’s inequality [86], we have
0
Z
log f (rc |r, θ) f (rc |r, θ 0 )drc
Z
log f (rc |r, θ 0 ) f (rc |r, θ 0 )drc
V (θ, θ ) =
≤
= V (θ 0 , θ 0 ).
(6.12)
Therefore, if there exists a θ, such that
U (θ, θ 0 ) > U (θ 0 , θ 0 ),
then
L(θ) = U (θ, θ 0 ) − V (θ, θ 0 )
> U (θ 0 , θ 0 ) − V (θ 0 , θ 0 )
= L(θ 0 ).
(6.13)
Thus, we can approach the maximum (local) of the likelihood function via iteration. The
method is summarized as
k
1. Expectation step: Compute U (θ, θ̂ )
2. Maximization step: Find θ̂
k+1
k
= argmax U (θ, θ̂ )
θ
Generally, calculating θ̂
k+1
in the maximization step is computational complex. How-
112
ever, if H(·) is a linear function and the observed data set are independent and identically distributed Gaussian random variables, θ̂
k+1
can be obtained in the closed form
[51, 83, 84]. Suppose
r(i) = H T θ + n(i),
(6.14)
where n(i) are i.i.d. random variables with distribution ∼ N (0, σ 2 ), H = [h1 , h2 , · · · , hL ]T
is a known L×1 column vector, θ = [θ1 , θ2 , · · · , θL ]T is the unknown L×1 column vector,
and i = [1, 2, · · · , N ]. Let us define
rl (i) = hl θl + nl (i),
where nl (i) ∼ N (0, βl σ 2 ), βl > 0, and
(6.15)
PL
nk (i) are independent, ∀j 6= k. Thus,
nl (i) = n(i). We also assume that nj (i) and
PL
l=1 rl (i), where r(i) is
l=1 βl = 1 and r(i) =
Pl=1
L
the observed (incomplete) data set with PDF ∼ N (H T θ, σ 2 ), and rl (i) are the complete
data set with PDF ∼ N (µl = hl θl , σl2 = βl σ 2 ). The joint PDF of the complete data set
rl (i) is written as
1
f (r c |θ) = q
Q
2 N
(2π)L L
l=1 (βl σ )

2 
N X
L
 1 X
rl (i) − hl θl 
,
exp − 2

 2σ
βl
(6.16)
i=1 l=1
where
T
r c = r1 (1), r2 (1), · · · , rL (1), · · · , r1 (N ), r2 (N ), · · · , rL (N ) .
(6.17)
Taking the logarithm of both sides of Eq. (6.16), we have
N
L
1 X X rl (i) − hl θl
log f (r c |θ) = c − 2
2σ
βl
i=1 l=1
2
,
(6.18)
113
where c is a constant. Thus,
U (θ, θ 0 ) = Er,θ0 log f (r c |θ)


2 
N X
L

X
r
(i)
−
h
θ
1
l
l l
= Er,θ0 c − 2


2σ
βl
i=1 l=1

2 
N L
rl (i) − hl θl
1 XX

=c− 2
Er,θ0 
2σ
βl
i=1 l=1
N
L
2 1 XX 1
0
,
E
rl (i) − hl θl
=c− 2
2σ
βl r(i),θ
(6.19)
i=1 l=1
where r = r(1), r(2), · · · , r(N ) . And,
2 rl (i) − hl θl
2 = Er(i),θ0
rl (i) − µl|r(i),θ0 + µl|r(i),θ0 − hl θl
2 = Er(i),θ0
rl (i) − µl|r(i),θ0
+ 2Er(i),θ0
rl (i) − µl|r(i),θ0 µl|r(i),θ0 − hl θl
2
+ Er(i),θ0
µl|r(i),θ0 − hl θl
!
2
cov(rl (i), r(i))2
2
0 − hl θl
= 1−
+
µ
σ
l|r(i),θ
l
σ 2 σl2
2
= cl (i) + µl|r(i),θ0 − hl θl ,
(6.20)
Er(i),θ0
where cl (i) is a constant, µl|r(i),θ0 is the conditional mean of rl (i) given r(i) and θ 0 , that
114
is
µl|r(i),θ0 = Er(i),θ0 (rl (i))
cov(rl (i), r(i)) 0
r(i)
−
µ
r(i),θ
2
σ

L
X
βl σ 2 
0
= hl θ l + 2
r(i) −
hl θl0 
σ
l=1


L
X
= hl θl0 + βl r(i) −
hl θl0  ,
= hl θl0 +
(6.21)
l=1
and
0
µl|r(i),θ − hl θl
Er(i),θ
rl (i) − µl|r(i),θ
= µl|r(i),θ0 − hl θl Er(i),θ0 rl (i) − µl|r(i),θ0
0
0
= 0.
(6.22)
Here we use the conditional expectation of the jointly normal random variables. It can
be proved that if A, B are independent Gaussian variables, then A and A + B are jointly
Gaussian [87]. And if A and B are two jointly normal random variables, the conditional
PDF (f (A|B = b)) can be evaluated as [87],

cov(A, B)
(b − µB ), 1 −
f (A|B = b) ∼ N µA +
2
σB
cov(A, B)2
2 σ2
σA
B
!

2
σA
.
(6.23)
115
So,
N L
2 1 XX 1
U (θ, θ ) = c − 2
Er(i),θ0 rl (i) − hl θl
2σ
β
i=1 l=1 l
N L
2 1 XX 1
cl (i) + µl|r(i),θ0 − hl θl
=c− 2
2σ
βl
0
= c0 −
i=1 l=1
N X
L
X
1
2σ 2
i=1 l=1
2
1 µl|r(i),θ0 − hl θl ,
βl
(6.24)
where c0 is a constant. Thus, the algorithm can be summarized as follows.
1. Expectation step
2
N L
1 XX 1
µ
.
U (θ, θ̂ ) = c − 2
k − hl θl
l|r(i),θ̂
2σ
βl
k
0
i=1 l=1
by evaluating,

µ
l|r(i),θ̂
k
= hl θ̂lk + βl r(i) −
L
X

hl θ̂lk  .
l=1
2. Maximization step

2
N X
L
X
1
.
= argmin
µ
k − hl θ l
l|r(i),θ̂
βl
θ

θ̂
k+1
i=1 l=1
This is a linear least squares (LS) problem, and can be solved with the LS estimator
[78].
6.1.2 Nonlinear Expectation Maximization Approach
Recall the range measurements
rm (i) = dm (θ) + nm (i),
116
2 ). Taking the sample average, we have
where nm (i) ∼ N (0, σm
r̄m = dm + n̄m ,
where r̄m =
1
N
PN
i=1 rm (i)
and n̄m =
1
N
PN
i=1 nm (i).
(6.25)
Using the first order Taylor expan-
sion, we have
dm (θ) ≈ dm (θ 0 ) + ḋm (θ 0 ) (θ − θ 0 ) ,
(6.26)
where
∂dm (θ) ∂dm (θ) ∂dm (θ)
ḋm (θ 0 ) =
,
,
x
y
z
θ=θ 0
h
i
˙
˙
˙
:= dm,x (θ 0 ), dm,y (θ 0 ), dm,z (θ 0 ) .
Then
r̃m = ḋm (θ 0 )θ + n̄m
= d˙m,x (θ 0 )x + d˙m,y (θ 0 )y + d˙m,z (θ 0 )z + n̄m ,
(6.27)
where
r̃m = r̄m − dm (θ 0 ) + ḋm (θ 0 )θ 0 .
h
i
Thus r̃m is the observed data set, and d˙m,x (θ 0 )x, d˙m,y (θ 0 )y, d˙m,z (θ 0 )z is the complete
data set, which can be solved with EM iteration. The EM step can be summarized as
1. Expectation step
2
M
3
1 XX 1
µ
,
U (θ, θ̂ ) = c −
k − µm,l
2
m,l|r̃m ,θ̂
2
β l σm
k
0
m=1 l=1
117
where µm,1 = d˙m,x (θ 0 )x, µm,2 = d˙m,y (θ 0 )y, µm,3 = d˙m,z (θ 0 )z, and
µ
µ
µ
m,1|r̃m ,θ̂
m,2|r̃m ,θ̂
m,3|r̃m ,θ̂
k
k
k
k
k
˙
= dm,x (θ 0 )x̂ + β1 r̃m − ḋm (θ 0 )θ̂ ,
k
k
˙
= dm,y (θ 0 )ŷ + β2 r̃m − ḋm (θ 0 )θ̂ ,
k
k
˙
= dm,z (θ 0 )ẑ + β3 r̃m − ḋm (θ 0 )θ̂ .
(6.28a)
(6.28b)
(6.28c)
2. Maximization step

x̂k+1
ŷ k+1
ẑ k+1

2
M
X
1
˙
,
= argmin
µ
k − dm,x (θ 0 )x
2
m,1|r̃m ,θ̂
σ
x
m
m=1


2
M
X
1
˙
,
= argmin
µ
k − dm,y (θ 0 )y
2
m,2|r̃m ,θ̂
σm
y
m=1


2
M
X
1
˙
.
µ
= argmin
k − dm,z (θ 0 )z
2
m,3|r̃m ,θ̂
σm
z
m=1
The proposed algorithm is summarized as follows.
(6.29a)
(6.29b)
(6.29c)
118
Algorithm 8 NLEM estimator for TOA systems.
1: Initialize θ 0
2:
Outer iteration
3:
repeat
4:
Perform Taylor expansion as in Eq. (6.26)
5:
Inner iteration to estimate θ̂
6:
repeat
k+1
7:
Expectation step with Eq. (6.28)
8:
Maximization step with Eq. (6.29)
9:
10:
11:
until maximum inner iteration reached or convergence
Set θ 0 = θ̂
k+1
until maximum outer iteration reached or convergence
Compared to the NLLS algorithm, now the 3-D estimation problem is transformed
into three 1-D problems. This scheme does not require matrix inversion operation.
However, a disadvantage is that iteration is needed for each NLLS step.
6.1.3 Computational Complexity
For the LS method, it needs about M multiplications to initialize, 7M for Taylor expansion, and 10M multiplications per inner iteration. Here we assume βl =
1
3
for simplicity.
For a typical scenario with 10 outer iterations and 5 inner iterations, it needs about
571M multiplications. The WLS method needs an extra of 3M multiplications per inner
iteration. Thus, overall the algorithm needs about 721M multiplications.
6.1.4 Simulation
Figure 6.1 shows the convergence of the NLEM algorithm, where the maximum outer
iteration is to be 10. In all cases, the NLEM algorithm converges well after 2 inner
iterations. So for the following simulations, the maximum number of inner iteration is
set to be 5.
Figure 6.2 shows the MSE of the estimated position, where the noise variances are
chosen to be σ 2 = [0.063, 0.141, 0.070, 0.061]T and N = 50. It is observed that after 5
119
−3
MSE (x−coord + y−coord)
10
σ=0.1
σ=0.03
σ=0.01
−4
10
−5
10
−6
10
0
5
10
15
Iterations
20
25
30
Figure 6.1: NLEM: Convergence performance in AWGN errors.
inner iterations, the performance approaches the CRLB.
−4
MSE (x−coord)
14
x 10
CRLB
NLEM
NLEM−W
12
10
8
6
4
0
5
10
15
Target index
20
25
−4
MSE (y−coord)
14
x 10
CRLB
NLEM
NLEM−W
12
10
8
6
4
0
5
10
15
Target index
20
25
Figure 6.2: NLEM: Simulated MSE curves of the NLEM method.
Figure 6.3 compares the performances of the NLEM and weighted NLEM algorithms
120
assuming Type I error, where σ(a%) denotes the AWGN error with distribution nm (i) ∼
MSE (x−coord + y−coord)
N (0, (a% × dm )2 ). The performances of both algorithms are close to the CRLB.
−4
10
−5
10
CRLB
NLEM
NLEM−W
1
2
3
4
5
σ (%)
6
7
8
9
Figure 6.3: NLEM: Performances of the NLEM and weighted NLEM algorithms (Type
I error).
Figure 6.4 compares the performances of the NLEM and weighted NLEM algorithms
assuming Type II error, where nm ∼ N 0, (0.05dm )2 and N = 50. The NLOS offset
(b%) denotes the NLOS error with distribution bm ∼ U(0, b% × dm ). Since the NLOS
is not severe, the NLEM estimator still works well, but the gap between the CRLB and
the estimated MSE increases as the NLOS offset increases, as expected.
121
−2
10
MSE (x−coord + y−coord)
CRLB
NLEM
NLEM−W
−3
10
−4
10
1
1.5
2
2.5
3
3.5
NLOS offset (b%)
4
4.5
5
Figure 6.4: NLEM: Performances of the NLEM and weighted NLEM algorithms (Type
II error, 4 NLOS links).
6.2 TDOA
Recall the range measurements for TDOA systems (Eq. (2.13)):
rm,1 (i) = dm (θ) − d1 (θ) + nm (i) − n1 (i).
Taking the sample average, we have
r̄m,1 = dm (θ) − d1 (θ) + n̄m − n̄1 ,
where r̄m,1 =
1
N
PN
i=1 rm,1 (i)
and n̄m =
1
N
PN
i=1 nm (i).
(6.30)
The first order Taylor expansion
is expressed as
dm (θ) ≈ dm (θ 0 ) + ḋm (θ 0 ) (θ − θ 0 ) .
(6.31)
122
Hence
r̃m1 = ḋm (θ 0 ) − ḋ1 (θ 0 ) θ + n̄m − n̄1
 
h
i θ
= d˙m1 (θ 0 ) −1   + n̄m ,
n̄1
(6.32)
where
r̃m1 = r̄m,1 − dm (θ 0 ) + d1 (θ 0 ) + ḋm (θ 0 )θ 0 − ḋ1 (θ 0 )θ 0 ,
h
i
d˙m1 (θ 0 ) = ḋm (θ 0 ) − ḋ1 (θ 0 ) := d˙m1,x (θ 0 ) d˙m1,y (θ 0 ) d˙m1,z (θ 0 ) .
Let us define the complete data set as
h
i
d˙m1,x (θ 0 )x d˙m1,y (θ 0 )y d˙m1,z (θ 0 )z −n̄1 .
(6.33)
Similar to TOA systems, the EM step is written as
1. Expectation step
2
M
4
1 XX 1
U (θ, θ̂ ) = c −
µ
,
k − µm,l
2
m,l|r̃m ,θ̂
2
β l σm
k
0
m=2 l=1
where µm,1 = d˙m1,x (θ 0 )x, µm,2 = d˙m1,y (θ 0 )y, µm,3 = d˙m,z (θ 0 )z, µm,4 = −n̄1 ,
µ
µ
µ
µ
m,1|r̃m ,θ̂
m,2|r̃m ,θ̂
m,3|r̃m ,θ̂
m,4|r̃m ,θ̂
k
k
k
k
= d˙m1,x (θ 0 )x̂k + β1 r̃m − r̂m (θ 0 , θ k ) ,
= d˙m1,y (θ 0 )ŷ k + β2 r̃m − r̂m (θ 0 , θ k ) ,
= d˙m1,z (θ 0 )ẑ k + β3 r̃m − r̂m (θ 0 , θ k ) ,
ˆ k1 + β4 r̃m − r̂m (θ 0 , θ k ) .
= −n̄
 
i θ̂ k
and r̂m (θ 0 , θ k ) = ḋm1 (θ 0 ) −1  .
ˆ k1
n̄
h
(6.34a)
(6.34b)
(6.34c)
(6.34d)
123
2. Maximization step

x̂k+1
ŷ k+1
ẑ k+1
ˆ k+1
n̄
1
M
X
1
= argmin
σ2
x
m=2 m

M
X
1
= argmin
σ2
y
m=2 m

M
X
1
= argmin
σ2
z
m=2 m

M
X
1

= argmin
2
σm
n̄1
µ
µ
µ
µ
m=2
m,1|r̃m ,θ̂
m,2|r̃m ,θ̂
m,3|r̃m ,θ̂
k
k
k
− d˙m1,x (θ 0 )x
− d˙m1,y (θ 0 )y
− d˙m1,z (θ 0 )z
2
m,4|r̃m ,θ̂
k
+ n̄1
2
2

,

,
2
(6.35a)
(6.35b)

,
(6.35c)

.
(6.35d)
The proposed algorithm is summarized as follows.
Algorithm 9 NLEM estimator for TDOA systems.
1: Initialize θ 0
2:
Outer iteration
3:
repeat
4:
Perform Taylor expansion as in Eq. (6.31)
5:
Inner iteration to estimate θ̂
6:
repeat
k+1
7:
Expectation step with Eq. (6.34)
8:
Maximization step with Eq. (6.35)
9:
10:
11:
until maximum inner iteration reached or convergence
Set θ 0 = θ̂
k+1
until maximum outer iteration reached or convergence
The proposed method transforms the original 3-D estimation problem into four 1-D
problems, eliminating all matrix multiplications and inversions.
124
6.2.1 Computational Complexity
The unweighted method needs about M − 1 multiplications to initialize, and 7M mul-
tiplications to calculate Taylor expansion. For each inner iteration, it needs 10(M − 1)
multiplications, where it is assumed that βl = 41 . For a typical scenario with 10 outer iterations and 5 inner iterations, it requires approximately 571(M − 1) multiplications. The
weighted method requires 4(M − 1) extra multiplications per inner iterations. Overall it
requires about 771(M − 1) multiplications.
6.2.2 Simulation
Figure 6.5 shows the convergence of the NLEM algorithm, where the maximum outer
iteration is set to be 10. In all cases, it converges well after 5 inner iterations. Thus, for
the following simulations, the maximum number of inner iterations is set to be 5.
−2
10
σ=0.1
σ=0.03
σ=0.01
MSE (x−coord + y−coord)
−3
10
−4
10
−5
10
−6
10
0
5
10
15
Iterations
20
25
30
Figure 6.5: NLEM TDOA: Convergence performance in AWGN errors.
Figure 6.6 shows the MSE of the estimated position, where the noise variances are
chosen to be σ 2 = [0.063, 0.141, 0.070, 0.061]T and N = 50. It is observed that after 5
iterations, the performance approaches the CRLB.
Figure 6.7 compares the performances of the NLEM and weighted NLEM algorithms
125
−3
1.6
x 10
CRLB
NLEM
NLEM−W
MSE (x−coord)
1.4
1.2
1
0.8
0.6
0
5
10
15
Target index
20
25
−4
MSE (y−coord)
14
x 10
CRLB
NLEM
NLEM−W
12
10
8
6
4
0
5
10
15
Target index
20
25
Figure 6.6: NLEM TDOA: Simulated MSE curves of the NLEM method.
assuming Type I error, where σ(a%) denotes the AWGN error with distribution nm (i) ∼
MSE (x−coord + y−coord)
N (0, (a% × dm )2 ). The performances of both algorithms approach the CRLB.
−4
10
−5
10
CRLB
NLEM
NLEM−W
1
2
3
4
5
σ (%)
6
7
8
9
Figure 6.7: NLEM TDOA: Performances of the NLEM and weighted NLEM methods
(Type I error).
126
Figure 6.8 compares the performances of the NLEM and weighted NLEM algorithms
assuming Type II error, where nm ∼ N 0, (0.05dm )2 . The NLOS offset (b%) denotes
the NLOS error with distribution bm ∼ U(0, b% × dm ). Since the NLOS is not severe,
the NLEM estimator still works well, but the gap between the CRLB and the estimated
MSE increases as the NLOS offset increases, as expected.
−3.1
10
CRLB
NLEM
NLEM−W
MSE (x−coord + y−coord)
−3.3
10
−3.5
10
−3.7
10
−3.9
10
1
1.5
2
2.5
3
3.5
NLOS offset (b%)
4
4.5
5
Figure 6.8: NLEM TDOA: Performances of the NLEM and weighted NLEM methods
(Type II error, 4 NLOS links).
6.3 Experimental Results
Figure 6.9 shows the anchor layout and target locations for the cluster TDOA experiment. The experiment is run in a 8m × 8m × 3m room. The system has three receiver
units (clusters). Each unit has 4 receive antennas, which are precisely synchronized and
located at the corners of a 1m × 1m square. Each receiver unit works totally indepen-
dently. The targets are scattered in the room, whose height are fixed. The experimental
system uses a commercial pulsed UWB transmitter operating in the 3.1-5GHz range
as the target with a pulse repetition frequency (PRF) of about 10MHz. Each receive
antenna is connected to an amplifier/filter board we designed in our lab. For cluster
1, the antenna/amplification/filtering units are connected to a real-time sampling scope
127
operating at 20Gsps; for clusters 2 and 3, data acquisition (DAQ) boards [88] operating at 3Gsps per channel that we designed in our research lab are used to capture
the data. This experiment showed excellent flexibility of the cluster based localization
system. Since the clusters work independently from one another, they can work under
different configuration, e.g., sampling frequency. The sampled data are transferred to a
PC through Ethernet for range estimation and localization. Each location estimate is
generated from 21.8µs of data, covering an interval of about 218 pulses.
Table 6.1 and 6.2 show the performances of the NLLS and NLEM methods, respectively. For the NLLS method, the SMACOF method with 10 iterations is used for the
coarse estimate. It is observed that the NLEM method can achieve a performance that
is close to the NLLS method.
300
Target
Receiver Cluster 1
Receiver Cluster 2
Receiver Cluster 3
250
z(cm)
200
150
100
50
0
800
600
800
600
400
400
200
y(cm)
200
0
0
x(cm)
Figure 6.9: System layout of the cluster TDOA experiment.
Table 6.1: Test result of the NLLS method (10 iterations).
average( |error| ) std( |error| )
x
11.57cm
9.68cm
y
14.04cm
16.10cm
z
6.99cm
5.25cm
128
Table 6.2: Test result of the NLEM method (10 outer iterations + 5 inner iterations).
average( |error| ) std( |error| )
x
10.43cm
9.74cm
y
12.39cm
13.15cm
z
7.02cm
5.28cm
6.4 Comparison of Various Position Estimation Methods
Table 6.3 and Figure 6.10 show the computational complexity of various methods for
TOA systems. Figure 6.11 and 6.12 show their performances. The GMOM method
requires the largest number of multiplications since it needs to estimate the covariance
matrix and its inverse for each iteration. The NLEM method also has a high computational complexity; however, it can be implemented in parallel by a factor of 3 (Eqs.
(6.28) and (6.29)), which does not require matrix inversion. The NLLS and SMACOF
methods have similar computational complexity, but the NLLS method requires inverting matrices whereas the SMACOF does not. The MOM/IMOM method has the least
computational complexity among all the methods and does not require matrix inversion.
Table 6.3: Computational complexity of various TOA localization estimators.
Estimator # of iterations
# of multiplications
# of matrix inversion
MOM
1
5M
0
2
IMOM
1
M + 12M or
0
13M for sub optimal
GMOM
10
30M 2 + 102M
10 (M × M ),
10 (3 × 3)
NLLS
10
221M
10 (3 × 3)
SMACOF 20
261M
0
NLEM
10 outer, 5 inner
721M
0
The performances of these methods assuming Type I error are compared in Figure
6.11, where σ(a%) denotes the AWGN error with distribution nm (i) ∼ N (0, (a%×dm )2 ).
The NLLS, SMACOF and NLEM methods can all achieve a performance that is close
to the CRLB. The IMOM and GMOM methods have similar performance, and both
perform much better than the conventional MOM algorithm.
129
5
10
MOM
IMOM
IMOM sub−opt
GMOM
NLLS
NLEM
SMACOF
4
# of Multiplications
10
3
10
2
10
1
10
5
10
15
20
M (# of anchors)
25
30
MSE (x−coord+y−coord)
Figure 6.10: Computational complexity of various TOA localization estimator.
−4
10
CRLB
MOM
GMOM
IMOM sub−opt
IMOM
NLLS
SMACO
NLEM
−5
10
1
2
3
4
5
σ (%)
6
7
8
9
Figure 6.11: Performances of various TOA localization estimators (Type I error).
Figure 6.12 compares the performances of all the methods assuming Type II error,
where nm ∼ N 0, (0.05dm )2 and N = 50. The NLOS offset (b%) denotes the NLOS
error with distribution bm ∼ U(0, b% × dm ). In this case, all algorithms work well. The
130
MSE (x−coord+y−coord)
NLLS, SMACOF and NLEM algorithms work slightly better than others.
−3
10
CRLB
MOM
GMOM
IMOM sub−opt
IMOM
NLLS
SMACOF
NLEM
−4
10
1
1.5
2
2.5
3
3.5
NLOS offset (%)
4
4.5
5
Figure 6.12: Performances of various TOA estimators (Type II error, 4 NLOS links).
Table 6.4 and Figure 6.13 show the computational complexity of various estimators
for TDOA systems. The MOM method requires much fewer multiplications than all
the others. However, its accuracy is very poor. The GMOM method has the highest
complexity, since now the matrix H cannot be pre-calculated and must be updated
dynamically. In addition, it requires calculating the inverse of the big covariance matrix.
The NLLS method still achieves the highest accuracy. However, since it is sensitive to
the choices of the initial position, it might need to work with a coarse position estimator.
In this case, its computational complexity will increase. The SMACOF method is an
approximate ML estimator. It can achieve a good performance; however, its convergence
speed is much slower than the NLLS method. Thus, it needs to run more iterations to get
the final estimate, which increases its computational complexity. Furthermore, it requires
to perform matrix inversion every iteration. The NLEM method can be implemented in
parallel by a factor of 4 (Eqs. (6.34) and (6.35)), and does not need any matrix inversion.
When M is large (e.g., M > 20), the NLEM method is more efficient than the NLLS
and SMACOF methods.
Figure 6.14 and 6.15 compares the performances of the various methods assuming
Type I and II errors, respectively. Because of the performance of the MOM method is
131
Table 6.4: Computational complexity of various TDOA
Estimator # of iterations
# of multiplications
MOM
1
9(M − 1)
GMOM
10
50(M − 1)2 + 262(M − 1)
NLLS
10
31(M − 1)2 + 193(M − 1)
or
31(M − 1)2 + 614(M − 1)
(10 SMACOF coarse estimation)
SMACOF 30
1261(M − 1)
NLEM
10 outer, 5 inner 771(M − 1)
localization estimators.
# of matrix inversion
1 (4 × 4)
10 (4 × 4)
10 (3 × 3) or
20 (3 × 3) (10 SMACOF
coarse estimation
30 (3 × 3)
0
4
5
x 10
MOM
GMOM
NLLS
NLLS (with SMACOF)
NLEM
SMACOF
4.5
4
Multiplications
3.5
3
2.5
2
1.5
1
0.5
0
5
10
15
20
M(# of anchors)
25
30
Figure 6.13: Computational complexity of various TDOA localization estimators.
too poor, it is not shown here. The performances of the NLLS, SMACOF and NLEM
methods are very close for both cases. For Type I error, they all achieve a performance
that is close to the CRLB.
MSE (x−coord + y−coord)
132
−4
10
−5
10
CRLB
NLLS
SMACOF
NLEM
1
2
3
4
5
σ (%)
6
7
8
9
Figure 6.14: Performances of various TDOA localization estimators (Type I error).
−3
10
MSE (x−coord+y−coord)
CRLB
NLLS
SMACOF
NLEM
−4
10
1
1.5
2
2.5
3
3.5
NLOS offset (a%)
4
4.5
5
Figure 6.15: Performances of various TDOA localization estimators (Type II error, 4
NLOS links).
6.5 Conclusion
In this chapter, a NLEM method is developed for both TOA and TDOA systems. It
transforms the 2-D/3-D estimation problems into several 1-D problems. In addition, it
133
does not involve any matrix operations (e.g., multiplication and inversion). Thus, it is
much easier to implement than the NLLS and SMACOF methods. Simulation results
and field test data show that its performance is close to the CRLB. The comparison of
the performance and computational complexity of various estimation methods is given
at the end of this chapter.
134
Chapter 7: Non-line-of-sight Mitigation
All the algorithms developed in the previous chapters are based on the assumption that
there is no significant NLOS offset in the range measurements, that is, Type I and II
errors as assumed. In this situation, the NLLS, IMOM, SMACOF, and NLEM methods
all work quite well. However, in practice, the LOS path between the target and the
anchor could be blocked by the surrounding subjects, causing a large NLOS offset in the
range measurements (Type III error). Without additional processing, such offset will
cause a bias in the location estimate, which will significantly decrease the positioning
performance.
For example, for TOA systems, when bm 6= 0, the NLLS algorithm (Eqs. (4.19) and
(2.3)) gives
−1
ḋ(θ 0 )T C −1 r̄ − d(θ 0 )
θ̂ = θ 0 + ḋ(θ 0 )T C −1 ḋ(θ 0 )
−1
ḋ(θ 0 )T C −1 b − d(θ 0 ) + ḋ(θ 0 )(θ − θ 0 ) + n̄ − d(θ 0 )
≈ θ 0 + ḋ(θ 0 )T C −1 ḋ(θ 0 )
−1
ḋ(θ 0 )T C −1 b + ḋ(θ 0 )(θ − θ 0 ) + n̄
= θ 0 + ḋ(θ 0 )T C −1 ḋ(θ 0 )
−1
ḋ(θ 0 )T C −1 (b + n̄)
= θ 0 + θ − θ 0 + ḋ(θ 0 )T C −1 ḋ(θ 0 )
−1
ḋ(θ 0 )T C −1 (b + n̄),
= θ + ḋ(θ 0 )T C −1 ḋ(θ 0 )
(7.1)
−1
where ḋ(θ 0 )T C −1 ḋ(θ 0 )
ḋ(θ 0 )T C −1 b is the offset caused by the NLOS offset. The
MSE is
MSE(θ̂)
T
−1
−1
=E
ḋ(θ 0 )T C −1 ḋ(θ 0 )
ḋ(θ 0 )T C −1 (b + n̄) ḋ(θ 0 )T C −1 ḋ(θ 0 )
ḋ(θ 0 )T C −1 (b + n̄)
!
T
−1
−1
T
−1
T
−1
T
T
T
−1
T
−1
= ḋ(θ 0 ) C ḋ(θ 0 )
ḋ(θ 0 ) C E(bb + n̄n̄ ) ḋ(θ 0 ) C ḋ(θ 0 )
ḋ(θ 0 ) C
= MSELOS + MSENLOS ,
(7.2)
135
where
MSELOS =
−1 T
ḋ(θ 0 )T C −1 ḋ(θ 0 )
,
T
−1
−1
ḋ(θ 0 )T C −1 E(bbT ) ḋ(θ 0 )T C −1 ḋ(θ 0 )
MSENLOS = ḋ(θ 0 )T C −1 ḋ(θ 0 )
ḋ(θ 0 )T C −1 ,
and MSENLOS is caused by NLOS offsets.
Thus, when NLOS offsets exist in the range measurements, the traditional methods
(e.g., NLLS [11], MOM [42, 43, 50]) do not work. Generally, there are two ways to deal
with NLOS offsets [5, 58, 59]: NLOS identification and NLOS mitigation.
NLOS identification methods try to identify the NLOS links, for example, with a
priori statistical information about NLOS and LOS links [5]. There is substantial amount
of statistical information available to classify LOS and NLOS links [69], such as received
signal strength (RSS), maximum amplitude of the received signal, mean excess delay, root
mean square (RMS) delay spread, Kurtosis [69], the variance of the range measurement
2 ), etc.
errors (σm
During the range estimation phase, a hypothesis test can be conducted with some
threshold. Then a decision is made on whether a link suffers from NLOS propagation
or not. For example, if the received signal strength is extremely small, it is highly likely
that the path between the target and the anchor is completely blocked. In this case,
since the corresponding range measurement does not provide much information about
the target location (Type IV error), such links are discarded.
Since NLOS identification methods rely on the statistical information of the channel,
periodic calibration is often necessary. For most indoor applications, the environment
might change rapidly, making it expensive to maintain the accurate a priori statistical
information.
When NLOS offsets exist in the observed range measurements, without mitigation, it
will introduce a bias to the estimated position, which will greatly decrease the localization
accuracy as shown in Eqs. (7.1) and (7.2). Figure 7.1 shows an example of the area
where possible positioning solutions could fall into when all anchors suffer from NLOS
offsets. In this case, any point inside the red area satisfies the constraints from the range
measurement equations. In other words, all positions inside the red area are potential
target locations, resulting in a drastically reduced estimation accuracy.
There exist many NLOS mitigation methods [5, 58–76]. Most of these methods also
136
Figure 7.1: NLOS: Illustration of the area of possible positioning solutions when all
anchors suffer from NLOS offsets.
require a priori information. The Kalman filtering methods, developed in [65–68], utilize
a priori statistical information about the NLOS and LOS range measurements (e.g., the
variance of the range error). In [69], a machine learning algorithm is developed for both
NLOS identification and mitigation by tracking the characteristics differences between
the NLOS and LOS links, which are assumed to be known in advance. In [70], the linear
programming method is used for NLOS mitigation, which requires perfect detection of
the NLOS links. Thus, their applications are limited and the computational complexity
is very high. Some of the NLOS mitigation methods do not require a priori knowledge
about the LOS and NLOS links. For example, in [63], the author proposed a quadratic
programming method for NLOS mitigation, which does not need a priori information.
In [64], a closed form NLOS mitigation algorithm is developed, which uses the intersection
points formed by the range measurement circles to estimate the target location. However,
their performances are far away from the CRLB.
If all anchor-target links are NLOS links, e.g., as shown in Figure 7.1, the range measurements are insufficient to determine the target location. That is why the traditional
methods will not work well. The mitigation methods (e.g., [63, 64]), which simply pick
one position inside the feasible solution area, can only improve the performance under
certain conditions.
Figure 7.2 shows the layout when only a small portion of the anchors suffer from
the NLOS propagation. In this case, the LOS links are still sufficient for the position
estimation. For a well-chosen anchor layout, the scenario shown in Figure 7.2 is more
137
Figure 7.2: NLOS: Illustration of the system layout with 1 NLOS link.
realistic than the extreme case depicted in Figure 7.1.
In [60,61], the authors proposed the LMedS algorithm. It does not need any a priori
information about the LOS or NLOS links, and can be applied to various scenarios. It
searches for the subset of the anchors with the least median of squares error (residue)
to improve the performance under NLOS propagation. However, since it only uses a
subset of all range measurements to estimate the position, it has several drawbacks:
(1) In order to deal with potential scenarios that there are many NLOS links, the subset
size must be chosen to be small. Thus, it might discard too many range measurements,
which otherwise can provide better performance; (2) it might reach an outlier as the final
estimate. In this chapter, we develop the ILMedS method to overcome all these problems.
It uses the residue to weight all anchors and adaptively chooses the anchors with large
weights to estimate the final position. Analysis and simulation results show that it can
greatly decrease the probability of reaching the outlier and improve the accuracy.
Since ILMedS needs to obtain an estimate for each subset, its computational complexity is high. We develop the PFPE method for NLOS mitigation, which uses particles
to represent the potential target. In this scheme, each particle utilizes the range measurements to update its position. It is much simpler than the ILMedS method, while
achieving a performance similar to that of the ILMedS method.
138
7.1 ILMedS NLOS Mitigation
7.1.1 Analysis of the conventional LMedS
The LMedS algorithm [60] is summarized as follows.
1. Randomly select a subset of L anchors, denoted by Sk , from a total of M anchors
to determine the position estimate θ̂ k .
2. Repeat step 1 until K estimates, θ̂ 1 , · · · , θ̂ K , are obtained.
3. For each θ̂ k , calculate the residue as
o
n
RSk = median (rk,1 − r̂k,1 )2 ,· · · ,(rk,L − r̂k,L )2 ,
(7.3)
where rk,l is the observed range measurement between the target and the lth anchor
in subset Sk , r̂k,l is the distance between the estimated position θ̂ k and the lth
anchor in subset Sk .
4. Find the estimate with the smallest residue, and designate it as the final estimate.
The method does not need any prior information about the LOS and NLOS links,
which makes it easy to be applied to various scenarios. The algorithm works very well
when NLOS offsets exist in only a small portion of the range measurements [60]. However,
it has some drawbacks:
1. It uses only a subset of all available range measurements. Since scenarios where
many NLOS links exist are possible, the fixed subset size L must be small. Thus,
for cases when most of the links are LOS, its accuracy can be improved if the
number of reliable range measurements used in the estimation is maximized.
2. LMedS might choose an ‘outlier’ as the final estimate. For example, due to the
range measurements error (nm (i), bm ), for one particularly subset Sk , the residue
calculated by using Eq. (7.3) could be the smallest one even if the subset Sk
contains large range measurement errors. Thus, the estimated position can be far
off the true one. An example is illustrated in Figure 7.3, where v 2 , v 3 , andv 4 are
chosen for position estimation as these result in the smallest residue (0). However,
the estimate θ 0 is far away from the true target θ.
139
v2
r2 (i)
θ′
θ
r3 (i)
v3
r4 (i)
v4
Figure 7.3: NLOS: Illustration of reaching an ‘outlier’ estimate with the LMedS algorithm, where θ is the true target location and θ 0 is the estimated target location.
7.1.2 Proposed ILMedS Algorithm
We propose the ILMedS algorithm [77], which resolves all the above problems:
1. Use the existing LMedS method to compute θ̂ k and RSk (k = [1, 2, · · · , K]), where
each subset Sk contains L anchors. Here L can be as small as possible.
2. Find all subsets So,p , p = 1, 2, · · · , P that satisfy RSo,p ≤ RS , where RS is a pre-
defined threshold. In practice, RS can either be fixed given an expected accuracy,
or can be updated dynamically by using the range measurement error information
(e.g., sample variance of the range measurement). If such subset does not exist,
use the conventional LMedS method.
3. Let Sv denote the set of all anchors appear in So,p . Calculate the frequency of each
anchor appearing in So,p .
For example, suppose So,1 = [1, 2, 3], So,2 = [2, 3, 4], then Sv = [1, 2, 3, 4]. The
corresponding frequency is Fv = [1, 2, 2, 1]; that is the first anchor appears only
once in So,p , the second anchor appears twice in So,p , and so on.
4. Put the L anchors that have the highest frequencies in Sv,o . Then check the
frequencies of all other anchors in Sv : if the frequency of any anchor is greater
than Fth = max (Fv ) − F , where F is a predefined threshold, then put it in Sv,o ;
otherwise, it is discarded.
5. Use the range measurements between the target and the anchors in Sv,o to determine the final position estimate.
140
Because the proposed algorithm maximizes the number of reliable range measurements
used in localization, it drastically increases the estimation stability and accuracy for both
LOS and NLOS cases.
7.1.3 Outlier Probability
The total number of links M can be written as M = MLOS + MNLOS , where MLOS
and MNLOS are the number of LOS and NLOS links, respectively. Let K = M
L ,
MLOS
K1 =
, K2 = K − K1 , and RSLOS /RSNLOS be the residues from the subset
L
with LOS/NLOS range measurements. We have P1 = P (RSLOS ≤ RS ) ≈ 1. Similarly,
let P2 = P (RSNLOS ≤ RS ). It is reasonable to assume that P2 P1 .
For the conventional LMedS method, the probability of reaching an outlier as the
final estimate is written as
P (outlier) =
P2 K2
P2 K2
≈
.
P1 K1 + P2 K2
K1 + P2 K2
(7.4)
For the proposed ILMedS method, if the link between anchor v m and the target
−1
subsets, which only include LOS range
is LOS, then v m will be in K10 = MLOS
L−1
K0
measurements. Also, P (Fv (vm ) ≥ K10 ) ≥ P1 1 . Thus, it is reasonable to set the threshold
−1
Fth = K10 . On the other hand, if this link is NLOS, then v m will be in K 0 = M
L−1
subsets, which include at least one NLOS range measurement. Therefore,
P (Fv (vm ) ≥
K10 )
K0 0
X
K
0
P2k (1 − P2 )K −k .
=
k
0
(7.5)
k=K1
Consequently, the upper bound of reaching an outlier as the final estimate is
P (outlier) ≤ MNLOS × P (Fv (vm ) ≥ K10 ).
(7.6)
The probabilities of reaching an outlier with the LMedS and the proposed methods
are shown in Figure 7.4; when the number of NLOS links does not exceed 50% of the
total number of links, the latter is orders of magnitude smaller than the former.
As the number of NLOS links further increases (e.g., ≥ 5 NLOS links out of 8), of
all the K subsets, there is only one subset at most that contains only LOS links. So the
141
10
10
LMedS
0
P(outlier)
10
−10
10
P2=0.005
−20
10
ILMedS
P2=0.02
−30
10
1
P2=0.01
2
3
NOLS links number
4
5
Figure 7.4: ILMedS: Probability of reaching an outlier as the final position estimate with
the LMedS and the proposed ILMedS methods (M = 8, L = 3 and K = 56).
LMedS algorithm might reach an outlier as the final estimate. The proposed method
also performs similarly as it does not have enough LOS subsets to weight all the anchors.
For unrealistic cases with an even greater M value (e.g., M = 16), however, the proposed
method might still work even if the number of NLOS links exceeds M/2, as long as the
number of LOS links is sufficient to weight all the anchors.
7.1.4 Computational Complexity
The LMedS method needs to run one estimation per subset. If the NLLS estimator is
applied, it needs approximately 221LK multiplications [50] for the estimation and 5LK
multiplications to calculate the residues for 3-dimensional localization. Thus, it requires
a total of about 226LK multiplications.
The proposed ILMedS method needs additional calculations to compute the weight
for each anchor, which generally can be done with simple comparisons and additions.
If the NLLS method is used for the final estimation, the proposed method requires a
maximum of 226LK + 221M multiplications. For almost all scenarios, LK M (e.g.,
K = 56, L = 3, M = 8 as chosen in simulation: KL = 168 M = 8). Thus, the
increase in computational complexity with the proposed method is negligible.
142
7.1.5 Simulation
Simulation setup is shown in Figure 7.5: 8 anchors are uniformly placed on a circle with
√
a radius of 2 and a total of 25 targets are placed on the grid {x, y} = {0, ±0.3, ±0.6}.
The total number of range measurements is set to be N = 50 and the subset size is chosen
√
to be L = 3. Position error is defined as Position Error = MSE. For each subset, NLLS
estimator is applied for position estimation. Other parameters are defined as follows:
“σ(a%)” denotes the AWGN with nm (i) ∼ N (0, (dm ×a%)2 ); “NLOS offset(b%)” denotes
the NLOS offset with a uniform distribution, that is, bm ∼ U(0, dm × b%); dm defined in
Eq. (2.1) is the true distance between the target and the mth anchor.
1.5
Target
Anchor
1
y
0.5
0
−0.5
−1
−1.5
−1.5
−1
−0.5
0
x
0.5
1
1.5
Figure 7.5: ILMedS: Anchor and the target locations for simulation.
7.1.5.1 Estimation Outliers
Figure 7.6 shows the estimated position with the LMedS method; approximately 2% of
the final estimates are outliers. With the proposed method, all outliers are eliminated
(Figure 7.7).
143
1.5
Anchor
Estimation
Target
1
y
0.5
0
−0.5
−1
−1.5
−1.5
−1
−0.5
0
x
0.5
1
1.5
Figure 7.6: ILMedS: The estimated position with LMedS algorithm (σ(1%), NLOS offset
(5%), 1 NLOS link).
1.5
Anchor
Estimation
Target
1
y
0.5
0
−0.5
−1
−1.5
−1.5
−1
−0.5
0
x
0.5
1
1.5
Figure 7.7: ILMedS: The estimated position with the proposed ILMedS method (σ(1%),
NLOS offset (5%), 1 NLOS link).
7.1.5.2 Type I Error
The performances versus the variance of the range measurements of NLLS, Wang’s
method [63], LMedS, and the proposed method are shown in Figure 7.8. Since the
144
LMedS method only includes one subset of range measurements, its accuracy is worse
than those of NLLS and the proposed method.
−1
10
Position Error
NLLS
Wang
LMedS
ILMedS
−2
10
−3
10
1
1.5
2
2.5
3
σ (%)
3.5
4
4.5
5
Figure 7.8: ILMedS: Performances of four algorithms: NLLS, Wang’s method, LMedS,
and the proposed ILMedS method (Type I error).
7.1.5.3 Type II Error
Figure 7.9 compares the performances versus the NLOS offset of NLLS, Wang’s method,
LMedS, and the proposed method when one anchor suffers from this type of error. The
proposed ILMedS method works slightly better than the LMedS algorithm, as it tends
to include more anchors with LOS links for position estimation.
Figure 7.10 shows the performances of the above four algorithms for an extreme
case−when the range measurements for all links between the anchors and the target
suffer from Type II errors. In this case, the NLLS scheme works best, but the proposed
ILMedS method still performs better than the LMedS scheme.
145
σ (1%)
−1
10
Position Error
NLLS
Wang
LMedS
ILMedS
−2
10
−3
10
1
1.5
2
2.5
3
3.5
NLOS offset (%)
4
4.5
5
Figure 7.9: ILMedS: Performances of four algorithms: NLLS, Wang’s method, LMedS,
and the proposed ILMedS method (Type II error, 1 NLOS link).
σ (1%)
−1
10
Position Error
NLLS
Wang
LMedS
ILMedS
−2
10
1
1.5
2
2.5
3
3.5
NLOS offset (%)
4
4.5
5
Figure 7.10: ILMedS: Performances of four algorithms: NLLS, Wang’s method, LMedS,
and the proposed ILMeds method(Type II error, 8 NLOS links).
146
7.1.5.4 Type III Error
Figures 7.11, 7.12, and 7.13 show the performances versus the number of NLOS links
of the various methods for cases when NLOS offset reaches 10%, 50%, and 100% of the
actual distance. With Type III range measurement errors, NLLS does not work well
since it does not have any mechanism to deal with NLOS effects. The proposed ILMedS
method works significantly better than all other algorithms. As discussed in Section
7.1, when there are many NLOS links, the subset size L cannot be chosen very large
with LMedS. The proposed ILMedS method maximizes the number of reliable anchors
for the final estimation, and thus performs much better than LMedS. Additionally, by
comparing Figs. 7.11, 7.12, and 7.13, it is observed that NLOS does not appear to affect
the accuracy of the proposed ILMedS method, since it inherently results in discarding
the NLOS links. When NLOS situation is severe (e.g., NLOS offset reaches 100% of
the actual range, 3 NLOS links), the estimation accuracy with the proposed ILMedS
algorithm is even sightly better than the case of less severe NLOS conditions (e.g., NLOS
offset (10%), 3 NLOS links). This is because a large NLOS offset (bm ) will dominate the
range measurement errors, making it less likely to be included in the final estimation.
σ (1%), NLOS offset (10%)
−1
10
Position Error
NLLS
Wang
LMedS
ILMedS
−2
10
−3
10
1
1.5
2
2.5
3
NLOS links number
3.5
4
Figure 7.11: ILMedS: Performances of four methods: NLLS, Wang’s method, LMedS,
and the proposed ILMedS method (Type III error, NLOS offset 10%).
147
σ (1%), NLOS offset (50%)
0
10
NLLS
Wang
LMedS
ILMedS
−1
Position Error
10
−2
10
−3
10
1
1.5
2
2.5
3
NLOS links number
3.5
4
Figure 7.12: ILMedS: Performances of four methods: NLLS, Wang’s method, LMedS,
and the proposed ILMedS method (Type III error, NLOS offset 50%).
σ (1%), NLOS offset (100%)
0
10
NLLS
Wang
LMedS
ILMedS
−1
Position Error
10
−2
10
−3
10
1
1.5
2
2.5
3
NLOS links number
3.5
4
Figure 7.13: ILMedS: Performances of four methods: NLLS, Wang’s method, LMedS,
and the proposed ILMedS method (Type III error, NLOS offset 100%).
148
7.2 Particle Filter for NLOS Mitigation
With range measurements rm , the target location can be estimated by solving
θ = argmax f (θ|r)
θ
= argmax f (r|θ)f (θ) ,
(7.7)
θ
where f (θ) is the prior PDF of the target position, f (θ|r) is the PDF of the target
location given the range measurements, and f (r|θ) is the PDF of the range measurements
given the target location. If no a priori information about the target location is available,
that is f (θ) is a uniform distribution, then Eq. (7.7) can be simplified as
θ = argmax f (r|θ) .
(7.8)
θ
For TOA systems, since it is assumed that the range measurement errors are i.i.d.
AWGN, f (θ|r) is written as
(
(r − µ)T C −1 (r − µ)
f (r|θ) = p
exp −
2
(2π)M N det(C)
1
)
,
(7.9)
where C is the covariance matrix and µ = d(θ) + b. Thus, for LOS cases, Eq. (7.8) can
be simplified as
θ = argmax f (r|θ)
θ
= argmax log f (r|θ)
θ


N X
M
2
X
(rm (i) − dm ) 
= argmin
,
2
σm
θ
(7.10)
i=1 m=1
which can be solved by the NLLS or the SMACOF method [11, 34, 45, 50, 52].
When NLOS offsets exist in the range measurements, these methods do not work
well. If all anchors suffer from NLOS, possible position solutions are in an area (Figure
7.1). Thus, the performance of any algorithm that arbitrarily chooses one point [63, 64]
149
in this feasible solution area will be poor if a priori information about the LOS and
NLOS links is unavailable.
Even if only a small portion of the anchors suffer from NLOS and the feasible solution
area only contains one location (Figure 7.2), it is still difficult to determine that location
since the NLOS link is not identified. The ML criterion that uses all anchors (Eq.
(7.10)) does not work. When the LOS links are sufficient to estimate the target location,
the NLOS links do not provide useful information about the target location, because
generally the NLOS offset (bm ) will dominate the range measurement errors. Thus, the
NLOS links can be discarded without significantly decreasing the performance, and the
optimal solution becomes


N X
M
2
X
(r
(i)
−
d
)
m
m
θ = argmin
I(bm ),
2
σ
θ
m
(7.11)
i=1 m=1
where I(bm ) is the indicator function and I(bm ) = 1 when bm = 0; otherwise I(bm ) = 0.
When a priori statistical information about the LOS and NLOS links is available, it
can be used to detect the NLOS links (I(bm )) [5, 58–60, 62, 66–70]. If the a priori statistical information is static, it can be collected during the system setup phase. For indoor
localization systems, however, the environment often changes dynamically. Thus, the a
priori statistical information needs to be calibrated frequently, which is very expensive
to maintain.
The LMedS and ILMedS methods [60, 77] use residue to detect the NLOS links
(I(bm )) without relying on any a priori statistical information. The links with a high
probability to be NLOS links are discarded; while the ones with a high probability to be
LOS links are used in the final estimation. Such methods greatly decrease the probability
of including NLOS links in the final solution. However, since these methods need to
calculate the estimate for each subset of the anchors, the computational complexity is
very high, especially when the number of anchors (M ) is large.
Particle filter has been widely used to estimate the nonlinear or non-Gaussian distributions [89–91], which directly learns the distribution with particles.
In this section, we develop the PFPE algorithm for NLOS mitigation. Instead of
using the range measurements to estimate the target location, the proposed method
uses particles to represent the target locations. The location of each particle is updated
150
according to the range measurements.
7.2.1 Particle Filter Position Estimation
If the range measurements and the target location are known, it is easy to identify the
LOS links or the NLOS links,
rm (i) − r̂m (p) < m ,
Ip (bm ) = r̂m (p)
(7.12)
where r̂m (p) is the distance between the particle p and the mth anchor, m is a predefined
threshold. Since
f (θ k |r) =
Z
f (θ k |θ k−1 , r)f (θ k−1 |r)dθ k−1 ,
(7.13)
the only quantity we need to determine is f (θ k |θ k−1 , r). For each particle p = [1, 2, · · · , P ],
1. Divide all anchors into three groups. The first group G1 (p) consists of the LOS
links, that is rm − r̂m (p) ≤ 3σm . The second group G2 (p) consists of the NLOS
links, that is rm − r̂m (p) > 3σm . The third group G3 (p) consists of the error links,
that is rm − r̂m (p) < −3σm . Let M1 (p), M2 (p), and M3 (p) denote the size of G1 (p),
G2 (p), and G3 (p), respectively. Thus M1 (p) + M2 (p) + M3 (p) = M .
2. If M1 (p) + M2 (p) = M , e.g., M3 (p) = 0, then particle p is in the feasible solution
area.
3. M3 (p) > 0 means that particle p is not in the feasible solution area. Thus, its
positions needs to be updated, so that it will approach the feasible solution area.
For example, Figure 7.14 shows particle p (tk−1 (p)) and anchor v m , while v m
belongs to G3 (p). In this case, tk−1 (p) should be moved to tk (p), so that v m will
be in G1 (p) or G2 (p). For the 3-dimensional case, tk (p) = [xk (p), yk (p), zk (p)]T , we
have
xk−1 (p) − xm
xk (p) − xm
=
,
rm (i)
r̂m (p)
(7.14)
151
or
xk (p) = xm +
rm (i)
(xk−1 (p) − xm ).
r̂m (p)
(7.15)
Similarly, we can obtain yk (p) and zk (p).
vm
r̂m (p)
rm
tk (p)
tk−1 (p)
Figure 7.14: PFPE: Illustration of particle updating process.
After convergence, most particles will be in the feasible solution area. If the anchors in
G1 (p), ∀p, are identical, these anchors can be used to estimate the final position. On
the other hand, if the anchors in G1 for each particle are different, then each particle
represents a possible solution. Let PL be the probability that the link is LOS; thus
PN = 1 − PL will be the probability that the link is NLOS. It is reasonable to assume
that PL PN . Thus, for any two particles (p1 , p2 ) in the feasible solution area, if
M1 (p1 ) > M1 (p2 ), then we have
M1 (p1 )
PL
M2 (p1 )
PN
M1 (p2 )
> PL
M2 (p2 )
PN
.
(7.16)
Thus, the particle with largest M1 (p) can be used to detect the NLOS links and estimate
the final position.
It is easy to see that the proposed method only needs to calculate r̂ m (p) and update
the particle position with Eq. (7.15), which does not need any matrix operations and is
very easy to implement. Another advantage is that it is very easy to extend by adding
152
more particles to the system, since each particle works independently from the others.
7.2.2 Outlier Probability
The total number of links M can be written as M = ML + MN , where ML and MN are
the number of LOS and NLOS links, respectively. For the range measurement errors, the
AWGN is much smaller than the NLOS offset. Thus, it is reasonable to assume that after
convergence, some particle p1 will have M1 (p1 ) = ML . To reach an outlier as the final
estimate, there should exist some particle p2 , which satisfies M1 (p2 ) ≥ ML and include at
least one NLOS link in G1 (p2 ), e.g., v m . For particle p2 , all anchors in G1 (p2 ) are ‘LOS’
links. Thus, besides v m , if we pick another L − 1 anchors from G1 (p2 ), their residue
will satisfy RS ≤ RS , where RS is a predefined threshold. Define P2 = P (RSN ≤ RS ),
where RSN is the residues from the subset with at least one NLOS range measurement.
If we replace one anchor from the L − 1 selected anchors with the one remained in G1 (p2 )
and recalculate the residue, it should still satisfy RS ≤ RS . Thus, the probability that
the size of G1 (p2 ) is M1 (p2 ), given v m is included in G1 (p2 ) can be written as
P (M1 (p2 )|v m ) =
M −1
M (p )−L+1
P2 1 2
.
M1 (p2 ) − 1
(7.17)
So the probability of reaching the outlier as the final estimate is
P (M1 (p2 ) ≥ ML ) ≤ MN
M X
M −1
P2k−L+1 .
k−1
(7.18)
k=ML
The probabilities of reaching an outlier with the LMedS, ILMedS and the proposed
methods are shown in Figure 7.15. When the number of NLOS links does not exceed
50% of the total number of links, the proposed method is orders of magnitude smaller
than the LMedS method. Also, the outlier probability of the proposed method is a upper
bound; the actual value should be much smaller.
7.2.3 Computational Complexity
If the NLLS method (with the SMACOF method to provide the initial position) is used
for each subgroup, the ILMedS method needs 326LK multiplications to weight all the
153
0
10
−5
10
LMedS
−10
P(outlier)
10
−15
PFPE
10
−20
10
−25
P2=0.005
ILMedS
10
P2=0.01
P2=0.02
−30
10
1
1.5
2
2.5
3
NLOS links number
3.5
4
Figure 7.15: PFPE: Probability of reaching an outlier as the final position estimate with
the LMedS, ILMedS, and PFPE methods, where (M = 8 and L = 3).
anchors, where L is the size of each subset, and K =
M
L
. If the same NLLS method
is used for the final estimation, it requires about 326LK + 321M multiplications. The
computational complexity of the ILMedS method is roughly proportional to M L .
For the proposed method, each particle needs 4M multiplications to divide all the
anchors into three groups. It also needs additional 4M multiplications to move the
particle to the new position if the particle is not in the feasible solution area. If the
NLLS method is used for the final estimation, for P particles with I iterations, it needs
8M P I + 321M multiplications in total.
Figure 7.16 compares the computational complexity of the ILMedS and the proposed
methods. It is observed that the computational complexity of the proposed method is
much lower than the ILMedS method, especially when M is large.
7.2.4 Simulation
The same system layout illustrated in Figure 7.5 is adopted here: 8 anchors are uniformly
√
placed on a circle with a radius of 2 and a total of 25 targets are placed on the grid
154
8
10
7
Number of multiplications
10
ILMedS L=3
ILMedS L=4
ILMedS L=5
Proposed P=100, I=5
Proposed P=100, I=8
Proposed P=100, I=10
6
10
5
10
4
10
8
10
12
14
16
Number of anchors
18
20
Figure 7.16: PFPE: Comparison of the computational complexity of the ILMedS and
PFPE methods.
{x, y} = {0, ±0.3, ±0.6}. The total number of range measurements is set to be N = 50
and the particle size is chosen to be P = 100. The maximum number of iteration is set
to be 100. Once a particle p is located in the feasible solution area and M1 (p) > 3, the
iteration will stop. For all the following simulations, the average number of iteration (I)
is around 5.08. For both the LMedS and ILMedS method, the subset size L is chosen to
be 3. From Figure 7.16, it is observed that the proposed method requires about 60% of
the number of multiplications required by the ILMedS method.
7.2.4.1 Type I error
The performances of NLLS, Wang’s method [63], LMedS, ILMedS and the proposed
method under different noise levels are shown in Figure 7.17. The position error is
√
defined as Position Error = MSE. All methods work well in this case.
155
−1
10
Position Error
NLLS
Wang
LMedS
ILMedS
PFPE
−2
10
−3
10
1
1.5
2
2.5
3
σ (%)
3.5
4
4.5
5
Figure 7.17: PFPE: Performance comparison of five methods: NLLS, Wang’s method,
LMedS, ILMedS, and PFPE methods (Type I error).
7.2.4.2 Type II error
Figure 7.18 compares the performances of NLLS, Wang’s method, LMedS, ILMedS and
the proposed method when one anchor-target link suffers from this type of error. All
algorithms still work well for this case.
Figure 7.19 shows the performances of the above five algorithms for an extreme
case−when the range measurements for all links between the anchors and the target
suffer from Type II errors. In this case, the NLLS scheme works best, but the proposed
PFPE method still performs slightly better than the LMedS and ILMedS schemes.
7.2.4.3 Type III error
Figs. 7.20, 7.21, and 7.22 show the performances of the various methods for cases of
NLOS offset equaling 10%, 50%, and 100% of the true distance, respectively. With Type
III range measurement errors, NLLS does not work since it does not have any mechanism
to deal with NLOS effects. In all the cases, the performance of the proposed method is
very close to that of the ILMedS method and is significantly better than all the others.
156
σ (1%)
−1
Position Error
10
NLLS
Wang
LMedS
ILMedS
PFPE
−2
10
−3
10
1
1.5
2
2.5
3
3.5
NLOS offset (%)
4
4.5
5
Figure 7.18: PFPE: Performance comparison of five methods: NLLS, Wang’s method,
LMedS, ILMedS, and PFPE methods (Type II error, 1 NLOS link).
σ (1%)
−1
Position Error
10
NLLS
Wang
LMedS
ILMedS
PFPE
−2
10
−3
10
1
1.5
2
2.5
3
3.5
NLOS offset (%)
4
4.5
5
Figure 7.19: PFPE: Performance comparison of five methods: NLLS, Wang’s method,
LMedS, ILMedS, and PFPE methods (Type II error, 8 NLOS link).
157
σ (1%), NLOS offset (10%)
−1
10
Position Error
NLLS
Wang
LMedS
ILMedS
PFPE
−2
10
−3
10
1
1.5
2
2.5
3
NLOS links number
3.5
4
Figure 7.20: PFPE: Performance comparison of NLLS, Wang’s method, LMedS, ILMedS,
and PFPE methods (Type III error, NLOS offset 10%).
σ (1%), NLOS offset (50%)
0
10
NLLS
Wang
LMedS
ILMedS
PFPE
−1
Position Error
10
−2
10
−3
10
1
1.5
2
2.5
3
NLOS links number
3.5
4
Figure 7.21: PFPE: Performance comparison of NLLS, Wang’s method, LMedS, ILMedS,
and PFPE methods (Type III error, NLOS offset 50%).
158
σ (1%), NLOS offset (100%)
0
10
NLLS
Wang
LMedS
ILMedS
PFPE
−1
Position Error
10
−2
10
−3
10
1
1.5
2
2.5
3
NLOS links number
3.5
4
Figure 7.22: PFPE: Performance comparison of NLLS, Wang’s method, LMedS, ILMedS,
and PFPE methods (Type III error, NLOS offset 100%).
7.3 Conclusion
In this chapter, NLOS identification and mitigation methods are presented and analyzed.
The ILMedS method is proposed. The key advantage of this scheme over the conventional
LMedS method is that it maximizes the number of reliable range measurements to be
used in position estimation in an adaptive manner. Consequently, the proposed ILMedS
algorithm achieves a higher estimation accuracy for both LOS and NLOS cases. In
addition, it significantly decreases the probability of reaching an outlier position estimate.
Then, the PFPE method for NLOS mitigation is proposed. It uses particles to find the
feasible solution area, which does not need any a priori information and is much simpler
to implement than the LMedS and ILMedS methods. When the majority of the links
are LOS, it can efficiently find the feasible solution and greatly improve the estimation
accuracy.
159
Chapter 8: Conclusion and Future Work
8.1 Conclusion
This dissertation focuses on developing new algorithms for indoor position estimation to
improve the performance and to reduce the computational complexity.
First, the signal model of TOA and TDOA systems is developed. The CRLB is also
provided for both systems, which can be used as the performance benchmark for all the
estimation algorithms.
Second, the ICALM is proposed for fast anchor layout deployment. Different from
the traditional CRLB based methods, it does not require brute-force searching and is
very easy to implement.
Third, we develop the IMOM method for TOA systems, which is based on choosing
the optimal reference anchor. Compared to the conventional MOM method, it greatly
improves the performance at the expense of a slightly increased computational complexity.
Fourth, we develop a robust coarse position estimation method based on the SMACOF algorithm for TDOA systems, which does not require additional anchor. Its performance is much better than the MOM method and it is much more stable than the
NLLS method. Since its convergence speed is slower than the NLLS method, it can be
applied to provide a coarse position estimate, for example, for NLLS, after running only
a few iterations.
Fifth, we develop the NLEM method for both TOA and TDOA systems. It transforms the high dimensional estimation problem into several 1-D problems and eliminates
all the matrix operations. Thus, its computational complexity is much lower than the
NLLS and SMACOF methods, while their performances are similar, all approaching the
CRLB.
Sixth, the ILMedS method is proposed to mitigate the NLOS effect. It uses residue to
weight all the anchors and then adaptively searches for the largest group of reliable links.
It greatly decreases the probability of reaching an outlier and improves the performance.
160
Finally, since the LMedS and ILMedS methods need to calculate the estimate for
each subset of the anchors, their computation complexity is very high. We propose the
PFPE method, which uses particles to represent the potential target. It is much simpler
than the ILMedS method, while their performances are similar.
8.2 Future Work
Two areas of work are worth further studies: a) Combining position estimation with
target tracking, and b) localization, tracking, and optimization of multiple targets.
161
Bibliography
[1] M. G. D. Benedetto, T. Kaiser, A. F. Molisch, I. Oppermann, C. Politano, and
D. Porcino, Eds., UWB Communication Systems: A Comprehensive Overview. New
York, NY: Hindawi, 2006.
[2] Z. Sahinoglu, S. Gezici, and I. Guvenc, Ultra-Wideband Positioning Systems: Theoretical Limits, Ranging Algorithms, and Protocols. Cambridge, UK: Cambridge
University Press, 2008.
[3] M. Win, A. Conti, S. Mazuelas, Y. Shen, W. Gifford, D. Dardari, and M. Chiani, “Network localization and navigation via cooperation,” IEEE Commun. Mag.,
vol. 49, no. 5, pp. 56–62, May 2011.
[4] A. Sayed, A. Tarighat, and N. Khajehnouri, “Network-based wireless location: challenges faced in developing techniques for accurate wireless location information,”
IEEE Softw., vol. 22, no. 4, pp. 24–40, Jul. 2005.
[5] I. Guvenc and C.-C. Chong, “A survey on TOA based wireless localization and
NLOS mitigation techniques,” IEEE Commun. Surveys Tuts., vol. 11, pp. 107–124,
3rd Quarter 2009.
[6] S. Gezici, Z. Tian, G. Giannakis, H. Kobayashi, A. Molisch, H. Poor, and
Z. Sahinoglu, “Localization via ultra-wideband radios: a look at positioning aspects for future sensor networks,” IEEE Signal Process. Mag., vol. 22, no. 4, pp.
70–84, 2005.
[7] S. Gezici, “A survey on wireless position estimation,” Wireless Personal Communications, vol. 44, no. 3, pp. 263–282, Feb. 2008.
[8] S. Capkun, M. Hamdi, and J.-P. Hubaux, “GPS-free positioning in mobile ad hoc
networks,” vol. 5, no. 2. Hingham, MA, USA: Kluwer Academic Publishers, Apr.
2002, pp. 157–167. [Online]. Available: http://dx.doi.org/10.1023/A:1013933626682
[9] Y. Koren, “The bellkor solution to the netflix grand prize,” 2009.
[10] G. Linden, B. Smith, and J. York, “Amazon.com recommendations: item-to-item
collaborative filtering,” IEEE Internet Comput., vol. 7, no. 1, pp. 76–80, Jan. 2003.
162
[11] K. W., J. Lee, and G. Jee, “The interior-point method for an optimal treatment
of bias in trilateration location,” IEEE Trans. Veh. Technol., vol. 55, no. 4, pp.
1291–1301, Jul. 2006.
[12] T. F. Wiig, “Assessment of indoor positioning system (IPS) technology,” Master’s
thesis, University of Oslo, Norway, 2010.
[13] J. J. Caffery, Wireless Location in CDMA Cellular Radio Systems.
Norwell, 2000.
MA: Kluwer:
[14] A. Bekkelien, “Bluetooth indoor positioning,” Master’s thesis, University of Geneva,
Switzerland, 2012.
[15] J. Y. Lee and R. Scholtz, “Ranging in a dense multipath environment using an
UWB radio link,” IEEE J. Sel. Areas Commun., vol. 20, no. 9, pp. 1677–1683, Dec.
2002.
[16] M. Hussain, “Ultra-wideband impulse radar-an overview of the principles,” IEEE
Aerosp. Electron. Syst. Mag., vol. 13, no. 9, pp. 9–14, 1998.
[17] Y. Shimizu and Y. Sanada, “Accuracy of relative distance measurement with ultra
wideband system,” in Proc. IEEE UWBST’03, 2003, pp. 374–378.
[18] R. Fleming, C. Kushner, G. Roberts, and U. Nandiwada, “Rapid acquisition for
ultra-wideband localizers,” in Proc. IEEE UWBST’02, 2002, pp. 245–249.
[19] J. Chen, K. Yao, and R. Hudson, “Source localization and beamforming,” IEEE
Signal Process. Mag., vol. 19, no. 2, pp. 30–39, Mar. 2002.
[20] K. Bekris, A. Argyros, and E. Kavraki, “Angle-based methods for mobile robot
navigation: reaching the entire plane,” in Proc. ICRA’04, vol. 3, April 2004, pp.
2373–2378 Vol.3.
[21] D. Niculescu and B. Nath, “Ad hoc positioning system (aps) using AOA,” in Proc.
INFOCOM’03, vol. 3, Mar. 2003, pp. 1734–1743 vol.3.
[22] J. Friedman, Z. Charbiwala, T. Schmid, Y. Cho, and M. Srivastava, “Angle-ofarrival assisted radio interferometry (ARI) target localization,” in Proc. IEEE MILCOM’08, Nov. 2008, pp. 1–7.
[23] C. Falsi, D. Dardari, L. Mucchi, and M. Z. Win, “Time of arrival estimation for
UWB localizers in realistic environments,” EURASIP J. Advances in Signal Process., vol. 2006, pp. 1–13, Apr. 2006.
163
[24] J. Shen, A. Molisch, and J. Salmi, “Accurate passive location estimation using TOA
measurements,” IEEE Trans. Wireless Commun., vol. 11, no. 6, pp. 2182–2192, Jun.
2012.
[25] Y. Shen and M. Win, “On the accuracy of localization systems using wideband
antenna arrays,” IEEE Trans. Commun., vol. 58, no. 1, pp. 270–280, Jan. 2010.
[26] Y. Qi and H. Kobayashi, “On relation among time delay and signal strength based
geolocation methods,” in Proc. IEEE GLOBECOM’03, vol. 7, Dec. 2003, pp. 4079–
4083.
[27] R. Ye, S. Redfield, and H. Liu, “High-precision indoor UWB localization: Technical
challenges and method,” in Proc. IEEE ICUWB’10, vol. 2, 2010, pp. 1–4.
[28] R. Ye and H. Liu, “Ultra-wideband localization with collocated receivers,” in Proc.
IEEE ICUWB’11, 2011, pp. 155–159.
[29] Z. N. Low, J. H. Cheong, C. Law, W. T. Ng, and Y. J. Lee, “Pulse detection algorithm for line-of-sight (LOS) UWB ranging applications,” IEEE Antennas Wireless
Propag. Lett., vol. 4, pp. 63–67, 2005.
[30] K. Mizugaki, R. Ujiwara, T. Nakagawa, G. Ono, T. Norimatsu, T. Terada,
M. Miyazaki, Y. Ogata, A. Maeki, S. Kobayashi, N. Koshizuka, and K. Sakamura,
“Accurate wireless location/communication system with 22-cm error using UWBIR,” in Proc. IEEE RWS’07, Jan. 2007, pp. 455–458.
[31] B. Fang, “Simple solutions for hyperbolic and related position fixes,” IEEE Trans.
Aerosp. Electron. Syst., vol. 26, no. 5, pp. 748–753, 1990.
[32] J. Schroeder, S. Galler, K. Kyamakya, and K. Jobmann, “Practical considerations
of optimal three-dimensional indoor localization,” in Proc. MFI’06, Sep. 2006, pp.
439–443.
[33] R. Ye and H. Liu, “UWB TDOA localization system: Receiver configuration analysis,” in Proc. IEEE ISSSE’10, vol. 1, 2010, pp. 1–4.
[34] M. Gholami, S. Gezici, and E. Strom, “A concave-convex procedure for TDOA
based positioning,” IEEE Commun. Lett., vol. 17, no. 4, pp. 765–768, 2013.
[35] B. Alavi and K. Pahlavan, “Modeling of the TOA-based distance measurement error
using UWB indoor radio measurements,” IEEE Commun. Lett., vol. 10, no. 4, pp.
275–277, Apr. 2006.
[36] R. Yarlagadda, I. Ali, N. Al-Dhahir, and J. Hershey, “GPS GDOP metric,” IEE
Proceedings - Radar, Sonar and Navigation, vol. 147, no. 5, pp. 259–264, Oct. 2000.
164
[37] D. Jourdan, D. Dardari, and M. Win, “Position error bound for UWB localization in
dense cluttered environments,” IEEE Trans. Aerosp. Electron. Syst., vol. 44, no. 2,
pp. 613–628, Apr. 2008.
[38] B. Yang and J. Scheuing, “Cramer-rao bound and optimum sensor array for source
localization from time differences of arrival,” in Proc. ICASSP’05, vol. 4, Mar. 2005,
pp. 961–964.
[39] ——, “A theoretical analysis of 2d sensor arrays for TDOA based localization,” in
Proc. ICASSP’06, vol. 4, May 2006, pp. IV–IV.
[40] B. Yang, “Different sensor placement strategies for TDOA based localization,” in
Proc. ICASSP’07, vol. 2, Apr. 2007, pp. II–1093–II–1096.
[41] K. Ho and L. Vicente, “Sensor allocation for source localization with decoupled
range and bearing estimation,” IEEE Trans. Signal Process., vol. 56, no. 12, pp.
5773–5789, Dec. 2008.
[42] Y. T. Chan, H. Yau Chin Hang, and P. chung Ching, “Exact and approximate
maximum likelihood localization algorithms,” IEEE Trans. Veh. Technol., vol. 55,
no. 1, pp. 10–16, Jan. 2006.
[43] K. Cheung, H. So, W.-K. Ma, and Y. Chan, “Least squares algorithms for timeof-arrival-based mobile location,” IEEE Trans. Signal Process., vol. 52, no. 4, pp.
1121–1130, Apr. 2004.
[44] H. Xu and Y. Wang, “A linear algorithm based on TDOA technique for UWB
localization,” in Proc. ICEICE’11, 2011, pp. 1013–1015.
[45] S. Colonnese, S. Rinauro, and G. Scarano, “Generalized method of moments estimation of location parameters: Application to blind phase acquisition,” IEEE Trans.
Signal Process., vol. 58, no. 9, pp. 4735–4749, Sep. 2010.
[46] Y. Chan and K. Ho, “A simple and efficient estimator for hyperbolic location,”
IEEE Trans. Signal Process., vol. 42, no. 8, pp. 1905–1915, 1994.
[47] H. Schau and A. Robinson, “Passive source localization employing intersecting
spherical surfaces from time-of-arrival differences,” IEEE Trans. Acoust., Speech,
Signal Process., vol. 35, no. 8, pp. 1223–1225, 1987.
[48] J. Smith and J. Abel, “Closed-form least-squares source location estimation from
range-difference measurements,” IEEE Trans. Acoust., Speech, Signal Process.,
vol. 35, no. 12, pp. 1661–1669, 1987.
165
[49] W. Foy, “Position-location solutions by taylor-series estimation,” IEEE Trans.
Aerosp. Electron. Syst., vol. AES-12, no. 2, pp. 187–194, 1976.
[50] T. Qiao and H. Liu, “An improved method of moments estimator for TOA based
localization,” IEEE Commun. Lett., vol. 17, no. 7, pp. 1321–1324, 2013.
[51] N. M. Laird, A. P. Dempster, and D. B. Rubin, “Maximum likelihood from incomplete data via the EM algorithm,” Journal of the Royal Statistical Society, vol. 39,
no. 1, pp. 1–38, Dec. 1977.
[52] T. Qiao, S. Redfield, A. Abbasi, Z. Su, and H. Liu, “Robust coarse position estimation for TDOA localization,” IEEE Wireless Commun. Lett, vol. PP, no. 99, pp.
1–4, 2013.
[53] J. de Leeuw, “Applications of convex analysis to multidimensional scaling,” in Recent Developments in Statistics, J. Barra, F. Brodeau, G. Romier, and B. V. Cutsem,
Eds. Amsterdam: North Holland Publishing Company, 1977, pp. 133–146.
[54] ——, “Convergence of the majorization method for multidimensional scaling,”
Journal of Classification, vol. 5, no. 2, pp. 163–180, Sep. 1988. [Online]. Available:
http://ideas.repec.org/a/spr/jclass/v5y1988i2p163-180.html
[55] J. de Leeuw and P. Mair, “Multidimensional scaling using majorization: SMACOF
in R,” Journal of Statistical Software, vol. 31, no. 3, pp. 1–30, 8 2009. [Online].
Available: http://www.jstatsoft.org/v31/i03
[56] P. Groenen and W. Heiser, “The tunneling method for global optimization
in multidimensional scaling,” Psychometrika, vol. 61, pp. 529–550, 1996,
10.1007/BF02294553. [Online]. Available: http://dx.doi.org/10.1007/BF02294553
[57] P. Groenen and M. v. d. Velden, “Multidimensional scaling,” Erasmus School of
Economics (ESE), Tech. Rep., May 2004.
[58] N. Decarli, D. Dardari, S. Gezici, and A. A. D’Amico, “LOS/NLOS detection
for UWB signals: A comparative study using experimental data,” in Proc. IEEE
ISWPC’10, May 2010, pp. 169–173.
[59] C. K. Seow and S. Y. Tan, “Non-line-of-sight localization in multipath environments,” IEEE Trans. Mobile Comput., vol. 7, no. 5, pp. 647–660, 2008.
[60] R. Casas, A. Marco, J. Guerrero, and Falco, “Robust estimator for non-line-ofsight error mitigation in indoor localization,” EURASIP Journal on Applied Signal
Processing, pp. 1–8, 2006.
166
[61] A. Marco, R. Casas, A. Asensio, V. Coarasa, R. Blasco, and A. Ibarz, “Least median
of squares for non-line-of-sight error mitigation in gsm localization,” in Proc. IEEE
PIMRC’08, 2008, pp. 1–5.
[62] S. Nawaz and N. Trigoni, “Convex programming based robust localization in NLOS
prone cluttered environments,” in Proc. IPSN’11, 2011, pp. 318–329.
[63] X. Wang, Z. Wang, and B. O’Dea, “A TOA-based location algorithm reducing the
errors due to non-line-of-sight (NLOS) propagation,” IEEE Trans. Veh. Technol.,
vol. 52, no. 1, pp. 112–116, 2003.
[64] W. Wei, X. J. Yu, and Z. Z. liang, “A new NLOS error mitigation algorithm in
location estimation,” IEEE Trans. Veh. Technol., vol. 54, no. 6, pp. 2048–2053,
Nov. 2005.
[65] S. S. Woo, H. R. You, and J. S. Koh, “The NLOS mitigation technique for position
location using IS-95 CDMA networks,” in Proc. IEEE VTS’00, vol. 6, no. 52nd,
Fall 2000, pp. 2556–2560.
[66] B. L. Le, K. Ahmed, and H. Tsuji, “Mobile location estimator with NLOS mitigation
using kalman filtering,” in Proc. IEEE WCNC’03, vol. 3, Mar. 2003, pp. 1969–1973.
[67] J. F. Liao and B. S. Chen, “Robust mobile location estimator with NLOS mitigation using interacting multiple model algorithm,” IEEE Trans. Wireless Commun.,
vol. 5, no. 11, pp. 3002–3006, Nov. 2006.
[68] C. Rohrig and M. Muller, “Indoor location tracking in non-line-of-sight environments using a IEEE 802.15.4a wireless network,” in Proc. IEEE RSJ’09, 2009, pp.
552–557.
[69] S. Marano, W. Gifford, H. Wymeersch, and M. Win, “NLOS identification and
mitigation for localization based on UWB experimental data,” IEEE J. Sel. Areas
Commun., vol. 28, no. 7, pp. 1026–1035, 2010.
[70] S. Venkatesh and R. Buehrer, “NLOS mitigation using linear programming in ultrawideband location-aware networks,” IEEE Trans. Veh. Technol., vol. 56, no. 5,
pp. 3182–3198, Sep. 2007.
[71] S. Wu, Y. Ma, Q. Zhang, and N. Zhang, “NLOS error mitigation for UWB ranging
in dense multipath environments,” in Proc. IEEE WCNC’07, 2007, pp. 1565–1570.
[72] S. Al-Jazzar and J. Caffery, “Nlos mitigation method for urban environments,” in
Proc. IEEE VTC’04, vol. 7, 2004, pp. 5112–5115 Vol. 7.
167
[73] M. Tuchler and A. Huber, “An improved algorithm for UWB-bases positioning in
a multi-path environment,” in Proc. IZS’06, 2006, pp. 206–209.
[74] M. Wylie and J. Holtzman, “The non-line of sight problem in mobile location estimation,” in Proc. IEEE UPC’96, vol. 2, Sep. 1996, pp. 827–831.
[75] S. Venkatraman, J. Caffery, and H.-R. You, “Location using LOS range estimation
in NLOS environments,” in Proc. IEEE VTC’02, vol. 2, 2002, pp. 856–860 vol.2.
[76] W.-Y. Chiu and B.-S. Chen, “Mobile positioning problem in manhattan-like urban
areas: Uniqueness of solution, optimal deployment of bss, and fuzzy implementation,” IEEE Trans. Signal Process., vol. 57, no. 12, pp. 4918–4929, Dec. 2009.
[77] T. Qiao and H. Liu, “Improved least median of squares localization for non-line-ofsight mitigation,” IEEE Commun. Lett., vol. 18, no. 8, pp. 1451–1454, Aug. 2014.
[78] S. M. Kay, Fundamentals of Statistical Processing, Volume I: Estimation Theory.
Englewood Cliffs, NJ: Prentice Hall, 1993.
[79] K. B. Petersen and M. S. Pedersen, “The matrix cookbook,” Nov. 2012, version
20121115. [Online]. Available: http://www2.imm.dtu.dk/pubdb/p.php?3274
[80] J. Steele, The Cauchy-Schwarz Master Class: An Introduction to the Art of Mathematical Inequalities. Cambridge, UK: Cambridge University Press, 2004.
[81] J. A. Costa, N. Patwari, and A. O. H. III, “Distributed weighted-multidimensional
scaling for node localization in sensor networks,” ACM Transaction on Sensor Networks, vol. 2, pp. 39–64, 2005.
[82] P. Oguz-Ekim, J. Gomes, J. Xavier, and P. Oliveira, “Robust localization of nodes
and time-recursive tracking in sensor networks using noisy range measurements,”
IEEE Trans. Signal Process., vol. 59, no. 8, pp. 3930–3942, 2011.
[83] M. Feder and E. Weinstein, “Optimal multiple source location estimation via the
EM algorithm,” in Proc. IEEE ICASSP’85, vol. 10, Apr. 1985, pp. 1762–1765.
[84] ——, “Parameter estimation of superimposed signals using the EM algorithm,”
IEEE Trans. Acoust., Speech, Signal Process., vol. 36, no. 4, pp. 477–489, Apr.
1988.
[85] L. Lu, H.-C. Wu, K. Yan, and S. Iyengar, “Robust expectation-maximization algorithm for multiple wideband acoustic source localization in the presence of nonuniform noise variances,” IEEE Sensors J., vol. 11, no. 3, pp. 536–544, 2011.
168
[86] T. M. Cover and J. A. Thomas, Elements of Information Theory. New York, NY,
USA: Wiley-Interscience, 1991.
[87] M. Taboga, Lectures on Probability Theory and Mathematical Statistics. CreateSpace Independent Publishing Platform, 2012.
[88] Z. Su, J. Huschle, S. Redfield, T. Qiao, F. Liu, and H. Liu, “High-speed realtime multi-channel data-acquisition unit: Challenges and results,” in Proc. IEEE
CCNC’14, Jan. 2014.
[89] M. Arulampalam, S. Maskell, N. Gordon, and T. Clapp, “A tutorial on particle
filters for online nonlinear/non-Gaussian Bayesian tracking,” IEEE Trans. Signal
Process., vol. 50, no. 2, pp. 174–188, Feb. 2002.
[90] O. Cappe, S. Godsill, and E. Moulines, “An overview of existing methods and recent
advances in sequential Monte Carlo,” Proc. IEEE, vol. 95, no. 5, pp. 899–924, May
2007.
[91] D. Crisan and A. Doucet, “A survey of convergence results on particle filtering
methods for practitioners,” IEEE Trans. Signal Process., vol. 50, no. 3, pp. 736–
746, Mar. 2002.