90
Geometric Routing June 8 2006 1 University of Denver Department of Mathematics Department of Computer Science

1 University of Denver Department of Mathematics Department of Computer Science

Embed Size (px)

Citation preview

Page 1: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

1

University of Denver

Department of Mathematics

Department of Computer Science

Page 2: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

2

Routing in Geometric Settings

Geometric graphs Planar graph Unit disk graph

Applications Ad hoc wireless networks Robot route planning moving in a terrain of

varied types (e.g. grassland, brush land, forest, water etc

Page 3: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

3

AGENDA Topics:

1. Minimum Disk covering Problem (MDC)2. Minimum Forwarding Set Problem (MFS)3. Two-Hop realizability (THP)4. Exact solution to Weighted Region Problem

(WRP)5. Raster and vector based solutions to WRP

Conclusion Questions

Page 4: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

4

Topics:1. Minimum Disk covering Problem (MDC)2. Minimum Forwarding Set Problem (MFS)3. Two-Hop realizability (THP)4. Exact solution to Weighted Region Problem

(WRP)5. Raster and vector based solutions to WRP

Conclusion Questions?

Page 5: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

5

1 - Minimum Disk Covering Problem (MDC)

Cover Blue points with unit disks centered at Red points !! Use Minimum red disks!!

1

Page 6: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

6

Other Variation

Cover all Blues with unit disks centered at blue points !! Using Minimum Number of disks

1

Page 7: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

7

Complexity MDC is known to be NP-complete Reference “Unit Disk Graphs”

Discrete Mathematics 86 (1990) 165–177, B.N. Clark, C.J. Colbourn and D.S. Johnson.

Page 8: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

8

Previous work Problem has a constant factor

approximation algorithmShown By

Hervé Brönnimann, Michael T. Goodrich(1994) “Almost optimal set covers in finite VC-dimension”

Page 9: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

9

Previous work (Cont…)“Selecting Forwarding Neighbors in

Wireless Ad-Hoc Networks”Jrnl: Mobile Networks and Applications(2004)Gruia Calinescu Ion I. Mandoiu Peng-Jun Wan Alexander Z. Zelikovsky

Presented 108-approximation factor

Page 10: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

10

The method Tile the plane with equilateral

triangles of unit side Cover Each triangle by solving a

Linear program (LP) Round the solution to LP to obtain

a factor of 6 for each triangle

Page 11: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

11

The Method to cover triangle

1

Page 12: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

12

Covering a triangle

IF No blue points in a triangle- NOTHING TO DO!!

IF ∆ contains RED + BLUE THEN Unit disk centered at RED Covers

the ∆

Assume BLUE + RED do not share a ∆

Page 13: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

13

Covering a triangle Method

A

C

B

T’1

T’2

T’3

Page 14: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

14

Covering a triangle

1. Using Skyline of disks

2. cover each of the 3 sides with 2-approximation

3. combine the result to get:

6-approximation for each ∆

Page 15: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

15

Desired Property P No two discs intersect more than

once inside a triangle No Two discs are tangent inside

the triangle

Page 16: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

16

Unit circle intersects at most 18 triangles in a tiling

It can be easily verified that a Unit disk intersects at most 18 equilateral triangles in a tiling of a plane

Page 17: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

17

Result 108-approximation Covered each triangle with

approximation factor of 6 Optimal cover can intersect at

most 18 triangles Hence, 6 *18 = 108 -

approximation

Page 18: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

18

Improvements

CAN WE use a larger tile? split the tile into two regions? get better than 6-approximation by

different tiling? cover the plane instead of tiling?

Page 19: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

19

Can we use a larger tile? If tile is larger than

a unit diameter !!

Unit disc inside Tile cannot cover the tile

Hence we cannot use previous method

Page 20: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

20

Split the tile into two regions?

NO!

We obtain two intersection inside the tile (Violates

Property P)

T’1

T’2

Page 21: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

21

Split the tile into two regions Using any cut

v0

v1

v2

v3

v4

n = 2m +1

n = 5; m = 2

Page 22: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

22

Different shape Tile? Each side with 2-

approx. factor Hence 8 for a square Unit disk can

intersect 14 such squares

14 * 8 =112 No Gain by such

method

2

1

Page 23: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

23

Different shape Tile? Each side with 2-

approx. factor Hence 12 for a

hexagon Unit disk can

intersect 12 such hexagons

12 * 12 =144 No Gain by such

method

Page 24: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

24

Our Approach How about using a unit diameter

hexagon as a tile Combine result above with a

splitting into 3 regions around the hexagon

Does it give a better bound?

Page 25: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

25

Hexagon- split it into 3 regions

Partition Hexagon into 3 regions (Similar to triangle)

Obtain 2-approximation for each side 6-approximation for hexagon

Unit disk intersects 12 hexagons

Hence, 6 * 12 = 72-approximation

T’1

T’2

T’3

Page 26: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

26

Covering Instead of tiling the plane,

how about covering the plane

Page 27: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

27

Conclusion of MDC Conjecture: A unit disk will intersect

at least 12 tiles of any covering of R2 by unit diameter tiles

Each tile has an approximation of 6 by the known method

Cannot do better than 72 by the method used

Page 28: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

28

Topics:1. Minimum Disk covering Problem (MDC)2. Minimum Forwarding Set Problem (MFS)3. Two-Hop realizability (THP)4. Exact solution to Weighted Region Problem

(WRP)5. Raster and vector based solutions to WRP

Conclusion Questions?

Page 29: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

29

2 - Minimum Forwarding Set Problem (MFS)

Cover blue points with unit disks centered at red points, now all red points are inside a unit disk

s

x

Page 30: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

30

Previous work (MFS) Despite its simplicity, complexity is

unknown In “Selecting Forwarding Neighbors in

Wireless Ad-Hoc Networks” , Calinescu et al. Present 3- and 6-approximation with complexity O(n

log2n) and O(n log n), respectively Algorithm is based on property P

Page 31: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

31

Desired Property P Again1. No two discs intersect more than once along their

border inside a region Q2. No Two discs are tangent inside the a region Q 3. A disk intersect exactly twice along their border

with Q 1

3

Page 32: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

32

Property P Property P applies if the region is outside

of disk radius 2

Unit disk 2

Q

Page 33: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

33

Bell and Cover of x Remove points inside the Bell- Bell

Elimination Algorithm (BEA)

Page 34: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

34

Result

Assume points to be uniformly distributed

Bell elimination eliminates all the points inside the disk of radius

Need about 75 points Therefore exact solution

2

Page 35: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

35

Result of Running BEA Graph

80

82

84

86

88

90

92

94

96

98

100

50 55 65 75 80 90 97 120 160 200

Number of Points

% success

50 82.5652 84.255 85.1260 89.9865 91.2370 94.3175 95.4277 97.7680 97.7585 97.7690 98.1295 99.0297 99.1

100 99.11120 99.65140 99.93160 99.94180 99.99200 99.99

Page 36: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

36

Distance of one-hop neighbors

Extra region

Page 37: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

37

Approximation factor

Page 38: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

38

Topics:1. Minimum Disk covering Problem (MDC)2. Minimum Forwarding Set Problem (MFS)3. Two-Hop realizability (THP)4. Exact solution to Weighted Region Problem

(WRP)5. Raster and vector based solutions to WRP

Conclusion Questions?

Page 39: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

39

3-Two-hop realizability

Embed a bipartite graph G as a two-hop problem

Show a solution to MFS is a solution to vertex cover problem of G

Hence MFS is as hard as vertex cover problem

Page 40: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

40

Degree of at most 2 If G is realizable then sub-graph G’ is

realizable one-hop region

Page 41: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

41

Topics:1. Minimum Disk covering Problem (MDC)2. Minimum Forwarding Set Problem (MFS)3. Two-Hop realizability (THP)4. Exact solution to Weighted Region

Problem (WRP)5. Raster and vector based solutions to WRP

Conclusion Questions?

Page 42: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

42

4 - Weighted region problem (WRP)

Find a optimal path from START to GOAL in a given subdivision

Goal is to find a path with minimum total cost

QuickTime™ and aTIFF (LZW) decompressor

are needed to see this picture.

Page 43: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

43

Weighted region problem- Planar Graphs WRP finds a shortest path on a planar

sub-division from source s to destination t

Planar sub-division considered as planar graph

Edges are the boundary of faces of sub-division

Vertices are the intersection of edgesQuickTime™ and a

TIFF (LZW) decompressorare needed to see this picture.

2

9

5

43

Page 44: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

44

WRP - weighted region problem

Travel allowed through faces and edges

To use Dijkstra algorithm, need to augment the given planar sub-division

Integer weight = { 0,1 …W, } is assigned to regions/edges

A special case: Weights restricted to 0/1/

Vector and Raster based algorithms exist

Page 45: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

45

Preliminaries A graph (network) consists of

nodes and edges represented as G(V, E, W)

a b

c d

ee1(1)

e3(5)

e4(2)

e2(2)

e6(2)

e5(2)

Page 46: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

46

General Shortest path G(V, E, W)

W: E non-negative weight Source s and destination t are

vertices of G Find a shortest path from s to t Path goes through only edges and

vertices Dijkstra algorithm finds a shortest

path from a source vertex to all other vertices

Page 47: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

47

Dijkstra's Algorithm Greedy algorithm Basic idea

Algorithm maintains two sets of nodes, Solved S and Unsolved U

Each iteration takes a node from U and moves it into S

Algorithm terminates when U becomes empty

Choosing a node v from U is by a greedy choice

Page 48: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

48

Dijkstra’s Example(1)

s

u v

yx

10

5

1

2 39

4 67

2

s

u v

yx

10

5

1

2 39

4 67

2

Dijkstra(G,s)01 for each vertex v V[G]02 d [v] = 03 v. Parent = UNKNOWN04 d[s] = 005 S 06 Q V[G]07 while Q ≠ Ø08 u extractMin(Q)09 S S {u} 10 for each v adjacent(u) do11 Relax(u, v, G)

Page 49: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

49

Dijkstra’s Example (2)u v

s

yx

10

5

1

2 39

4 67

2

s

u v

yx

10

5

1

2 39

4 67

2

Dijkstra(G,s)01 for each vertex v V[G]02 d [v] = 03 v. Parent = UNKNOWN04 d[s] = 005 S 06 Q V[G]07 while Q ≠ Ø08 u extractMin(Q)09 S S {u} 10 for each v adjacent(u) do11 Relax(u, v, G)

Page 50: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

50

Dijkstra’s Example (3)

u v

yx

10

5

1

2 39

4 67

2

u v

yx

10

5

1

2 39

4 67

2

Dijkstra(G,s)01 for each vertex v V[G]02 d [v] = 03 v. Parent = UNKNOWN04 d[s] = 005 S 06 Q V[G]07 while Q ≠ Ø08 u extractMin(Q)09 S S {u} 10 for each v adjacent(u) do11 Relax(u, v, G)

Page 51: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

52

Dijkstra’s Running Time Extract-Min executed |V| time Decrease-Key executed |E| time Time = |V| TExtract-Min + |E| TDecrease-Key

T depends on different Q implementations

Q T(Extract-Min)

T(Decrease-Key)

Total

array (V) (1) (V 2)

binary search tree

(log V) (log V) (E log V)

Fibonacci heap

(log V) (1) (amort.)

(V logV + E)

Page 52: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

53

Planar Graphs A Planar graph is a graph that can

be drawn in the plane such that edges do not intersect

a b

c d

e

Yes!!

a b

c d

e

Is this Planar?

Examples: Voronoi diagram and Delaunay triangulation

Page 53: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

54

Planar Graphs n - e + f = 2 n, e, f = # of vertices, edges, faces Implies, # of edges and faces is O(n) Planar graph has at most 3n - 6 edges, n

≥ 3 Every planar subdivision can be

considered as a planar graph Dijkstra’s algorithm complexity for planar

graph is O(n log n)

Page 54: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

55

WRP - Algorithms VECTOR BASED

The WRP: Finding shortest path… O(n8L) [2]

Path planning 0/1/ WRP…[1]

A new algorithm for computing shortest path in WRP O(n3) [3]

RASTER BASED Cross country

Movement Planning [4]

Planning Shortest Paths among 2D and 3D weighted Regions Using Framed-Subspaces [5]

Page 55: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

56

WRP - General case Input• Planar straight line subdivision is specified by

faces, vertices, and edges• Two points s and t, source and destination,

respectively• Assumption

- all faces are triangles- s and t are vertices

Output• -optimal path from s to t is specified by

users• path within a factor of (1+ ) from the

optimal

Page 56: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

57

WRP - General case Notationsf = weight of face f;

e = weight of edge e, where e = f f’ ≤ min {f, f’}

A weight of implies A path cannot cross that face or edge

Note that all optimal paths must be piecewise linear!!Short cut

Page 57: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

58

WRP - Local Optimality … Snell’s law Light seeks the path of minimum time Light obeys Snell’s law Index of refraction for a region

speed of traveling through that region Shortest paths in WRP must also obey

Snell’s law Lemma 3.2 [2]:

- Let e = min {f, f’}, f, f’< ∞- Optimal path passing through edge e implies path obeys Snell’s law at edge e

Page 58: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

59

t ( x1,y1)

e

f (f)

f′(f′)

s(,-y)

c(x,)

θ

θ′

f≥f′>

WRP - Local optimality

If path passes through edge e, Cost function from s to t

F(x) = f x2 + y2 + f ' (x −x)2 + y

2

F '(x) =

f

x

x2 + y2= f '

(x −x)

(x −x)2 + y2⇒

f sinθ = f 'sinθ '

Page 59: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

60

t ( x1,y1)

e

f (f)

f′(f′)

s(,-y)

θc(f,e)

θc(f′,e)

f≥f′>

x x′

WRP - Local optimality If path uses the edge

eF(x, x ') = f x2 + y

2 +e(x'−x) + f ' (x −x')2 + y2

subjectto x≤x'

F '(x,x') =

f

x

x2 + y2=e = f '

(x −x')

(x −x')2 + y2⇒

f sinθ =e = f 'sinθ '

θc( f ,e) =sin−e f

and θc( f ',e) =sin−e f '

Page 60: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

61

Local Optimality Criterion of path p

a) If p passes through e p obeys Snell’s law

b) If p shares a segment on e p enter and exit e at a critical angle.

DefinitionRoot: Marching back from some point x

along p, root r is the first vertex or critical point of entry on an edgey2 y3 y2 is the root of x

x

Page 61: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

62

Local Optimality Criterion of path p

(1) Between two consecutive vertices v, v’ on path p there is at most one critical point of entry to an edge and at most one critical point of exit OR

(2) Path p can be modified such that (1) holds without altering the length of the path

Therefore following cannot happen

Page 62: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

63

Locally f-free path pIf p connecting s to x interior(f f’) does

not go through face f then we say p is locally f-free path - pf(x)

A locally optimal path from s to x = min{pf(x), pf’(x)}

s

xf´

f

Locally f ´- free path

Locally f- free path

Page 63: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

64

Intervals of a locally f-free path p on e

p with root r to some point y on an edge e may cross set of edges (edge sequence) as shown

y

r

edge sequence

e1

ek

e

.

.

.

Frontier point zz y’ f

f’

Lemma 4.3 [2]

a) p to (y, y’) from root r does not intersect

b) z (y, y’) |rz| < |rx| where x (y,y’) ^ x z

Page 64: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

65

Intervals of optimality [y,y’] forms an interval of optimality for a root r Such intervals form a covering of e and have mutually

disjoint interiors

y

r

e1

ek

e

.

.

.

y’ ff’

r’

x x’

Root r is either a vertex or a critical point of entry

Page 65: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

66

Algorithm Triangulate planar subdivision Add s and t (source and destination) as

vertices Simulate propagation of wave-front of

light starting from s by applying Snell’s law whenever we cross the boundary

Keep track of location of wave-front where it hits the edges -> Intervals of optimality

Events are intervals of optimality Events are stored in a priority queue

sorted by distance from s Number of events is bounded within O(n4)

Page 66: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

67

Algorithm complexity Number of intervals is bounded

within O(n4) When two intervals overlap, “find tie

point” Complexity of “find tie point” is

O(k2 log nNW/)k = # of events = O(n4)n = # of verticesN = largest integer coordinate of any vertexW = Largest weight of any face or edge = Error bound specified in the input

Complexity of the algorithm is O(n8) A O(n3) algorithm using path-net exists

Page 67: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

68

0/1/ -WRP Weights restricted to 0/1/ Without 0-regions, visibility graph

can be constructed in O(n log n + K)K = # of edges in visibility graph

Run Dijkstra’s algorithm on visibility graph

Previous algorithm solves this special case, but restriction on weight allows a better algorithm

Page 68: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

69

0/1/ - Least risk paths Find a least risk path in a polygon

with k threats- risk distance in the view of threat- threats have unlimited range of line of sight

Treat exterior boundary as -regionTreat line of sight as 1-regionThose not visible to any threat as 0-region

Page 69: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

70

0/1/ -WRP Observations A segment is locally optimal path if its interior

is free from obstacles and 0-regions Shortest path from v to a region R not

containing v is a segment vw from v to a point w

if w is a vertex of R edges incident on w lies inside half-plane H, a line through w perpendicular to vw

if w is on an edge such that vw is perpendicular to that edge

v wR

vw

H

R

Page 70: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

71

Optimal paths

Various local optimal segment characteristics

Grey - Obstacles; light - 0-regions

0-entrance points

Page 71: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

72

Critical graph From the observation we made,

construct a critical graph G’(V’,E’) from input G(V, E) as follows1. V’ = V {s, t}2. E’ = E {locally optimal segments with vertices as endpoints} {locally optimal segments with 0-entrance points, store one of end points of the edge}

Page 72: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

73

Critical graph Example New edges added are (pq) and (rs)

with weights |pq| and |rx|. It is easy to add x as node, but this

increases the node complexity and hence increase the running time of the algorithm q

p

r

s

x

Page 73: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

74

Query Critical graph Number of edges in critical graph is

O(n2) since we add edges but not vertices

Complexity of finding a shortest path in 0/1/∞ WRP reduces to- Construct the critical graph G´ - Run Dijkstra’s algorithm on G´ with O(n log n + K), where K is number of edges

Therefore complexity is O(n2) since K is bounded by O(n2)

Page 74: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

75

General WRP-improved algorithm

WRP algorithm of complexity O(n8) is not practical

A new algorithm is based on constructing a relatively sparse graph “path-net”

Path-net guarantees an -optimal path between two query points

User defined parameter k controls the density of the graph

Varying k, we can get close to optimal

Page 75: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

76

Path-net Algorithm O(n3) Construct “path-net” G’=(V’, E’) from a

given input G=(V, E), k is user defined integer

Construct k evenly-spaced cones around each vertex of V : Maximum number of cones is kn

For each vertex v, find a possible sub-path from v either to another vertex u or to a critical point of entry on some edge of subdivision.

There is at most one sub-path per cone Example: k = 5

v

360/5 = 72o

Page 76: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

77

Topological Fork The edge sequence of one ray first starts

to differ from the edge sequence of the other

Locally optimal sub-path from v goes through boundaries of the cone and traverse egdes, obeying Snell’s law

Stop when the two refraction rays first encounter a “topological fork”

u

v

topological fork of two rays

pq

e1

e2

e3

e4

e5

Page 77: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

78

Trace a critical refraction path from u to v through the cone.

A unique locally optimal path from v to u will stay inside the refraction cone that is split by u

Topological Fork… Topological fork must be one of the

following types1. Two rays split at a vertex2. Both rays incident on the same edge and any one incident angle > critical angle3. Both rays encounter outer boundary

u

v

critical entry

u

v

θc

θa

θb

Page 78: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

79

Path-net Edges Find optimal sub-paths, path-net edges Calculate the weight of path-net edges Add path-net edges and vertices into

path-net graph, G’(V’, E’) Run Dijkstra’s algorithm on path-net

u

v

u

v

critical entry

θc

Page 79: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

80

Path-net complexity Path-net has O(kn) nodes, since each

cone can create at most one link Propagation of two rays of a cone takes O(n2) for all vertices

- Locally optimal path can cross each edge

at most n times (Lemma 7.1 in [2])- An edge sequence has O(n2) crossed edges

Overall complexity is O(kn3) to build a data structure with size O(kn)

Page 80: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

81

Path-net complexity… What if s or t changes? Connect new s, t to existing path-

net using similar techniques used for construction of path-net and run path-net algorithm

Page 81: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

82

Path-net Implementation Part of WRP-Solve: Compare various

approaches to route planning ModSAF : Military simulation system [3] compares the result of Path-net

algorithm to 1. Grid based algorithm 2. Edge subdivision algorithm

in both real and simulated data set

Page 82: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

83

Transform weighted planar graph to uniform rectangular grid

Assign a suitable weight to each grid cell Weight in a cell = cost/unit distance traveled in that cell Make a graph with nodes and edges - nodes : raster cells - edges : the possible paths between the nodes Find the optimal path by running Dijkstra’s algorithm

Raster-based algorithms

8 connected 16 connected 32 connected

Page 83: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

84

Raster-based algorithms… Advantages- Simple to

implement- Well suited for

grid input data- Easy to add

other cost criteria

Drawbacks- Errors in distance

estimate, since we measure grid distance instead of Euclidean distance

- Error factor : 4-connectivity:√2 8-connectivity:

(√2+1)/5

Page 84: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

85

n-connected Raster Standard 4-connected raster : A number of geometric distortions

exists - To reduce the distortions, increase connectivity More-connected raster : 8-

connected, 16-connected, 32-, 64, and 128-connected

- Computation of the cost of an edge is

complicated

Page 85: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

86

n-connected Raster Table shows connectivity to

distortion errorConnectivi

tyMaximum Elongatio

n

Maximum Deviation

4 1.41421 0.50000

8 1.08239 0.20710

16 1.02749 0.11803

32 1.01308 0.08114

64 1.00755 0.06155

128 1.00489 0.04951

Page 86: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

87

Extended Raster-based algorithms

Define nodes at the sides of the raster cells Allowed directions increases as # of nodes increases

Page 87: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

88

Extended Raster-based algorithms… Solves the problem of

intersecting paths and possibly expensive angles

Drawback : Search graph is dense when intermediate nodes increases

Page 88: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

89

Quadtree Based Raster algorithms

The uniform areas are grouped together

Smaller # of nodes and edges in the graph

Efficient memory and algorithms Drawback : Non-optimal paths

possible

Page 89: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

90

Vector vs. Raster comparisons.

Page 90: 1 University of Denver Department of Mathematics Department of Computer Science

Geometric Routing June 8 2006

91

Vector vs. Raster comparisons