Presentation is loading. Please wait.

Presentation is loading. Please wait.

Location: Network Localization

Similar presentations


Presentation on theme: "Location: Network Localization"— Presentation transcript:

1 Location: Network Localization
Y. Richard Yang 3/5/2009

2 Admin. Project proposal:
March 6 by to and

3 Recap: GPS Identifying Codes
Two types of codes C/A Code - Coarse/Acquisition Code available for civilian use on L1 1023 bits pseudorandom numbers (PRN) P Code - Precise Code on L1 and L2 used by the military PRN code is × 1012 (repeat about one week) P code is encrypted called P(Y) code

4 Recall: GPS PHY and MAC Layers

5

6 Typical GPS Receiver: C/A code on L1
During the “acquisition” time you are receiving the navigation message also on L1 The receiver then reads the timing information and computes “pseudo-ranges”

7 Military Receiver Decodes both L1 and L2 L2 is more precise
L1 and L2 difference allows computing ionospheric delay

8 Selected Availability/Anti-Spoofing
The US military uses multiple approaches to control and protect the system Selective availability (SA) noise is added to the clock signal and the navigation message has “lies” in it SA is turned off permanently in 2000 Anti-Spoofing (AS) - P-code is encrypted

9 Extensions to GPS Assisted GPS
put a server on the ground to help a GPS receivers reduces GPS search time

10 GPS: Summary GPS is among the “simplest” localization technique (in terms of topology): one-step trilateration Russia has a system known as GLONASS FDMA based; 24 satellites ( spares), 15 channels The EU is developing GALLIOS (est. 2013) CDMA based

11 GPS Limitations Hardware requirements vs. small devices
GPS jammed by sophisticated adversaries Obstructions to GPS satellites common each node needs LOS to 4 satellites GPS satellites not necessarily overhead, e.g., urban canyon, indoors, and underground

12 Outline Admin. GPS General localization

13 Extending GPS: Multilateration
A subset of nodes (called anchors) know their positions through GPS, e.g., nodes close to windows, at the entrance of a cave, at an open field inside a forest, etc manual configuration Nodes measure relative distance among each other 3 5 2 4 1

14 General Localization node with known position (anchor)
node with unknown position distance measurement

15 Localization Service Definition
Given: set of n nodes positions of k of them known distances between m pairs of nodes Find: positions of nodes node with known position (anchor) node with unknown position distance measurement

16 Limitation of Trilateration
Percentage of localizable nodes localized by Trilateration. Ratio Average Degree Uniformly random 250 node network.

17 Outline Admin. GPS General localization Overview Foundation

18 Measurement Graph Consider network nodes as vertices in a graph
3 Consider network nodes as vertices in a graph There is an edge between two vertices if the distance between the corresponding nodes are known 5 2 4 1 5 4 1 2 3

19 Grounded Graph The measurement graph structure needs to distinguish between anchor nodes and non-anchor nodes Solution: add an edge between every pair of anchor nodes, since the distance between them is implicitly known! The resulting graph is called grounded graph, whose graphical properties determine localizability with probability 1 5 4 1 2 3 5 4 1 2 3

20 Grounded Graphs The grounded graph captures all distance constraints
we no longer need to distinguish between anchor nodes and non-anchor nodes use anchor only at the last to pinpoint all nodes

21 In case you were wondering: Why “with probability 1”?
4 2 1 3 {x1, x2, x3} {d14, d24, d34} ? In general, this graph is uniquely realizable. In degenerate case, it is not: The constraints are redundant. 2 1 3 4 probability 1 case 2 1 3 4 probability 0 case

22 Summary of Problem: General Localization using Grounded Graphs
Determine if the positions of all nodes are fixed relative to each other due to the known distance measurements, then all nodes have unique positions (the network is thus localizable) Then the only deformation allowed is translation or rotation of the complete network This is called trivial continuous transformation Use anchors can remove trivial transformation

23 Example Question: any non-trivial continuous transformation to move points from one configuration to another one while respecting all distance constraints?

24 Non-Uniqueness Due to Continuous Deformation
Continuous non-uniqueness: Non-trivial continuous transformation to move points from one configuration to another one while respecting all distance constraints

25 Graph Rigidity A localization network is flexible if it admits a non-trivial continuous deformation A localization network with a unique realization cannot be flexible A localization network that is not flexible is called rigid Rigidity is a necessary condition for network localizability

26 Rigidity in Other Contexts

27

28 Intuition: How many distance constraints are necessary to limit a graph to only trivial continuous deformations? == How many edges are necessary for a graph to be rigid? Total degrees of freedom: 2n

29 How Many Constrains are Necessary to Make a Localization Network of n Nodes Rigid?
Each edge can remove a single degree of freedom Rotations and translations will always be possible, so at least 2n-3 edges are necessary for a graph to be rigid.

30 Are 2n-3 Edges Sufficient?
n = 5, 2n-3 = 7 n = 4, 2n-3 = 5 n = 3, 2n-3 = 3 yes yes no

31 Further Intuition Need at least 2n-3 “well-distributed” edges
If not well-distributed, a subgraph has more edges than necessary: some edges are redundant Non-redundant edges are called independent n = 5, 2n-3 = 7

32 Determining Edge Independence
The edges of a graph are independent if and only if no subgraph has more than 2n’-3 edges*. Laman’s Condition: * n’ is the number of nodes |V’| in the subgraph (V’,E’). n = 5, 2n-3 = 7 This means that a graph with 2n-3 edges is rigid if and only if no subgraph has more than 2n’-3 edges.

33 Algorithm to Test Laman’s Condition
Laman’s condition taken literally leads to poor algorithm, as it involves checking all subgraphs Efficient and intuitive algorithm exists, based on counting degrees of freedom to check and identify rigid components

34 Alternate Laman’s condition
For a graph G=(V,E) with m edges and n vertices, the following are equivalent: The edges of G are independent in 2-D. 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.

35 Illustration no subgraph with >2n’ edges “quadruple an edge” G

36 Basic idea Grow a maximal set of independent edges one at a time
Each candidate edge quadrupled and the resulting graph tested using Laman’s revised condition If 2n’-3 independent edges found for n’ nodes, the subgraph is rigid

37 “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 balanced edges implies all edges independent

38 Pebble Covering 4 copies of e2 e2 e1 initial testing e1 for
independence

39 Pebble Game Algorithm Assume we have a set of independent 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 ea,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

40 unassigned pebble Assume node 0 gets a new edge to cover. 4 5 4 3 1 2 3 4 3 2 2 1 1 3 2 3

41 b c d a initial state b c (a,b) independent d a b c testing (a,b) d a after (a,b) included

42 b c d a b c input to next step d a b c testing (b,c) d a after (b,c) included

43 b c d a input to next step b c ? a c d b after (a,c) included d a testing (a,c)

44 b c d a b c input to next step d a a c d b after (a,d) included testing (a,d)

45 G=({a,b,c,d}, {ab,ac,ad,bc,bd}) is rigid
input to next step d a a c d b after (b,d) included testing (b,d) G=({a,b,c,d}, {ab,ac,ad,bc,bd}) is rigid

46 b c d b a c input to next step d a testing (c,d) fails!

47 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

48 Continuous Deformation Solved
Continuous non-uniqueness: Can move points from one configuration to the other while respecting constraints

49 Discontinuous Non-Uniqueness in Rigid Graphs
2 3 4 1 5 6 2 3 4 1 5 6 flip ambiguities 1 4 2 3 5 1 4 2 3 5 1 4 2 3 5 discontinuous flex Ambiguities 1 4 2 3 5 1 4 2 3 5 1 4 2 3 5 1 4 2 3 5

50 Non-Uniqueness Solution: G must rigid G must be 3-connected
G must be redundantly rigid: It must remain rigid upon removal of any single edge b c b d f a a e e c d f

51 Global Rigidity A localization network is localizable iff it is redundantly rigid and 3-connected.

52 Backup Slides

53 Overall Algorithm Using pebble game to identify redundantly rigid section of the network Along with an algorithm for discovering 3-connected components, it is possible to decompose a localization network into uniquely localizable regions

54 Identifying Unique Localizable Regions

55 Examples of Global Rigid Networks
Globally rigid components in green. Random network – avg node degree 6. Regularized random network – avg node degree 4.5.

56 The Localization Process
Applications Using Location Location Computation Localizability Measurements

57 Question We can efficiently identify regions of nodes which can localize, but how to compute the positions for each component known to be localizable?

58 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.

59 NP-Hardness of Location Computation
Bad News: Location computation of globally rigid networks is NP-hard Proof sketch: Assume we have algorithm X that takes as input a realizable globally rigid network and outputs its unique positions. We will find the set-partition of the partitionable set S: 1) scale so that the sum of elements in S is less than π/2; 2) construct wheel network with di,i+1=2sin(si/2); 3) call X to localize. sin(s1/2) 1 sin(s1/2) 3 2 s1+s4=s2+s3 s4 s2 rights = lefts s1 4 s3

60 Easily Localizable Networks
A trilateration graph G is one with an an ordering of the vertices 1,...,n such that from every vertex j > 3, there are at least 3 edges to vertices earlier in the sequence. Trilateration graphs are globally rigid A network with three anchors can be localized using multi-hop trilaterations followed by an Euclidean transformation if and only if its graph has a trilateration ordering. 2 5 1 4 3

61 Trilateration Localization Networks
Hand-made trilateration – avg degree 6. Trilateration graph from mobile network – avg degree 9.

62 “Tripled” Connected Graphs are Trilateration Graphs
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.

63 Recap: Location Computation
The localization problem is NP-hard in general Need “easily” localizable networks iterative trilateration networks bilateration networks Ratio Average Degree

64 Bilateration Localization Networks
A graph has a bilateration ordering if its vertices can be relabeled as v1,...,vn so that the subgraph induced by {v1,v2,v3} is complete. v1, v2, v3 are the seeds of the ordering. (ii) each vi, i>3, is adjacent to at least two distinct vertices vj , j < i. v4 v2 No trilateration ordering v3 v5 v1

65 Bilateration Localization Networks
5 2 Bilateration networks are rigid (but not globally rigid) Let G = (V,E) be a connected graph. Then G2 is a bilateration graph. Bilateration networks are finitely localizable, i.e., each node has a finite number of possible positions 6 4 1 3 6’ 6’ 5’ 5 2 6 6’ 4’’’ 1 4 3 3’ 4’ 4’’

66 Localizable Bilateration Networks
shell “sweep” - fix the position of three vertices - until no progress made: breadth first search finitely localize each vertex connected to two finitely localized vertices remove possibilities with no consistent descendants

67 Example 5 5 6 6 4’ 2 2 3 3’ 3 6’ 1 1 5’ 4 4 7 7

68 Shell Sweep Shell sweep finitely localizes bilateration networks
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.

69 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

70 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

71 Globally rigid network
Failing Case Globally rigid network Connection between clusters unbridgeable by bilateration

72 Extent of Sweep Localization
Sweeps in Random Network Sweeps in Regular Network Shell sweep is the current state of art: localizes almost all localizable nodes! In regular networks, shell sweep localizes significantly more nodes than trilateration

73 Storage Complexity Cumulative Proportion of Nodes
At average degree 6, the maximum size of the candidate positions sets is at most 8 for just 75% of the nodes. Cumulative Proportion of Nodes At average degrees 3 and 9.5, the maximum size of the candidate positions sets is at most 8 for 95% of the nodes. Maximum Size of Candidate Positions Sets

74 When Does Localization Become Easy?
high dense easy complete network trilateration network 3r1 polynomial time bilateration network 2r2 exponential globally rigid NP-hard 3-connected r3 sparse low unsolvable complexity of localization number of edges sensing radius in Gn(r)

75 Handling Errors Cumulative proportion of nodes
uniformly random deployment: 100 nodes, 5 anchors, average degree 8, 5% measurement error Cumulative proportion of nodes 90% of nodes localized by Sweeps have position error less than 50%. Position Error (% of Sensing Range)

76 Computing Node Location: Global Approach
Based on the paper: "Theory of Semidefinite Programming for Sensor Network Localization,” by A. So and Y. Ye, April 24, 2004 The formulation: input: anchor positions: a1, a2, …, am in Rd there are n sensor nodes: x1, x2, …, xn some distances are given: compute the x’s

77 Matrix Representation
Let X = [x1, x2, …, xn] where eij has 1 at pos. i and -1 at pos. j and 0 otherwise; ej has -1 at pos. j and 0 otherwise, (ak, ej) is the column vector of putting ak on top of ej, and Id is the d-dimensional identity matrix

78 SDP Formulation relax Find symmetric matrix Z

79 The SDP Complexity SDP problem can be solved in polynomial time using “interior-point” method polynomial of number of constraints and log(1/), where  is the accuracy Does it contradict with the NP-hard proof? Find symmetric matrix Z

80 Properties of the SDP-Relaxation Formulation
The dual of SDP problem: Observation: if rank(U) = n, then rank(Z) = d. Thus since , Y = XTX

81 Properties of the SDP-Relaxation Formulation
(1) (3) (4)


Download ppt "Location: Network Localization"

Similar presentations


Ads by Google