Fine-Grained Localization in Sensor and Ad-Hoc Networks Ph.D. Dissertation Defense David Goldenberg Dissertation Advisor: Y. Richard Yang Committee Members: Jim Aspnes, A. Stephen Morse, Avi Silberschatz, Nitin Vaidya (UIUC) 2 Overview This dissertation provides a theoretical basis for the localization problem, demonstrating conditions for its solvability and defining its computational complexity. We apply our fundamental results on localization to identify conditions under which the problem is efficiently solvable and to develop localization algorithms for a broader class of networks than previous approaches could localize. 3 Collaborators (2003-2006) Brian D.O. Anderson (Australia National University and NICTA) James Aspnes P.N. Belhumeur (Columbia University) Pascal Bihler Ming Cao Tolga Eren Jia Fang Arvind Krishnamurthy Jie (Archer) Lin Wesley Maness A. Stephen Morse Brad Rosen Andreas Savvides Walter Whiteley (York University) Y. Richard Yang Anthony Young 4 Outline Introduction to Localization Conditions for Unique Localization Computational Complexity of Localization Localization in Sparse Networks 5 Why are Locations Important? Wireless ad-hoc networks are an important emerging technology Small, low-cost, low-power, multi-functional sensors will soon be a reality. Accurate locations of individual sensors are useful for many applications Location-aware computing “Sensing data without knowing the sensor location is meaningless.” [IEEE Computer, Vol. 33, 2000] New applications enabled by availability of sensor locations. Resource selection (server, printer, etc.). Location aware information services (web-search, advertisement, etc.). Sensor network applications Inventory management, intruder detection, traffic monitoring, emergency crew coordination, air/water quality monitoring, military/intelligence apps. 6 Example: Great Duck Island Sensor Network Monitoring breeding of Leach’s Storm Petrels without human presence. 15 minute human visit leads to 20% offspring mortality. Sensors need to be small to avoid disrupting bird behavior. 7 Great Duck Island Deployment Goals Occupancy pattern of nests? Environmental changes around the nests over time? Environmental variation across nests? Correlation with breeding success? Single hop weather Single hop burrow Multi hop weather Multi hop burrow Light, temperature, infrared, and humidity sensors installed. Infrared sensors detect presence of birds in nests. Sensor locations critical to interpreting data. Locations determined by manual configuration, but this will not be possible in the general case. 10m 8 Example: ZebraNet Sensor Network Biologists want to track animals to study: Current tracking technology: VHF collar transmitters Wishlist: Interactions between individuals. Interactions between species. Impact of human development. 24/7 position, data, and interaction logs. Wireless connectivity for mobility. Data storage to tolerate an intermittent base station. ZebraNet: Mobile sensor net with intermittent base station. Records position using GPS every 3 minutes. Records Sun/shade info. Detailed movement information (speed, movement signature) 3 minutes each hour. Future: head up/head down, body temperature, heart rate, camera. Goal, full ecosystem monitoring (zebras, hyenas, lions…). 9 Military Applications Intelligence gathering (troop movements, events of interest). Detection and localization of chemical, biological, radiological, nuclear, and explosive materials. Sniper localization. Signal jamming over a specific area. Visions for sensor network deployment: Dropped in large numbers from UAV. Mortar-Launched. ! 10 Why is Localization a Non-Trivial Problem? Manual configuration Unscalable and sometimes impossible. Why not use GPS to localize? Hardware requirements vs. small sensors. Obstructions to GPS satellites common. GPS satellites not necessarily overhead. Doesn’t work indoors or underground. GPS jammed by sophisticated adversaries. GPS accuracy (10-20 feet) poor for short range sensors. 11 Fine-Grained Localization (Savvides, 2001) Physically: Network of n nodes, m of which have known location, existing in space at locations: {x1…xm,xm+1,…,xn}. Set of some pair-wise inter-node distance measurements. Usually between proximal nodes (iff d < r in unit disk networks). Abstraction Given: Graph GN, {x1,...,xm}, and δ, the edge weight function. Find: Realization of the graph. 3 1 2 5 4 4 2 1 Beacons: nodes with known position Regular nodes: nodes with unknown position 3 {x1,x2,x3} {d14, d24, d25, d35, d45} 5 {x4, x5} 12 Ranging Systems TDoA – Time Difference of Arrival Uses ultrasound and radio signals to determine distance. Range of meters, cm accuracy. Possible to increase sensing range by increasing transmission power. MIT cricket mote UCLA medusa mote 2 (2002) Yale ENALAB XYZ Motes UCLA medusa mote (2001) 13 Our Contributions Graph-theoretic conditions for the unique solvability of the localization problem in the plane. Proof that the problem is NP-complete even for the idealized case of unit-disk networks. Constructive characterization of classes of uniquely localizable and easily localizable networks for the plane and 3D. A localization algorithm that localizes a wider class of networks than was possible with existing approaches. In-depth study of the localizability properties of random networks: New adaptive localizability-optimizing deployment strategies. Impact of non-uniquely localizable nodes on network performance. 14 Outline Introduction to Localization Conditions for Unique Localization Computational Complexity of Localization Localization in Sparse Networks 15 Unique Localizability Network is uniquely localizable if there is exactly one set of points {xm+1,…,xn} consistent with GN, {x1,…,xm} and δ:E to R. Can we determine localizability by graph properties alone? (as opposed to the properties of δ). In the plane, yes (more or less). Properties of the graph determine solvability in the generic case. Probability 1 for randomly generated node locations. 16 Degenerate Cases Fool Abstraction 2 {x1, x2, x3} 2 {d14, d24, d34} 4 1 1 4 3 3 probability 1 case: 4 1 2 In general, this network is uniquely localizable. first case: {x4} second case: ??? ? 1 3 2 ? probability 0 case: 3 In degenerate case, it is not: The constraints are redundant. 17 Continuous Non-Uniqueness Continuous non-uniqueness: Can move points from one configuration to another while respecting constraints. Excess degrees of freedom present in configuration. A formation is RIGID if it cannot be continuously deformed. 18 Condition for Rigidity Purely combinatorial characterization of generic rigidity in the plane. 2n-3 edges necessary for rigidity, and: Laman’s condition: A graph G with 2n-3 edges is rigid in two dimensions if and only if no subgraph G’ has more than 2n’-3 edges*. * where n’ is the number of vertices in G’ Laman’s condition is a statement that any rigid graph with n vertices must have a set of 2n-3 well-distributed edges. Not enough edges Enough edges but not well distributed Just right 19 Discontinuous Non-Uniqueness in Rigid Graphs 2 2 3 3 3 1 1 1 2 Flip Ambiguities: 0 6 4 0 5 6 0 4 6 5 5 214 config configs 1 1 5 Discontinuous Flex Ambiguities: 4 2 3 1 1 1 2 2 2 2 4 5 4 3 … 20 Unique Graph Realization Solution: G must be rigid. G must be 3-connected. b e c f b d a c a d e G must be redundantly rigid: It must remain rigid upon removal of any single edge. f A graph has a unique realization in the plane iff it is redundantly rigid and 3-connected (globally rigid). Hendrickson, ‘94 21 Is The Network Uniquely Localizable? Problem: By looking only at the physical connectivity structure, we would neglect our a priori knowledge of beacon positions. Solution: The distances between beacons are implicitly known! By adding all edges between beacons to GN, we get the Grounded Graph of the network, whose properties determine network localizability. Theorem: A network is generically uniquely localizable iff its grounded graph is globally rigid and it contains at least three beacons. By augmenting graph structure in this way, we fully express all available constraint information in a graph. 3 5 4 1 Is this localizable? 2 1 4 2 3 5 22 Examples of GR graphs - Constructions Every globally rigid graph has a spanning subgraph that is minimally globally rigid. Every minimally globally rigid graph can be constructed inductively starting from K4 by a series of extensions (Berg-Jordan ‘01): New node w and edges uw and vw replace edge uv. Edge wx added for some node x distinct from u, v. Minimal globally rigid graphs have 2n-2 edges. 5 5 1 3 2 4 1 3 2 1 2 6 3 4 4 5 5 1 3 1 2 7 6 4 2 7 6 8 3 … 4 Light edges are those subdivided by the extension operation. 23 Examples of Global Rigidity Globally rigid components in green. Random network – avg node degree 6. Regularized random network – avg node degree 4.5. 24 Construction Using Trilateration A position is uniquely determined by three distances to three non-collinear references. Minimal trilateration graphs formed by trilateration extension: New node w and edges uw, vw, xw added, for u, v, x distinct. Minimal trilateration graphs are globally rigid. Minimal trilateration graphs have 3n-6 edges. 5 5 1 3 2 4 1 3 2 1 2 6 3 4 4 5 1 5 2 7 2 1 7 6 6 8 3 4 3 … 4 Light edges are those removed in extension for minimally GR graph but not in trilateration. 25 Trilateration Graphs A trilateration graph G is one with an trilaterative ordering: an ordering of the vertices 1,...,n such that the complete graph on the initial 3 vertices is in G and from every vertex j > 3, there are at least 3 edges to vertices earlier in the sequence. Trilateration graphs are globally rigid. Hand-made trilateration – avg degree 6. Trilateration graph from mobile network – avg degree 9. “Tripled” Connected Graphs are Trilateration Graphs Theorem: Let G = (V,E) be a connected graph. Let G3 = (V,E E2 E3) be the graph formed from G by adding an edge between any two vertices connected by paths of 2 or 3 edges in E. Then G3 is a trilateration graph. Example where G is a path. 26 27 “Doubled” 2-connected Graphs are Globally Rigid in 2D Theorem: Let G be a 2-connected graph. Then G2 is globally rigid. One gets G2 by doubling sensing radius or measuring angles between adjacent edges. Example where G is a cycle. Minimally GR graph by extension: Doubled cycle: Doubled cycles always have two edges more than a minimally GR graph, so they are globally rigid. 28 “Tripled” Biconnected Graphs are Globally Rigid in 3D There is no known generic characterization of global rigidity in 3D, but our result on doubled graphs extends to 3D. Theorem: Let G be a 2-connected graph. Then G3 is globally rigid in 3D. 29 Summary of Constructive Characterization of Globally Rigid Graphs 2D 3D 3-connectivity necessary for GR. G2 GR if G 2-connected. G3 GR if G connected. G3 GR in 3D if G 2-connected. G4 GR in 3D if G connected. Unique localizability by increasing sensing range, given initial connectivity. Conditions under which additional information can help. 30 Outline Introduction to Localization Conditions for Unique Localization Computational Complexity of Localization Localization in Sparse Networks 31 Localization 3 5 Search problem Decision problem 4 2 1 1 4 3 Rigidity theory Yes/No {x1,x2,x3} {d14, d24, d25, d35, d45} 5 This graph has a unique realization. What is it? 5 Does this have a unique realization? 4 2 2 3 1 This problem is in general NP-hard. ??? {x4,x5} 32 Computational Complexity Intuitively, reflection possibilities are linked with computational complexity Suppose all edge distances known for small triangles. Localization goes working out from any beacon. Triangle reflection possibilities grow exponentially…. …and reflection possibilities are only sorted out when one gets to another beacon. 33 Complexity of GR Graph Realization If a network is localizable, how does one go about localizing it? It is NP-hard to localize a network in R2 even when it is known to be uniquely localizable. We will use two tools in our argument: The NP-hard set-partition problem. The globally rigid wheel graph Wn. The set partition problem: Input: A set of numbers S. Output: Can S be partitioned into two subsets A and S-A such that the sum of numbers in each subset is equal? W6 34 NP-hardness of Realization Theorem: Realization of globally rigid weighted graphs that are realizable is NP-hard Proof sketch: Assume we have algorithm X that takes as input a realizable globally rigid weighted graph and outputs its unique realization. We will find the set-partition of the partitionable set S scaled w.l.o.g so that the sum of elements in S is less than π/2 by using calls to X. Suppose we have S={s1,s2,s3,s4} with a set-partition. Construct a graph G along with its edge weights for X: Even without Set Partition, 1 we have the edge weights of G: di,i+1=2sin(si/2) 3 2 s1+s4=s2+s3 that uniquely determine the s4 realization . s2 rights = lefts When G is realized, we obtain 4 the picture on the left, from s1 s3 This is a realizationwhich of W5we ! obtain set partition! 0 35 Localization Complexity for Sparse Networks Problem with previous result is that edges exist arbitrarily. Graphs used in previous proof unlikely to arise in practice. In realistic networks, edges are more likely to exist between close nodes, and do not exist between distant nodes. Unit Disk Graphs: edge present if distance between nodes less than parameter r. Therefore: if edge absent, distance between nodes is greater than r. Does this information help us solve the localization problem? 1 3 2 Red edge would exist in unit disk graph, so unit disk graph localization would not solve Set Partition. 4 0 36 Complexity of Localizing Unit Disk Graphs Theorem: Localization for sparse sensor networks is NP-hard. Method: Reduction from Circuit Satisfiability to Unit Disk Graph Reconstruction. Reduction is by construction of a family of graphs that represent Boolean circuits. Rigid bodies in the graph represent wires. Relative position of rigid bodies in the graph represent signals on wires. NOT and AND gates built out of constraints between these bodies expressed in the graph structure. There is a polynomial-time reduction from Circuit Satisfiability to Unit Disk Graph Reconstruction, in which there is a one-to-one correspondence between satisfying assignments to the circuit and solutions to the resulting localization problem. Circuit Satisfiability (NP-hard): Input: A boolean combinatorial circuit. Composed of AND, OR, and NOT gates Output: YES iff the circuit is satisfiable. Unit Disk Graph Reconstruction (decision problem) Input: Graph G along with a parameter r, and the square of each edge length (luv)2 (to avoid irrational edge lengths). Output: YES iff there exists a set of points in R2 such that distance from u to v is luv if uv is an edge in G and greater than r otherwise. 37 Localization in Trilateration Graphs As one adds more edges, localization becomes easier: There are classes of globally rigid graph which are easy to localize. Trilateration graphs are localizable in polynomial time. Remember: One gets a trilateration graph from a connected network by tripling the sensing radius. Algorithm: If initial 3 vertices known, localize vertices one at a time until all vertices localized. Else starting with each triangle in the graph, proceed as above until all localized. O(|V|2) or O(|V|5). 38 Connectivity in Random Networks The random geometric graph Gn(r) is the random graph associated with formations with n vertices with all links of length less than r, where the vertices are points in [0,1]2 generated by a two dimensional Poisson point process of intensity n. r The following guarantees Gn(r) is kconnected with high probability for some constant c large enough and constant k: 2 limn nr c log n Penrose, ‘99 Note: Need nr2/(log n) > c, for some c, to guarantee even connectivity. Theorem: If nr2/(log n) > 8, with high probability, Gn(r) is a trilateration graph. This identifies conditions under which a simple iterated trilateration algorithm will succeed in localization. 39 Trilateration in Random Networks Iterative Trilateration Localized mode: Broadcast position. Unlocalized mode: Listen for broadcast. if broadcast from (x,y) heard, Determine distance to (x,y). if three broadcasts heard Determine position Switch to localized mode Sensors have 2 modes. Sensors determine distance from heard transmitter. All sensors are pre-placed and plugged in But how fast? 40 Asymptotics of Trilateration in Random Networks Beacons O(1) O( n ) logn O(n) Sensing radius E[tloc] n ) logn n) O( log n O( n) O( log n O( logn ) n) O( log n O(1) Running times to complete localization using trilateration for different beacon densities. 41 NP-hardness of Localization Fine-grained localization is NP-hard due to NP-hardness of realizing globally rigid graphs. This means that localization of networks in complete generality is unlikely to be efficiently solvable. Motivates search for reasonable special cases and heuristics. Explains hit-or-miss character of previous approaches. Changing sensing radius can predictably convert connectedness to global rigidity and trilateration. 42 Outline Introduction to Localization Conditions for Unique Localization Computational Complexity of Localization Localization in Sparse Networks 43 Motivation Being able to precisely localize only trilateration networks is unsatisfying. Trilateration networks contain significantly more constraints than necessary for unique localizability. Can we localize networks with closer to the minimal number of constraints? 5 1 Red edges unnecessary for unique localizability. 5 2 7 1 6 8 3 2 7 6 8 4 Trilateration graph 3 4 Globally rigid subgraph 44 Bilateration Graphs A bilateration graph G is one with a bilateration ordering: an ordering of the vertices 1,...,n such that the complete graph on the initial 3 vertices is in G and from every vertex j > 3, there are at least 2 edges to vertices earlier in the sequence. Theorem: Bilateration graphs are rigid (but not globally rigid). Theorem: Let G = (V,E) be a connected graph. Then G2 is a bilateration graph. 6’ 6’ Bilateration graphs are finitely localizable in O(2|V|) time. Algorithm: 5’ 2 6’ 5 6 0 If initial 3 vertices known, finitely localize vertices one at a time by computing all possible positions consistent with neighbor positions until all vertices finitely localized. Else starting with each triangle in the graph, proceed as above until all finitely localized. 4’’’ 1 4 3 3’ 4’ 4’’ 45 Localization in Doubled Cycles Based on finite localization of bilateration graphs, localization is uniquely computable for globally rigid doubled cycles. Completes in O(2|V|) time. Assumes nodes in general position. 6’ 6’ “Sweep” Algorithm: Fix the position of three vertices. Until no progress made: Finitely localize each vertex connected to two finitely localized vertices. Remove possibilities with no consistent descendants. 5’ 2 6’ 5 6 0 4’’’ 1 4 3 3’ 4’ 4’’ 46 Localization in Doubled 2-connected Graphs 2-connected graphs are a union of cycles (they have an Ear Decomposition). The ear decomposition gives a ordering in which cycles may be localized using previous algorithm. Note: This means if we have angles, we can localize 2-connected networks. Biconnected network with its ear decomposition. Doubled biconnected network. 47 Localization on General Sparse Networks Worst-case exponential time algorithm for localization in sparse networks: 5 6 5 6 4’ 2 2 3 3 0 0 3’ 6’ 5’ 1 7 4 7 1 4 For which types of network does sweep localization work? Theorem: Shell sweep finitely localizes bilateration networks. Theorem: Shell sweep uniquely localizes globally rigid bilateration networks. If G is connected, when run on G2, shell sweep produces all possible positions for each node. If G2 globally rigid, gives the unique positions. Question: How many globally rigid networks are also bilaterations? 48 Shell Sweep on Random Network Typical random graph. Starting nodes randomly chosen. Shell sweep uniquely localizes localizable portion. Also non-uniquely localizes nodes rigidly connected to localized region. 49 Performance on Large Network 500 node graph with considerable anisotropy and 4.5 average degree. Shell sweep computes in <5 seconds* with no intermediate position set exceeding 128. * As a JAVA applet on a zoo node with a dual 2.8GHz CPU and 2GB RAM 50 Failing Case Globally rigid network. Connection between clusters unbridgeable by bilateration. Extent of Sweep Localization Sweeps in Random Network Sweeps localizes more nodes than trilateration, and almost all localizable nodes! In regular networks, sweeps localizes significantly more nodes than trilateration. Most incremental localization algorithms are trilateration based. Key point: Many globally rigid random geometric graphs are bilateration graphs. Sweeps in Regular Network 51 52 Summary of Localization Density Spectrum Localization is NP-hard in general, but there are classes of graphs that are easy to localize. Graphs that we know how to localize in worst-case exponential time: Complete graphs. Trilateration graphs. Doubled biconnected graphs. Basic idea: more edges make localization easier. Goal: to understand which networks can be localized and which are problematic. Consider all possible networks on n sensors Some networks can be localized in O(|V|2) time: Some networks can be localized in O(|V|5): Trilateration graphs with known ordering Trilateration graphs with unknown ordering Some networks can be localized in exponential time: Doubled biconnected graphs Globally rigid bilateration graphs Unlocalizable 53 When Does Localization Become Easy? Dense 1 Easy Complete Graph Trilateration Graph 3r1 Polynomial time Bilateration Graph 2r2 Exponential Globally Rigid 3-connected Sparse Number of edges NP-hard r3 0 Sensing radius in Gn(r) Unsolvable Complexity of realization 54 Conclusion and Future Work Formalized the localization problem and its solvability. Showed that the problem is fundamentally computationally hard. Constructively characterized easily localizable networks. Provided algorithm that localizes more nodes than previous incremental algorithms. Next: Localization using maps. Localization using angular order information. Localization in networks of mobile nodes. Localization in 3D or on 3D surfaces. Full system from deployment to localization. 55 Our Work in the Field “Rigidity, Computation, and Randomization in Network Localization” - [Infocom 2004] Conditions for unique fine-grained localization. Initial computational complexity results. “On the Computational Complexity of Sensor Network Localization” - [Algosensors 2004] Computational complexity results. “A Theory of Network Localization” - [Transactions on Mobile Computing 2006] “Graphical Properties of Easily Localizable Sensor Networks” - [under review] Characterizing easily localizable ad-hoc networks. “Precise Localization in Sparse Sensor Networks” - [Accepted to Mobicom 2006] Algorithm for localization in sparse ad-hoc networks. “Localization in Partially Localizable Networks” - [Infocom 2005] Investigation of partially localizable networks. Localizability-aware network deployment. “Towards Mobility as a Network Control Primitive” - [Mobihoc 2004] Location-aware controlled node-mobility algorithm for sensor network optimization. 56 Acknowledgements I would like to thank all my collaborators, without whom this work would not have been possible. Brian D.O. Anderson (Australia National University and NICTA) James Aspnes P.N. Belhumeur (Columbia University) Pascal Bihler Ming Cao Tolga Eren Jia Fang THANK YOU FOR LISTENING Arvind Krishnamurthy ANY QUESTIONS? Jie (Archer) Lin Wesley Maness A. Stephen Morse Brad Rosen Andreas Savvides Walter Whiteley (York University) Y. Richard Yang Anthony Young