Breaking cycles for minimizing crossings

We consider the one-sided crossing minimization problem (CP):given a bipartite graph G and a permutationx0 of the vertices on a layer, find a perumuationx1 of the vertices on the other layer whichminimizes the number of edge crossings in any straightline drawingof G where vertices are placed on two parallel lines andsorted according to x0 and x1.Solving CP represents a fundamental step in the construction ofaesthetically pleasing layouts of heirarchies and directed graphs,but unfortunately this problem has been proved to beNP-complete. In this paper we address the strong relation between CP and theproblem of computing minimum feedback arc sets in directed graphsand we devise a enw approximation algorithm for CP, called PM, thatexploits this dependency. We experimantally and visually comparethe performance of PM with the performance of well-known algorithmsand of recent attractive strategies. Experiments are carried out ondifferent families of randomly generated graphs, on pathologicalinstances, and on real test sets. Performance indicators includeboth number of edge crossings and running time, as well asstructural measures of the problem instances. We found CP to be avery interesting and rich problem from a combinatorial point ofview. Our results clearly separate the behavior of the algorithms,proving the effectiveness of PM on most test sets and showingtradeoffs between quality of the solutions and running time.However, if the visual complexity of the drawings is considered, wefound no clear winner. This confirms the importance of optimizingalso other aesthetic criteria such as symmetry, edge length, andangular resolution.

[1]  John F. O'Callaghan,et al.  The extraction of drainage networks from digital elevation data , 1984, Comput. Vis. Graph. Image Process..

[2]  Reuven Bar-Yehuda,et al.  One for the Price of Two: a Unified Approach for Approximating Covering Problems , 1998, Algorithmica.

[3]  Xuemin Lin,et al.  A heuristic for the feedback arc set problem , 1995, Australas. J Comb..

[4]  Edward F. Grove,et al.  External-memory graph algorithms , 1995, SODA '95.

[5]  David S. Johnson,et al.  Computers and Intractability: A Guide to the Theory of NP-Completeness , 1978 .

[6]  Camil Demetrescu,et al.  Break the "Right" Cycles and Get the "Best" Drawing , 2000 .

[7]  Rossella Petreschi,et al.  Reversible Execution and Visualization of Programs with LEONARDO , 2000, J. Vis. Lang. Comput..

[8]  Peter Eades,et al.  Drawing Graphs in Two Layers , 1994, Theor. Comput. Sci..

[9]  Tiziana Catarci,et al.  The assignment heuristic for crossing reduction , 1995, IEEE Trans. Syst. Man Cybern..

[10]  Alok Aggarwal,et al.  The input/output complexity of sorting and related problems , 1988, CACM.

[11]  Camil Demetrescu,et al.  Combinatorial algorithms for feedback problems in directed graphs , 2003, Inf. Process. Lett..

[12]  John N. Warfield,et al.  Crossing Theory and Hierarchy Mapping , 1977, IEEE Transactions on Systems, Man, and Cybernetics.

[13]  T. M. Murali,et al.  I/O-efficient algorithms for contour-line extraction and planar graph blocking , 1998, SODA '98.

[14]  Michael Jünger,et al.  A Library of Algorithms for Graph Drawing , 1998, GD.

[15]  Mitsuhiko Toda,et al.  Methods for Visual Understanding of Hierarchical System Structures , 1981, IEEE Transactions on Systems, Man, and Cybernetics.

[16]  Norbert Zeh,et al.  An External Memory Data Structure for Shortest Path Queries , 1999, COCOON.

[17]  Ulrich Meyer,et al.  An experimental study of priority queues in external memory , 1999, JEAL.

[18]  Akihiro Sugimoto,et al.  An Approximation Algorithm for the Two-Layered Graph Drawing Problem , 1999, COCOON.

[19]  Marie-Jose Carpano,et al.  Automatic Display of Hierarchized Graphs for Computer-Aided Decision Analysis , 1980, IEEE Transactions on Systems, Man, and Cybernetics.

[20]  Suresh Venkatasubramanian,et al.  On external memory graph traversal , 2000, SODA '00.

[21]  Andrew V. Goldberg,et al.  Selecting Problems for Algorithm Evaluation , 1999, WAE.

[22]  Richard F. Barrett,et al.  Matrix Market: a web resource for test matrix collections , 1996, Quality of Numerical Software.

[23]  Alberto Marchetti-Spaccamela,et al.  Memory Paging for Connectivity and Path Problems in Graphs , 1993, J. Graph Algorithms Appl..

[24]  Joseph Naor,et al.  Divide-and-conquer approximation algorithms via spreading metrics , 2000, JACM.

[25]  Robert F. Cohen,et al.  An experimental study of the basis for graph drawing algorithms , 1997, JEAL.

[26]  Donald E. Knuth,et al.  The Stanford GraphBase - a platform for combinatorial computing , 1993 .

[27]  Jeffery R. Westbrook,et al.  A Functional Approach to External Graph Algorithms , 1998, ESA.

[28]  Gerth Stølting Brodal,et al.  Worst-Case External-Memory Priority Queues , 1998, SWAT.

[29]  Michael Jünger,et al.  Journal of Graph Algorithms and Applications 2-layer Straightline Crossing Minimization: Performance of Exact and Heuristic Algorithms , 2022 .

[30]  Emden R. Gansner,et al.  A Technique for Drawing Directed Graphs , 1993, IEEE Trans. Software Eng..

[31]  Erkki Mäkinen,et al.  Experiments on drawing 2-level hierarchical graphs , 1990, Int. J. Comput. Math..

[32]  Paul D. Seymour,et al.  Packing directed circuits fractionally , 1995, Comb..

[33]  Kamesh Munagala,et al.  I/O-complexity of graph algorithms , 1999, SODA '99.

[34]  Vijay Kumar,et al.  Improved algorithms and data structures for solving graph problems in external memory , 1996, Proceedings of SPDP '96: 8th IEEE Symposium on Parallel and Distributed Processing.

[35]  I. Moore,et al.  Digital terrain modelling: A review of hydrological, geomorphological, and biological applications , 1991 .

[36]  Xuemin Lin,et al.  A Fast and Effective Heuristic for the Feedback Arc Set Problem , 1993, Inf. Process. Lett..

[37]  Edsger W. Dijkstra,et al.  A note on two problems in connexion with graphs , 1959, Numerische Mathematik.

[38]  Lars Arge,et al.  The I/O - Complexity of Ordered Binary - Decision Diagram Manipulation , 1995, ISAAC.

[39]  Paul Molitor,et al.  Using Sifting for k -Layer Straightline Crossing Minimization , 1999, GD.

[40]  Greg N. Frederickson,et al.  Fast Algorithms for Shortest Paths in Planar Graphs, with Applications , 1987, SIAM J. Comput..

[41]  Clifford Stein,et al.  Introduction to Algorithms, 2nd edition. , 2001 .

[42]  Stefan Dresbach A New Heuristic Layout Algorithm for DAGs , 1995 .

[43]  Lars Arge,et al.  On external-memory MST, SSSP and multi-way planar graph separation , 2000, J. Algorithms.

[44]  Norbert Zeh,et al.  External Memory Algorithms for Outerplanar Graphs , 1999, ISAAC.

[45]  R. Martí,et al.  A branch and bound algorithm for minimizing the number of crossing arcs in bipartite graphs , 1996 .

[46]  Richard Rudell Dynamic variable ordering for ordered binary decision diagrams , 1993, ICCAD.

[47]  Lars Arge,et al.  The Buffer Tree: A New Technique for Optimal I/O-Algorithms (Extended Abstract) , 1995, WADS.