35 research outputs found

    A simple MAX-CUT algorithm for planar graphs

    Get PDF
    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

    Get PDF
    For an undirected nn-vertex graph GG with non-negative edge-weights, we consider the following type of query: given two vertices ss and tt in GG, what is the weight of a minimum stst-cut in GG? We solve this problem in preprocessing time O(nlog3n)O(n\log^3 n) 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 O(n)O(n) that can answer minimum-cut queries in constant time. The dependence on the genus of the input graph in our preprocessing time is 2O(g2)2^{O(g^2)}

    Congestion in planar graphs with demands on faces

    Full text link
    We give an algorithm to route a multicommodity flow in a planar graph GG with congestion O(logk)O(\log k), where kk is the maximum number of terminals on the boundary of a face, when each demand edge lie on a face of GG. We also show that our specific method cannot achieve a substantially better congestion

    Efficient Exact Algorithms on Planar Graphs: Exploiting Sphere Cut Decompositions

    Get PDF
    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

    Full text link
    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

    Full text link
    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 W[1]W[1]-hard parameterized by the length kk of a shortest sequence of swaps. In fact, we prove that, for any computable function ff, it cannot be solved in time f(k)no(k/logk)f(k)n^{o(k / \log k)} where nn is the number of vertices of the input graph, unless the ETH fails. This lower bound almost matches the trivial nO(k)n^{O(k)}-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

    Get PDF
    ©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

    Get PDF
    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

    Full text link
    Let GG be a directed graph with nn vertices and mm edges, embedded on a surface SS, possibly with boundary, with first Betti number β\beta. We consider the complexity of finding closed directed walks in GG that are either contractible (trivial in homotopy) or bounding (trivial in integer homology) in SS. Specifically, we describe algorithms to determine whether GG contains a simple contractible cycle in O(n+m)O(n+m) time, or a contractible closed walk in O(n+m)O(n+m) time, or a bounding closed walk in O(β(n+m))O(\beta (n+m)) time. Our algorithms rely on subtle relationships between strong connectivity in GG and in the dual graph GG^*; 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 O(g2L2)O(g^2L^2) 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 g2g\ge2. 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
    corecore