290 likes | 466 Views
Location Discovery – Part II Lecture 5 September 16, 2004 EENG 460a / CPSC 436 / ENAS 960 Networked Embedded Systems & Sensor Networks. Andreas Savvides andreas.savvides@yale.edu Office: AKW 212 Tel 432-1275 Course Website http://www.eng.yale.edu/enalab/courses/eeng460a. Today.
E N D
Location Discovery – Part IILecture 5 September 16, 2004EENG 460a / CPSC 436 / ENAS 960 Networked Embedded Systems &Sensor Networks Andreas Savvides andreas.savvides@yale.edu Office: AKW 212 Tel 432-1275 Course Website http://www.eng.yale.edu/enalab/courses/eeng460a
Today • Presentation topics scheduling • Stop by Ed Jackson’s office so that he can swipe your ID for the lab • Internal website access • Project and presentation discussions • Any issues with graduate student registrations? • Today’s discussion topics • Quick recap from last time • GDOP – Angles matter • Conditions for position uniqueness (another presentation on this later) • Improved MDS Localization Material for this lecture from: [Shang04] Y. Shang, W. Ruml, Improved MDS Localization, Proceedings of Infocom 2004 [Savvides04b] A. Savvides, W, Garber, R. L. Moses and M. B. Srivastava, An Analysis of Error Inducing Parameters in Multihop Sensor Node Localization, to appear in the IEEE Transcations on Mobile Computing
Taxonomy of Localization Mechanisms • Active Localization • System sends signals to localize target • Cooperative Localization • The target cooperates with the system • Passive Localization • System deduces location from observation of signals that are “already present” • Blind Localization • System deduces location of target without a priori knowledge of its characteristics
Active Mechanisms Target Synchronization channel Ranging channel • Non-cooperative • System emits signal, deduces target location from distortions in signal returns • e.g. radar and reflective sonar systems • Cooperative Target • Target emits a signal with known characteristics; system deduces location by detecting signal • e.g. ORL Active Bat, GALORE Panel, AHLoS, MIT Cricket • Cooperative Infrastructure • Elements of infrastructure emit signals; target deduces location from detection of signals • e.g. GPS, MIT Cricket
Passive Mechanisms Target Synchronization channel Ranging channel ? • Passive Target Localization • Signals normally emitted by the target are detected (e.g. birdcall) • Several nodes detect candidate events and cooperate to localize it by cross-correlation • Passive Self-Localization • A single node estimates distance to a set of beacons (e.g. 802.11 bases in RADAR [Bahl et al.], Ricochet in Bulusu et al.) • Blind Localization • Passive localization without a priori knowledge of target characteristics • Acoustic “blind beamforming” (Yao et al.)
Active vs. Passive • Active techniques tend to work best • Signal is well characterized, can be engineered for noise and interference rejection • Cooperative systems can synchronize with the target to enable accurate time-of-flight estimation • Passive techniques • Detection quality depends on characterization of signal • Time difference of arrivals only; must surround target with sensors or sensor clusters • TDOA requires precise knowledge of sensor positions • Blind techniques • Cross-correlation only; may increase communication cost • Tends to detect “loudest” event.. May not be noise immune
Measurement Technologies • Ultrasonic time-of-flight • Common frequencies 25 – 40KHz, range few meters (or tens of meters), avg. case accuracy ~ 2-5 cm, lobe-shaped beam angle in most of the cases • Wide-band ultrasonic transducers also available, mostly in prototype phases • Acoustic ToF • Range – tens of meters, accuracy =10cm • RF Time-of-flight • Ubinet UWB claims = ~ 6 inches • Acoustic angle of arrival • Average accuracy = ~ 5 degrees (e.g acoustic beamformer, MIT Cricket) • Received Signal Strength Indicator • Motes: Accuracy 2-3 m, Range = ~ 10m • 802.11: Accuracy = ~30m • Laser Time-of-Flight Range Measurement • Range =~ 200, accuracy =~ 2cm very directional • RFIDs and Infrared Sensors – many different technologies • Mostly used as a proximity metric
Possible Implementations/ Computation Models Computing Nodes • Centralized • Only one node computes 2. Locally Centralized Some of unknown nodes compute 3. (Fully) Distributed Every unknown node computes • Each approach may be appropriate for a different application • Centralized approaches require routing and leader election • Fully distributed approach does not have this requirement
Different Problem Setups & Algorithms • Absolute vs. relative frame of reference • Beacons or no beacons • Infrastructure vs. ad-hoc • Single hop vs. multihop • Many candidate approaches and solution methods (depending on problem setup, measurement technology and computation resources) • Least-squares optimization • Approaches based on radio connectivity • Learning based approaches • Semi definite programming approaches • Both measurement based and connectivity based • Vision based algorithms
Obtaining a Coordinate System from Distance Measurements: Introduction to MDS • MDS maps objects from a high-dimensional space to a • low-dimensional space, • while preserving distances between objects. • similarity between objectscoordinates of points • Classical metric MDS: • The simplest MDS: the proximities are treated as distances in an Euclidean space • Optimality: LSE sense. Exact reconstruction if the proximity data are from an Euclidean space • Efficiency: singular value decomposition, O(n3)
Applying Classical MDS • Create a proximity matrix of distances D • Convert into a double-centered matrix B • Take the Singular Value Decomposition of B • Compute the coordinate matrix X (2D coordinates will be in the first 2 columns) NxN matrix of 1s NxN identity matrix NxN matrix of 1s
Example: Localization Using Multidimensional Scaling (MDS) (Yi Shang et. al) • The basic MDS-MAP algorithm: • Compute shortest paths between all pairs of nodes. • Apply classical MDS and use its result to construct a relative map. • Given sufficient anchor nodes, transform the relative map to an absolute map.
MDS-MAP ALGORITHM • Compute all-pair shortest paths. O(n3) • Assigning values to the edges in the connectivity graph: • Known connectivity only: all edges have value 1 (or R/2) • Known neighbor distances: the edges have the distance values • Apply classical MDS and use its result to construct a 2-D (or 3-D) relative map. O(n3) • Given sufficient anchor nodes, convert the relative map to an absolute map via a linear transformation. O(n+m3) • Compute the LSE transformation based on the positions of anchors. • O(m3),m is the number of anchors • Apply the transformation to the other unknown nodes. O(n)
MDS-MAP (P) – The Distributed Version • Set-up the range for local maps Rlm (# of hops to consider in a map) • Compute maps of individual nodes • Compute shortest paths between all pairs of nodes • Apply MDS • Least-squares refinement • Patch the maps together • Randomly pick a node and build a local map, then merge the neighbors and continue until the whole network is completed • If sufficient anchor nodes are present, transform the relative map to an absolute map • MDS-MAP(P,R) – Same as MDS-MAP(P) followed by a refinement phase
LOCALIZATION USING MDS-MAP (Shang, et al., Mobihoc’03) • The basic MDS-MAP algorithm: • Given connectivity or local distance measurement, compute shortest paths between all pairs of nodes. • Apply multidimentional scaling (MDS) to construct a relative map containing the positions of nodes in a local coordinate system. • Given sufficient anchors (nodes with known positions), e.g, 3 for 2-D or 4 for 3-D networks, transform the relative map and determine the absolute the positions of the nodes. • It works for any n-dimensional networks, e.g., 2-D or 3-D.
MDS-MAP(P) (Shang and Ruml, Infocom’04) • The basic MDS-MAP works well on regularly shaped networks, but not on irregularly shaped networks. • MDS-MAP(P) (or MDS-MAP based on patches of local maps) • For each node, compute a local relative map using MDS • Merge/align local maps to form a big relative map • Refine the relative map based on the relative positions (optional). (When used, referred to as MDS-MAP(P,R) ) • Given sufficient anchors, compute absolute positions • Refinethe positions of individual nodes based on the absolution positions (optional)
SOME IMPLEMENTATION DETAILS OF MDS-MAP(P) • For each node, compute a local relative map using MDS • Size of local maps: fixed or adaptive • Merge/align local maps to form a big relative map • Sequential or distributed; scaling or not • Refine the relative map based on the relative positions • Least squares minimization: what information to use • Given sufficient anchors, compute absolute positions • Anchor selection; centralized or distributed • Refinethe positions of individual nodes based on the absolution positions • Minimizing squared errors or absolute errors
AN EXAMPLE OF C-SHAPE GRID NETWORKS Known 1-hop distances with 5% range error Connectivity information only MDS-MAP(P) without both optional refinement steps.
RANDOM UNIFORMPLACEMENT Connectivity information only Known 1-hop distances with 5% range error 200 nodes; 4 random anchors
RANDOM C-SHAPEPLACEMENT Connectivity information only Known 1-hop distances with 5% range error 160 nodes; 4 random anchors
Understanding Fundamental Behaviors(Savvides04b) What is the fundamental error behavior? Measurement technology perspective • Acoustic vs. RF ToF (2cm – 1.5m measurement accuracy) • Distances vs. Angules Deployment - what density? Scalability How does error propagate? Beacon density & beacon position uncertainty Intrinsic vs. Extrinsic Error Component
Estimated Location Error Decomposition Channel Effects Setup Error Computation Error Induced by intrinsic measurement error Position Error
Cramer Rao Bound Analysis • Cramer-Rao Bound Analysis on carefully controlled scenarios • Classical result from statistics that gives a lower bound on the error covariance matrix of an unbiased estimate • Assuming White Gaussian Measurement Error • Related work • N. Patwari et. al, “Relative Location Estimation in Wireless Sensor Networks”
Density Effects Results from Cramer-Rao Bound Simulations based on White Gaussian Error Range Tangential Error m/rad RMS Location Error RMS Location Error/sigma m/m Range Error Scaling Factor Density (node/m2) 20mm distance measurement certainty == 0.27 angular certainty
Density Effects with Different Ranging Technologies 6 neighbors 12 neighbors RMS Error(m)
Network Scalability Error propagation on a hexagon scenario (angle measurement) Rate of error propagation faster with distance measurements but Much smaller magnitude than angles RMS Location Error x 10 y-coordinate(m) x-coordinate(m)
More Observations on Network Scalability… • Performance degrades gracefully as the number of unknown nodes increases. • Increasing the number of beacon nodes does not make a significant improvement • Error in beacons results in an overall translation of the network • Error due to geometry is the major component in propagated error
Localization Service Middleware Wishful thinking… some of it running on XYZ Node…
Are we done with localization? • Well there is more… • Computation using angles • Mobility and tracking • Probabilistic approaches • More about localization in future lectures • Next time – embedded programming tutorial • Read programming assignment 1 before coming to class!!!