Evaluating and extending speedup techniques for optimal crossing minimization in layered graph drawings

A large layered graph with few edge crossings. The symmetry breaking switch is shown to produce speedups that eclipse 2x for large graphs as the number of nodes increases.
We aim to create faster and more scalable methods of finding layered graph layouts with the minimum number of crossings. We characterize nine techniques to improve the performance of an integer linear programming (ILP) formulation and empirically test their improvement. We call these switches since they can be toggled and combined. Here, we show the performance of two switches and highlight an optimal control flow graph layout from our case study. These control flow graphs can grow very large but benefit from minimal crossing visualizations to aid human task performance.
Abstract
A layered graph is an important category of graph in which every node is assigned to a layer, and layers are drawn as parallel or radial lines. They are commonly used to display temporal data or hierarchical graphs. Previous research has demonstrated that minimizing edge crossings is the most important criterion to consider when looking to improve the readability of such graphs. While heuristic approaches exist for crossing minimization, we are interested in optimal approaches to the problem that prioritize human readability over computational scalability. We aim to improve the usefulness and applicability of such optimal methods by understanding and improving their scalability to larger graphs. This paper categorizes and evaluates the state-of-the-art linear programming formulations for exact crossing minimization and describes nine new and existing techniques that could plausibly accelerate the optimization algorithm. Through a computational evaluation, we explore each technique's effect on calculation time and how the techniques assist or inhibit one another, allowing researchers and practitioners to adapt them to the characteristics of their graphs. Our best-performing techniques yielded a median improvement of 2.5-17x depending on the solver used, giving us the capability to create optimal layouts faster and for larger graphs. We provide an open-source implementation of our methodology in Python, where users can pick which combination of techniques to enable according to their use case. A free copy of this paper and all supplemental materials, datasets used, and source code are available at https://osf.io/5vq79.
Materials
PDF | Preprint | DOI | Supplement | Video preview | BibTeX
Authors
Citation

Khoury Vis Lab — Northeastern University
* West Village H, Room 302, 440 Huntington Ave, Boston, MA 02115, USA
* 100 Fore Street, Portland, ME 04101, USA
* Carnegie Hall, 201, 5000 MacArthur Blvd, Oakland, CA 94613, USA