Algorithms for Graph Visualization Layered Layout

Size: px
Start display at page:

Download "Algorithms for Graph Visualization Layered Layout"

Transcription

1 Algorithms for Graph Visualization Layered Layout INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Tamara Mchedlidze Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

2 Example 2 Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

3 Layered Layout Given: directed graph D = (V, A) Find: drawing of D that emphasized the hierarchy 3-1 Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

4 Layered Layout Given: directed graph D = (V, A) Find: drawing of D that emphasized the hierarchy many edges pointing to the same direction nodes lie on (few) horizontal lines 3-2 Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

5 Layered Layout Given: directed graph D = (V, A) Find: drawing of D that emphasized the hierarchy edges as straight as possible and short few edge crossings nodes distributed evenly 3-3 Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

6 Application: Java Profiler yed Gallery: Java profiler JProfiler using yfiles 4 Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

7 Application: Storylines Source: Design Considerations for Optimizing Storyline Visualizations Tanahashi et al. 5 Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

8 Application: Storylines Source: ABC news, Australia 6 Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

9 Application: Text-Variant graphs Source: Improving the Layout for Text Variant Graphs Jänicke et al. 7 Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

10 Application: Mythological Creatures and Gods Source: Visualization that won the Graph Drawing contest Klawitter&Mchedlidze 8 Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

11 Sugiyama Framework (Sugiyama, Tagawa, Toda 1981) given resolve cycles layer assignement 9-1 crossing minimization node positioning edge drawing Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

12 Sugiyama Framework (Sugiyama, Tagawa, Toda 1981) given resolve cycles layer assignement 9-2 crossing minimization node positioning edge drawing Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

13 Sugiyama Framework (Sugiyama, Tagawa, Toda 1981) given resolve cycles layer assignement 9-3 crossing minimization node positioning edge drawing Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

14 Sugiyama Framework (Sugiyama, Tagawa, Toda 1981) given resolve cycles layer assignement 9-4 crossing minimization node positioning edge drawing Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

15 Sugiyama Framework (Sugiyama, Tagawa, Toda 1981) given resolve cycles layer assignement 9-5 crossing minimization node positioning edge drawing Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

16 Sugiyama Framework (Sugiyama, Tagawa, Toda 1981) given resolve cycles layer assignement 9-6 crossing minimization node positioning edge drawing Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

17 Sugiyama Framework (Sugiyama, Tagawa, Toda 1981) paper cited more than 1500 times (300 in the past three years) implemented in yed graphviz/dot tulip... given resolve cycles layer assignement 9-7 crossing minimization node positioning edge drawing Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

18 Sugiyama Framework (Sugiyama, Tagawa, Toda 1981) given resolve cycles layer assignement 9-8 crossing minimization node positioning edge drawing Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

19 Sugiyama Framework (Sugiyama, Tagawa, Toda 1981) given resolve cycles layer assignement 9-9 crossing minimization node positioning edge drawing Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

20 Step 1: Resolve Cycles 10 Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

21 Feedback Arc Set Idea: find maximum acyclic subgraph inverce the directions of the other edges 11-1 Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

22 Feedback Arc Set Idea: find maximum acyclic subgraph inverce the directions of the other edges Maximum Acyclic Subgraph Given: directed graph D = (V, A) Find: acyclic subgraph D = (V, A ) with maximum A 11-2 Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

23 Feedback Arc Set Idea: find maximum acyclic subgraph inverce the directions of the other edges Maximum Acyclic Subgraph Given: directed graph D = (V, A) Find: acyclic subgraph D = (V, A ) with maximum A Minimum Feedback Arc Set (FAS) Given: directed graph D = (V, A) Find: A f A, with D f = (V, A \ A f ) acyclic with minimum A f 11-3 Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

24 Feedback Arc Set Idea: find maximum acyclic subgraph inverce the directions of the other edges Maximum Acyclic Subgraph Given: directed graph D = (V, A) Find: acyclic subgraph D = (V, A ) with maximum A Minimum Feedback Arc Set (FAS) Given: directed graph D = (V, A) Find: A f A, with D f = (V, A \ A f ) acyclic with minimum A f Minimum Feedback Set (FS) Given: directed graph D = (V, A) Find: A f A, with D f = (V, A \ A f rev(a f )) acyclic with minimum A f 11-4 Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

25 Feedback Arc Set Idea: find maximum acyclic subgraph inverce the directions of the other edges Maximum Acyclic Subgraph Given: directed graph D = (V, A) Find: acyclic subgraph D = (V, A ) with maximum A Minimum Feedback Arc Set (FAS) Given: directed graph D = (V, A) Find: A f A, with D f = (V, A \ A f ) acyclic with minimum A f Minimum Feedback Set (FS) Given: directed graph D = (V, A) Find: A f A, with D f = (V, A \ A f rev(a f )) acyclic with minimum A f All three problems are NP-hard! 11-5 Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

26 Heuristric 1 (Berger, Shor 1990) A := ; foreach v V do if N (v) N (v) then A := A N (v); else A := A N (v); remove v and N(v) from D. return (V, A ) N (v) := {(v, u) : (v, u) A} N (v) := {(u, v) : (u, v) A} N(v) := N (v) N (v) 12-1 Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

27 Heuristric 1 (Berger, Shor 1990) A := ; foreach v V do if N (v) N (v) then A := A N (v); else A := A N (v); remove v and N(v) from D. return (V, A ) N (v) := {(v, u) : (v, u) A} N (v) := {(u, v) : (u, v) A} N(v) := N (v) N (v) D = (V, A ) is a DAG A \ A is a feedback arc set 12-2 Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

28 Heuristric 1 (Berger, Shor 1990) A := ; foreach v V do if N (v) N (v) then A := A N (v); else A := A N (v); remove v and N(v) from D. return (V, A ) N (v) := {(v, u) : (v, u) A} N (v) := {(u, v) : (u, v) A} N(v) := N (v) N (v) D = (V, A ) is a DAG A \ A is a feedback arc set Work with your neighbour(s) and then share Why D does not contain cycles? What one can say about A in terms of V? 7 min 12-3 Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

29 Heuristric 1 (Berger, Shor 1990) A := ; foreach v V do if N (v) N (v) then A := A N (v); else A := A N (v); remove v and N(v) from D. return (V, A ) N (v) := {(v, u) : (v, u) A} N (v) := {(u, v) : (u, v) A} N(v) := N (v) N (v) Task togo: Is D = (V, A rev(a \ A )) acyclic? What is the running time? D = (V, A ) is a DAG A \ A is a feedback arc set Work with your neighbour(s) and then share Why D does not contain cycles? What one can say about A in terms of V? 7 min 12-4 Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

30 Heuristic 2 (Eades, Lin, Smyth 1993) 1 A := ; 2 while V do 3 while in V exists a sink v do 4 A A N (v) 5 remove v and N (v): {V, n, m} sink 6 Remove all isolated node from V : {V, n, m} iso 7 while in V exists a source v do 8 A A N (v) 9 remove v and N (v): {V, n, m} source 10 if V then 11 let v V such that N (v) N (v) maximal; 12 A A N (v) 13 remove v and N(v): {V, n, m} {=,<} 13-1 Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

31 Heuristic 2 (Eades, Lin, Smyth 1993) 1 A := ; 2 while V do 3 while in V exists a sink v do 4 A A N (v) 5 remove v and N (v): {V, n, m} sink 6 Remove all isolated node from V : {V, n, m} iso 7 while in V exists a source v do 8 A A N (v) 9 remove v and N (v): {V, n, m} source 10 if V then 11 let v V such that N (v) N (v) maximal; 12 A A N (v) 13 remove v and N(v): {V, n, m} {=,<} 13-2 Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

32 Heuristic 2 (Eades, Lin, Smyth 1993) 1 A := ; 2 while V do 3 while in V exists a sink v do 4 A A N (v) 5 remove v and N (v): {V, n, m} sink 6 Remove all isolated node from V : {V, n, m} iso 7 while in V exists a source v do 8 A A N (v) 9 remove v and N (v): {V, n, m} source 10 if V then 11 let v V such that N (v) N (v) maximal; 12 A A N (v) 13 remove v and N(v): {V, n, m} {=,<} 13-3 Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

33 Heuristic 2 (Eades, Lin, Smyth 1993) 1 A := ; 2 while V do 3 while in V exists a sink v do 4 A A N (v) 5 remove v and N (v): {V, n, m} sink 6 Remove all isolated node from V : {V, n, m} iso 7 while in V exists a source v do 8 A A N (v) 9 remove v and N (v): {V, n, m} source 10 if V then 11 let v V such that N (v) N (v) maximal; 12 A A N (v) 13 remove v and N(v): {V, n, m} {=,<} 13-4 Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

34 Heuristic 2 (Eades, Lin, Smyth 1993) 1 A := ; 2 while V do 3 while in V exists a sink v do 4 A A N (v) 5 remove v and N (v): {V, n, m} sink 6 Remove all isolated node from V : {V, n, m} iso 7 while in V exists a source v do 8 A A N (v) 9 remove v and N (v): {V, n, m} source 10 if V then 11 let v V such that N (v) N (v) maximal; 12 A A N (v) 13 remove v and N(v): {V, n, m} {=,<} 13-5 Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

35 Heuristic 2 (Eades, Lin, Smyth 1993) 1 A := ; 2 while V do 3 while in V exists a sink v do 4 A A N (v) 5 remove v and N (v): {V, n, m} sink 6 Remove all isolated node from V : {V, n, m} iso 7 while in V exists a source v do 8 A A N (v) 9 remove v and N (v): {V, n, m} source 10 if V then 11 let v V such that N (v) N (v) maximal; 12 A A N (v) 13 remove v and N(v): {V, n, m} {=,<} 13-6 Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

36 Heuristic 2 (Eades, Lin, Smyth 1993) 1 A := ; 2 while V do 3 while in V exists a sink v do 4 A A N (v) 5 remove v and N (v): {V, n, m} sink 6 Remove all isolated node from V : {V, n, m} iso 7 while in V exists a source v do 8 A A N (v) 9 remove v and N (v): {V, n, m} source 10 if V then 11 let v V such that N (v) N (v) maximal; 12 A A N (v) 13 remove v and N(v): {V, n, m} {=,<} 13-7 Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

37 Heuristic 2 (Eades, Lin, Smyth 1993) 1 A := ; 2 while V do 3 while in V exists a sink v do 4 A A N (v) 5 remove v and N (v): {V, n, m} sink 6 Remove all isolated node from V : {V, n, m} iso 7 while in V exists a source v do 8 A A N (v) 9 remove v and N (v): {V, n, m} source 10 if V then 11 let v V such that N (v) N (v) maximal; 12 A A N (v) 13 remove v and N(v): {V, n, m} {=,<} 13-8 Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

38 Heuristic 2 (Eades, Lin, Smyth 1993) 1 A := ; 2 while V do 3 while in V exists a sink v do 4 A A N (v) 5 remove v and N (v): {V, n, m} sink 6 Remove all isolated node from V : {V, n, m} iso 7 while in V exists a source v do 8 A A N (v) 9 remove v and N (v): {V, n, m} source 10 if V then 11 let v V such that N (v) N (v) maximal; 12 A A N (v) 13 remove v and N(v): {V, n, m} {=,<} 13-9 Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

39 Heuristic 2 (Eades, Lin, Smyth 1993) 1 A := ; 2 while V do 3 while in V exists a sink v do 4 A A N (v) 5 remove v and N (v): {V, n, m} sink 6 Remove all isolated node from V : {V, n, m} iso 7 while in V exists a source v do 8 A A N (v) 9 remove v and N (v): {V, n, m} source 10 if V then 11 let v V such that N (v) N (v) maximal; 12 A A N (v) 13 remove v and N(v): {V, n, m} {=,<} 13-10Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

40 Heuristic 2 (Eades, Lin, Smyth 1993) 1 A := ; 2 while V do 3 while in V exists a sink v do 4 A A N (v) 5 remove v and N (v): {V, n, m} sink 6 Remove all isolated node from V : {V, n, m} iso 7 while in V exists a source v do 8 A A N (v) 9 remove v and N (v): {V, n, m} source 10 if V then 11 let v V such that N (v) N (v) maximal; 12 A A N (v) 13 remove v and N(v): {V, n, m} {=,<} 13-11Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

41 Heuristic 2 (Eades, Lin, Smyth 1993) 1 A := ; 2 while V do 3 while in V exists a sink v do 4 A A N (v) 5 remove v and N (v): {V, n, m} sink 6 Remove all isolated node from V : {V, n, m} iso 7 while in V exists a source v do 8 A A N (v) 9 remove v and N (v): {V, n, m} source 10 if V then 11 let v V such that N (v) N (v) maximal; 12 A A N (v) 13 remove v and N(v): {V, n, m} {=,<} 13-12Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

42 Heuristic 2 Analysis Theorem 1: Let D = (V, A) be a connected, directed graph without 2-cycles. Heuristic 2 computes a set of edges A with A A /2 + V /6. The running time is O( A ) Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

43 Heuristic 2 Analysis Theorem 1: Let D = (V, A) be a connected, directed graph without 2-cycles. Heuristic 2 computes a set of edges A with A A /2 + V /6. The running time is O( A ). Exact Solution: integer linear programming, using branch-and-cut technique (Grötschel et al. 1985) 14-2 Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

44 Example 15-1 Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

45 Example 15-2 Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

46 Step 2: Layer Assignement dummy node 16-1 Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

47 Step 2: Layer Assignement dummy node Think for a minute and then share What could we optimize when doing the layer assignment? 1 min 16-2 Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

48 Step 2: Layer Assignement Given.: directed acyclic graph (DAG) D = (V, A) Find: Partition the vertex set V into disjoint subsets (layers) L 1,..., L h s.t. (u, v) A, u L i, v L j i < j Def: y-coordinate y(u) = i u L i 17-1 Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

49 Step 2: Layer Assignement Given.: directed acyclic graph (DAG) D = (V, A) Find: Partition the vertex set V into disjoint subsets (layers) L 1,..., L h s.t. (u, v) A, u L i, v L j i < j Def: y-coordinate y(u) = i u L i Criteria that we discuss minimize the number of layers h (= height of the layouts) minimize the total length of edges ( number of dummy nodes) minimize width, e.g. max{ L i 1 i h} 17-2 Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

50 Height Optimization Idea: assign each node v to the layer L i, where i is the length of the longest simple path from a source to v all incomming neighbours lie below v the resulting height h is minimized 18-1 Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

51 Height Optimization Idea: assign each node v to the layer L i, where i is the length of the longest simple path from a source to v all incomming neighbours lie below v the resulting height h is minimized Algorithm L 1 the set of sources in D set y(u) max v N (u){y(v)} Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

52 Example 19-1 Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

53 Example 19-2 Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

54 Total Edge Length Can be formulated as an integer linear program: min (u,v) A(y(v) y(u)) subject to y(v) y(u) 1 (u, v) A y(v) 1 v V y(v) Z v V 20-1 Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

55 Total Edge Length Can be formulated as an integer linear program: min (u,v) A(y(v) y(u)) subject to y(v) y(u) 1 (u, v) A y(v) 1 v V y(v) Z v V One can show that: Constraint-Matrix is totally unimodular Solution of the relaxed linear program is integer The total edge length can be minimized in a polynomial time 20-2 Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

56 Width of the Layout 21-1 Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

57 Width of the Layout bound the width! 21-2 Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

58 Layer Assignement with Fixed Width Fixed-Width Layer Assignment Given: directed acyclic graph D = (V, A), width B Find: layer assignement L of minumum height with at most B nodes per layer B = Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

59 Layer Assignement with Fixed Width Fixed-Width Layer Assignment Given: directed acyclic graph D = (V, A), width B Find: layer assignement L of minumum height with at most B nodes per layer M 1 M 2 M 3 B = 4 equivalent to the following scheduling problem: Minimum Precedence Constrained Scheduling (MPCS) Given: n Jobs J 1,..., J n with identical unit processing time, precedence constraints J i < J k, and B identical machines Find: Schedule of minimum length, that satisfies all the precendence constraints 22-2 Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout M 4

60 Fixed Width: Complexity Theorem 2: It is NP-hard to decide, whether for n jobs J 1,..., J n of identical length, given partial ordering constraints, and number of machinces B, there exists a schedule of height at most T, even if T = Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

61 Fixed Width: Complexity Theorem 2: It is NP-hard to decide, whether for n jobs J 1,..., J n of identical length, given partial ordering constraints, and number of machinces B, there exists a schedule of height at most T, even if T = 3. Corollary: If P N P, there is no polynomial algorithm for MPCS with approximation factor < 4/ Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

62 Fixed Width: Complexity Theorem 2: It is NP-hard to decide, whether for n jobs J 1,..., J n of identical length, given partial ordering constraints, and number of machinces B, there exists a schedule of height at most T, even if T = 3. Corollary: If P N P, there is no polynomial algorithm for MPCS with approximation factor < 4/3. Work with your neighbour(s) and then share Why the corollary holds? 5 min 23-3 Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

63 Fixed Width: Complexity Theorem 2: It is NP-hard to decide, whether for n jobs J 1,..., J n of identical length, given partial ordering constraints, and number of machinces B, there exists a schedule of height at most T, even if T = 3. Corollary: If P N P, there is no polynomial algorithm for MPCS with approximation factor < 4/3. Work with your neighbour(s) and then share Why the corollary holds? 5 min 23-4 Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

64 Fixed Width: Algorithm Theorem 3: There exist an approximation algorithm for MPCS with factor 2 1 B Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

65 Fixed Width: Algorithm Theorem 3: There exist an approximation algorithm for MPCS with factor 2 1 B. List-Scheduling-Algorithm: order jobs arbitrarily as a list L when a machine is free, select an allowed job from L; Machine is idle of there is no such job 24-2 Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

66 Summary given resolve cycles layer assignement crossing minimization node positioning edge drawing 25-1 Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

67 Summary given resolve cycles layer assignement Resolve cycles equivalent to minimum feedback set problem, and is NP-hard Heuristic with A A /2 Heuristic with A A /2 + V /6 crossing minimization node positioning edge drawing 25-2 Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

68 Summary given resolve cycles layer assignement Layer assignement Height optimization: topological numbering Total edge length: polynomial alg. through integer linear program Height optimization with fixed width: equivalent to MPCS. NP-hard for 3 levels. Approximation algorithm with factor 2 1 B. crossing minimization node positioning edge drawing 25-3 Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

69 Summary given resolve cycles layer assignement crossing minimization node positioning edge drawing 25-4 Dr. Tamara Mchedlidze Algorithmen zur Visualisierung von Graphen Layered Layout

Algorithms for Graph Visualization Layered Layout

Algorithms for Graph Visualization Layered Layout Algorithms for Graph Visualization INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Tamara Mchedlidze 5.12.2016 1 Example Which are the properties? Which aesthetic ctireria are usefull? 2 Given:

More information

The ILP approach to the layered graph drawing. Ago Kuusik

The ILP approach to the layered graph drawing. Ago Kuusik The ILP approach to the layered graph drawing Ago Kuusik Veskisilla Teooriapäevad 1-3.10.2004 1 Outline Introduction Hierarchical drawing & Sugiyama algorithm Linear Programming (LP) and Integer Linear

More information

Drawing Problem. Possible properties Minimum number of edge crossings Small area Straight or short edges Good representation of graph structure...

Drawing Problem. Possible properties Minimum number of edge crossings Small area Straight or short edges Good representation of graph structure... Graph Drawing Embedding Embedding For a given graph G = (V, E), an embedding (into R 2 ) assigns each vertex a coordinate and each edge a (not necessarily straight) line connecting the corresponding coordinates.

More information

A Fast and Simple Heuristic for Constrained Two-Level Crossing Reduction

A Fast and Simple Heuristic for Constrained Two-Level Crossing Reduction A Fast and Simple Heuristic for Constrained Two-Level Crossing Reduction Michael Forster University of Passau, 94030 Passau, Germany forster@fmi.uni-passau.de Abstract. The one-sided two-level crossing

More information

A GENERALIZATION OF THE

A GENERALIZATION OF THE A GENERALIZATION OF THE DIRECTED GRAPH LAYERING PROBLEM Ulf Rüegg, Thorsten Ehlers, Miro Spönemann, and Reinhard von Hanxleden Department of Computer Science Kiel University THE MOTIVATION 1 2 3 PROBLEM

More information

CMPSCI 311: Introduction to Algorithms Practice Final Exam

CMPSCI 311: Introduction to Algorithms Practice Final Exam CMPSCI 311: Introduction to Algorithms Practice Final Exam Name: ID: Instructions: Answer the questions directly on the exam pages. Show all your work for each question. Providing more detail including

More information

Quadtrees and Meshing

Quadtrees and Meshing Computational Geometry Lecture INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Tamara Mchedlidze Darren Strash 14.12.2015 Motivation: Meshing PC Board Layouts To simulate the heat produced

More information

CSE 417 Branch & Bound (pt 4) Branch & Bound

CSE 417 Branch & Bound (pt 4) Branch & Bound CSE 417 Branch & Bound (pt 4) Branch & Bound Reminders > HW8 due today > HW9 will be posted tomorrow start early program will be slow, so debugging will be slow... Review of previous lectures > Complexity

More information

MOST attention in the literature of network codes has

MOST attention in the literature of network codes has 3862 IEEE TRANSACTIONS ON INFORMATION THEORY, VOL. 56, NO. 8, AUGUST 2010 Efficient Network Code Design for Cyclic Networks Elona Erez, Member, IEEE, and Meir Feder, Fellow, IEEE Abstract This paper introduces

More information

Important separators and parameterized algorithms

Important separators and parameterized algorithms Important separators and parameterized algorithms Dániel Marx 1 1 Institute for Computer Science and Control, Hungarian Academy of Sciences (MTA SZTAKI) Budapest, Hungary PCSS 2017 Vienna, Austria September

More information

COT 6936: Topics in Algorithms! Giri Narasimhan. ECS 254A / EC 2443; Phone: x3748

COT 6936: Topics in Algorithms! Giri Narasimhan. ECS 254A / EC 2443; Phone: x3748 COT 6936: Topics in Algorithms! Giri Narasimhan ECS 254A / EC 2443; Phone: x3748 giri@cs.fiu.edu http://www.cs.fiu.edu/~giri/teach/cot6936_s12.html https://moodle.cis.fiu.edu/v2.1/course/view.php?id=174

More information

A Heuristic for the Constrained One-Sided Two-Layered Crossing Reduction Problem for Dynamic Graph Layout. Dung Mai

A Heuristic for the Constrained One-Sided Two-Layered Crossing Reduction Problem for Dynamic Graph Layout. Dung Mai A Heuristic for the Constrained One-Sided Two-Layered Crossing Reduction Problem for Dynamic Graph Layout by Dung Mai A dissertation proposal submitted in partial fulfillment of the requirements for the

More information

Tutorial for Algorithm s Theory Problem Set 5. January 17, 2013

Tutorial for Algorithm s Theory Problem Set 5. January 17, 2013 Tutorial for Algorithm s Theory Problem Set 5 January 17, 2013 Exercise 1: Maximum Flow Algorithms Consider the following flow network: a) Solve the maximum flow problem on the above network by using the

More information

Visualisierung von Graphen

Visualisierung von Graphen Visualisierung von Graphen Smooth Orthogonal Drawings of Planar Graphs. Vorlesung Sommersemester 205 Orthogonal Layouts all edge segments are horizontal or vertical a well-studied drawing convention many

More information

Graphs and Network Flows IE411. Lecture 13. Dr. Ted Ralphs

Graphs and Network Flows IE411. Lecture 13. Dr. Ted Ralphs Graphs and Network Flows IE411 Lecture 13 Dr. Ted Ralphs IE411 Lecture 13 1 References for Today s Lecture IE411 Lecture 13 2 References for Today s Lecture Required reading Sections 21.1 21.2 References

More information

arxiv: v1 [cs.ds] 1 Sep 2015

arxiv: v1 [cs.ds] 1 Sep 2015 On Minimizing Crossings in Storyline Visualizations Irina Kostitsyna 1, Martin Nöllenburg 2, Valentin Polishchuk 3, André Schulz 4, and Darren Strash 5 arxiv:1509.00442v1 [cs.ds] 1 Sep 2015 1 Dept. of

More information

Radial Coordinate Assignment for Level Graphs

Radial Coordinate Assignment for Level Graphs Radial Coordinate Assignment for Level Graphs Christian Bachmaier, Florian Fischer, and Michael Forster University of Konstanz, 787 Konstanz, Germany christian.bachmaier@uni-konstanz.de Projective Software

More information

Graphs and Network Flows IE411. Lecture 21. Dr. Ted Ralphs

Graphs and Network Flows IE411. Lecture 21. Dr. Ted Ralphs Graphs and Network Flows IE411 Lecture 21 Dr. Ted Ralphs IE411 Lecture 21 1 Combinatorial Optimization and Network Flows In general, most combinatorial optimization and integer programming problems are

More information

On a n Ed g e Crossing P roblem

On a n Ed g e Crossing P roblem On a n Ed g e Crossing P roblem Peter Eades, Department of Computer Science University of Queensland St. Lucia, Queensland 4067 Brendan D. McKay, Department of Computer Science Australian National University

More information

Notes on Minimum Cuts and Modular Functions

Notes on Minimum Cuts and Modular Functions Notes on Minimum Cuts and Modular Functions 1 Introduction The following are my notes on Cunningham s paper [1]. Given a submodular function f and a set S, submodular minimisation is the problem of finding

More information

1. Lecture notes on bipartite matching February 4th,

1. Lecture notes on bipartite matching February 4th, 1. Lecture notes on bipartite matching February 4th, 2015 6 1.1.1 Hall s Theorem Hall s theorem gives a necessary and sufficient condition for a bipartite graph to have a matching which saturates (or matches)

More information

Figure : Example Precedence Graph

Figure : Example Precedence Graph CS787: Advanced Algorithms Topic: Scheduling with Precedence Constraints Presenter(s): James Jolly, Pratima Kolan 17.5.1 Motivation 17.5.1.1 Objective Consider the problem of scheduling a collection of

More information

arxiv: v1 [cs.ds] 29 Aug 2016

arxiv: v1 [cs.ds] 29 Aug 2016 Compact Layered Drawings of General Directed Graphs Adalat Jabrayilov 1, Sven Mallach 3, Petra Mutzel 1, Ulf Rüegg 2, and Reinhard von Hanxleden 2 arxiv:1609.01755v1 [cs.ds] 29 Aug 2016 1 Dept. of Computer

More information

6 Randomized rounding of semidefinite programs

6 Randomized rounding of semidefinite programs 6 Randomized rounding of semidefinite programs We now turn to a new tool which gives substantially improved performance guarantees for some problems We now show how nonlinear programming relaxations can

More information

3 No-Wait Job Shops with Variable Processing Times

3 No-Wait Job Shops with Variable Processing Times 3 No-Wait Job Shops with Variable Processing Times In this chapter we assume that, on top of the classical no-wait job shop setting, we are given a set of processing times for each operation. We may select

More information

Algorithm Design and Analysis

Algorithm Design and Analysis Algorithm Design and Analysis LECTURE 29 Approximation Algorithms Load Balancing Weighted Vertex Cover Reminder: Fill out SRTEs online Don t forget to click submit Sofya Raskhodnikova 12/7/2016 Approximation

More information

Approximation Algorithms

Approximation Algorithms Approximation Algorithms Given an NP-hard problem, what should be done? Theory says you're unlikely to find a poly-time algorithm. Must sacrifice one of three desired features. Solve problem to optimality.

More information

Algorithm and Complexity of Disjointed Connected Dominating Set Problem on Trees

Algorithm and Complexity of Disjointed Connected Dominating Set Problem on Trees Algorithm and Complexity of Disjointed Connected Dominating Set Problem on Trees Wei Wang joint with Zishen Yang, Xianliang Liu School of Mathematics and Statistics, Xi an Jiaotong University Dec 20, 2016

More information

EDGE OFFSET IN DRAWINGS OF LAYERED GRAPHS WITH EVENLY-SPACED NODES ON EACH LAYER

EDGE OFFSET IN DRAWINGS OF LAYERED GRAPHS WITH EVENLY-SPACED NODES ON EACH LAYER EDGE OFFSET IN DRAWINGS OF LAYERED GRAPHS WITH EVENLY-SPACED NODES ON EACH LAYER MATTHIAS F. STALLMANN Abstract. Minimizing edge lengths is an important esthetic criterion in graph drawings. In a layered

More information

/ Approximation Algorithms Lecturer: Michael Dinitz Topic: Linear Programming Date: 2/24/15 Scribe: Runze Tang

/ Approximation Algorithms Lecturer: Michael Dinitz Topic: Linear Programming Date: 2/24/15 Scribe: Runze Tang 600.469 / 600.669 Approximation Algorithms Lecturer: Michael Dinitz Topic: Linear Programming Date: 2/24/15 Scribe: Runze Tang 9.1 Linear Programming Suppose we are trying to approximate a minimization

More information

Visualisation of state machines using the Sugiyama framework. Master of Science Thesis in Computer Science VIKTOR MAZETTI HANNES SÖRENSSON

Visualisation of state machines using the Sugiyama framework. Master of Science Thesis in Computer Science VIKTOR MAZETTI HANNES SÖRENSSON Visualisation of state machines using the Sugiyama framework Master of Science Thesis in Computer Science VIKTOR MAZETTI HANNES SÖRENSSON Chalmers University of Technology University of Gothenburg Department

More information

Strongly connected: A directed graph is strongly connected if every pair of vertices are reachable from each other.

Strongly connected: A directed graph is strongly connected if every pair of vertices are reachable from each other. Directed Graph In a directed graph, each edge (u, v) has a direction u v. Thus (u, v) (v, u). Directed graph is useful to model many practical problems (such as one-way road in traffic network, and asymmetric

More information

A New Heuristic Layout Algorithm for Directed Acyclic Graphs *

A New Heuristic Layout Algorithm for Directed Acyclic Graphs * A New Heuristic Layout Algorithm for Directed Acyclic Graphs * by Stefan Dresbach Lehrstuhl für Wirtschaftsinformatik und Operations Research Universität zu Köln Pohligstr. 1, 50969 Köln revised August

More information

Introduction to Graph Theory

Introduction to Graph Theory Introduction to Graph Theory Tandy Warnow January 20, 2017 Graphs Tandy Warnow Graphs A graph G = (V, E) is an object that contains a vertex set V and an edge set E. We also write V (G) to denote the vertex

More information

Range Searching II: Windowing Queries

Range Searching II: Windowing Queries Computational Geometry Lecture : Windowing Queries INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Tamara Mchedlidze Chih-Hung Liu 23.11.2015 1 Object types in range queries y0 y x x0 Setting

More information

IN general setting, a combinatorial network is

IN general setting, a combinatorial network is JOURNAL OF L A TEX CLASS FILES, VOL. 11, NO. 4, DECEMBER 2012 1 Clustering without replication: approximation and inapproximability Zola Donovan, Vahan Mkrtchyan, and K. Subramani, arxiv:1412.4051v1 [cs.ds]

More information

CS 580: Algorithm Design and Analysis. Jeremiah Blocki Purdue University Spring 2018

CS 580: Algorithm Design and Analysis. Jeremiah Blocki Purdue University Spring 2018 CS 580: Algorithm Design and Analysis Jeremiah Blocki Purdue University Spring 2018 Chapter 11 Approximation Algorithms Slides by Kevin Wayne. Copyright @ 2005 Pearson-Addison Wesley. All rights reserved.

More information

Visual Comparison of Business Process Flowcharts

Visual Comparison of Business Process Flowcharts Visual Comparison of Business Process Flowcharts Bernhard Häussner Julius-Maximilians-Universität Würzburg Institut für Informatik Lehrstuhl für Informatik I Algorithmen, Komplexität und wissensbasierte

More information

Acyclic Network. Tree Based Clustering. Tree Decomposition Methods

Acyclic Network. Tree Based Clustering. Tree Decomposition Methods Summary s Join Tree Importance of s Solving Topological structure defines key features for a wide class of problems CSP: Inference in acyclic network is extremely efficient (polynomial) Idea: remove cycles

More information

Dissertation Crossings in Clustered Level Graphs

Dissertation Crossings in Clustered Level Graphs Fakultät für Mathematik und Informatik Dissertation Crossings in Clustered Level Graphs Michael Forster Supervisor Prof. Dr. Franz J. Brandenburg 30th November 2004 Dissertation for the aquisition of

More information

Graph Theory S 1 I 2 I 1 S 2 I 1 I 2

Graph Theory S 1 I 2 I 1 S 2 I 1 I 2 Graph Theory S I I S S I I S Graphs Definition A graph G is a pair consisting of a vertex set V (G), and an edge set E(G) ( ) V (G). x and y are the endpoints of edge e = {x, y}. They are called adjacent

More information

REU Problems of the Czech Group

REU Problems of the Czech Group REU Problems of the Czech Group Adam Juraszek, Tomáš Masařík, Jitka Novotná, Martin Töpfer, Tomáš Toufar, Jan Voborník, Peter Zeman Mentor: Dr. James Abello DIMACS REU 2015, Piscataway Dominating Sets

More information

Graph Algorithms Matching

Graph Algorithms Matching Chapter 5 Graph Algorithms Matching Algorithm Theory WS 2012/13 Fabian Kuhn Circulation: Demands and Lower Bounds Given: Directed network, with Edge capacities 0and lower bounds l for Node demands for

More information

Maximum flows & Maximum Matchings

Maximum flows & Maximum Matchings Chapter 9 Maximum flows & Maximum Matchings This chapter analyzes flows and matchings. We will define flows and maximum flows and present an algorithm that solves the maximum flow problem. Then matchings

More information

Approximation Algorithms for Geometric Intersection Graphs

Approximation Algorithms for Geometric Intersection Graphs Approximation Algorithms for Geometric Intersection Graphs Subhas C. Nandy (nandysc@isical.ac.in) Advanced Computing and Microelectronics Unit Indian Statistical Institute Kolkata 700108, India. Outline

More information

Datenstrukturen & Algorithmen Solution of Sheet 11 FS 14

Datenstrukturen & Algorithmen Solution of Sheet 11 FS 14 Eidgenössische Technische Hochschule Zürich Ecole polytechnique fédérale de Zurich Politecnico federale di Zurigo Federal Institute of Technology at Zurich Institut für Theoretische Informatik 14th May

More information

INSTITUT FÜR INFORMATIK

INSTITUT FÜR INFORMATIK INSTITUT FÜR INFORMATIK A Generalization of the Directed Graph Layering Problem Ulf Rüegg, Thorsten Ehlers, Miro Spönemann, and Reinhard von Hanxleden Bericht Nr. 1501 February 2015 ISSN 2192-6247 CHRISTIAN-ALBRECHTS-UNIVERSITÄT

More information

AMS /672: Graph Theory Homework Problems - Week V. Problems to be handed in on Wednesday, March 2: 6, 8, 9, 11, 12.

AMS /672: Graph Theory Homework Problems - Week V. Problems to be handed in on Wednesday, March 2: 6, 8, 9, 11, 12. AMS 550.47/67: Graph Theory Homework Problems - Week V Problems to be handed in on Wednesday, March : 6, 8, 9,,.. Assignment Problem. Suppose we have a set {J, J,..., J r } of r jobs to be filled by a

More information

Graph Theory and Optimization Approximation Algorithms

Graph Theory and Optimization Approximation Algorithms Graph Theory and Optimization Approximation Algorithms Nicolas Nisse Université Côte d Azur, Inria, CNRS, I3S, France October 2018 Thank you to F. Giroire for some of the slides N. Nisse Graph Theory and

More information

Approximation slides 1. An optimal polynomial algorithm for the Vertex Cover and matching in Bipartite graphs

Approximation slides 1. An optimal polynomial algorithm for the Vertex Cover and matching in Bipartite graphs Approximation slides 1 An optimal polynomial algorithm for the Vertex Cover and matching in Bipartite graphs Approximation slides 2 Linear independence A collection of row vectors {v T i } are independent

More information

Lecture 3: Graphs and flows

Lecture 3: Graphs and flows Chapter 3 Lecture 3: Graphs and flows Graphs: a useful combinatorial structure. Definitions: graph, directed and undirected graph, edge as ordered pair, path, cycle, connected graph, strongly connected

More information

Recent Advances in FPT and Exact Algorithms for NP-Complete Problems

Recent Advances in FPT and Exact Algorithms for NP-Complete Problems 1 Fine-Grained Complexity and Algorithm Design Boot Camp Recent Advances in FPT and Exact Algorithms for NP-Complete Problems Dániel Marx Institute for Computer Science and Control, Hungarian Academy of

More information

Introduction to Mathematical Programming IE406. Lecture 20. Dr. Ted Ralphs

Introduction to Mathematical Programming IE406. Lecture 20. Dr. Ted Ralphs Introduction to Mathematical Programming IE406 Lecture 20 Dr. Ted Ralphs IE406 Lecture 20 1 Reading for This Lecture Bertsimas Sections 10.1, 11.4 IE406 Lecture 20 2 Integer Linear Programming An integer

More information

arxiv: v2 [cs.ds] 25 Jan 2017

arxiv: v2 [cs.ds] 25 Jan 2017 d-hop Dominating Set for Directed Graph with in-degree Bounded by One arxiv:1404.6890v2 [cs.ds] 25 Jan 2017 Joydeep Banerjee, Arun Das, and Arunabha Sen School of Computing, Informatics and Decision System

More information

Summary. Acyclic Networks Join Tree Clustering. Tree Decomposition Methods. Acyclic Network. Tree Based Clustering. Tree Decomposition.

Summary. Acyclic Networks Join Tree Clustering. Tree Decomposition Methods. Acyclic Network. Tree Based Clustering. Tree Decomposition. Summary s Join Tree Importance of s Solving Topological structure denes key features for a wide class of problems CSP: Inference in acyclic network is extremely ecient (polynomial) Idea: remove cycles

More information

Introduction VLSI PHYSICAL DESIGN AUTOMATION

Introduction VLSI PHYSICAL DESIGN AUTOMATION VLSI PHYSICAL DESIGN AUTOMATION PROF. INDRANIL SENGUPTA DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING Introduction Main steps in VLSI physical design 1. Partitioning and Floorplanning l 2. Placement 3.

More information

Chapter 5 Graph Algorithms Algorithm Theory WS 2012/13 Fabian Kuhn

Chapter 5 Graph Algorithms Algorithm Theory WS 2012/13 Fabian Kuhn Chapter 5 Graph Algorithms Algorithm Theory WS 2012/13 Fabian Kuhn Graphs Extremely important concept in computer science Graph, : node (or vertex) set : edge set Simple graph: no self loops, no multiple

More information

CSE 417 Network Flows (pt 3) Modeling with Min Cuts

CSE 417 Network Flows (pt 3) Modeling with Min Cuts CSE 417 Network Flows (pt 3) Modeling with Min Cuts Reminders > HW6 is due on Friday start early bug fixed on line 33 of OptimalLineup.java: > change true to false Review of last two lectures > Defined

More information

1. Lecture notes on bipartite matching

1. Lecture notes on bipartite matching Massachusetts Institute of Technology 18.453: Combinatorial Optimization Michel X. Goemans February 5, 2017 1. Lecture notes on bipartite matching Matching problems are among the fundamental problems in

More information

Digital Logic Design: a rigorous approach c

Digital Logic Design: a rigorous approach c Digital Logic Design: a rigorous approach c Chapter 4: Directed Graphs Guy Even Moti Medina School of Electrical Engineering Tel-Aviv Univ. October 31, 2017 Book Homepage: http://www.eng.tau.ac.il/~guy/even-medina

More information

CSE 421 Applications of DFS(?) Topological sort

CSE 421 Applications of DFS(?) Topological sort CSE 421 Applications of DFS(?) Topological sort Yin Tat Lee 1 Precedence Constraints In a directed graph, an edge (i, j) means task i must occur before task j. Applications Course prerequisite: course

More information

6. Lecture notes on matroid intersection

6. Lecture notes on matroid intersection Massachusetts Institute of Technology 18.453: Combinatorial Optimization Michel X. Goemans May 2, 2017 6. Lecture notes on matroid intersection One nice feature about matroids is that a simple greedy algorithm

More information

Journal of Graph Algorithms and Applications

Journal of Graph Algorithms and Applications Journal of Graph Algorithms and Applications http://www.cs.brown.edu/publications/jgaa/ vol. 1, no. 1, pp. 1 25 (1997) 2-Layer Straightline Crossing Minimization: Performance of Exact and Heuristic Algorithms

More information

11. APPROXIMATION ALGORITHMS

11. APPROXIMATION ALGORITHMS 11. APPROXIMATION ALGORITHMS load balancing center selection pricing method: vertex cover LP rounding: vertex cover generalized load balancing knapsack problem Lecture slides by Kevin Wayne Copyright 2005

More information

Index. stack-based, 400 A* algorithm, 325

Index. stack-based, 400 A* algorithm, 325 Index Abstract transitive closure, 174-175, 217-221 Active vertex, 411 Acyclic graph. See Digraph; Directed acyclic graph (DAG) Acyclic network, 313-321, 334-335 maxflow, 427-429 Adjacency-lists representation,

More information

Acyclic Network. Tree Based Clustering. Tree Decomposition Methods

Acyclic Network. Tree Based Clustering. Tree Decomposition Methods Summary s Cluster Tree Elimination Importance of s Solving Topological structure dene key features for a wide class of problems CSP: Inference in acyclic network is extremely ecient (polynomial) Idea:

More information

11.1. Definitions. 11. Domination in Graphs

11.1. Definitions. 11. Domination in Graphs 11. Domination in Graphs Some definitions Minimal dominating sets Bounds for the domination number. The independent domination number Other domination parameters. 11.1. Definitions A vertex v in a graph

More information

Grandalf : A Python module for Graph Drawings

Grandalf : A Python module for Graph Drawings Grandalf : A Python module for Graph Drawings https://github.com/bdcht/grandalf Axel Tillequin Bibliography on Graph Drawings - 2008-2010 June 2011 bdcht (Axel Tillequin) https://github.com/bdcht/grandalf

More information

Interaction Between Input and Output-Sensitive

Interaction Between Input and Output-Sensitive Interaction Between Input and Output-Sensitive Really? Mamadou M. Kanté Université Blaise Pascal - LIMOS, CNRS Enumeration Algorithms Using Structure, Lorentz Institute, August 26 th, 2015 1 Introduction

More information

Algorithms for Integer Programming

Algorithms for Integer Programming Algorithms for Integer Programming Laura Galli November 9, 2016 Unlike linear programming problems, integer programming problems are very difficult to solve. In fact, no efficient general algorithm is

More information

Important separators and parameterized algorithms

Important separators and parameterized algorithms Important separators and parameterized algorithms Dániel Marx 1 1 Institute for Computer Science and Control, Hungarian Academy of Sciences (MTA SZTAKI) Budapest, Hungary School on Parameterized Algorithms

More information

Algorithmic Aspects of Communication Networks

Algorithmic Aspects of Communication Networks Algorithmic Aspects of Communication Networks Chapter 5 Network Resilience Algorithmic Aspects of ComNets (WS 16/17): 05 Network Resilience 1 Introduction and Motivation Network resilience denotes the

More information

CS6702 GRAPH THEORY AND APPLICATIONS 2 MARKS QUESTIONS AND ANSWERS

CS6702 GRAPH THEORY AND APPLICATIONS 2 MARKS QUESTIONS AND ANSWERS CS6702 GRAPH THEORY AND APPLICATIONS 2 MARKS QUESTIONS AND ANSWERS 1 UNIT I INTRODUCTION CS6702 GRAPH THEORY AND APPLICATIONS 2 MARKS QUESTIONS AND ANSWERS 1. Define Graph. A graph G = (V, E) consists

More information

Optimal k-level Planarization and Crossing Minimization

Optimal k-level Planarization and Crossing Minimization Optimal k-level Planarization and Crossing Minimization Graeme Gange 1, Peter J. Stuckey 1, and Kim Marriott 2 1 Department of Computer Science and Software Engineering The University of Melbourne, Vic.

More information

arxiv: v1 [cs.dm] 21 Dec 2015

arxiv: v1 [cs.dm] 21 Dec 2015 The Maximum Cardinality Cut Problem is Polynomial in Proper Interval Graphs Arman Boyacı 1, Tinaz Ekim 1, and Mordechai Shalom 1 Department of Industrial Engineering, Boğaziçi University, Istanbul, Turkey

More information

Approximation Algorithms

Approximation Algorithms Approximation Algorithms Frédéric Giroire FG Simplex 1/11 Motivation Goal: Find good solutions for difficult problems (NP-hard). Be able to quantify the goodness of the given solution. Presentation of

More information

Graph Theory. Connectivity, Coloring, Matching. Arjun Suresh 1. 1 GATE Overflow

Graph Theory. Connectivity, Coloring, Matching. Arjun Suresh 1. 1 GATE Overflow Graph Theory Connectivity, Coloring, Matching Arjun Suresh 1 1 GATE Overflow GO Classroom, August 2018 Thanks to Subarna/Sukanya Das for wonderful figures Arjun, Suresh (GO) Graph Theory GATE 2019 1 /

More information

10. EXTENDING TRACTABILITY

10. EXTENDING TRACTABILITY 0. EXTENDING TRACTABILITY finding small vertex covers solving NP-hard problems on trees circular arc coverings vertex cover in bipartite graphs Lecture slides by Kevin Wayne Copyright 005 Pearson-Addison

More information

Applying the weighted barycentre method to interactive graph visualization

Applying the weighted barycentre method to interactive graph visualization Applying the weighted barycentre method to interactive graph visualization Peter Eades University of Sydney Thanks for some software: Hooman Reisi Dekhordi Patrick Eades Graphs and Graph Drawings What

More information

Graph and Digraph Glossary

Graph and Digraph Glossary 1 of 15 31.1.2004 14:45 Graph and Digraph Glossary A B C D E F G H I-J K L M N O P-Q R S T U V W-Z Acyclic Graph A graph is acyclic if it contains no cycles. Adjacency Matrix A 0-1 square matrix whose

More information

Discrete Optimization

Discrete Optimization Minisymposium 1 Discrete Optimization Leiter des Symposiums: Prof. Dr. Jens Vygen Prof. Dr. Robert Weismantel Forschungsinstitut für Fakultät für Mathematik / IMO Diskrete Mathematik Universität Bonn Otto-von-Guericke-Universität

More information

MAT 7003 : Mathematical Foundations. (for Software Engineering) J Paul Gibson, A207.

MAT 7003 : Mathematical Foundations. (for Software Engineering) J Paul Gibson, A207. MAT 7003 : Mathematical Foundations (for Software Engineering) J Paul Gibson, A207 paul.gibson@it-sudparis.eu http://www-public.it-sudparis.eu/~gibson/teaching/mat7003/ Graphs and Trees http://www-public.it-sudparis.eu/~gibson/teaching/mat7003/l2-graphsandtrees.pdf

More information

Module 7. Independent sets, coverings. and matchings. Contents

Module 7. Independent sets, coverings. and matchings. Contents Module 7 Independent sets, coverings Contents and matchings 7.1 Introduction.......................... 152 7.2 Independent sets and coverings: basic equations..... 152 7.3 Matchings in bipartite graphs................

More information

Introduction to Mathematical Programming IE406. Lecture 16. Dr. Ted Ralphs

Introduction to Mathematical Programming IE406. Lecture 16. Dr. Ted Ralphs Introduction to Mathematical Programming IE406 Lecture 16 Dr. Ted Ralphs IE406 Lecture 16 1 Reading for This Lecture Bertsimas 7.1-7.3 IE406 Lecture 16 2 Network Flow Problems Networks are used to model

More information

Space vs Time, Cache vs Main Memory

Space vs Time, Cache vs Main Memory Space vs Time, Cache vs Main Memory Marc Moreno Maza University of Western Ontario, London, Ontario (Canada) CS 4435 - CS 9624 (Moreno Maza) Space vs Time, Cache vs Main Memory CS 4435 - CS 9624 1 / 49

More information

Integer Programming Theory

Integer Programming Theory Integer Programming Theory Laura Galli October 24, 2016 In the following we assume all functions are linear, hence we often drop the term linear. In discrete optimization, we seek to find a solution x

More information

The Ordered Covering Problem

The Ordered Covering Problem The Ordered Covering Problem Uriel Feige Yael Hitron November 8, 2016 Abstract We introduce the Ordered Covering (OC) problem. The input is a finite set of n elements X, a color function c : X {0, 1} and

More information

Recitation 12. Dynamic Programming Announcements. SegmentLab has been released and is due Apr 14.

Recitation 12. Dynamic Programming Announcements. SegmentLab has been released and is due Apr 14. Recitation 12 Dynamic Programming 12.1 Announcements SegmentLab has been released and is due Apr 14. 73 74 RECITATION 12. DYNAMIC PROGRAMMING 12.2 Matrix Chain Product Definition 12.1. In the matrix chain

More information

val(y, I) α (9.0.2) α (9.0.3)

val(y, I) α (9.0.2) α (9.0.3) CS787: Advanced Algorithms Lecture 9: Approximation Algorithms In this lecture we will discuss some NP-complete optimization problems and give algorithms for solving them that produce a nearly optimal,

More information

Theorem 2.9: nearest addition algorithm

Theorem 2.9: nearest addition algorithm There are severe limits on our ability to compute near-optimal tours It is NP-complete to decide whether a given undirected =(,)has a Hamiltonian cycle An approximation algorithm for the TSP can be used

More information

Lecture 10. Elementary Graph Algorithm Minimum Spanning Trees

Lecture 10. Elementary Graph Algorithm Minimum Spanning Trees Lecture 10. Elementary Graph Algorithm Minimum Spanning Trees T. H. Cormen, C. E. Leiserson and R. L. Rivest Introduction to Algorithms, 3rd Edition, MIT Press, 2009 Sungkyunkwan University Hyunseung Choo

More information

Steiner Trees and Forests

Steiner Trees and Forests Massachusetts Institute of Technology Lecturer: Adriana Lopez 18.434: Seminar in Theoretical Computer Science March 7, 2006 Steiner Trees and Forests 1 Steiner Tree Problem Given an undirected graph G

More information

Lecture 11: Maximum flow and minimum cut

Lecture 11: Maximum flow and minimum cut Optimisation Part IB - Easter 2018 Lecture 11: Maximum flow and minimum cut Lecturer: Quentin Berthet 4.4. The maximum flow problem. We consider in this lecture a particular kind of flow problem, with

More information

Iterative Methods in Combinatorial Optimization. R. Ravi Carnegie Bosch Professor Tepper School of Business Carnegie Mellon University

Iterative Methods in Combinatorial Optimization. R. Ravi Carnegie Bosch Professor Tepper School of Business Carnegie Mellon University Iterative Methods in Combinatorial Optimization R. Ravi Carnegie Bosch Professor Tepper School of Business Carnegie Mellon University ravi@cmu.edu Combinatorial Optimization Easy Problems : polynomial

More information

Today. Maximum flow. Maximum flow. Problem

Today. Maximum flow. Maximum flow. Problem 5 Maximum Flow (slides 1 4) Today Maximum flow Algorithms and Networks 2008 Maximum flow problem Applications Briefly: Ford-Fulkerson; min cut max flow theorem Preflow push algorithm Lift to front algorithm

More information

Copyright 2000, Kevin Wayne 1

Copyright 2000, Kevin Wayne 1 Linear Time: O(n) CS 580: Algorithm Design and Analysis 2.4 A Survey of Common Running Times Merge. Combine two sorted lists A = a 1,a 2,,a n with B = b 1,b 2,,b n into sorted whole. Jeremiah Blocki Purdue

More information

Instruction Selection on SSA Graphs

Instruction Selection on SSA Graphs Instruction Selection on SSA Graphs Sebastian Hack, Sebastian Buchwald, Andreas Zwinkau Compiler ruction Course Winter Term 2009/2010 saarland university computer science 2 Instruction Selection Load ia32

More information

Theoretical Computer Science

Theoretical Computer Science Theoretical Computer Science 408 (2008) 224 240 Contents lists available at ScienceDirect Theoretical Computer Science journal homepage: www.elsevier.com/locate/tcs Algorithms for computing a parameterized

More information

Directed Feedback Vertex Set Problem is FPT

Directed Feedback Vertex Set Problem is FPT Directed Feedback Vertex Set Problem is FPT Jianer Chen Yang Liu Songjian Lu Department of Computer Science Texas A&M University College Station, TX 77843, USA {chen,yangliu,sjlu}@cs.tamu.edu Abstract

More information

1 Overview, Models of Computation, Brent s Theorem

1 Overview, Models of Computation, Brent s Theorem CME 323: Distributed Algorithms and Optimization, Spring 2017 http://stanford.edu/~rezab/dao. Instructor: Reza Zadeh, Matroid and Stanford. Lecture 1, 4/3/2017. Scribed by Andreas Santucci. 1 Overview,

More information