Download presentation
Presentation is loading. Please wait.
1
Network Localization CPSC 436/EENG 460 Guest Lecture David Goldenberg Oct 7, 2004
2
Motivations Location-aware computing –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 Geographic routing in ad hoc networks –Scalable, lightweight, fault-tolerant protocols –Current location more important than identity
3
Localization Problem node with unknown position distance measurement Illustration: Given: Set of n points in the plane, Distances between m pairs of points. Find: Positions of all n points… …subject to rotation and translations
4
Localization problem “rephrasing” 2 3 04 1 56 0 d 01 d 02 d 03 d 04 d 05 d 06 d 10 0 d 12 ? ? ? d 16 d 20 d 21 0 d 23 ? ? ? d 30 ? d 32 0 d 34 ? ? d 40 ? ? d 43 0 d 45 ? d 50 ? ? ? d 54 0 d 56 d 60 d 61 ? ? ? d 65 0 Given: 0 d 01 d 02 d 03 d 04 d 05 d 06 d 10 0 d 12 d 13 d 14 d 15 d 16 d 20 d 21 0 d 23 d 24 d 25 d 26 d 30 d 31 d 32 0 d 34 d 35 d 36 d 40 d 41 d 42 d 43 0 d 45 d 46 d 50 d 51 d 52 d 53 d 54 0 d 56 d 60 d 61 d 62 d 63 d 64 d 65 0 Find:
5
2 3 04 1 56 0 d 01 d 02 d 03 d 04 d 05 d 06 d 10 0 d 12 ? ? ? ? d 20 d 21 0 d 23 ? ? ? d 30 ? d 32 0 d 34 ? ? d 40 ? ? d 43 0 d 45 ? d 50 ? ? ? d 54 0 d 56 d 60 ? ? ? ? d 65 0 Given: 0 d 01 d 02 d 03 d 04 d 05 d 06 d 10 0 d 12 d 13 d 14 d 15 d 16 d 20 d 21 0 d 23 d 24 d 25 d 26 d 30 d 31 d 32 0 d 34 d 35 d 36 d 40 d 41 d 42 d 43 0 d 45 d 46 d 50 d 51 d 52 d 53 d 54 0 d 56 d 60 d 61 d 62 d 63 d 64 d 65 0 Cannot Find! 2 3 04 1 56 2 3 04 1 56 …2 4 possibilities Remove one edge… and the problem becomes unsolvable
6
When can we solve the problem? Given: Set of n points in the plane, Distances between m pairs of points. Find: Positions of all n points… …subject to rotation and translations 1: a d b c 2a:3a: a d a c 2b: 3:3:
7
Discontinuous deformation a b e f c d a b e f c d Discontinuous non-uniqueness: - Can’t move points from one configuration to others while respecting constraints flip something else
8
Continuous deformation Continuous non-uniqueness: -Can move points from one configuration to another while respecting constraints -Excess degrees of freedom present in configuration
9
Rigidity A formation * is flexible if it admits a non-trivial † continuous deformation. A formation that is not flexible is rigid. connectivityFor “almost all” formations, rigidity is a property of the connectivity and not of the geometry of the formation. The network graph therefore contains sufficient information to determine (generic) rigidity. * A formation is a set of points in the plane along with a set of pairwise distance constraints † Trivial deformations are rotations and translations
10
In case you were wondering : Why “with probability 1”? Degenerate cases fool abstraction. 2 1 3 4 4 2 1 3 2 1 3 4 {x 1, x 2, x 3 } {d 14, d 24, d 34} probability 1 case: probability 0 case: first case: {x 4 } second case: ??? 2 1 3 ? ? In general, this graph is uniquely realizable. In degenerate case, it is not: The constraints are redundant.
11
Significance of graph rigidity A graph with a unique realization cannot be flexible Rigidity is a necessary condition for a graph to be uniquely realizable †An assignment “satisfies edge constraints” if for every edge (i,j), the euclidean distance between the assigned positions of i and j equals the weight of (i,j). *An assignment of positions to the vertices of a weighted graph satisfying edge constraints † is called a realization of the graph.
12
Intuition: Total degrees of freedom:2n How many distance constraints are necessary to limit a formation to only trivial deformations? == How many edges are necessary for a graph to be rigid?
13
Each edge can remove a single degree of freedom How many edges are necessary to make a graph of n nodes rigid? Rotations and translations will always be possible, so at least 2n-3 edges are necessary for a graph to be rigid.
14
Is 2n-3 edges sufficient? n = 3, 2n-3 = 3 yes n = 4, 2n-3 = 5 yes n = 5, 2n-3 = 7 no
15
Further intuition Need at least 2n-3 “well-distributed” edges. If a subgraph has more edges than necessary, some edges are redundant. Non-redundant edges are independent. Each independent edge removes a degree of freedom. Therefore, 2n-3 independent edges guarantee rigidity.
16
Determining edge independence This means that a graph with 2n-3 edges is rigid if and only if no subgraph has more than 2n’-3 edges. * n’ is the number of nodes |V’| in the subgraph (V’,E’). The edges of a graph are independent if and only if no subgraph has more than 2n’-3 edges*. Laman’s Condition:
17
Illustration of Laman’s condition n=5, m=10 > 2n-3=7 There must be at least 3 dependent edges remove 3 edges too many edges in red subgraph! remove 3 edges 2n-3 well-distributed edges
18
Continuous deformation solved Continuous non-uniqueness: -Can move points from one configuration to the other while respecting constraints -Excess degrees of freedom present in configuration
19
Discontinuous deformation a b e f c d a b e f c d Discontinuous non-uniqueness: - Can’t move points from one configuration to others while respecting constraints flip something else
20
Non-uniqueness solved a e b f c d a c b e d f Solution: G must be 3-connected G must be redundantly rigid: It must remain rigid upon removal of any single edge G must rigid
21
Global Rigidity A graph has a unique realization iff it is redundantly rigid and 3-connected
22
Network Localization Problem Given: Set of n points in the plane, Positions of k of them, Distances between m pairs of points. Find: Positions of all n points. node with known position (beacon) node with unknown position distance measurement Illustration:
23
Is the problem solvable? Problem: By looking only at the graph structure, we neglect our a priori knowledge of beacon positions Solution: The distances between beacons are implicitly known! –By adding all edges between beacons to network graph, we get the Grounded Graph, whose properties determine solvability with probability 1 By augmenting graph structure in this way, we fully capture all constraint information available in the graph itself. is this localizable? 5 4 1 2 3 1 2 3 4 5 {x 4, x 5 } If it is, then I can use {x 1,x 2,x 3 } and δ to get the answer
24
Conditions for unique localizability? Properties of this graph? Or rather, this one determine localizability!
25
Algorithm to test rigidity Laman’s condition taken literally leads to poor algorithm, as it involves checking all subgraphs of subgraphs with 2n-3 edges! Efficient and intuitive algorithm exists, based on counting degrees of freedom.
26
Alternate Laman’s condition For a graph G=(V,E) with m edges and n vertices, the following are equivalent: A.The edges of G are independent in 2-D. B.For each edge (a,b) in G, the graph formed by adding 3 additional copies of (a,b) has no subgraph G’ with more than 2n’ edges.
27
Illustration no subgraph with >2n’ edges “quadruple an edge” G G is rigid.
28
Algorithm idea Grow a maximal set of independent edges one at a time. New edge added if it is independent of existing set. If 2n-3 edges found, then graph is rigid. Revised Laman condition to efficiently determine independence. Each candidate edge quadrupled and the resulting graph tested for Laman’s condition.
29
“The Pebble Game” Each node assigned 2 pebbles An edge is covered by having one pebble placed on either of its ends Pebble covering is assignment of pebbles so that all edges in graph are covered Existence of pebble covering of graph implies all edges independent
30
initial testing e for independence assignment e copy 1 of ecopy 2 of e copy 3 of ecopy 4 of e e assignment
31
Assume we have a set of edges covered with pebbles and we want to add a new edge First, look at vertices incident to new edge. –If either has a free pebble, use it to cover the edge and Done. –Otherwise, their pebbles are covering existing edges. If vertex at other end of one of these edges has free pebble, then use that pebble to cover existing edge, freeing up pebble to cover new edge. Search for free pebbles in a directed graph. –If edge e a,b is covered by pebble from vertex a, the edge if directed from a to b. Search until pebble is found, then swap pebbles until new edge covered, else fail Pebble Game Algorithm
32
0 1 2 3 1 2 3 3 2 3 4 4 0 5 4 3 1 2 3 3 2 3 4 4 unassigned pebble
33
Pebble game properties Testing edge for independence takes O(n) time. At worst, all m edges will be tested for a running time of O(nm). If entire graph not rigid, pebble game discovers rigid subgraphs Algorithm is amenable to distributed implementation Intuitive appeal: Each pebble corresponds to a degree of freedom. A pebble covering always has at least 3 free pebbles.
34
a b c d Initial state a c d a c d b (a,b) independent Testing (a,b) b After (a,b) included
35
c b a c d b Input to next step a d a c d b After (b,c) included Testing (b,c)
36
a a c d b Input to next step c d b Testing (a,c) ? a c d b After (a,c) included
37
d a c d b Input to next step a c b Testing (a,d) a c d b After (a,d) included
38
b d a c d b Input to next step a c d b After (b,d) included a c Testing (b,d)
39
a c d b Input to next step a c d b Testing (c,d) fails! a c d b G=({a,b,c,d}, {ab,ac,ad,bc,bd}) is rigid
40
Additional applications Pebble game can also identify redundantly rigid section of the graph. Using this tool, along with algorithms for discovering 3-connected components, it is possible to decompose networks into uniquely localizable regions
41
Solvability vs. Solution Decision problem Search problem Does this graph have a unique realization? Yes/No This graph has a Unique realization. What is it? ??? positions of all nodes What is the Complexity of this problem? a b e f c d {d ab, d ae, d bc, d be,…} a b e f c d
42
Previous solution approaches Computational biochemists used a global optimization approach : The optimization is computationally expensive, and tricks such as divide-and- conquer and objective function smoothing have been applied
43
Complexity of graph realization We will use two tools in our proof –The NP-hard set-partition problem –The globally rigid wheel graph W n W6W6 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?
44
Set-partition-search 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? The set partition search problem: Input: A set of numbers S that has a set-partition Output: The set partition A and S-A Set-partition-search is NP-hard Suppose algorithm X solves set-partition-search. Run X on S for time equal to the running time of X on input size |S| If X has terminated, S has a set-partition iff the output is a set-partition of S If X has not terminated S does not have a set-partition. X decides set-partition. decision problem search problem
45
NP-hardness of realization Theorem: Realization of globally rigid weighted graphs that are realizable is NP-hard Proof outline: 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={s 1,s 2,s 3,s 4 } with a set-partition. Construct a graph G for X: 0 1 23 4 s1s1 s3s3 s4s4 s2s2 s 1 +s 4 =s 2 +s 3 rights = lefts This is a realization of W 5 ! Picture unavailable without set partition, but we have the edge weights of G: d i,i+1 =2sin(s i /2) that uniquely determine the realization. When G is realized, we obtain the picture on the left, from which we obtain set partition! sin(s 1 /2)
46
Localization complexity for realistic network graphs Problem with previous result is edges exist arbitrarily between nodes –the type of graph used in the NP-hardness proof are 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?
47
No, this info doesn’t help Result: –There is no efficient algorithm that solves the localization problem for sparse sensor networks unless P=NP Method: –Reduction from CIRCUIT SATISFIABILITY to UNIT DISK GRAPH RECONSTRUCTION
48
Reduced-to problem Unit Disk Graph Reconstruction (decision problem) Input –Graph G along with a parameter r, and the square of each edge length (l uv ) 2 (to avoid irrational edge lengths) Output –Yes iff there exists a set of points in R 2 such that distance from u to v is l uv if uv is an edge in G and greater than r otherwise
49
Reduction 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 4 graph components in construction –Binary hinge Enables bodies to represent wires with binary value Forces bodies into 2 relative offsets expressing binary value –Junction Forces two wires to carry same bit Forces intersecting bodies to carry same parity offset –NOT Forces one wire to carry the negation of another’s value Forces two parallel bodies into opposite parity offset –Implication Forces one wire to carry true if a specific partner wire is also true Forces one parallel body into one configuration if another is up, while unconstrained if other is down
50
Binary Hinge Enforces a fixed offset in direction of hinge and offset of +/- h in perpendicular direction This allows the allowable positions of bodies to represent 0 and 1
51
Circuit grid Grid of horizontal and vertical wires, made up of rows and columns of rigid bodies in 2D array. Each body connected to 4 immediate neighbors in the grid Horizontal offset propagates along rows, vertical along columns
52
Anchored grid To limit the shifts of rows and columns to two values, we anchor grid to frame Every other row and column fixed at offset “0” Column represents “1” iff shifted up, Row represents “1” iff shifted right Rows represent wire in circuit – columns used to implement logic +/- h vertically +/- h horizontally +/- h vertically or horizontally fixed
53
Junctions Uses sqrt(2) times larger hinge Forces row and column to carry the same bit
54
NOT gates Double-width hinge Forces adjacent horizontal wires to carry opposite bits Assume that horizontal wires paired off into variables and their negations To extract any variable for use, use a junction with vertical wire
55
Implications Left column up and right column down not possible All other configurations possible Using junctions, we can create implication between any two variables represented by horizontal wires
56
AND gates And gate built out of 4 implications – z x – z y –~x ~z –~y ~z Using AND gates and negation, we can build OR gates
57
Reduction Given boolean circuit C –Construct a graph G using as just described Each wire and its negation represented by a row of rigid bodies Each AND gate is implemented using 8 columns with 4 implication structures –Any solution to the localization problem for graph G corresponds to assignment of bits to wires in C consistent with logic of C –To enforce output 1, anchor output row to L-shaped frame to force this
58
Theorem 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
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.