planar orientations n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Planar Orientations PowerPoint Presentation
Download Presentation
Planar Orientations

Loading in 2 Seconds...

play fullscreen
1 / 36

Planar Orientations - PowerPoint PPT Presentation


  • 136 Views
  • Uploaded on

Planar Orientations. Chapter 4 (4.1-4.6) in the book Written By: Tomer Heber. Outline & Goal. In this lesson we will deal with planar st-graphs (which will be explained later on). We will review several algorithms for representing a st-planar graph.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Planar Orientations' - ama


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.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 - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
planar orientations

Planar Orientations

Chapter 4 (4.1-4.6) in the book

Written By: Tomer Heber

outline goal
Outline & Goal
  • In this lesson we will deal with planar st-graphs (which will be explained later on).
  • We will review several algorithms for representing a st-planar graph.
  • We will also learn that by using those representations we can turn a st-planar graph, to a more specific shape (such as a polyline).

The goal of this lesson is simple: Which is to learn of ways to represent a st-graph in a more “useful” and “aesthetic” representation.

numbering of digraphs
Numbering of Digraphs
  • A topological numbering of G is an assignment of numbers to the vertices of G, such that, for every edge (u,v) of G, the number assigned to v is greater then the one assigned to u.

5

2

3

4

2

1

numbering of digraphs 2
Numbering of Digraphs (2)
  • A topological sorting is a topological numbering of G, such that every vertex is assigned a distinct integer between 1 and n.
  • A topological sorting is unique if G has a directed path that visits every vertex.

6

5

3

4

2

1

numbering of digraphs 3
Numbering of Digraphs (3)
  • The following statements are equivalent:
      • G is acyclic.
      • G admits a topological numbering.
      • G admits a topological sorting.

In other words a topological numbering (sorting) can be done only on an acyclic graph.

planar graph
Planar Graph
  • A planar graph is a graph which can be embedded in the plane, i.e., it can be drawn on the plane in such a way that its edges intersect only at their endpoints.

Faces

st graph
ST-Graph
  • An acyclic digraph with a single source s and a single sink t is called an st-graph.

Sink “t” has no outgoing edges!

t

s

Source “s” has no incoming edges!

st graph 2
ST-Graph (2)
  • Let G be an st-graph. The following simple properties hold:
      • Given a topological numbering of G. every directed path of G visits with increasing numbers.
      • For every vertex v of G, there exists a simple directed path from s (source) to t (sink) that contains v.
planar st graph
Planar ST-Graph
  • A planar st-graph is an st-graph that is planar and embedded with vertices s and t on the boundary of the external face.

t

s

planar st graph 2
Planar ST-Graph (2)
  • Let G be a planer st-graph and F be its set of faces. We conventionally assume that F contains two representatives for the external face:
      • The “left external face” s*
      • The “right external face” t*

s*

t*

planar st graph 3
Planar ST-Graph (3)
  • For each edge e = (u,v), we define orig(e) = u and dest(e) = v.
  • We define left(e) (resp. right(e)) to be the face to the left (resp. right) of e.

dest(e) = v

v

orig(e) = u

f1

left(e) = f1

e

u

left(e) = f2

f2

planar st graph properties
Planar ST-Graph Properties
  • Lemma 1:Each face f of G consists of two directed paths with common origin called orig(f), and common destination called dest(f).
  • Proof: Let f be a face of G for which the lemma is not true.

t

dest(f)

There must be a path from vertex u to the “sink” t

w

Since the graph is planar there must be

a node where the passes intersect

We receive a cycle!

u

There must be a path from the “source” s to vertex w

orig(f)

s

planar st graph properties 2
Planar ST-Graph Properties (2)
  • Lemma 2: The incoming edges for each vertex of G appear consecutively around v, and so do the outgoing edges.
  • Proof: The lemma holds trivially for the vertices s and t. Let v be any other vertex, and suppose for a contradiction, that there are edges (v,w0), (w1,v), (v,w2), (w3,v).

t

w0

w1

We now have a cycle!

v

x

w2

w3

s

Because every vertex in a st-graph has a simple path from “s” to “t” we add the following paths…

Because the graph is planar we add the vertex “x” to the graph.

planar st graph properties 3
Planar ST-Graph Properties (3)
  • Since the incoming (outgoing) edges of each vertex of G appear consecutively we define the face separating the incoming edges from the outgoing edges in clockwise order, left(v), and the other separating face is called right(v).
planar st graph g
Planar ST-Graph G*
  • We define a digraph G* associated with planar st-graph G, as follows:
      • The vertex set of G* is the set F of faces (recall that F has two representatives, s* and t*, of the external face.
      • For every edge e != (s,t) of G, G* has an e* = (f,g) where f = left(e) and g = right(e).

left(e)

e

right(e)

Notice that G* is a planar st-graph as well

lemma 3
Lemma 3
  • An element of is called an object of planar st-graph G.
  • For vertex v, we define orig(v) = dest(v) = v.
  • For a face f, we define left(f) = right(f) = f.

* Reminder we have already defined previously: left(v), right(v), left(e), right(e), orig(e), dest(e), orig(f) and dest(f).

lemma 3 2
Lemma 3 (2)
  • Lemma 3: For any two objects o1 and o2 of a planar st-graph G, exactlyone of the following holds:
      • G has a directed path from dest(o1) to orig(o2).
      • G has a directed path from dest(o2) to orig(o1).
      • G* has a directed path from right(o1) to left(o2).
      • G* has a directed path from right(o2) to left(o2).
slide18
Tile
  • A tile is a rectangle with sides parallel to the coordinate axes.
  • A tilecan be unbounded or can degenerate to a segment or a point.
  • Two tiles are horizontally (vertically) adjacent if they share a portion of a vertical (horizontal) side.

Tiles:

Vertically adjacent:

tessellation representation
Tessellation Representation
  • Let G be a planar st-graph. A tessellation representation Θ for G maps each object o of G into a tile Θ(o) such that:
      • The interiors of tiles Θ(o1) and Θ(o2) are disjoint whenever o1 != o2.
      • The union of all tiles Θ(o), is a rectangle.
      • Tiles Θ(o1) and Θ(o2) are horizontally adjacent if and only if o1 = left(o2) or o1 = right(o2) or o2 = left(o1) or o2 = right(o1).
      • Tiles Θ(o1) and Θ(o2) are vertically adjacent if and only if o1 = orig(o2) or o1 = dest(o2) or o2 = orig(o1) or o2 = dest(o1).
tessellation representation 2
Tessellation Representation (2)

4

3

1

f

4

3

3

2

4

X(left(e)) = 0

X(left(f)) = 3

2

0

2

X(right(e)) = 1

X(right(f)) = 3

2

1

Y(orig(e)) = 0

Y(orig(f)) = 2

Y(dest(e)) = 2

Y(dest(f)) = 4

1

3

e

1

1

0

0

0

1

2

3

4

tessellation representation 3
Tessellation Representation (3)
  • The correctness of the algorithm is based on Lemma 3:
      • Let there be tile t1 and tile t2, from Lemma 3 t1 is either: above t2, below t2, left of t2 or right of t2. And only one of this directions is true.
  • Since each line of the algorithm is O(n), the total runtime of the algorithm is O(n).
  • The size of the Tessellation Representation can be modified by modifying the topological numbering (e.g. increasing the numbering to be 0..2..4 instead of 0..1..2 will make a Tessellation Representation twice bigger).
visibility representation
Visibility Representation
  • Let G be a planar st-graph. A visibility representation of G draws each vertex v as a horizontal segment, called vertex segment , and each edge (u,v) as vertical segment, called edge segment such that:
      • The vertex segments do not overlap.
      • The edge segments do not overlap.
      • Edge-segment has its bottom end point on , its top end-point on , and does not intersect any other vertex segment.
visibility representation 3
Visibility Representation (3)

4

3

1

4

3

3

2

4

2

0

2

2

1

1

3

1

0

1

0

0

1

2

3

4

visibility representation 4
Visibility Representation (4)

4

3

1

4

3

3

2

4

2

0

2

2

1

1

3

1

0

1

0

0

1

2

3

4

visibility representation 5
Visibility Representation (5)
  • The correctness of the algorithm By lemma 3 and the construction of the algorithm:
      • Any two vertex segments are separated by a horizontal or vertical strip of at least unit width (The vertex segments do not overlap).
      • Any two edge segments on opposite sides of a face are separated by a vertical strip of at least a unit width (The edge segments do not overlap).
      • Each edge segments (u,v) has its bottom point intersecting with u vertex segment, and his upper point intersecting with v vertex segment (sufficing the 3rd condition).
  • The runtime of the algorithm is O(n) since each step is O(n).
constrained visibility representation
Constrained Visibility Representation
  • Let G be a planar st-graph with n vertices. Two paths of π1 and π2 of G are said to be nonintersecting if:
      • They are edge disjoint.
      • And do not cross at common vertices.

π1

π2

π3

constrained visibility representation 2
Constrained Visibility Representation (2)
  • Given a collection ∏ of nonintersecting paths of G, we consider the problem of constructing a visibility representation Γ of G such that for every path π in ∏ we have the following constraint:
      • Any two edges e’ and e’’ of π, the edge segments Γ(e’) and Γ(e’’) have the same x-coordinate.

Note: We assume that ∏ covers all the edges in graph G (Such that any edge who is not in any of the nonintersecting paths in the collection ∏, is a nonintersecting path himself in ∏).

constrained visibility representation 4
Constrained Visibility Representation (4)

∏={π1, π2,π3,π4,π5, π6, π7, π8}

4

π8

3

π8

0

π7

0.5

2.5

π7

f6

f5

f6

f5

π6

π1

π6

2

3

1.5

1

-0.5

2

3.5

f4

2

f7

π1

π2

f4

f7

f1

2

π2

f1

1

f3

2.5

f3

f2

π5

π3

π4

f2

0.5

0

1

π3

π4

π5

3

1

0

constrained visibility representation 5
Constrained Visibility Representation (5)

4

3

2

1

0

0

1

2

3

3

4

π8

0

Total Runtime

O(n)

π7

0.5

2.5

π8

π7

f6

f5

f6

f5

π6

π1

π6

2

3

1.5

1

-0.5

2

3.5

f4

2

f7

π1

π2

f4

f7

f1

2

π2

f1

1

f3

2.5

f3

f2

π5

π3

π4

f2

0.5

0

1

π3

π4

π5

3

1

0

polyline drawing
Polyline Drawing
  • We can construct a planar upward polyline drawing of a planar st-graph G using its visibility representation.
  • We draw each vertex in an arbitrary point inside its vertex segment.
  • We draw each edge (u,v) of G as a three segment polygonal chain.
polyline drawing 3
Polyline Drawing (3)
  • Since every step in the algorithm is O(n), the total complexity runtime is O(n).
  • We can reduce the number of “bends” if we put each place vertex on intersections between an edge segment and vertex segment.
polyline drawing 4
Polyline Drawing (4)
  • The technique can be extended for constrained visibility representation of a planar st-graph which is called constrained-polyline.
  • In a constrained-polyline all the internal vertices in a path π in ∏ are vertically aligned.

The algorithm for

Constrained polyline