Scalable Routing in 3D High Genus Sensor Networks Using Graph Embedding
description
Transcript of Scalable Routing in 3D High Genus Sensor Networks Using Graph Embedding
![Page 1: Scalable Routing in 3D High Genus Sensor Networks Using Graph Embedding](https://reader031.fdocuments.in/reader031/viewer/2022012913/56813cb7550346895da66142/html5/thumbnails/1.jpg)
1
Scalable Routing in 3D High Genus Sensor Networks Using Graph Embedding
Xiaokang Yu1, Xiaotian Yin2, Wei Han2, Jie Gao3, Xianfeng David Gu3
1Shandong University, PRC2Harvard University
3Stony Brook University
![Page 2: Scalable Routing in 3D High Genus Sensor Networks Using Graph Embedding](https://reader031.fdocuments.in/reader031/viewer/2022012913/56813cb7550346895da66142/html5/thumbnails/2.jpg)
2
Routing in a high genus 3D network
• Sensors monitoring underground tunnels – water, sewer, gas system; coal mine [Li, Liu 2009]
• Non-planar, 3D network• Sparse with complex shape
![Page 3: Scalable Routing in 3D High Genus Sensor Networks Using Graph Embedding](https://reader031.fdocuments.in/reader031/viewer/2022012913/56813cb7550346895da66142/html5/thumbnails/3.jpg)
3
Geographical routing in 2D
• Greedy routing: next hop closer to dest• Face routing: tour around a planar face
towards dest
S t
![Page 4: Scalable Routing in 3D High Genus Sensor Networks Using Graph Embedding](https://reader031.fdocuments.in/reader031/viewer/2022012913/56813cb7550346895da66142/html5/thumbnails/4.jpg)
4
Geographical routing in 3D
• 2D geographical routing– Greedy routing works in any dimension– Face routing is unique to 2D
• Geo-routing in 3D is strictly harder.– Analogy of “faces” is “voids” in 3D; how to get
around a void is not obvious.– In 3D unit ball graph, no deterministic algorithm
can guarantee delivery with O(1) state. [DKN08]
![Page 5: Scalable Routing in 3D High Genus Sensor Networks Using Graph Embedding](https://reader031.fdocuments.in/reader031/viewer/2022012913/56813cb7550346895da66142/html5/thumbnails/5.jpg)
5
Geographical routing in 3D
• Ideas to do geo-routing in 3D:– Handle special cases of dense networks [XYW+11].– Project to 2D. [KFO05, LCW+08]– Use hull tree [ZCL+10]– Random walk [FW08]– Face routing on a general graph [ZLJ+07].
• Our idea:– Embed a graph on a general surface– Apply greedy routing with guaranteed delivery
![Page 6: Scalable Routing in 3D High Genus Sensor Networks Using Graph Embedding](https://reader031.fdocuments.in/reader031/viewer/2022012913/56813cb7550346895da66142/html5/thumbnails/6.jpg)
6
Embedding a graph on a surface
• Every graph can be embedded on a (high genus) surface without crossing edges
• Genus: # handles.– # times one can cut the surface without
disconnecting it
genus=1 genus=2 genus=3
![Page 7: Scalable Routing in 3D High Genus Sensor Networks Using Graph Embedding](https://reader031.fdocuments.in/reader031/viewer/2022012913/56813cb7550346895da66142/html5/thumbnails/7.jpg)
7
Special case: planar graphs
• Combinatorial: no K5, or K3, 3 minor.
• K3, 3 cannot be embedded in the plane without crossing edges.
![Page 8: Scalable Routing in 3D High Genus Sensor Networks Using Graph Embedding](https://reader031.fdocuments.in/reader031/viewer/2022012913/56813cb7550346895da66142/html5/thumbnails/8.jpg)
8
Special case: planar graphs
• Combinatorial: no K5, or K3, 3 minor.
• K3, 3 can be embedded on a torus
![Page 9: Scalable Routing in 3D High Genus Sensor Networks Using Graph Embedding](https://reader031.fdocuments.in/reader031/viewer/2022012913/56813cb7550346895da66142/html5/thumbnails/9.jpg)
9
Special case: planar graphs
• Planar graphs can always be embedded on a sphere (genus 0), e.g., in Thuston’s embedding
Point of infinity Red: planar graph; Blue: dual graph
![Page 10: Scalable Routing in 3D High Genus Sensor Networks Using Graph Embedding](https://reader031.fdocuments.in/reader031/viewer/2022012913/56813cb7550346895da66142/html5/thumbnails/10.jpg)
10
Example: embedding on a torus
Planar illustration: Left & right boundaries are identified; Top & bottom boundaries are identified.
![Page 11: Scalable Routing in 3D High Genus Sensor Networks Using Graph Embedding](https://reader031.fdocuments.in/reader031/viewer/2022012913/56813cb7550346895da66142/html5/thumbnails/11.jpg)
11
Example: embedding on a torus
Red: planar graph; Blue: dual graph
![Page 12: Scalable Routing in 3D High Genus Sensor Networks Using Graph Embedding](https://reader031.fdocuments.in/reader031/viewer/2022012913/56813cb7550346895da66142/html5/thumbnails/12.jpg)
12
Algorithm
1. Define planar faces for a general graph– In a combinatorial sense.– Same idea used in FaceTracing [ZLJ+07]
2. Embed these faces on a general surface3. Use the embedding for greedy routing
![Page 13: Scalable Routing in 3D High Genus Sensor Networks Using Graph Embedding](https://reader031.fdocuments.in/reader031/viewer/2022012913/56813cb7550346895da66142/html5/thumbnails/13.jpg)
13
Define faces on a general graph
• Rotation system: around each vertex, define a (arbitrary) cyclic order of the edges.
• Trace edges of a face: come in from edge i of a vertex v, leave at edge i+1 at v.
• Each edge only belongs to two faces, once in each direction.
1
5
4
3 2
![Page 14: Scalable Routing in 3D High Genus Sensor Networks Using Graph Embedding](https://reader031.fdocuments.in/reader031/viewer/2022012913/56813cb7550346895da66142/html5/thumbnails/14.jpg)
14
Genus of the embedding surface
• Determining the embedding surface with minimum genus is NP-hard. [T89]
• We tested a heuristic algorithm:– Swap the orders of two adjacent edges.– Keep it if the genus goes down.– In practice we can bring down the genus to about
1/3 the original.
![Page 15: Scalable Routing in 3D High Genus Sensor Networks Using Graph Embedding](https://reader031.fdocuments.in/reader031/viewer/2022012913/56813cb7550346895da66142/html5/thumbnails/15.jpg)
15
Compute the embedding
• Determine the edge lengths for such a surface embedding
• Introduce the dual graph• Introduce a vertex for
intersection of a primal & its dual edge
• This defines a partitioning into 4-gons, each with one primal vertex, one dual vertex, two edge vertices.
![Page 16: Scalable Routing in 3D High Genus Sensor Networks Using Graph Embedding](https://reader031.fdocuments.in/reader031/viewer/2022012913/56813cb7550346895da66142/html5/thumbnails/16.jpg)
16
Compute the embedding
• Use circle packing metric
• Red circles: primal graph, tangent to neighbors.
• Green circles: dual graph, tangent to neighbors
• Red circle orthogonal to adjacent green circle.
![Page 17: Scalable Routing in 3D High Genus Sensor Networks Using Graph Embedding](https://reader031.fdocuments.in/reader031/viewer/2022012913/56813cb7550346895da66142/html5/thumbnails/17.jpg)
17
Compute the embedding
• Existence of such a metric is guaranteed in theory.– Genus=0, spherical metric, curvature > 0– Genus=1, Euclidean metric, curvature = 0– Genus=2, hyperbolic metric, curvature < 0
• Use Ricci flow (curvature flow) to compute the final metric– Distributed algorithm introduced in [SYG+08]– Convergence is guaranteed by theory.
![Page 18: Scalable Routing in 3D High Genus Sensor Networks Using Graph Embedding](https://reader031.fdocuments.in/reader031/viewer/2022012913/56813cb7550346895da66142/html5/thumbnails/18.jpg)
18
Algorithm outline
1. Define planar faces for a general graph2. Embed these faces on a general surface3. Use the embedding for greedy routing
1. Define virtual coordinates.
![Page 19: Scalable Routing in 3D High Genus Sensor Networks Using Graph Embedding](https://reader031.fdocuments.in/reader031/viewer/2022012913/56813cb7550346895da66142/html5/thumbnails/19.jpg)
19
Route on the embedded surface
• Decompose into |2-2 genus| “pants” (genus 0 with 3 boundaries)
![Page 20: Scalable Routing in 3D High Genus Sensor Networks Using Graph Embedding](https://reader031.fdocuments.in/reader031/viewer/2022012913/56813cb7550346895da66142/html5/thumbnails/20.jpg)
20
Route on the embedded surface
• Each pant can be partitioned into two hexagonal pieces (half pants).
• With the computed embedding, each piece is convex inside which greedy routing guarantees delivery!
Embedding in hyperbolic space
![Page 21: Scalable Routing in 3D High Genus Sensor Networks Using Graph Embedding](https://reader031.fdocuments.in/reader031/viewer/2022012913/56813cb7550346895da66142/html5/thumbnails/21.jpg)
21
Route on the embedded surface
• Routing in two stages• Global planning:– Find the sequence of hexagonal pieces to visit– Each node stores the adjacency of the half pants.– Storage = O(genus of the embedding)
• Local routing:– Perform greedy routing inside each piece– Each node stores virtual coordinate on its half
pants
![Page 22: Scalable Routing in 3D High Genus Sensor Networks Using Graph Embedding](https://reader031.fdocuments.in/reader031/viewer/2022012913/56813cb7550346895da66142/html5/thumbnails/22.jpg)
22
Example: pants decomposition
![Page 23: Scalable Routing in 3D High Genus Sensor Networks Using Graph Embedding](https://reader031.fdocuments.in/reader031/viewer/2022012913/56813cb7550346895da66142/html5/thumbnails/23.jpg)
23
Example: global planning phase
![Page 24: Scalable Routing in 3D High Genus Sensor Networks Using Graph Embedding](https://reader031.fdocuments.in/reader031/viewer/2022012913/56813cb7550346895da66142/html5/thumbnails/24.jpg)
24
Example: local routing phase
• Greedy routing to the closest point on the boundary to the next piece to visit.
![Page 25: Scalable Routing in 3D High Genus Sensor Networks Using Graph Embedding](https://reader031.fdocuments.in/reader031/viewer/2022012913/56813cb7550346895da66142/html5/thumbnails/25.jpg)
25
Example: entire path
![Page 26: Scalable Routing in 3D High Genus Sensor Networks Using Graph Embedding](https://reader031.fdocuments.in/reader031/viewer/2022012913/56813cb7550346895da66142/html5/thumbnails/26.jpg)
26
Performance comparison• Compare with
1. Face tracing [ZLJ+08]: Use rotation system to define faces, do DFS on faces
2. Shortest path routing3. Greedy routing using geographical coordinates
• Assume the ideal setting of no transmission failures.
![Page 27: Scalable Routing in 3D High Genus Sensor Networks Using Graph Embedding](https://reader031.fdocuments.in/reader031/viewer/2022012913/56813cb7550346895da66142/html5/thumbnails/27.jpg)
27
Performance comparison• Sensors densely deployed on two surfaces.
genus=4
![Page 28: Scalable Routing in 3D High Genus Sensor Networks Using Graph Embedding](https://reader031.fdocuments.in/reader031/viewer/2022012913/56813cb7550346895da66142/html5/thumbnails/28.jpg)
28
Simulation results
• Delivery rate
• Average path lengths
![Page 29: Scalable Routing in 3D High Genus Sensor Networks Using Graph Embedding](https://reader031.fdocuments.in/reader031/viewer/2022012913/56813cb7550346895da66142/html5/thumbnails/29.jpg)
29
Path length histogram
Global guidance is helpful in finding paths in the correct direction.
![Page 30: Scalable Routing in 3D High Genus Sensor Networks Using Graph Embedding](https://reader031.fdocuments.in/reader031/viewer/2022012913/56813cb7550346895da66142/html5/thumbnails/30.jpg)
30
Conclusion and open questions
• A general solution for routing on an arbitrary graph.
• Storage size of each node: – adjacency of pants decomposition – virtual coordinates in each half pants– O(genus of the embedding).
• Open: approximation algorithm for determining the embedding surface with minimum genus?