GRAPH PLANARIZATION
MAURICIO G.C. RESENDE AND CELSO C. RIBEIRO
Abstract. We survey graph planarization and related problems. We first
describe variants and applications of graph planarization. Then we focus on
algorithms. We begin by describing the branch-and-cut algorithm of J¨unger
and Mutzel (1996). Then, we review work on heuristics based on planarity
testing and those based on two-phase procedures. Finally, computational results
comparing algorithms for graph planarization are presented.
1. Introduction
A graph is said to be planar if it can be drawn on the plane in such a way
that no two of its edges cross. Given a graph G = (V,E) with vertex set V and
edge set E, the objective of graph planarization is to find a minimum cardinality
subset of edges F E such that the graph G′ = (V,E F), resulting from the
removal of the edges in F from G, is planar. This problem is also known as the
maximum planar subgraph problem. A related and simpler problem is that of finding
a maximal planar subgraph, which is a planar subgraph G′ = (V,E′) of G such that
the addition of any edge e 2 E E′ to G′ destroys its planarity.
Graph planarization is known to be NP-hard [15]. The proof of NP-completeness
of its decision version is based on a transformation from the Hamiltonian path
problem restricted to bipartite graphs. Although exact methods for solving the
maximum planar subgraph problem have been recently proposed, most algorithms
to date attempt to find good approximate solutions.
In this article, we survey graph planarization and related problems. In the
next section, we describe variants and applications of the basic problem formulated
above. Next, we describe the branch-and-cut algorithm of J¨unger and Mutzel [11].
We then review work on heuristics based on planarity testing and those based on
two-phase procedures. Finally, computational results are considered.
2. Variants and applications
An application of graph planarization arises in the design of integrated circuits,
in which a graph describing the circuit has to be decomposed into a minimum
number of layers, each of which is a planar graph [13]. Other applications arise
from variants of the basic graph planarization problem.
One such variant is the maximum weighted planar graph problem, in which positive
weights are associated with the edges of the graph and one seeks a planar
subgraph of maximum weight. Note that the basic graph planarization problem is
a special case of the maximum weighted planar graph problem, in which all edge
Date: July 6, 1998.
To appear in Encyclopaedia of Optimization, Kluwer Academic Publishers, 1999.
AT&T Labs Research Technical Report: 98.15.1.
1
2 M. G. C. RESENDE AND C. C. RIBEIRO
weights are equal to one. An application of this problem to facility layout is described
in [9]. A graph is built in which the vertices represent the facilities and
the edges define the relationships between them. The weight of each edge is the
desirability that the two facilities that define the edge be adjacent in the design.
A maximum weighted planar subgraph corresponds to a feasible layout with maximum
benefit. In this paper, the authors also propose simulated annealing and tabu
search heuristics for the approximate solution of the maximum weighted planar
graph problem. Constructive heuristics based on maintaining a triangulated subgraph
while making node and edge insertions are given in Foulds and Robinson [7],
Eades, Foulds, and Giffin [4], and Leung [14].
Another related variant is that of drawing a given graph such that the number
of edge crossings is minimized. The crossing number problem has practical
applications in circuit design and graph drawing, such as in CASE tools [20] and
automated graphical display systems. One particular case is that of minimizing
straight-line crossings in layered graphs. A GRASP and path relinking approach
for the two-layer case is given in Laguna and Mart´ı [12], where one can also find
a survey of the literature. Algorithms for graph drawing are reviewed in Battista,
Eades, Tamassia, and Tollis [3].
In the planar augmentation problem, one wants to determine the minimum number
of edges that need to be added to a planar graph such that the resulting graph
is still planar and at least k-connected, where k is usually fixed to two or three.
This variant has applications in automatic graph drawing, as well as in the design
of survivable networks [17].
3. An exact algorithm
An exact branch-and-bound algorithm for the weighted graph planarization
problem was introduced by Foulds and Robinson [6], but was limited to small
dense graphs. Only recently has there been a leap in the performance of exact
methods for graph planarization with the branch-and-cut algorithm of J¨unger and
Mutzel [11], which we describe next.
Given a graph G = (V,E), their approach uses facet-defining inequalities for the
planar subgraph polytope PLS(G). Let xe be a 0-1 variable associated with each
edge e 2 E, such that xe = 1 if and only if edge e appears in the maximum planar
subgraph of G. Furthermore, let x(F) = Pe∈F xe, for F E.
Trivial inequalities 0 xe 1 are implicitly handled by the linear programming
(LP) solver. The inequality x(E) 3|V |−6 is added to the initial linear program.
Let x be the optimal solution of the LP relaxation associated with some node of
the enumeration tree. For 0 ǫ 1, let Eǫ = {e 2 E | xe 1 − ǫ} and consider
the graph Gǫ = (V,Eǫ), to which the planarity-testing algorithm of Hopcroft and
Tarjan [10] is applied. The algorithm stops if it finds an edge set F which induces
a nonplanar graph in G. If the inequality x(F) |F|−1 is violated, it is added to
the set of constraints of the current LP. The back edge of the path which proved
the nonplanarity of the graph induced in G by F is removed and the planaritytesting
algorithm proceeds, eventually identifying other forbidden subgraphs of the
graph Gǫ. Although these forbidden subgraphs do not necessarily define facets of
PLS(G), they must contain facet-defining subgraphs. Facet-defining inequalities
are identified as follows. Once a forbidden set F is found, where the inequality
x(F) |F|−1 is violated, one successively deletes each edge f 2 F and applies the
GRAPH PLANARIZATION 3
planarity-testing algorithm. If the graph induced by F {f} is planar, then edge f is
returned to F. In at most |F| steps, F is reduced to a smaller edge set which induces
a minimal planar subgraph, leading to the facet-defining inequality x(F) |F|−1
still violated by the current LP solution. Another simple heuristic searches for
violated Euler facet-defining inequalities x(F) 3|V ′| − 6 or x(F) 2|V ′| − 4,
where (V ′, F) is, respectively, a clique or a complete bipartite subgraph of G.
After an LP has been solved, its solution is exploited by the planarity-testing
algorithm, to produce a feasible solution for the graph planarization problem. Such
feasible solutions are used as lower bounds that are used not only for fathoming
nodes in the branch-and-cut tree, but also for fixing variables using their reduced
costs during a cutting plane phase. Other heuristics are implemented to enhance
the practical performance of the algorithm.
Branching is done if no cutting plane has been found for the current infeasible
solution. The variable chosen for branching is one with fractional value closest to
1/2, among those with maximum cost coefficient in the objective function.
4. Two-phase heuristics
The heuristics described in this section are based on the separation of the computation
into two phases. The first phase consists in devising a linear permutation
of the nodes of the input graph, followed by placing them along a line. The second
phase determines two sets of edges that may be represented without crossings above
and below that line, respectively. Takefuji and Lee [19] were the first to propose a
heuristic using this idea. They use an arbitrary sequence of nodes in the first phase
and apply a parallel heuristic using a neural network for the second phase. Takefuji,
Lee, and Cho [18] claimed superior performance of the two-phase approach of
Takefuji and Lee [19] with respect to the heuristics described in he previous section.
Their approach was later extended and improved by Goldschmidt and Takvorian
[8]. In the first phase, these authors attempt to use a linear permutation of
the nodes associated with an Hamiltonian cycle of G. Two strategies are used: (i)
a randomized algorithm [1] that almost certainly finds a Hamiltonian cycle if one
exists, and (ii) a greedy deterministic algorithm that seeks a Hamiltonian cycle. In
the latter, the first node in the linear permutation is a minimum degree node in G.
After the first k nodes of the permutation have been determined, say v1, v2, · · · , vk,
the next node vk+1 is selected from the nodes adjacent to vk in G having the least
adjacencies in the subgraph Gk of G induced by V {v1, v2, · · · , vk}. If there is no
node of Gk adjacent to vk in G, then vk+1 is selected as a minimum degree node
in Gk.
Let H = (E, I) be a graph where each of its nodes corresponds to an edge of the
input graph G. Nodes e1 and e2 of H are connected by an edge if the corresponding
edges of G cross with respect to linear permutation of the nodes established during
the first phase. A graph is called an overlap graph if its nodes can be placed in
one-to-one correspondence with a family of intervals on a line. Two intervals are
said to overlap if they cross and none is contained in the other. Two nodes of the
overlap graph are connected by an edge if and only if their corresponding intervals
overlap. Hence, the graph H as constructed above is the overlap graph associated
with the representation of G defined by the linear permutation of its nodes.
The second phase of the heuristic of Goldschmidt and Takvorian consists in twocoloring
a maximum number of the nodes of the overlap graph H, such that each of
4 M. G. C. RESENDE AND C. C. RIBE