stress minimizing orthogonal layout of data flow diagrams
play

Stress-Minimizing Orthogonal Layout of Data Flow Diagrams with Ports - PowerPoint PPT Presentation

Stress-Minimizing Orthogonal Layout of Data Flow Diagrams with Ports Ulf Regg Steve Kieffer Tim Dwyer Kim Marriott Michael Wybrow Kiel University Monash University Graph Drawing 2014 Background: Automotive Industry 2 Background:


  1. Stress-Minimizing Orthogonal Layout of Data Flow Diagrams with Ports Ulf Rüegg Steve Kieffer Tim Dwyer Kim Marriott Michael Wybrow Kiel University Monash University Graph Drawing 2014

  2. Background: Automotive Industry 2

  3. Background: Automotive Industry ATOMIC NODES 2

  4. Background: Automotive Industry ORTHOGONAL EDGES ATOMIC NODES 2

  5. Background: Automotive Industry ORTHOGONAL EDGES PORTS ATOMIC NODES 2

  6. Background: Automotive Industry ORTHOGONAL EDGES PORTS COMPOUND NODES ATOMIC NODES 2

  7. Background: Automotive Industry ORTHOGONAL EDGES PORTS HIERARCHICAL PORTS COMPOUND NODES ATOMIC NODES 2

  8. Layout Requirements 3

  9. Layout Requirements R1 3

  10. Layout Requirements R2 R1 3

  11. Layout Requirements R2 R3 R1 3

  12. Layout Requirements R4 R2 R3 R1 3

  13. Layout Requirements R4 R2 R5 R3 R1 3

  14. Layout Requirements R4 R2 R5 R3 R6 R1 3

  15. Current Layout Approach • Use layer-based methods [Sugiyama et al. 81] – A lot of modifications (ports etc.) [Schulze et al. 14]  4

  16. Current Layout Approach • Use layer-based methods [Sugiyama et al. 81] – A lot of modifications (ports etc.) [Schulze et al. 14] • Feedback from industrial users  4

  17. Current Layout Approach • Use layer-based methods [Sugiyama et al. 81] – A lot of modifications (ports etc.) [Schulze et al. 14] • Feedback from industrial users – In general satisfying layouts  4

  18. Current Layout Approach • Use layer-based methods [Sugiyama et al. 81] – A lot of modifications (ports etc.) [Schulze et al. 14] • Feedback from industrial users – In general satisfying layouts – "Too much whitespace"  4

  19. Current Layout Approach • Use layer-based methods [Sugiyama et al. 81] – A lot of modifications (ports etc.) [Schulze et al. 14] • Feedback from industrial users – In general satisfying layouts – "Too much whitespace" – "Edge crossings not always important"  4

  20. Current Layout Approach • Use layer-based methods [Sugiyama et al. 81] – A lot of modifications (ports etc.) [Schulze et al. 14] • Feedback from industrial users – In general satisfying layouts – "Too much whitespace" – "Edge crossings not always important"  Desired: simple/flexible solution 4

  21. New Approach • Constrained stress minimizing layout 5

  22. New Approach • Constrained stress minimizing layout – Similar to force-directed approaches cola.js 5

  23. New Approach • Constrained stress minimizing layout – Similar to force-directed approaches – Minimizes a single goal function cola.js 5

  24. New Approach • Constrained stress minimizing layout – Similar to force-directed approaches – Minimizes a single goal function – Subject to separation constraints cola.js 5

  25. Goal Function: P-Stress Minimize 𝑚𝑞 𝑣𝑤 − 𝑐(𝑣, 𝑤) + 2 + 𝑐 𝑣, 𝑤 − 𝑚 + 2 𝑚 −2 𝑥 𝑣𝑤 𝑣<𝑤∈𝑊 (𝑣,𝑤)∈𝐹 subject to certain constraints [Dwyer et al. GD'09] 6

  26. Goal Function: P-Stress repulsive attractive Minimize 𝑚𝑞 𝑣𝑤 − 𝑐(𝑣, 𝑤) + 2 + 𝑐 𝑣, 𝑤 − 𝑚 + 2 𝑚 −2 𝑥 𝑣𝑤 𝑣<𝑤∈𝑊 (𝑣,𝑤)∈𝐹 subject to certain constraints INTUITION 𝑐 𝑣, 𝑤 euclidean distance between u and v Nodes repulse each other up to a • 𝑞 𝑣𝑤 number of edges on shortest path between u and v certain distance 𝑚 an ideal edge length Edges contract until (individual) • 𝑥 𝑣𝑤 normalization factor ideal length is reached (𝑨) + max(0,𝑨) [Dwyer et al. GD'09] 6

  27. R1 - Flow Constraints 7

  28. R1 - Flow Constraints 𝑦 𝑡 + δ𝑦 𝑡𝑢 ≤ 𝑦 𝑢 7

  29. R2 - Port Constraints FIXED POSITION Port Dummy 8

  30. R2 - Port Constraints FIXED POSITION Port Dummy 𝑦 𝑞 + δ𝑦 = 𝑦 𝑜 𝑧 𝑞 − δ𝑧 = 𝑧 𝑜 8

  31. R2 - Port Constraints FIXED POSITION FIXED SIDE Port Dummy 𝑦 𝑞 + δ𝑦 = 𝑦 𝑜 𝑧 𝑞 − δ𝑧 = 𝑧 𝑜 8

  32. R2 - Port Constraints FIXED POSITION FIXED SIDE 𝑦 𝑞 + δ𝑦 = 𝑦 𝑜 Port Dummy 𝑦 𝑞 + δ𝑦 = 𝑦 𝑜 𝑧 𝑞 − δ𝑧 = 𝑧 𝑜 8

  33. R2 - Port Constraints FIXED POSITION FIXED SIDE 𝑦 𝑞 + δ𝑦 = 𝑦 𝑜 Port Dummy 𝑦 𝑞 + δ𝑦 = 𝑦 𝑜 𝑧 𝑞 + ℎ 𝑜 2 ≥ 𝑧 𝑜 𝑧 𝑞 − δ𝑧 = 𝑧 𝑜 𝑧 𝑞 − ℎ 𝑜 2 ≤ 𝑧 𝑜 8

  34. R3 - Orthogonalizing Constraints fixed [Kieffer et al. GD'13] 9

  35. R3 - Orthogonalizing Constraints 𝑧 𝑏 = 𝑧 𝑑 [Kieffer et al. GD'13] 9

  36. R3 - Orthogonalizing Constraints 𝑧 𝑏 = 𝑧 𝑑 [Kieffer et al. GD'13] 9

  37. R3 - Orthogonalizing Constraints 𝑧 𝑏 = 𝑧 𝑑 𝑧 𝑐 = 𝑧 𝑑′ [Kieffer et al. GD'13] 9

  38. Example 10

  39. Example 10

  40. Example 10

  41. Example [Wybrow et al. GD'10] 10

  42. Results Compared to current approach (KLay Layered) 11

  43. Results Compared to current approach (KLay Layered) BETTER Stress 11

  44. Results Compared to current approach (KLay Layered) BETTER Stress Average edge length 11

  45. Results Compared to current approach (KLay Layered) BETTER Stress Average edge length Edge length variance 11

  46. Results Compared to current approach (KLay Layered) BETTER Stress Average edge length Edge length variance Area and aspect ratio 11

  47. Results Compared to current approach (KLay Layered) BETTER Stress Average edge length Edge length variance Area and aspect ratio Symmetry 11

  48. Results Compared to current approach (KLay Layered) BETTER Stress Average edge length Edge length variance Area and aspect ratio Symmetry Implementation complexity 11

  49. Results Compared to current approach (KLay Layered) BETTER WORSE Edge crossings Stress Average edge length Edge length variance Area and aspect ratio Symmetry Implementation complexity 11

  50. Results Compared to current approach (KLay Layered) BETTER WORSE Edge crossings Stress Edge bends Average edge length Edge length variance Area and aspect ratio Symmetry Implementation complexity 11

  51. Results Compared to current approach (KLay Layered) BETTER WORSE Edge crossings Stress Edge bends Average edge length Edge length variance Area and aspect ratio Symmetry Implementation complexity Execution time 11

  52. R4/R5 - Compound Graphs KLay Layered 12

  53. R4/R5 - Compound Graphs CoDaFlow 12

  54. Summary - CoDaFlow • One goal function: minimize stress 13

  55. Summary - CoDaFlow • One goal function: minimize stress • Incrementally add constraints 1. No constraints 2. + Flow constraints 3. + Port costraints 4. + Non-overlap constraints 5. + Orthogonalizing constraints 13

  56. Summary - CoDaFlow • One goal function: minimize stress • Incrementally add constraints 1. No constraints 2. + Flow constraints 3. + Port costraints 4. + Non-overlap constraints 5. + Orthogonalizing constraints • Orthogonal edge routing with given node positions 13

  57. Closer to Industrial Scale 14

  58. Closer to Industrial Scale Thank you! Questions? 14

  59. References Schulze, C. D., Spönemann, M., & von Hanxleden, R. (2014). Drawing • layered graphs with port constraints. Journal of Visual Languages & Computing. Dwyer, T., Koren, Y., & Marriott, K. (2006). IPSep-CoLa: An incremental • procedure for separation constraint layout of graphs. IEEE Transactions on Visualization and Computer Graphics Dwyer, T., Marriott, K., & Wybrow, M. (2009). Topology preserving • constrained graph layout. Graph Drawing . Kieffer, S., Dwyer, T., Marriott, K., & Wybrow, M. (2013). Incremental • grid-like layout using soft and hard constraints. Graph Drawing . Wybrow, M., Marriott, K., & Stuckey, P. (2010). Orthogonal connector • routing. Graph Drawing . 15

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend