- 46 Views
- Uploaded on
- Presentation posted in: General

Separability and Topology Control of Quasi Unit Disk Graphs

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Separability and Topology Control of Quasi Unit Disk Graphs

Philippe Giabbanelli CMPT 880 – Spring 2008

This article deals with a more complex model than Unit Disk Graph.

First, I will explain Unit Disk Graph (UDG) and gradually go to the more complicate model.

Once the new model is understood, we can define some constructions on it, leading to efficient algorithms and routing protocols.

From UDG to quasi-UDG

Abstraction of a quasi-UDG by a grid graph

An algorithm to find a small separator set in a grid graph

Routing protocol with distance labelling on grid graphs

1

UDG and quasi-UDGs Grid-graph Splitting Algorithm Routing

• A sensor network or a MANET network is represented by a graph with vertices for systems and edges if there is a communication.

• It is quite easy to say that a vertex is a system…

• …but to express that two nodes are communicating, we need a model.

• This model must answers two fundamental questions:

∙ Do all nodes have the same transmission range?

∙ When can a node communicate with another one?

2

UDG and quasi-UDGs Grid-graph Splitting Algorithm Routing

• A sensor network or a MANET network is represented by a graph with vertices for systems and edges if there is a communication.

w

r

Yes, and we denote it by r.

|uw| > r

hence no connection

This model is called the Unit Disk Graph (UDG).

A system u can communicate with a vertex v if their distance is less than the communication range.

∙ Do all nodes have the same transmission range?

∙ When can a node communicate with another one?

There is an edge (u, v) if |uv| ≤ ru for the euclidian metric | |.

2

UDG and quasi-UDGs Grid-graph Splitting Algorithm Routing

• Under the Unit Disk Model, the probability to communicate with a vertex given the distance looks as follows:

guaranteed

maybe

too far

probability

distance

r

R

• In the real world, the probability does not have such a strong threshold.

• When a node is a bit farther than r, the signal does not suddenly disappear. It is just not strong enough to guarantee the communication, but maybe that we can still communicate.

• In the quasi-UDG model, there is an edge for |uv| ≤ r, not for |uv| > R and maybe for r < |uv| ≤ R.

3

UDG and quasi-UDGs Grid-graph Splitting Algorithm Routing

• To model complex things, we need some abstraction. The simpler the abstraction, the easier we can develop results based on it.

Mr. UDG is happy because he has a simple model he can deal with.

Mr. Quasi-UDG has a more accurate model, but no so easy…

• The UDG model is quite a rough abstraction, but the properties have been well understood.

• The quasi-UDG model is more accurate, but there has been so far quite a lack of understanding of the properties.

4

UDG and quasi-UDGs Grid-graph Splitting Algorithm Routing

• One of the few properties available on the quasi-UDG model is the link-crossing property (Barrière, Fraigniaud and Narayanan 2001).

∙ We know that if we are at distance r, we can communicate.

r is the minimum transmission range.

∙ We know that if we are at distance R, we cannot communicate.

R is the maximum transmission range.

∙ The authors have designed a protocol that guarantees message delivery if R is at most 40% longer than r.

Message delivery is guaranteed for quasi-UDGs where R≤ √2 * r.

∙ In other words, we guarantee message delivery if the ratio between R and r is at most √2.

5

UDG and quasi-UDGs Grid-graph Splitting Algorithm Routing

• This paper has two goals. As this presentation is in two parts, this presentation will deal with the first goal.

• Remember what we said last time about separators: if a graph has a a small set of separators then it is well separable and it enables us to do some nice things (such as a compact representation of the graph).

• In particular, the local properties of separable graphs can be used in many aspects of networks: routing, information retrieval, monitoring…

• The authors will construct an abstraction of a quasi-UDG and show that it is well separable, with a separator size of O(√N).

• As one of the applications, a compact routing protocol will be described.

6

UDG and quasi-UDGs Grid-graph Splitting Algorithm Routing

We impose a grid on the plane to build a grid graph H.

A quasi-UDG can have a highly variable node and edges densities, thus we cannot guarantee the existence of small separators as such.

If there is at least one vertex in a cell, then there is a vertex in the center of this cell for H.

For two cells, if there is an edge connecting vertices in those cells in G then the vertices in the middle of the cells in H are connected.

7

UDG and quasi-UDGs Grid-graph Splitting Algorithm Routing

Theorem. The grid graph H constructed by the algorithm GridGraph with a grid of cell size r/√2 * r/√2 for any given quasi-UDG G is such that:

inside any disk of radius y there are at most O(y²/r²) vertices of H.

r/√2

By construction, the distance between any two vertices is at least r/√2. On the scheme we identify a vertex by the center of either the blue or the red disk.

If we place a disk of radius r/(2√2) centered on each vertex, no two disks will intersect. Blue and red do not intersect.

r/√2

A disk D of size y can intersect with at most O(y²/r²) disks.

The number of little disks that y is intersecting with represents the number of vertices inside D.

8

UDG and quasi-UDGs Grid-graph Splitting Algorithm Routing

Theorem. The grid graph H constructed by the algorithm GridGraph with a grid of cell size r/√2 * r/√2 for any given quasi-UDG G is such that:

the degree of each vertex of H is at most O(R²/r²)

We denote by v(U) the set of vertices of G inside the cell U.

A vertex in v(U) can only be adjacent to a vertex in v(V) is |uv| ≤ R + r by construction.

Thus the number of vertices distant of R + r from U is at most O(R²/r²).

The number of vertices being the degree, we have that the degree is upper bounded by O(R²/r²).

9

UDG and quasi-UDGs Grid-graph Splitting Algorithm Routing

Theorem. The grid graph H constructed by the algorithm GridGraph with a grid of cell size r/√2 * r/√2 for any given quasi-UDG G is such that:

any given edge can be crossed by at most O(R²/r^4) edges.

Based on the fact that the number of vertices within distance R + r from any point on a line (i.e. edge) is O(R²/r²) by the previous proof.

Our grid graph H is well defined with a set of useful properties, but we need something more to find a good separator…

10

UDG and quasi-UDGsGrid-graph Splitting Algorithm Routing

We impose a larger grid on the plane to create a graph T.

Black vertex with a weight equal to the number of vertices contains in its cell in H (i.e. order of abstraction)

Red vertex, assigned to a weight of 0

The graph T is constructed from the grid graph H with the same rules than H is made from G.

To make T planar, a virtual vertex is added in the middle of each diagonal edge (it eliminates all crossings).

11

UDG and quasi-UDGsGrid-graph Splitting Algorithm Routing

Algorithm to separate a grid graph H

Let T be the auxiliary graph of H and T’ a copy of T.

Step 1 – Create a tree

• Select a vertex from the outer face as root to launch the BFS process.

• The undiscovered neighbours are visited in clockwise order.

1

• When a new vertex u is discovered:

∙ It is added to the BFS

∙ For every face F containing u

2

∙ Add edges to all other vertices of F as long as T’ remains planar

12

UDG and quasi-UDGsGrid-graph Splitting Algorithm Routing

Algorithm to separate a grid graph H

Let T be the auxiliary graph of H and T’ a copy of T.

Step 2 – Split the tree

• With the BFS process, we have a tree.

• A cycle formed by one edge that is not in the tree and some edges of the tree is called a fundamental cycle.

• We look for the fundamental cycle that splits T’ in the most balanced way.

• In other words, we are facing an optimization problem of finding ST such that it splits T’ in T1’ and T2’ and minimizes w(T1’) – w(T2’).

13

UDG and quasi-UDGsGrid-graph Splitting Algorithm Routing

Algorithm to separate a grid graph H

Let T be the auxiliary graph of H and T’ a copy of T.

Step 3 – Virtual vertices in the split

• For each virtual vertex u (i.e. red) in the separator set ST :

∙ If all the neighbours of u outside of ST are in T1’, then we move u to T1’

∙ If all the neighbours of u outside of ST are in T2’, then we move u to T2’

T1’

T2’

∙ If the neighbours of u outside of ST are both in T1’ and T2’, then

ST

move u to T1’

move all the neighbours in ST

14

UDG and quasi-UDGsGrid-graph Splitting Algorithm Routing

Algorithm to separate a grid graph H

Let T be the auxiliary graph of H and T’ a copy of T.

Step 4 – Results in the grid graph H

• Let SH be the set of vertices in the cells given by the real (i.e. black) vertices in the separator set ST.

• Similarly, let H1 and H2 be the set of vertices in the cells given by the real (i.e. black) vertices in T1’ and T2’.

T1’

H1

ST

SH

T2’

H2

• Clearly, SH separates H into H1 and H2.

15

UDG and quasi-UDGsGrid-graph Splitting Algorithm Routing

Algorithm to separate a grid graph H

Graph G under the Quasi-UDG model

Graph H with bounded degree

Planar Graph Taztzet

Abstraction by a grid and virtual vertices

Abstraction by a grid

Build a BFS tree and change T

For a a minimum hop distance h(u, v) between u and v, we have a routing algorithm in 2h(u, v) + 1 hops and a routing table of size O(√N.log N) at each node.

Find a fundamental cycle to split well T

Takevirtualvertices out of the split

Separator of size O(√N) for H

UDG and quasi-UDGsGrid-graph Splitting Algorithm Routing

Principles of Distance labeling in Graphs

• A representation of a network is often global

If we want to know something such as the distance between two vertices, we need an access to the entire data structure.

2

110

5

111

How far is 000 from 111?

How far is 1 from 5?

100

6

101

4

000 and 111 differ on 3 positions. Distance 3.

8

011

010

7

000

1

001

3

• If we label the nodes in some way, we can guess things such as the adjacency of two nodes directly by looking at the label. There is no need to access the whole data structure.

• We can use label of any arbitrary large size to encode an information…

• …but we want efficiency: short label and fast information deduction!

17

UDG and quasi-UDGsGrid-graph Splitting Algorithm Routing

Principles of Distance labeling in Graphs

• Distance labeling is useful in communication networks, especialy for memory-free routing schemes: routing schemes with very little data to be stored locally.

• It needs a function L to label the nodes (node-labeling), and f to compute the distance between two labels (distance-labeling).

• f does not need to access the whole graph, as we pointed out. It only needs to know the family of the graph.

• For general graphs, the encoding of the labelling is of size θ(n) and the distance can be computed in O(log log n).

• For graphs with a separator of size k, the encoding of the labelling is of size O(k log n + log²n) and the distance can be computed in O(log n).

18

UDG and quasi-UDGsGrid-graph Splitting Algorithm Routing

• A small separator set can be found in the grid graph H.

• The routing algorithm will send messages between cells of H, using the shortest path.

• We know that the real nodes represented by a cell are fully connected, hence going from one cell to an adjacent one takes at most 2 hops in G.

• How to find the shortest path without a big overhead on the routing table?

∙ Each cell remembers the distance to the vertices in the separator set. They work like a gateway.

∙ Two vertices in different halves have to go communicate through a gateway thus they can know their shortest path distance.

19

UDG and quasi-UDGsGrid-graph Splitting Algorithm Routing

• Now that you have the idea on the overall graph, just think that we apply the same one recursively to cut the graph into O(log n) levels.

• Let denote by basic block the lowest level. Each node needs to store:

O(√N.log n)

∙ minimum distance to the gateways on the boundaries of all the partitions the node is in

constant

∙ the neighboring vertices through which to get to other cells

constant

∙ a shortest path routing for the basic blocks where it resides

• Let d(p) be the number of hops of a path and c(p) the number of times it changes cells.

Let p be the optimal path and p’ the one by our algorithm.

c(p) ≤ d(p) and c(p’) ≤ c(p)

p’ travels from one cell to another in at most 2 hops hence

d(p’) ≤ 2c(p’) + 1

d(p’) ≤ 2d(p) + 1

20

Main article used in this presentation

Separability and Topology Control of Quasi Unit Disk Graphs (Chen, Jiang, Kanj, Xia and Zhang, IEEE 2007)

Other articles used to provide a better understanding

Robust position-based routing in wireless ad hoc networks with irregular transmission ranges (Lali Barrière, Pierre Fraigniaud, Lata Narayanan, Jaroslav Opatrny, Wireless Com. and Mobile Computing 2003)

Distance labeling in graphs (Cyril Gavoille, David Peleg, Stéphane Pérennes, Ran Raz, Elsevier 2004)

T

H

A

N

K

Y

O

U