35 research outputs found
A simple MAX-CUT algorithm for planar graphs
The max-cut problem asks for partitioning the nodes V of a graph G=(V,E) into two sets (one of which might be empty), such that the sum of weights of edges joining nodes in different partitions is maximum. Whereas for general instances the max-cut problem is NP-hard, it is polynomially solvable for certain classes of graphs. For planar graphs, there exist several polynomial-time methods determining maximum cuts for arbitrary choice of edge weights. Typically, the problem is solved by computing a minimum-weight perfect matching in some associated graph. In this work, we present a new and simple algorithm for determining maximum cuts for arbitrary weighted planar graphs. Its running time can be bounded by O(|V|^(1.5)log|V|), similar to the fastest known methods. However, our transformation yields a much smaller associated graph than that of the known methods. Furthermore, it can be computed fast. As the practical running time strongly depends on the size of the associated graph, it can be expected that our algorithm is considerably faster than the methods known in the literature. More specifically, our program can determine maximum cuts in huge realistic and random planar graphs with up to 10^6 nodes
All-Pairs Minimum Cuts in Near-Linear Time for Surface-Embedded Graphs
For an undirected -vertex graph with non-negative edge-weights, we
consider the following type of query: given two vertices and in ,
what is the weight of a minimum -cut in ? We solve this problem in
preprocessing time for graphs of bounded genus, giving the first
sub-quadratic time algorithm for this class of graphs. Our result also improves
by a logarithmic factor a previous algorithm by Borradaile, Sankowski and
Wulff-Nilsen (FOCS 2010) that applied only to planar graphs. Our algorithm
constructs a Gomory-Hu tree for the given graph, providing a data structure
with space that can answer minimum-cut queries in constant time. The
dependence on the genus of the input graph in our preprocessing time is
Congestion in planar graphs with demands on faces
We give an algorithm to route a multicommodity flow in a planar graph
with congestion , where is the maximum number of terminals on
the boundary of a face, when each demand edge lie on a face of . We also
show that our specific method cannot achieve a substantially better congestion
Efficient Exact Algorithms on Planar Graphs: Exploiting Sphere Cut Decompositions
A divide-and-conquer strategy based on variations of the Lipton-Tarjan planar separator
theorem has been one of the most common approaches for solving planar graph problems for
more than 20 years. We present a new framework for designing fast subexponential exact and parameterized algorithms on planar graphs. Our approach is based on geometric properties of planar branch decompositions obtained by Seymour & Thomas, combined with refined techniques of dynamic programming on planar graphs based on properties of non-crossing partitions. Compared to divide-and-conquer algorithms, the main advantages of our method are a) it is a generic method which allows to attack broad classes of problems; b) the obtained algorithms provide a better worst case analysis. To exemplify our approach we show how to obtain an O(26.903√n) time algorithm solving weighted HAMILTONIAN CYCLE. We observe how our technique can be used to solve PLANAR GRAPH TSP in time O(29.8594√n). Our approach can be used to design parameterized algorithms as well. For example we introduce the first 2O(√ k)nO(1) time algorithm for parameterized Planar k-cycle by showing that for a given k we can decide if a planar graph on n vertices has a cycle of length at least k in time O(213.6√kn + n3)
Steinitz Theorems for Orthogonal Polyhedra
We define a simple orthogonal polyhedron to be a three-dimensional polyhedron
with the topology of a sphere in which three mutually-perpendicular edges meet
at each vertex. By analogy to Steinitz's theorem characterizing the graphs of
convex polyhedra, we find graph-theoretic characterizations of three classes of
simple orthogonal polyhedra: corner polyhedra, which can be drawn by isometric
projection in the plane with only one hidden vertex, xyz polyhedra, in which
each axis-parallel line through a vertex contains exactly one other vertex, and
arbitrary simple orthogonal polyhedra. In particular, the graphs of xyz
polyhedra are exactly the bipartite cubic polyhedral graphs, and every
bipartite cubic polyhedral graph with a 4-connected dual graph is the graph of
a corner polyhedron. Based on our characterizations we find efficient
algorithms for constructing orthogonal polyhedra from their graphs.Comment: 48 pages, 31 figure
Complexity of Token Swapping and its Variants
In the Token Swapping problem we are given a graph with a token placed on
each vertex. Each token has exactly one destination vertex, and we try to move
all the tokens to their destinations, using the minimum number of swaps, i.e.,
operations of exchanging the tokens on two adjacent vertices. As the main
result of this paper, we show that Token Swapping is -hard parameterized
by the length of a shortest sequence of swaps. In fact, we prove that, for
any computable function , it cannot be solved in time where is the number of vertices of the input graph, unless the ETH
fails. This lower bound almost matches the trivial -time algorithm.
We also consider two generalizations of the Token Swapping, namely Colored
Token Swapping (where the tokens have different colors and tokens of the same
color are indistinguishable), and Subset Token Swapping (where each token has a
set of possible destinations). To complement the hardness result, we prove that
even the most general variant, Subset Token Swapping, is FPT in nowhere-dense
graph classes.
Finally, we consider the complexities of all three problems in very
restricted classes of graphs: graphs of bounded treewidth and diameter, stars,
cliques, and paths, trying to identify the borderlines between polynomial and
NP-hard cases.Comment: 23 pages, 7 Figure
Fully dynamic maintenance of k-connectivity in parallel
©2001 IEEE. Personal use of this material is permitted. However, permission to reprint/republish this material for advertising or promotional purposes or for creating new collective works for resale or redistribution to servers or lists, or to reuse any copyrighted component of this work in other works must be obtained from the IEEE.Given a graph G=(V, E) with n vertices and m edges, the k-connectivity of G denotes either the k-edge connectivity or the k-vertex connectivity of G. In this paper, we deal with the fully dynamic maintenance of k-connectivity of G in the parallel setting for k=2, 3. We study the problem of maintaining k-edge/vertex connected components of a graph undergoing repeatedly dynamic updates, such as edge insertions and deletions, and answering the query of whether two vertices are included in the same k-edge/vertex connected component. Our major results are the following: (1) An NC algorithm for the 2-edge connectivity problem is proposed, which runs in O(log n log(m/n)) time using O(n3/4) processors per update and query. (2) It is shown that the biconnectivity problem can be solved in O(log2 n ) time using O(nα(2n, n)/logn) processors per update and O(1) time with a single processor per query or in O(log n logn/m) time using O(nα(2n, n)/log n) processors per update and O(logn) time using O(nα(2n, n)/logn) processors per query, where α(.,.) is the inverse of Ackermann's function. (3) An NC algorithm for the triconnectivity problem is also derived, which takes O(log n logn/m+logn log log n/α(3n, n)) time using O(nα(3n, n)/log n) processors per update and O(1) time with a single processor per query. (4) An NC algorithm for the 3-edge connectivity problem is obtained, which has the same time and processor complexities as the algorithm for the triconnectivity problem. To the best of our knowledge, the proposed algorithms are the first NC algorithms for the problems using O(n) processors in contrast to Ω(m) processors for solving them from scratch. In particular, the proposed NC algorithm for the 2-edge connectivity problem uses only O(n3/4) processors. All the proposed algorithms run on a CRCW PRAMWeifa Liang, Brent, R.P., Hong She
Fully dynamic cycle-equivalence in graphs
Two edges e_1 and e_2 of an undirected graph are cycle-equivalent iff all cycles that contain e_1 also contain e_2, i.e., iff e_1 and e_2 are a cut-edge pair. The cycle-equivalence classes of the control-flow graph are used in optimizing compilers to speed up existing control-flow and data-flow algorithms. While the cycle-equivalence classes can be computed in linear time, we present the first fully dynamic algorithm for maintaining the cycle-equivalence relation. In an n-node graph our data structure executes an edge insertion or deletion in O(sqrt(n.log n)) time and answers the query whether two given edges are cycle-equivalent in O(pow2(log(n))) time. We also present an algorithm for plane graphs with O(log n) update and query time and for planar graphs with O(log n) insertion time and O(log2 n) query and deletion time. Additionally, we show a lower bound of Ω(log n/log log n) for the amortized time per operation for the dynamic cycle-equivalence problem in the cell probe mode
Topologically Trivial Closed Walks in Directed Surface Graphs
Let be a directed graph with vertices and edges, embedded on a
surface , possibly with boundary, with first Betti number . We
consider the complexity of finding closed directed walks in that are either
contractible (trivial in homotopy) or bounding (trivial in integer homology) in
. Specifically, we describe algorithms to determine whether contains a
simple contractible cycle in time, or a contractible closed walk in
time, or a bounding closed walk in time. Our
algorithms rely on subtle relationships between strong connectivity in and
in the dual graph ; our contractible-closed-walk algorithm also relies on
a seminal topological result of Hass and Scott. We also prove that detecting
simple bounding cycles is NP-hard.
We also describe three polynomial-time algorithms to compute shortest
contractible closed walks, depending on whether the fundamental group of the
surface is free, abelian, or hyperbolic. A key step in our algorithm for
hyperbolic surfaces is the construction of a context-free grammar with
non-terminals that generates all contractible closed walks of
length at most L, and only contractible closed walks, in a system of quads of
genus . Finally, we show that computing shortest simple contractible
cycles, shortest simple bounding cycles, and shortest bounding closed walks are
all NP-hard.Comment: 30 pages, 18 figures; fixed several minor bugs and added one figure.
An extended abstraction of this paper will appear at SOCG 201