2,265 research outputs found

    Single Source - All Sinks Max Flows in Planar Digraphs

    Full text link
    Let G = (V,E) be a planar n-vertex digraph. Consider the problem of computing max st-flow values in G from a fixed source s to all sinks t in V\{s}. We show how to solve this problem in near-linear O(n log^3 n) time. Previously, no better solution was known than running a single-source single-sink max flow algorithm n-1 times, giving a total time bound of O(n^2 log n) with the algorithm of Borradaile and Klein. An important implication is that all-pairs max st-flow values in G can be computed in near-quadratic time. This is close to optimal as the output size is Theta(n^2). We give a quadratic lower bound on the number of distinct max flow values and an Omega(n^3) lower bound for the total size of all min cut-sets. This distinguishes the problem from the undirected case where the number of distinct max flow values is O(n). Previous to our result, no algorithm which could solve the all-pairs max flow values problem faster than the time of Theta(n^2) max-flow computations for every planar digraph was known. This result is accompanied with a data structure that reports min cut-sets. For fixed s and all t, after O(n^{3/2} log^{3/2} n) preprocessing time, it can report the set of arcs C crossing a min st-cut in time roughly proportional to the size of C.Comment: 25 pages, 4 figures; extended abstract appeared in FOCS 201

    Minimum cycle and homology bases of surface embedded graphs

    Get PDF
    We study the problems of finding a minimum cycle basis (a minimum weight set of cycles that form a basis for the cycle space) and a minimum homology basis (a minimum weight set of cycles that generates the 11-dimensional (Z2\mathbb{Z}_2)-homology classes) of an undirected graph embedded on a surface. The problems are closely related, because the minimum cycle basis of a graph contains its minimum homology basis, and the minimum homology basis of the 11-skeleton of any graph is exactly its minimum cycle basis. For the minimum cycle basis problem, we give a deterministic O(nω+22gn2+m)O(n^\omega+2^{2g}n^2+m)-time algorithm for graphs embedded on an orientable surface of genus gg. The best known existing algorithms for surface embedded graphs are those for general graphs: an O(mω)O(m^\omega) time Monte Carlo algorithm and a deterministic O(nm2/logn+n2m)O(nm^2/\log n + n^2 m) time algorithm. For the minimum homology basis problem, we give a deterministic O((g+b)3nlogn+m)O((g+b)^3 n \log n + m)-time algorithm for graphs embedded on an orientable or non-orientable surface of genus gg with bb boundary components, assuming shortest paths are unique, improving on existing algorithms for many values of gg and nn. The assumption of unique shortest paths can be avoided with high probability using randomization or deterministically by increasing the running time of the homology basis algorithm by a factor of O(logn)O(\log n).Comment: A preliminary version of this work was presented at the 32nd Annual International Symposium on Computational Geometr

    A Polynomial-time Bicriteria Approximation Scheme for Planar Bisection

    Full text link
    Given an undirected graph with edge costs and node weights, the minimum bisection problem asks for a partition of the nodes into two parts of equal weight such that the sum of edge costs between the parts is minimized. We give a polynomial time bicriteria approximation scheme for bisection on planar graphs. Specifically, let WW be the total weight of all nodes in a planar graph GG. For any constant ε>0\varepsilon > 0, our algorithm outputs a bipartition of the nodes such that each part weighs at most W/2+εW/2 + \varepsilon and the total cost of edges crossing the partition is at most (1+ε)(1+\varepsilon) times the total cost of the optimal bisection. The previously best known approximation for planar minimum bisection, even with unit node weights, was O(logn)O(\log n). Our algorithm actually solves a more general problem where the input may include a target weight for the smaller side of the bipartition.Comment: To appear in STOC 201

    Minimum Cycle Basis and All-Pairs Min Cut of a Planar Graph in Subquadratic Time

    Full text link
    A minimum cycle basis of a weighted undirected graph GG is a basis of the cycle space of GG such that the total weight of the cycles in this basis is minimized. If GG is a planar graph with non-negative edge weights, such a basis can be found in O(n2)O(n^2) time and space, where nn is the size of GG. We show that this is optimal if an explicit representation of the basis is required. We then present an O(n3/2logn)O(n^{3/2}\log n) time and O(n3/2)O(n^{3/2}) space algorithm that computes a minimum cycle basis \emph{implicitly}. From this result, we obtain an output-sensitive algorithm that explicitly computes a minimum cycle basis in O(n3/2logn+C)O(n^{3/2}\log n + C) time and O(n3/2+C)O(n^{3/2} + C) space, where CC is the total size (number of edges and vertices) of the cycles in the basis. These bounds reduce to O(n3/2logn)O(n^{3/2}\log n) and O(n3/2)O(n^{3/2}), respectively, when GG is unweighted. We get similar results for the all-pairs min cut problem since it is dual equivalent to the minimum cycle basis problem for planar graphs. We also obtain O(n3/2logn)O(n^{3/2}\log n) time and O(n3/2)O(n^{3/2}) space algorithms for finding, respectively, the weight vector and a Gomory-Hu tree of GG. The previous best time and space bound for these two problems was quadratic. From our Gomory-Hu tree algorithm, we obtain the following result: with O(n3/2logn)O(n^{3/2}\log n) time and O(n3/2)O(n^{3/2}) space for preprocessing, the weight of a min cut between any two given vertices of GG can be reported in constant time. Previously, such an oracle required quadratic time and space for preprocessing. The oracle can also be extended to report the actual cut in time proportional to its size
    corecore