Compact Layered Drawings of General Directed Graphs Adalat Jabrayilov 1 , Sven Mallach 2 , Petra Mutzel 1 , Ulf uegg 3 , and Reinhard von Hanxleden 3 R¨ 1 TU Dortmund University, Germany 2 University of Cologne, Germany 3 University of Kiel, Germany 24th International Symposium on Graph Drawing & Network Visualization 19-21 September 2016 Adalat Jabrayilov 1/18
Compact Graph Layering for Digraphs Classic Layering on A4 Compact Layering on A4 Compact Layered Drawings of General Directed Graphs Adalat Jabrayilov 2/18
Layering for Digraphs: Notation u Regular Vertex 1 Forward Arc Height 2 v Dummy Vertex Reverse Arc 3 w Layers Width Adjacent vertices on different layers total arc lengths = #arcs + #dummy vertices Compact Layered Drawings of General Directed Graphs Adalat Jabrayilov 3/18
Compact vs Classic Layering for Digraphs Classic Layering [Sugiyama et. al, 1981] Preprocessing: cycle breaking → DAG minimize: number of reverse arcs Rev Layering of the DAG minimize: total arc lengths Len Compact Layering integrates cycle breaking & layering Compact Layered Drawings of General Directed Graphs Adalat Jabrayilov 4/18
Compact Layering Models for Digraphs Generalised Layering (GLP) [R¨ uegg et. al, 2016] minimize: weighted sum of Rev , Len for given Height H Compact Generalised Layering (CGLP) [this talk] GLP + Width (including dummy vertices) minimize: weighted sum of Rev , Len , Width for given Height H Min+Max Length Layering (MMLP) [this talk] slight modification of CGLP Compact Layered Drawings of General Directed Graphs Adalat Jabrayilov 5/18
Compact Generalised Layering Problem (CGLP) CGLP Classic MMLP Compact Layered Drawings of General Directed Graphs Adalat Jabrayilov 6/18
Mixed Integer Linear Program CGL models CGLP as Partial Ordering Problem ( POP ) 1 a Let ℓ ( v ) the position of vertex v in ordering 2 c b POP variables Partial Ordering � 1 ℓ ( u ) < ℓ ( v ) for each pair u � = v ∈ V : y u , v = 0 otherwise for each pair u � = v ∈ V : y u , v + y v , u ≤ 1 Compact Layered Drawings of General Directed Graphs Adalat Jabrayilov 7/18
Mixed Integer Linear Program CGL u 1 Consider layers as help vertices { 1 , 2 , · · · , H } 2 v with ℓ ( k ) = k for each k ∈ { 1 , 2 , · · · , H } w H Variables for Layering: for each v ∈ V , k ∈ { 1 , 2 , · · · , H } POP variable y v , k , y k , v POP Variables Reverse arcs: for each arc ( u , v ) 1 ℓ ( u ) < ℓ ( v ) y u , v = 0 otherwise POP variable y u , v , y v , u Dummy vertices: for each ( u , v ) ∈ A , k ∈ { 1 , 2 , · · · , H } � 1 arc ( u , v ) causes dummy on layer k z uv , k = 0 otherwise Width: W ∈ R Compact Layered Drawings of General Directed Graphs Adalat Jabrayilov 8/18
Mixed Integer Linear Program CGL u 1 H � � � 2 v min ω rev y v , u + ω len z uv , k + ω wid W ( u , v ) ∈ A ( u , v ) ∈ A k = 1 w H s . t . y v , 1 = 0 ∀ v ∈ V = 0 ∀ v ∈ V y H , v y k , v + y v , k + 1 = 1 ∀ v ∈ V , 1 ≤ k ≤ H − 1 y k , v − y k + 1 , v ≥ 0 ∀ v ∈ V , 1 ≤ k ≤ H − 1 y u , v + y v , u = 1 ∀ ( u , v ) ∈ A y v , k + y k , u − y v , u ≥ 0 ∀ ( u , v ) ∈ A , 1 ≤ k ≤ H y u , k + y k , v − y u , v ≥ 0 ∀ ( u , v ) ∈ A , 1 ≤ k ≤ H y k , u + y v , k − z uv , k ≤ 1 ∀ ( u , v ) ∈ A , 1 ≤ k ≤ H y k , v + y u , k − z uv , k ≤ 1 ∀ ( u , v ) ∈ A , 1 ≤ k ≤ H � � ( 1 − y v , k − y k , v ) + ≤ W 1 ≤ k ≤ H z uv , k v ∈ V ( u , v ) ∈ A y ∈ { 0 , 1 } , z ∈ [ 0 , 1 ] , W ∈ R Compact Layered Drawings of General Directed Graphs Adalat Jabrayilov 9/18
Mixed Integer Linear Program EXT extends DAG Layering Model [Healy and Nikolov, 2002] models CGLP as Assignment Problem (AP) uses so called assignment variables for layering of vertices much slower than CGL Compact Layered Drawings of General Directed Graphs Adalat Jabrayilov 10/18
Min+Max Length Problem (MMLP) MMLP Classic CGLP Compact Layered Drawings of General Directed Graphs Adalat Jabrayilov 11/18
Mixed Integer Linear Program MML slight modification of CGL without variables and constraints corresponding to dummies MML objective vs CGL objective CGL H � � � min ω rev y v , u + ω len z uv , k + ω wid W k = 1 ( u , v ) ∈ A ( u , v ) ∈ A MML H � � � min ω rev y v , u + ω len ( y k , v − y k , u ) + ω wid W r ( u , v ) ∈ A ( u , v ) ∈ A k = 1 Compact Layered Drawings of General Directed Graphs Adalat Jabrayilov 12/18
Evaluation Used Hard/Software System: Intel Core i7-4790, 3.6 GHz with 32 GB RAM, Linux Solver: MIP Solver Gurobi 6.5 Number of used threads: 1 Parameters √ | V | H = ⌈ 0 . 6 ⌉ ω rev = | A | · H ω len = 1 ω wid = 1 Compact Layered Drawings of General Directed Graphs Adalat Jabrayilov 13/18
Evaluation Benchmark Sets: ATTar: extraction of 146 acyclic AT & T graphs with final drawings aspect ratio with classic layout: final drawings Width final drawings Height ≤ 0 . 5 Vertices: 20-99 Arcs: 20-168 On average: | A | | V | = 1 . 5 Random: 340 Random (non acyclic) directected graphs Vertices: 17-100 Arcs: 30-158 On average: | A | | V | = 1 . 5 Compact Layered Drawings of General Directed Graphs Adalat Jabrayilov 14/18
Classic vs CGLP vs MMLP (ATTar Graphs) 0.8 Final drawings aspect ratio 0.6 0.4 0.2 0.0 Classic CGLP MMLP Compact Layered Drawings of General Directed Graphs Adalat Jabrayilov 15/18
CGL vs MML (ATTar Graphs) 8 25 6 Time [s] 4 15 2 5 0 0 | V | [15, 30) [30, 45) [45, 60) [60, 75) [75, 90) [90, 105) EXT: 29 timeouts (time limit 1h) Compact Layered Drawings of General Directed Graphs Adalat Jabrayilov 16/18
CGL vs MML (Random Graphs) 250 15 150 Time [s] 10 5 50 0 0 | V | [15, 30) [30, 45) [45, 60) [60, 75) [75, 90) [90, 105) EXT: 143 timeouts (time limit 1h) Compact Layered Drawings of General Directed Graphs Adalat Jabrayilov 17/18
Conclusion We introduced: Two Compact Layout Problems: CGLP and MMLP Two new ILP models based on POP variables: CGL and MML Our experiments showed: Both models can improve aspect ratio Both ILP formulations can be solved for each ATTar instance within 30 seconds. Compact Layered Drawings of General Directed Graphs Adalat Jabrayilov 18/18
Recommend
More recommend