111 research outputs found

    Weighted Matchings via Unweighted Augmentations

    Full text link
    We design a generic method for reducing the task of finding weighted matchings to that of finding short augmenting paths in unweighted graphs. This method enables us to provide efficient implementations for approximating weighted matchings in the streaming model and in the massively parallel computation (MPC) model. In the context of streaming with random edge arrivals, our techniques yield a (1/2+c)(1/2+c)-approximation algorithm thus breaking the natural barrier of 1/21/2. For multi-pass streaming and the MPC model, we show that any algorithm computing a (1δ)(1-\delta)-approximate unweighted matching in bipartite graphs can be translated into an algorithm that computes a (1ε(δ))(1-\varepsilon(\delta))-approximate maximum weighted matching. Furthermore, this translation incurs only a constant factor (that depends on ε>0\varepsilon> 0) overhead in the complexity. Instantiating this with the current best multi-pass streaming and MPC algorithms for unweighted matchings yields the following results for maximum weighted matchings: * A (1ε)(1-\varepsilon)-approximation streaming algorithm that uses Oε(1)O_\varepsilon(1) passes and Oε(npoly(logn))O_\varepsilon(n\, \text{poly} (\log n)) memory. This is the first (1ε)(1-\varepsilon)-approximation streaming algorithm for weighted matchings that uses a constant number of passes (only depending on ε\varepsilon). * A (1ε)(1 - \varepsilon)-approximation algorithm in the MPC model that uses Oε(loglogn)O_\varepsilon(\log \log n) rounds, O(m/n)O(m/n) machines per round, and Oε(npoly(logn))O_\varepsilon(n\, \text{poly}(\log n)) memory per machine. This improves upon the previous best approximation guarantee of (1/2ε)(1/2-\varepsilon) for weighted graphs

    Best of Two Local Models: Local Centralized and Local Distributed Algorithms

    Full text link
    We consider two models of computation: centralized local algorithms and local distributed algorithms. Algorithms in one model are adapted to the other model to obtain improved algorithms. Distributed vertex coloring is employed to design improved centralized local algorithms for: maximal independent set, maximal matching, and an approximation scheme for maximum (weighted) matching over bounded degree graphs. The improvement is threefold: the algorithms are deterministic, stateless, and the number of probes grows polynomially in logn\log^* n, where nn is the number of vertices of the input graph. The recursive centralized local improvement technique by Nguyen and Onak~\cite{onak2008} is employed to obtain an improved distributed approximation scheme for maximum (weighted) matching. The improvement is twofold: we reduce the number of rounds from O(logn)O(\log n) to O(logn)O(\log^*n) for a wide range of instances and, our algorithms are deterministic rather than randomized

    Shapley Meets Shapley

    Get PDF
    This paper concerns the analysis of the Shapley value in matching games. Matching games constitute a fundamental class of cooperative games which help understand and model auctions and assignments. In a matching game, the value of a coalition of vertices is the weight of the maximum size matching in the subgraph induced by the coalition. The Shapley value is one of the most important solution concepts in cooperative game theory. After establishing some general insights, we show that the Shapley value of matching games can be computed in polynomial time for some special cases: graphs with maximum degree two, and graphs that have a small modular decomposition into cliques or cocliques (complete k-partite graphs are a notable special case of this). The latter result extends to various other well-known classes of graph-based cooperative games. We continue by showing that computing the Shapley value of unweighted matching games is #P-complete in general. Finally, a fully polynomial-time randomized approximation scheme (FPRAS) is presented. This FPRAS can be considered the best positive result conceivable, in view of the #P-completeness result.Comment: 17 page

    Maximum Matching in Two, Three, and a Few More Passes Over Graph Streams

    Get PDF
    We consider the maximum matching problem in the semi-streaming model formalized by Feigenbaum, Kannan, McGregor, Suri, and Zhang that is inspired by giant graphs of today. As our main result, we give a two-pass (1/2 + 1/16)-approximation algorithm for triangle-free graphs and a two-pass (1/2 + 1/32)-approximation algorithm for general graphs; these improve the approximation ratios of 1/2 + 1/52 for bipartite graphs and 1/2 + 1/140 for general graphs by Konrad, Magniez, and Mathieu. In three passes, we achieve approximation ratios of 1/2 + 1/10 for triangle-free graphs and 1/2 + 1/19.753 for general graphs. We also give a multi-pass algorithm where we bound the number of passes precisely - we give a (2/3 - epsilon)-approximation algorithm that uses 2/(3 epsilon) passes for triangle-free graphs and 4/(3 epsilon) passes for general graphs. Our algorithms are simple and combinatorial, use O(n log(n)) space, and have O(1) update time per edge. For general graphs, our multi-pass algorithm improves the best known deterministic algorithms in terms of the number of passes: * Ahn and Guha give a (2/3 - epsilon)-approximation algorithm that uses O(log(1/epsilon)/epsilon^2) passes, whereas our (2/3 - epsilon)-approximation algorithm uses 4/(epsilon) passes; * they also give a (1 - epsilon)-approximation algorithm that uses O(log(n) poly(1/epsilon)) passes, where n is the number of vertices of the input graph; although our algorithm is (2/3 - epsilon)-approximation, our number of passes do not depend on n. Earlier multi-pass algorithms either have a large constant inside big-O notation for the number of passes or the constant cannot be determined due to the involved analysis, so our multi-pass algorithm should use much fewer passes for approximation ratios bounded slightly below 2/3

    Deterministic Algorithms for Maximum Matching on General Graphs in the Semi-Streaming Model

    Get PDF
    We present an improved deterministic algorithm for Maximum Cardinality Matching on general graphs in the Semi-Streaming Model. In the Semi-Streaming Model, a graph is presented as a sequence of edges, and an algorithm must access the edges in the given sequence. It can only use O(n polylog n) space to perform computations, where n is the number of vertices of the graph. If the algorithm goes over the stream k times, it is called a k-pass algorithm. In this model, McGregor [McGregor, 2005] gave the currently best known randomized (1+epsilon)-approximation algorithm for maximum cardinality matching on general graphs, that uses (1/epsilon)^{O(1/epsilon)} passes. Ahn and Guha [Ahn and Guha, 2013] later gave the currently best known deterministic (1+epsilon)-approximation algorithms for maximum cardinality matching: one on bipartite graphs that uses O(log log(1/epsilon)/epsilon^2) passes, and the other on general graphs that uses O(log n *poly(1/epsilon)) passes (note that, for general graphs, the number of passes is dependent on the size of the input). We present the first deterministic algorithm that achieves a (1+epsilon)-approximation on general graphs in only a constant number ((1/epsilon)^{O(1/epsilon)}) of passes

    Faster Algorithms for Semi-Matching Problems

    Full text link
    We consider the problem of finding \textit{semi-matching} in bipartite graphs which is also extensively studied under various names in the scheduling literature. We give faster algorithms for both weighted and unweighted case. For the weighted case, we give an O(nmlogn)O(nm\log n)-time algorithm, where nn is the number of vertices and mm is the number of edges, by exploiting the geometric structure of the problem. This improves the classical O(n3)O(n^3) algorithms by Horn [Operations Research 1973] and Bruno, Coffman and Sethi [Communications of the ACM 1974]. For the unweighted case, the bound could be improved even further. We give a simple divide-and-conquer algorithm which runs in O(nmlogn)O(\sqrt{n}m\log n) time, improving two previous O(nm)O(nm)-time algorithms by Abraham [MSc thesis, University of Glasgow 2003] and Harvey, Ladner, Lov\'asz and Tamir [WADS 2003 and Journal of Algorithms 2006]. We also extend this algorithm to solve the \textit{Balance Edge Cover} problem in O(nmlogn)O(\sqrt{n}m\log n) time, improving the previous O(nm)O(nm)-time algorithm by Harada, Ono, Sadakane and Yamashita [ISAAC 2008].Comment: ICALP 201

    Distributed local approximation algorithms for maximum matching in graphs and hypergraphs

    Full text link
    We describe approximation algorithms in Linial's classic LOCAL model of distributed computing to find maximum-weight matchings in a hypergraph of rank rr. Our main result is a deterministic algorithm to generate a matching which is an O(r)O(r)-approximation to the maximum weight matching, running in O~(rlogΔ+log2Δ+logn)\tilde O(r \log \Delta + \log^2 \Delta + \log^* n) rounds. (Here, the O~()\tilde O() notations hides polyloglog Δ\text{polyloglog } \Delta and polylog r\text{polylog } r factors). This is based on a number of new derandomization techniques extending methods of Ghaffari, Harris & Kuhn (2017). As a main application, we obtain nearly-optimal algorithms for the long-studied problem of maximum-weight graph matching. Specifically, we get a (1+ϵ)(1+\epsilon) approximation algorithm using O~(logΔ/ϵ3+polylog(1/ϵ,loglogn))\tilde O(\log \Delta / \epsilon^3 + \text{polylog}(1/\epsilon, \log \log n)) randomized time and O~(log2Δ/ϵ4+logn/ϵ)\tilde O(\log^2 \Delta / \epsilon^4 + \log^*n / \epsilon) deterministic time. The second application is a faster algorithm for hypergraph maximal matching, a versatile subroutine introduced in Ghaffari et al. (2017) for a variety of local graph algorithms. This gives an algorithm for (2Δ1)(2 \Delta - 1)-edge-list coloring in O~(log2Δlogn)\tilde O(\log^2 \Delta \log n) rounds deterministically or O~((loglogn)3)\tilde O( (\log \log n)^3 ) rounds randomly. Another consequence (with additional optimizations) is an algorithm which generates an edge-orientation with out-degree at most (1+ϵ)λ\lceil (1+\epsilon) \lambda \rceil for a graph of arboricity λ\lambda; for fixed ϵ\epsilon this runs in O~(log6n)\tilde O(\log^6 n) rounds deterministically or O~(log3n)\tilde O(\log^3 n ) rounds randomly
    corecore