Exact and Approximation Algorithms for Weighted Matroid Intersection
نویسندگان
چکیده
In this paper, we propose new exact and approximation algorithms for the weighted matroid intersection problem. Our exact algorithm is faster than previous algorithms when the largest weight is relatively small. Our approximation algorithm delivers a (1 − ε)-approximate solution with a running time significantly faster than most known exact algorithms. The core of our algorithms is a decomposition technique: we decompose an instance of the weighted matroid intersection problem into a set of instances of the unweighted matroid intersection problem. The computational advantage of this approach is that we can make use of fast unweighted matroid intersection algorithms as a black box for designing algorithms. Precisely speaking, we prove that we can solve the weighted matroid intersection problem via solvingW instances of the unweighted matroid intersection problem, where W is the largest given weight. Furthermore, we can find a (1− ε)-approximate solution via solving O(ε−1 log r) instances of the unweighted matroid intersection problem, where r is the smallest rank of the given two matroids. Our algorithms are simple and flexible: they can be adapted to special cases of the weighted matroid intersection problem, using unweighted matroid intersection algorithms. In this paper, we will show the following results. A preliminary version of this paper appears in the proceeding of ACM-SIAM Symposium on Discrete Algorithms (SODA), 2016. Chien-Chung Huang CNRS, École Normale Supérieure, Paris, France. E-mail: [email protected] Naonori Kakimura Graduate School of Arts and Sciences, University of Tokyo, Tokyo, Japan. E-mail: [email protected] Naoyuki Kamiyama Institute of Mathematics for Industry, Kyushu University, Fukuoka, Japan. E-mail: [email protected] 2 Chien-Chung Huang et al. 1. Given two general matroids, using Cunningham’s algorithm, we can solve the weighted matroid intersection problem exactly in O(τWnr) time and (1− ε)approximately in O(τε−1nr1.5 log r) time, where n is the size of the ground set and τ is the time complexity of an independence oracle call. 2. Given two graphic matroids, using the algorithm of Gabow and Xu, we can solve the weighted matroid intersection problem exactly in O(W √ rn log r) time and (1− ε)-approximately in O(ε−1 √ rn log r) time. 3. Given two linear matroids (in the form of two r-by-n matrices), using the algorithm of Cheung, Kwok, and Lau, we can solve the weighted matroid intersection problem exactly in O(nr log r∗ + Wnrω−1 ∗ ) time and (1 − ε)-approximately in O(nr log r∗+ε −1nrω−1 ∗ log r∗) time, where ω is the exponent of the matrix multiplication time and r∗ is the maximum size of a common independent set. Finally, we give a further application of our decomposition technique. We use our technique to solve efficiently the rank-maximal matroid intersection problem, a problem motivated by matching problems under preferences.
منابع مشابه
A Fast Approximation for Maximum Weight Matroid Intersection
We present an approximation algorithm for the maximum weight matroid intersection problem in the independence oracle model. Given two matroids defined over a common ground set N of n elements, let k be the rank of the matroid intersection and let Q denote the cost of an independence query for either matroid. An exact algorithm for finding a maximum cardinality independent set (the unweighted ca...
متن کاملShortest Disjoint S-Paths Via Weighted Linear Matroid Parity
Mader’s disjoint S-paths problem unifies two generalizations of bipartite matching: (a) nonbipartite matching and (b) disjoint s–t paths. Lovász (1980, 1981) first proposed an efficient algorithm for this problem via a reduction to matroid matching, which also unifies two generalizations of bipartite matching: (a) non-bipartite matching and (c) matroid intersection. While the weighted versions ...
متن کاملEfficient Theoretic and Practical Algorithms for Linear Matroid Intersection Problems
Efficient algorithms for the matroid intersection problem, both cardinality and weighted versions, are presented. The algorithm for weighted intersection works by scaling the weights. The cardinality algorithm is a special case, but takes advantage of greater structure. Efficiency of the algorithms is illustrated by several implementations on linear matroids. Consider a linear matroid with m el...
متن کاملThe Complexity of Maximum Matroid-Greedoid Intersection and Weighted Greedoid Maximization
The maximum intersection problem for a matroid and a greedoid, given by polynomial-time oracles, is shown NP -hard by expressing the satis ability of boolean formulas in 3-conjunctive normal form as such an intersection. The corresponding approximation problems are shown NP -hard for certain approximation performance bounds. Moreover, some natural parameterized variants of the problem are shown...
متن کاملValuated Matroid Intersection II: Algorithms
Based on the optimality criteria established in Part I, we show a primal-type cyclecanceling algorithm and a primal-dual-type augmenting algorithm for the valuated independent assignment problem: Given a bipartite graph G = (V , V −;A) with arc weight w : A → R and matroid valuations ω and ω− on V + and V − respectively, find a matching M(⊆ A) that maximizes ∑ {w(a) | a ∈ M}+ ω(∂M) + ω−(∂−M), w...
متن کامل