1 / 34

Greedy Routing with Guaranteed Delivery Using Ricci Flow

Greedy Routing with Guaranteed Delivery Using Ricci Flow. Jie Gao Stony Brook University Rik Sarkar , Xiaotian Yin, Feng Luo , Xianfeng David Gu. Greedy Routing. Assign coordinates to nodes Message moves to neighbor closest to destination Simple, easy, compact.

lan
Download Presentation

Greedy Routing with Guaranteed Delivery Using Ricci Flow

An Image/Link below is provided (as is) to download presentation 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. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Greedy Routing with Guaranteed Delivery Using Ricci Flow JieGao Stony Brook University RikSarkar, Xiaotian Yin, FengLuo, XianfengDavid Gu

  2. Greedy Routing • Assign coordinates to nodes • Message moves to neighbor closest to destination • Simple, easy, compact

  3. Greedy Routing • Can get stuck y x z

  4. Use Ricci flow to make all holes circular • Greedy routing does not get stuck at holes. 

  5. Talk Overview • Theory on Ricci flow --smoothing out surface curvature • Distributed algorithm on sensor network • Extract a triangulation from unit disk / quasi unit disk graphs • Ricci flow: distributed iterative algorithm

  6. Part I : Curvature and Ricci Flow R Curvature: κ = 1/R Flatter curves have smaller curvature.

  7. Changing the Curvature Flatten a curve: κ0 R Make a cycle round κ1/R

  8. Discrete Curvature Turning angle Sum of curvature = 2π

  9. Discrete Curvature in 2D Triangulated Surface

  10. Discrete Curvature in 2D Triangulated Surface For an interior vertex Deviation from the plane corner angle For a vertex on the boundary Deviation from straight line

  11. Total Discrete Curvature • Gauss Bonnet Theorem: total curvature of a surface M is a topological invariant: • Ricci flow: diffuse uneven curvatures to be uniform Euler Characteristic: 2 – 2(# handles) – (# holes)

  12. Sanity check: total curvature • h holes, Euler characteristics = 2-(h+1) • Outer boundary: curvature 2π • Each inner hole: -2π • Interior vertex: 0 • Total curvature: (1-h)2π

  13. What they look like Negative Curvature Positive Curvature

  14. Ricci Flow: diffuse curvature • Riemannian metric g on M: curve length • We modify g by curvature • Curvature evolves: • Same equation as heat diffusion Δ: Laplace operator

  15. Ricci Flow: diffuse curvature • “Ricci energy” is strictly convex  unique surfacewith the same surface area s.t. there is constant curvature everywhere. • Conformal map: angle preserving

  16. Ricci Flow in our case • Target: a metric with pre-specified curvature Boundary cycle

  17. Discrete Ricci Flow • Metric: edge length of the triangulation • Satisfies triangle inequality • Metric determines the curvature • Discrete Ricci flow: conformalmap that modifies edge length to smooth out curvature.

  18. Discrete Flow : Use Circle Packing Metric • Circle packing metric: circle of radius γi at each vertex & intersection angle φij. With γ,φ one can calculate the edge length l and corner angle θ, by cosine law Discrete Ricci flow modifies γ, preserves φ Remark: no need of an embedding (vertex location)

  19. Discrete Flow : Use Circle Packing Metric • Circle packing metric: circle of radius γi at each vertex & intersection angle φij. • Take • Discrete Ricci flow: Target curvature Current curvature

  20. Background • [Hamilton 82, Chow 91] : Smooth curvature flow flattens the metric • [Thurston 85, Sullivan and Rodin 87] : Circle packing – discrete conformal maps • [He and Schramm 93, 96] : Discrete flow with non-uniform triangulations • [Chow and Luo 03] : Discrete flow, existence of solutions, criteria, fast convergence

  21. Part II : Ricci Flow in Sensor Networks • Build a triangulation from network graph • Requirement: triangulation of a 2D manifold • Compute virtual coordinates • Apply distributed Ricci flow algorithm to compute edge lengths d(u, v) with the target curvature (0 at interior vertices and 2π/|B| at boundary vertices B) • Calculate the virtual coordinates with the edge lengths d(u, v)

  22. Issues with Network Graph • We need a triangulation s.t. locally we have 2D patches. Crossing Edges degeneracies

  23. Location-based Triangulation Local delaunay triangulations with locations [Gao, Guibas, Hershberger, Zhang, Zhu - Mobihoc01] • Compute Delaunay triangulations in each node’s neighborhood • Glue neighboring local triangulations • Remove crossing edges • We now extend it to quasi-UDG

  24. Location-based triangulation • Handling Degeneracies : Insert virtual nodes • Locations not required for Ricci flow algorithm • Set all initial edge lengths = 1

  25. Location Free Triangulation • Landmark-based scheme : planar triangulation.[Funke, Milosavljevic SODA ’07] • Set all edge lengths = 1

  26. Ricci Flow in Sensor Networks • All edge length = 1 initially • Introduces curvature in the surface • Use Ricci flow to reach target curvature κ’ • Take tangent circle packing metric: γ=1/2, φ=0 initially • Interior nodes: target curvature = 0 • Nodes on boundary C: target curvature = - 2π/|C| • Modify ui=logγi by δ (κ’-κ) • Until the curvature difference < ε |C|: Length of the boundary cycle

  27. Ricci Flow in Sensor Networks • Ricci flow is a distributed algorithm • Each node modifies its own circle radius. • Compute virtual coordinates • Start from an arbitrary triangle • Iteratively flatten the graph by triangulation.

  28. Examples

  29. Routing

  30. Experiments and Comparison • NoGeo : Fix locations of boundary, replace edges by tight rubber bands : Produces convex holes [Rao, Papadimitriou, Shenker, Stoica – Mobicom 03] • Does not guarantee delivery: cannot handle concave holes well

  31. Convergence rate • Curvature error bound ε • Step size δ • # steps = O(log(1/ε)/δ) Iterations Vs error

  32. Theoretical guarantee of delivery Theoretically, • Ricci flow is a numerical algorithm. • Triangles can be skinny. • In our simulations, we have not encountered any delivery problems • In theory, one can refine the triangulation to deal with skinny triangles

  33. Summary • Deformation of network metric by smoothing out curvatures. • All holes are made circular. • Greedy routing always works. • Future work: • Guarantee of stretch? • Load balancing?

  34. Convergence rate • Curvature error bound ε • Step size δ • # steps = O(log(1/ε)/δ) • Experiments: ε=1e-6. Iterations Vs Number of Nodes

More Related