network localization cpsc 436/eeng 460 guest lecture david goldenberg oct 7, 2004

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

Post on 15-Jan-2016

217 views

Category:

Documents


0 download

TRANSCRIPT

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

Network Localization

CPSC 436/EENG 460 Guest Lecture

David Goldenberg

Oct 7, 2004

Page 2: 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

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

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 translationssubject to rotation and translations

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

Localization problem “rephrasing”2

3

0 4

1

56

0 d01 d02 d03 d04 d05 d06

d10 0 d12 ? ? ? d16

d20 d21 0 d23 ? ? ?d30 ? d32 0 d34 ? ?d40 ? ? d43 0 d45 ?d50 ? ? ? d54 0 d56

d60 d61 ? ? ? d65 0

Given:

0 d01 d02 d03 d04 d05 d06

d10 0 d12 d13 d14 d15 d16

d20 d21 0 d23 d24 d25 d26

d30 d31 d32 0 d34 d35 d36

d40 d41 d42 d43 0 d45 d46

d50 d51 d52 d53 d54 0 d56

d60 d61 d62 d63 d64 d65 0

Find:

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

23

0 4

1

56

0 d01 d02 d03 d04 d05 d06

d10 0 d12 ? ? ? ?d20 d21 0 d23 ? ? ?d30 ? d32 0 d34 ? ?d40 ? ? d43 0 d45 ?d50 ? ? ? d54 0 d56

d60 ? ? ? ? d65 0

Given:

0 d01 d02 d03 d04 d05 d06

d10 0 d12 d13 d14 d15 d16

d20 d21 0 d23 d24 d25 d26

d30 d31 d32 0 d34 d35 d36

d40 d41 d42 d43 0 d45 d46

d50 d51 d52 d53 d54 0 d56

d60 d61 d62 d63 d64 d65 0

Cannot Find!

23

0 4

1

56

2

3

0 4

1

56

…24 possibilities

Remove one edge…and the problem becomes unsolvable

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

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 translationssubject to rotation and translations

1:a

d

b

c

2a: 3a:

ad

a

c

2b: 3:

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

Discontinuous deformation

a

b

ef

c

d

a

b

e

f

c

d

Discontinuous non-uniqueness: - Can’t move points from one configuration to others while respecting constraints

flip

somethingelse

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

Continuous deformation

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

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

Rigidity

• A formation* is flexible if it admits a non-trivial† continuous deformation.

• A formation that is not flexible is rigid.• For “almost all” formations, rigidity is a property of the

connectivityconnectivity 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

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

In case you were wondering: Why “with probability 1”? Degenerate cases fool abstraction.

2

1

3

4

4

2

13

2

1

3

4

{x1, x2, x3}

{d14, d24, d34}

probability 1 case:

probability 0 case:

first case: {x4}second case: ???

2

1

3

?

?

In general, this graph is uniquely realizable.

In degenerate case, it is not:The constraints are redundant.

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

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.

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

Intuition:

Total degrees of freedom: 2n

How many distance constraints are necessary to limit a formation toonly trivial deformations?

==How many edges are necessary for a graph to be rigid?

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

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-3edges are necessary for a graph to be rigid.

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

Is 2n-3 edges sufficient?

n = 3, 2n-3 = 3

yes

n = 4, 2n-3 = 5

yes

n = 5, 2n-3 = 7

no

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

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.

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

Determining edge independence

This means that a graph with 2n-3 edges is rigid if and only if nosubgraph 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:

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

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 inred subgraph!

remove 3 edges

2n-3 well-distributed edges

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

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

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

Discontinuous deformation

a

b

ef

c

d

a

b

e

f

c

d

Discontinuous non-uniqueness: - Can’t move points from one configuration to others while respecting constraints

flip

somethingelse

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

Non-uniqueness solved

a e

b

f

c

d

ac

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

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

Global Rigidity

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

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

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:

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

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{x4, x5}

If it is, then I can use {x1,x2,x3} and δ to get

the answer

LANS
its some sort of democratization of the nodes of the graph! We capture fully the fact that the beacons have known positions solely in the logical structure of the graph. At first, I thought this was rather trivial, but upon some thought, it is seeming more and more subtle.
LANS
now lets see the graph properties that lead to unique realizability
Page 24: Network Localization CPSC 436/EENG 460 Guest Lecture David Goldenberg Oct 7, 2004

Conditions for unique localizability?

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

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

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.

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

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.

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

Illustration

no subgraph with >2n’ edges

no subgraph with >2n’ edges

“quadruple an edge”

G

G is rigid.

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

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.

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

“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

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

initialtesting e for independence

assignment

e

copy 1 of e copy 2 of e

copy 3 of e copy 4 of e

e

copy 4 of e assignment

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

• 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 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

Pebble Game Algorithm

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

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

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

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.

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

a

b c

dInitial state

a

c

d

a

c

d

b

(a,b) independent

Testing (a,b)b

After (a,b) included

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

cba

c

d

b

Input to next step

a d

a

c

d

b

After (b,c) included

Testing (b,c)

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

a

a

c

d

b

Input to next step c

d

b

Testing (a,c)

?

a

c

d

b

After (a,c) included

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

d

a

c

d

b

Input to next step

a

cb

Testing (a,d)

a

c

d

b

After (a,d) included

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

b

d

a

c

d

b

Input to next step

a

c

d

b

After (b,d) included

a

c

Testing (b,d)

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

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

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

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

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

Solvability vs. Solution

Decision problemSearch 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

ef

c

d

{dab, dae, dbc, dbe,…}

a

b

ef

c

d

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

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

Eji

ji xxji),(

2)),((min

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

Complexity of graph realization

• We will use two tools in our proof– The NP-hard set-partition problem

– The globally rigid wheel graph Wn

W6

The set partition problem:Input: A set of numbers SOutput: Can S be partitioned into two subsets A and S-A such that the sum of numbers in each subset is equal?

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

Set-partition-searchThe set partition problem:Input: A set of numbers SOutput: 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-partitionOutput: 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 SIf X has not terminated S does not have a set-partition.X decides set-partition.

decisionproblem

searchproblem

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

NP-hardness of realizationTheorem:

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={s1,s2,s3,s4} with a set-partition. Construct a graph G for X:

0

1

23

4 s1s3

s4s2

s1+s4=s2+s3

rights = lefts

This is a realization of W5!

Picture unavailable without setpartition, but we have the edge weights of G: di,i+1=2sin(si/2)that uniquely determine the realization .When G is realized, we obtainthe picture on the left, from which we obtain set partition!

sin(s1/2)

sin(s1/2)

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

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?

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

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

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

Reduced-to problem

• 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

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

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

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

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

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

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

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

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

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

Junctions

• Uses sqrt(2) times larger hinge

• Forces row and column to carry the same bit

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

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

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

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

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

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

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

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

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

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