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.