Network Localization CPSC 436/EENG 460 Guest Lecture David Goldenberg Oct 7, 2004.

Slides:



Advertisements
Similar presentations
Proof of correctness; More reductions
Advertisements

NP-Hard Nattee Niparnan.
A. S. Morse Yale University University of Minnesota June 4, 2014 TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A A.
Midwestern State University Department of Computer Science Dr. Ranette Halverson CMPS 2433 – CHAPTER 4 GRAPHS 1.
1/44 A simple Test For the Consecutive Ones Property.
Department of Computer Science & Engineering
NP-complete and NP-hard problems Transitivity of polynomial-time many-one reductions Concept of Completeness and hardness for a complexity class Definition.
The Theory of NP-Completeness
Tutorial 6 of CSCI2110 Bipartite Matching Tutor: Zhou Hong ( 周宏 )
Beyond Trilateration: On the Localizability of Wireless Ad Hoc Networks Reported by: 莫斌.
CS774. Markov Random Field : Theory and Application Lecture 17 Kyomin Jung KAIST Nov
Los Angeles September 27, 2006 MOBICOM Localization in Sparse Networks using Sweeps D. K. Goldenberg P. Bihler M. Cao J. Fang B. D. O. Anderson.
CSC5160 Topics in Algorithms Tutorial 2 Introduction to NP-Complete Problems Feb Jerry Le
Data Transmission and Base Station Placement for Optimizing Network Lifetime. E. Arkin, V. Polishchuk, A. Efrat, S. Ramasubramanian,V. PolishchukA. EfratS.
NP-Complete Problems Reading Material: Chapter 10 Sections 1, 2, 3, and 4 only.
NP-complete and NP-hard problems
CSE 421 Algorithms Richard Anderson Lecture 27 NP Completeness.
Chapter 11: Limitations of Algorithmic Power
Hardness Results for Problems
Pebble games for rigidity Overview. The game of pebbling was first suggested by Lagarias and Saks, as a tool for solving a particular problem in number.
Location Y. Richard Yang 4/6/ Wireless Networking: Summary send receive status info info/control - The ability to communicate is a foundational.
Pebble Game Algorithm Demonstration
Approximating the MST Weight in Sublinear Time Bernard Chazelle (Princeton) Ronitt Rubinfeld (NEC) Luca Trevisan (U.C. Berkeley)
The Theory of NP-Completeness 1. Nondeterministic algorithms A nondeterminstic algorithm consists of phase 1: guessing phase 2: checking If the checking.
The Theory of NP-Completeness 1. What is NP-completeness? Consider the circuit satisfiability problem Difficult to answer the decision problem in polynomial.
Graph Coalition Structure Generation Maria Polukarov University of Southampton Joint work with Tom Voice and Nick Jennings HUJI, 25 th September 2011.
Chapter 11 Limitations of Algorithm Power. Lower Bounds Lower bound: an estimate on a minimum amount of work needed to solve a given problem Examples:
1 The Theory of NP-Completeness 2012/11/6 P: the class of problems which can be solved by a deterministic polynomial algorithm. NP : the class of decision.
Nattee Niparnan. Easy & Hard Problem What is “difficulty” of problem? Difficult for computer scientist to derive algorithm for the problem? Difficult.
Lecture 22 More NPC problems
INHERENT LIMITATIONS OF COMPUTER PROGRAMS CSci 4011.
1 © 2015 B. Wilkinson Modification date: January 1, 2015 Designing combinational circuits Logic circuits whose outputs are dependent upon the values placed.
Week 10Complexity of Algorithms1 Hard Computational Problems Some computational problems are hard Despite a numerous attempts we do not know any efficient.
1 Lower Bounds Lower bound: an estimate on a minimum amount of work needed to solve a given problem Examples: b number of comparisons needed to find the.
CP Summer School Modelling for Constraint Programming Barbara Smith 2. Implied Constraints, Optimization, Dominance Rules.
Techniques for Proving NP-Completeness Show that a special case of the problem you are interested in is NP- complete. For example: The problem of finding.
1 The Theory of NP-Completeness 2 Cook ’ s Theorem (1971) Prof. Cook Toronto U. Receiving Turing Award (1982) Discussing difficult problems: worst case.
Lectures on Greedy Algorithms and Dynamic Programming
CS774. Markov Random Field : Theory and Application Lecture 02
Graph Colouring L09: Oct 10. This Lecture Graph coloring is another important problem in graph theory. It also has many applications, including the famous.
CSE 589 Part VI. Reading Skiena, Sections 5.5 and 6.8 CLR, chapter 37.
NP-Complete Problems. Running Time v.s. Input Size Concern with problems whose complexity may be described by exponential functions. Tractable problems.
Role of Rigid Components in Protein Structure Pramod Abraham Kurian.
CSE 589 Part V One of the symptoms of an approaching nervous breakdown is the belief that one’s work is terribly important. Bertrand Russell.
Fundamentals of Informatics Lecture 14 Intractability and NP-completeness Bas Luttik.
© The McGraw-Hill Companies, Inc., Chapter 12 On-Line Algorithms.
NP-Completeness Note. Some illustrations are taken from (KT) Kleinberg and Tardos. Algorithm Design (DPV)Dasgupta, Papadimitriou, and Vazirani. Algorithms.
Great Theoretical Ideas in Computer Science for Some.
11 -1 Chapter 12 On-Line Algorithms On-Line Algorithms On-line algorithms are used to solve on-line problems. The disk scheduling problem The requests.
Information and Control Architectures for Formation Maintenance Swarming in Natural and Engineered Systems Workshop Brian DO Anderson (work involves others)
The Theory of NP-Completeness 1. Nondeterministic algorithms A nondeterminstic algorithm consists of phase 1: guessing phase 2: checking If the checking.
COSC 3101A - Design and Analysis of Algorithms 14 NP-Completeness.
Approximation Algorithms based on linear programming.
1 The Theory of NP-Completeness 2 Review: Finding lower bound by problem transformation Problem X reduces to problem Y (X  Y ) iff X can be solved by.
The NP class. NP-completeness Lecture2. The NP-class The NP class is a class that contains all the problems that can be decided by a Non-Deterministic.
TU/e Algorithms (2IL15) – Lecture 10 1 NP-Completeness, II.
Capabilities, Minimization, and Transformation of Sequential Machines
The Theory of NP-Completeness
More NP-Complete and NP-hard Problems
P & NP.
Analysis of Node Localizability in Wireless Ad-hoc Networks
Location: Network Localization
ICS 353: Design and Analysis of Algorithms
Richard Anderson Lecture 25 NP-Completeness
Chapter 34: NP-Completeness
Chapter 11 Limitations of Algorithm Power
CSE 589 Applied Algorithms Spring 1999
Instructor: Aaron Roth
Switching Lemmas and Proof Complexity
Presentation transcript:

Network Localization CPSC 436/EENG 460 Guest Lecture David Goldenberg Oct 7, 2004

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

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

Localization problem “rephrasing” 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:

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 4 possibilities Remove one edge… and the problem becomes unsolvable

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:

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

Continuous deformation Continuous non-uniqueness: -Can move points from one configuration to another while respecting constraints -Excess degrees of freedom present in configuration

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

In case you were wondering : Why “with probability 1”? Degenerate cases fool abstraction {x 1, x 2, x 3 } {d 14, d 24, d 34} probability 1 case: probability 0 case: first case: {x 4 } second case: ??? ? ? In general, this graph is uniquely realizable. In degenerate case, it is not: The constraints are redundant.

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.

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?

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.

Is 2n-3 edges sufficient? n = 3, 2n-3 = 3 yes n = 4, 2n-3 = 5 yes n = 5, 2n-3 = 7 no

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.

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:

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

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

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

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

Global Rigidity A graph has a unique realization iff it is redundantly rigid and 3-connected

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:

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? {x 4, x 5 } If it is, then I can use {x 1,x 2,x 3 } and δ to get the answer

Conditions for unique localizability? Properties of this graph? Or rather, this one determine localizability!

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.

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.

Illustration no subgraph with >2n’ edges “quadruple an edge” G G is rigid.

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.

“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

initial testing e for independence assignment e copy 1 of ecopy 2 of e copy 3 of ecopy 4 of e e assignment

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

unassigned pebble

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.

a b c d Initial state a c d a c d b (a,b) independent Testing (a,b) b After (a,b) included

c b a c d b Input to next step a d a c d b After (b,c) included Testing (b,c)

a a c d b Input to next step c d b Testing (a,c) ? a c d b After (a,c) included

d a c d b Input to next step a c b Testing (a,d) a c d b After (a,d) included

b d a c d b Input to next step a c d b After (b,d) included a c Testing (b,d)

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

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

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

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

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?

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

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: 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)

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?

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

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

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

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

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

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

Junctions Uses sqrt(2) times larger hinge Forces row and column to carry the same bit

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

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

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

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

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