Orthogonal Drawing Kees Visser. Overview  Introduction  Orthogonal representation  Flow network  Bend optimal drawing.

Slides:



Advertisements
Similar presentations
THE WELL ORDERING PROPERTY Definition: Let B be a set of integers. An integer m is called a least element of B if m is an element of B, and for every x.
Advertisements

Directed acyclic graphs with the unique dipath property J.-C. Bermond, M. Cosnard, S. Perennes Inria and CNRS 24 Nov Disco Workshop - Valparaiso.
22C:19 Discrete Math Graphs Fall 2014 Sukumar Ghosh.
Midwestern State University Department of Computer Science Dr. Ranette Halverson CMPS 2433 – CHAPTER 4 GRAPHS 1.
1 Constructing Splits Graphs Author: Andreas W.M. Dress Daniel H. Huson Presented by: Bakhtiyar Uddin.
Planar Orientations Chapter 4 ( ) in the book Written By: Tomer Heber.
Approximation Algorithms Chapter 14: Rounding Applied to Set Cover.
Introduction to Algorithms
Applications of Euler’s Formula for Graphs Hannah Stevens.
R. Johnsonbaugh Discrete Mathematics 5 th edition, 2001 Chapter 8 Network models.
Approximation Algorithms Chapter 5: k-center. Overview n Main issue: Parametric pruning –Technique for approximation algorithms n 2-approx. algorithm.
Parallel Scheduling of Complex DAGs under Uncertainty Grzegorz Malewicz.
1 Maximum Flow w s v u t z 3/33/3 1/91/9 1/11/1 3/33/3 4/74/7 4/64/6 3/53/5 1/11/1 3/53/5 2/22/2 
On the complexity of orthogonal compaction maurizio patrignani univ. rome III.
Complexity 16-1 Complexity Andrei Bulatov Non-Approximability.
Graph Drawing Introduction 2005/2006. Graph Drawing: Introduction2 Contents Applications of graph drawing Planar graphs: some theory Different types of.
CSE 421 Algorithms Richard Anderson Lecture 22 Network Flow.
Rectangle Visibility Graphs: Characterization, Construction, Compaction Ileana Streinu (Smith) Sue Whitesides (McGill U.)
NP-Complete Problems Reading Material: Chapter 10 Sections 1, 2, 3, and 4 only.
Approximation Algorithms
CSE 6405 Graph Drawing Text Books T. Nishizeki and M. S. Rahman, Planar Graph Drawing, World Scientific, Singapore, G. Di Battista,
2IL90: Graph Drawing Introduction Fall Graphs  Vertices  Edges.
The Rectilinear Steiner Arborescence Problem is NP-Complete
Gomory-Hu Tree for representation of minimum cuts Elad Avni.
Chapter 4: Straight Line Drawing Ronald Kieft. Contents Introduction Algorithm 1: Shift Method Algorithm 2: Realizer Method Other parts of chapter 4 Questions?
Drawing of G. Planar Embedding of G Proposition Proof. 1. Consider a drawing of K 5 or K 3,3 in the plane. Let C be a spanning cycle. 2. If the.
Rectangular Drawing Imo Lieberwerth. Content Introduction Rectangular Drawing and Matching Thomassen’s Theorem Rectangular drawing algorithm Advanced.
Graph-Cut Algorithm with Application to Computer Vision Presented by Yongsub Lim Applied Algorithm Laboratory.
Curve Curve: The image of a continous map from [0,1] to R 2. Polygonal curve: A curve composed of finitely many line segments. Polygonal u,v-curve: A polygonal.
Floorplanning. Obtained by subdividing a given rectangle into smaller rectangles. Each smaller rectangle corresponds to a module.
1/22/03Tucker, Applied Combinatorics, Section EDGE COUNTING TUCKER, APPLIED COMBINATORICS, SECTION 1.3, GROUP B Michael Duquette & Amanda Dargie.
Delaunay Triangulations Presented by Glenn Eguchi Computational Geometry October 11, 2001.
Copyright © Cengage Learning. All rights reserved. CHAPTER 11 ANALYSIS OF ALGORITHM EFFICIENCY ANALYSIS OF ALGORITHM EFFICIENCY.
GRAPH Learning Outcomes Students should be able to:
Orthogonal Drawings of Series-Parallel Graphs Joint work with Xiao Zhou by Tohoku University Takao Nishizeki.
CS774. Markov Random Field : Theory and Application Lecture 13 Kyomin Jung KAIST Oct
Lecture 22 More NPC problems
CSE 421 Algorithms Richard Anderson Lecture 24 Network Flow Applications.
1 Orthogonal Drawing (continued)  Sections 8.3 – 8.5 from the book  Bert Spaan.
 Rooted tree and binary tree  Theorem 5.19: A full binary tree with t leaves contains i=t-1 internal vertices.
Paradigms for Graph Drawing Graph Drawing: Algorithms for the Visualization of Graphs - Chapter 2 Presented by Liana Diesendruck.
Flows in Planar Graphs Hadi Mahzarnia. Outline O Introduction O Planar single commodity flow O Multicommodity flows for C 1 O Feasibility O Algorithm.
Graph Theory and Applications
1 CS612 Algorithms for Electronic Design Automation CS 612 – Lecture 8 Lecture 8 Network Flow Based Modeling Mustafa Ozdal Computer Engineering Department,
1 EE5900 Advanced Embedded System For Smart Infrastructure Static Scheduling.
8.4 Closures of Relations Definition: The closure of a relation R with respect to property P is the relation obtained by adding the minimum number of.
Final Review Chris and Virginia. Overview One big multi-part question. (Likely to be on data structures) Many small questions. (Similar to those in midterm.
1 GRAPH Learning Outcomes Students should be able to: Explain basic terminology of a graph Identify Euler and Hamiltonian cycle Represent graphs using.
5.6 Prefix codes and optimal tree Definition 31: Codes with this property which the bit string for a letter never occurs as the first part of the bit string.
Algorithms and Networks
Computation of the solutions of nonlinear polynomial systems
Graph Drawing.
Graphs: Definitions and Basic Properties
Minimum Spanning Tree 8/7/2018 4:26 AM
Applied Combinatorics, 4th Ed. Alan Tucker
Graph theory Definitions Trees, cycles, directed graphs.
Chapter 4: Using NP-Completeness to Analyze Subproblems
Computability and Complexity
3.3 Applications of Maximum Flow and Minimum Cut
Richard Anderson Lecture 25 NP-Completeness
R. Johnsonbaugh Discrete Mathematics 5th edition, 2001
Richard Anderson Lecture 21 Network Flow
Richard Anderson Lecture 25 Network Flow Applications
Tohoku University.
EE5900 Advanced Embedded System For Smart Infrastructure
離散數學 DISCRETE and COMBINATORIAL MATHEMATICS
Lecture 21 Network Flow, Part 1
Planarity.
Richard Anderson Lecture 22 Network Flow
Maximum Flow Problems in 2005.
Presentation transcript:

Orthogonal Drawing Kees Visser

Overview  Introduction  Orthogonal representation  Flow network  Bend optimal drawing

Introduction  Orthogonal drawing Given embedding Only vertical or horizontal line segments Maximum degree of 4

Introduction  Uses in VLSI circuits  Minimize bends  Finding an orthogonal drawing of graph G with the minimum number of bends without a fixed embedding is NP-Complete.

Introduction  Tamassia and Garg and Tamassia found algorithms to find a minimal bend orthogonal drawing of graph G in polynomial time.

Orthogonal Representation  Planar representation Set of circularly ordered edge list P(F) One for each face  P(F 1 ) = (e8, e7, e11, e6, e3)  P(F 2 ) = (e1, e2, e10, e9, e11, e7, e8)  P(F 3 ) = (e6, e9, e10, e5, e4)  P(F 0 ) = (e1, e2, e5, e4, e3)

Orthogonal representation  Definitions: An edge appearing in the same list twice is a bridge An angle formed by to edges is a vertex- angle An angle formed by two line segments at a bend is a bend-angle Both vertex angles and bend angles are 90, 180, 270 or 360 degrees

Orthogonal representation  Facts: The sum of vertex-angles around any vertex is 360 degrees The sum or the angles inside any facial polygon is (2p-4)90 degree, and the sum of the angles of the outer facial polygon is (2p+4)90 degrees, where p is the number of edges

Orthogonal representation  Orthogonal representation 1 list for each face Each element in the list has 3 values, the edge number (E r ), a bit string and the angle formed in the face from this edge to the next edge (A r ). The bit string indicated the bends in the line. A 0 indicates a 90 degree bend, 1 means 270 and ε means a straight line

Orthogonal representation R(F1) = ((e8, ε, 180),(e7, ε, 90),(e11, ε, 90),(e6, ε, 180),(e3, 0, 90)) R(F2) = ((e1, 0, 90), (e2, 00, 90), (e10, ε, 180), (e9, ε, 180), (e11, ε, 270), (e7, ε, 180), (e8, ε, 90))

Orthogonal representation  Necessary properties of a orthogonal representation: (p1) There is some planer graph whose planer representation is given by the e- fields of the list in R (p2) For each pair of elements r and r’ in R with E r =E r’, string S r’ can be obtained by applying bitwise negation to the reversion of S r’

Orthogonal representation (p3) For each element r in R, define the rotation p(r) as follows: p(r) = |S r |0 - |S r |1 + (2-Ar/90) (p4) For each vertex v, the sum of the vertex angles around v given by the A- fields in R is equal to 360 degrees

Flow network  A flow network N is a directed graph with two disjoint non empty sets of sources and sinks  Each arc e of N is labelled with 3 nonnegative integers A lower bound λ(e) A capacity μ(e) A cost c(e)

Flow network  The flow Ф(e) must equal or higher then the lower bound and lower of equal then the capacity.  σ(u) is the production of source u  -σ(u) is the consumption of sink u

Bend-optimal drawing 1 unit of flow represents an angle of 90 degrees Each vertex and face is a node Each vertex Node is a source (U v ), σ(U v ) = 4 Each face Node is a sink -σ(U F ), -σ(U F ) = 2p(F)-4 (if F is an inner face), -σ(U F ) = 2p(F)+4 (if F is the outer face). p(F) is the number of vertex-angles in face F

Bend-optimal drawing

The arc set of network N consists of the vertex arcs (A v ) and face arcs (A F ) The set of Av consists of arcs from every vertex node to every face node the vertex borders. Flow Ф(U v, U F ) is the sum of vertex angles at vertex v inside face F. λ(U v, U F ) is equal to the number of vertex- angles at v inside face F. μ(U v, U F ) = 4 c(U v, U F ) = 0

Bend-optimal drawing

The set of A F consists of arcs from every face F that shares an edge with face F’ Flow Ф(U F, U F’ ) is the number of bends with an angle of 90 degrees inside face F along the edges which are common to F and F’ λ(U F, U F’ ) = 0 μ(U F, U F’ ) = +∞ c(U F, U F ) = 1

Bend-optimal drawing

Theorem: Let G be a plane graph, let N be the network constructed from G. For each integer flow Ф in network N, there is an orthogonal representation R that represents an orthogonal drawing D of G and whose number of bends is equal to the cost of the flow Ф. In particular, the minimum cost flow can be used to construct a bend-optimal orthogonal drawing of G.

Bend-optimal drawing  Proof We construct a orthogonal representation R of G by computing the a- and s-fields from the flow values in A v and A F. L = |(R(v,F)| and R(v,F) ={r 1,r 2,…,r L }, where 1 =< L =< 4 A r1 = 90(Ф(U v, U F )- L + 1) and A ri = 90 for each i, 2 =< i =< L

Bend-optimal drawing S r1 = 0 Ф(U F, U F’ )1 Ф(U F’, U F ) S r’1 = 0 Ф(U F’, U F )1 Ф(U F, U F’ ) S ri = S r’i = ε for each i 2 =< i =< L Example:  L = 3, Ф(U F, U F’ ) = 2 and Ф(U F’, U F ) = 1  S r1 = 001 and S r2 = S r3 = ε

Bend-optimized drawing  R(F) needs to satisfy Properties (p1)-(p4) (p1) There is some planer graph whose planer representation is given by the e-fields of the list in R (p2) For each pair of elements r and r’ in R with E r =E r’, string S r’ can be obtained by applying bitwise negation to the reversion of S r’ (p3) For each element r in R, define the rotation p(r) as follows: p(r) = |S r |0 - |S r |1 + (2-Ar/90) (p4) For each vertex v, the sum of the vertex angles around v given by the A-fields in R is equal to 360 degrees

Bend-optimized drawing  (p1) is automatically satisfied since we have build R from a planar representation  (p2) easily follows from the assignment of the S-values.  (p4) follows from the definition that every source produces 4 units.  (p3) Solving the equation by replacing with the flow equations makes this satisfied. Look in the book for a more precise proof of this.

Conclusion  Garg and Tamassia have shown that the minimum cost flow problem in this specific network can be solved in time O(n 7/4√(log n) )

Questions?