On Bend-Minimized Orthogonal Drawings of Planar 3-Graphs
On Bend-Minimized Orthogonal Drawings of
Planar 3-Graphs
Yi-Jun Chang∗1 and Hsu-Chun Yen†2
1
2
Department of EECS, University of Michigan, Ann Arbor, MI, USA
Department of Electrical Engineering, National Taiwan University, Taipei,
Taiwan
Abstract
An orthogonal drawing of a graph is a planar drawing where each edge is drawn as a sequence of
horizontal and vertical line segments. Finding a bend-minimized orthogonal drawing of a planar
graph of maximum degree 4 is NP-hard. The problem becomes tractable for planar graphs of
maximum degree 3, and the fastest known algorithm takes O(n5 log n) time. Whether a faster
algorithm exists has been a long-standing open problem in graph drawing. In this paper we
present an algorithm that takes only Õ(n17/7 ) time, which is a significant improvement over the
previous state of the art.
1998 ACM Subject Classification F.2.2 Nonnumerical Algorithms and Problems
Keywords and phrases Bend minimization, graph drawing, orthogonal drawing, planar graph
Digital Object Identifier 10.4230/LIPIcs.SoCG.2017.29
1
Introduction
An orthogonal drawing of a graph is a planar drawing where each edge is composed of a
sequence of horizontal and vertical line segments with no crossings. Orthogonal drawings
appear in many applications such as the automation of VLSI circuit layout and the drawing
of diagrams in information systems. Variants of orthogonal drawings have been introduced
in the literature to cope with different constraints or to improve the readability and aesthetic
feel: smoothing the drawing [2, 1], requiring orthogonal convexity [5], accommodating vertices
of more than 4 incident edges [16, 8], and restricting directions of vertices [11, 13]. Refer
to [12] for a survey on orthogonal drawings.
Bend-minimization is one of the most classical optimization problems on orthogonal
drawings. Given a planar (or plane) graph, the problem asks for an orthogonal drawing
with the total number of bends minimized. However, the problem is NP-hard for planar
4-graphs [15].1 To obtain polynomial time algorithms, one has to relax the problem one way
or another. For example, it is known that a polynomial time algorithm exists when the first
bend on an edge does not incur any cost [3].
Much research effort has been made on bend-minimization for subclasses of planar 4graphs [9, 7, 14, 18, 17]. The two most natural subclasses are planar 3-graphs (reducing
∗
Yi-Jun Chang was supported in part by NSF grant CCF-1514383.
Hsu-Chun Yen was supported in part by Ministry of Science and Technology, Taiwan, under grant
MOST 103-2221-E-002-154-MY3.
1
We write k-graphs to denote graphs of maximum degree k. Note that the degree of each vertex cannot
exceed 4 in an orthogonal drawing, and hence planar 4-graphs are the most general graph class that can
be drawn orthogonally.
†
© Yi-Jun Chang and Hsu-Chun Yen;
licensed under Creative Commons License CC-BY
33rd International Symposium on Computational Geometry (SoCG 2017).
Editors: Boris Aronov and Matthew J. Katz; Article No. 29; pp. 29:1–29:15
Leibniz International Proceedings in Informatics
Schloss Dagstuhl – Leibniz-Zentrum für Informatik, Dagstuhl Publishing, Germany
29:2
On Bend-Minimized Orthogonal Drawings of Planar 3-Graphs
the maximum degree by 1) and plane 4-graphs (fixing the planar embedding). For plane
4-graphs, a seminal work by Tamassia [20] demonstrates a reduction from bend-minimization
to a computation of a min-cost flow. Following this approach, the runtime has been reduced
√
to O(n7/4 log n) [14], and subsequently to O(n1.5 ) [7].2
For planar 3-graphs, the fastest known algorithm for bend-minimization is the O(n5 log n)
time algorithm designed by Di Battista, Liotta, and Vargiu, which dates back to 1998 [9].
As stated as an open problem in [4], further improving the time complexity is identified as
an important issue in the field of graph drawing.
Problem 15: Let G be a planar graph whose vertices have degree at most three. Is there an
algorithm to compute a planar bend-minimum orthogonal drawing of G in o(n5 log n) time?
In this paper, we answer the problem affirmatively by demonstrating an Õ(n17/7 ) time3
algorithm. Precisely, our algorithm takes O(n · T (n)) time, where T (n) is the time complexity
of constructing a bend-minimized orthogonal drawing of a plane 3-graph subject to the
constraint that some designated edges have no bend. We will later see that bend-minimization
of a plane 3-graph can be reduced to min-cost flow of constant capacity, and a recent
breakthrough on unit-capacity min-cost flow in sparse graphs [6] implies T (n) = Õ(n10/7 ).
The main challenge of designing a bend-minimization algorithm for planar 3-graphs is to
handle the transition from the variable embedding setting to the fixed embedding setting.
The naïve approach of testing all possible planar embeddings is very inefficient, as there can
be an exponential number of different planar embeddings. A natural way to approach this
problem is to devise a dynamic programming procedure on an SPQR-tree, which is a tree
structure capable of storing all possible embeddings of a planar graph using linear space. The
approach is briefly sketched as follows. By “contracting” all subgraphs of the planar graph
G that can be flipped, a graph G0 that has a fixed combinatorial embedding is obtained. An
optimal drawing of G0 can be computed quickly using a bend-minimization algorithm for
plane 3-graphs. The optimal drawings of the contracted subgraphs are computed recursively.
Merging these drawings yields a drawing of G. Using the terminology of SPQR-trees, if G is
the pertinent graph of a node µ in the SPQR-tree, then the graph G0 is (a subdivision of) the
skeleton of µ, and the contracted subgraphs are the pertinent graphs of some descendants of µ.
See Fig. 1 for a conceptual example: (1) G0 = H2 is resulting from contracting the subgraph
H1 into a vertex v in G. (2) Merging the drawings of H1 and H2 yields an orthogonal
drawing of G (treating each white dot in the figure as a bend).
The above strategy does not immediately give us a bend-minimization algorithm. Observe
that the outer boundary of G needs to have 4 convex corners. Thus we need an additional
constraint which requires that the drawing of G0 and the drawings computed by recursive
calls jointly supply 4 convex corners in the outer boundary. To ensure that the final drawing
of G is optimal, one has to compute multiple drawings of each contracted subgraph H subject
to different constraints on the number of convex corners in the outer boundary of G that H
can supply, and to examine all possible combinations of these constraints. In [9] the notion
of spirality, which measures how an orthogonal drawing is “rolled up”, is developed to serve
as the aforementioned constraints.
In this paper, we utilize some tools developed by Rahman et al. in [19]. They characterized
the condition for the existence of a no-bend orthogonal drawing based on the number of
2
Throughout the paper, we (...truncated)