PTAS for Matroid Matching

Similar documents
On linear and semidefinite programming relaxations for hypergraph matching

Graphs and Network Flows IE411. Lecture 21. Dr. Ted Ralphs

CS 598CSC: Approximation Algorithms Lecture date: March 2, 2011 Instructor: Chandra Chekuri

12.1 Formulation of General Perfect Matching

1 Matching in Non-Bipartite Graphs

Lecture 9: Pipage Rounding Method

5. Lecture notes on matroid intersection

IPCO Location: Bonn, Germany Date: June 23 25,

Theorem 2.9: nearest addition algorithm

Communication Complexity of Combinatorial Auctions with Submodular Valuations

6. Lecture notes on matroid intersection

Iterative Methods in Combinatorial Optimization. R. Ravi Carnegie Bosch Professor Tepper School of Business Carnegie Mellon University

Matching Algorithms. Proof. If a bipartite graph has a perfect matching, then it is easy to see that the right hand side is a necessary condition.

Minimizing Setup and Beam-On Times in Radiation Therapy

The strong chromatic number of a graph

CSC2420 Spring 2015: Lecture 2

The Ordered Covering Problem

Expected Approximation Guarantees for the Demand Matching Problem

Algorithm Design and Analysis

Mathematical and Algorithmic Foundations Linear Programming and Matchings

1. Lecture notes on bipartite matching

A List Heuristic for Vertex Cover

An exact algorithm for max-cut in sparse graphs

Applications of the Linear Matroid Parity Algorithm to Approximating Steiner Trees

15-451/651: Design & Analysis of Algorithms November 4, 2015 Lecture #18 last changed: November 22, 2015

Conflict Graphs for Combinatorial Optimization Problems

Approximation slides 1. An optimal polynomial algorithm for the Vertex Cover and matching in Bipartite graphs

8 Matroid Intersection

Chapter 5 Graph Algorithms Algorithm Theory WS 2012/13 Fabian Kuhn

Chain Packings and Odd Subtree Packings. Garth Isaak Department of Mathematics and Computer Science Dartmouth College, Hanover, NH

Lecture 4: Primal Dual Matching Algorithm and Non-Bipartite Matching. 1 Primal/Dual Algorithm for weighted matchings in Bipartite Graphs

12 Introduction to LP-Duality

Approximation Algorithms

ACO Comprehensive Exam October 12 and 13, Computability, Complexity and Algorithms

1. Lecture notes on bipartite matching February 4th,

An Efficient Approximation for the Generalized Assignment Problem

Graph Algorithms Matching

Combinatorial Optimization

Linear Matroid Intersection is in quasi-nc

Vertex Cover Approximations on Random Graphs.

Approximation Algorithms for Geometric Intersection Graphs

Graph Theory and Optimization Approximation Algorithms

CSC2420 Fall 2012: Algorithm Design, Analysis and Theory

A constant-factor approximation algorithm for the asymmetric travelling salesman problem

Approximation Algorithms

3 No-Wait Job Shops with Variable Processing Times

Steiner Trees and Forests

Abstract. A graph G is perfect if for every induced subgraph H of G, the chromatic number of H is equal to the size of the largest clique of H.

Approximation Algorithms

6 Randomized rounding of semidefinite programs

Lecture 7: Asymmetric K-Center

Problem set 2. Problem 1. Problem 2. Problem 3. CS261, Winter Instructor: Ashish Goel.

with Dana Richards December 1, 2017 George Mason University New Results On Routing Via Matchings Indranil Banerjee The Routing Model

On Covering a Graph Optimally with Induced Subgraphs

Approximation Algorithms: The Primal-Dual Method. My T. Thai

CSC 373: Algorithm Design and Analysis Lecture 3

A primal dual interpretation of two 2-approximation algorithms for the feedback vertex set problem in undirected graphs

/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Approximation algorithms Date: 11/27/18

Local Constraints in Combinatorial Optimization

Coverings and Matchings in r-partite Hypergraphs

The Set Cover with Pairs Problem

Greedy Algorithms 1. For large values of d, brute force search is not feasible because there are 2 d

CS 580: Algorithm Design and Analysis. Jeremiah Blocki Purdue University Spring 2018

of Two 2-Approximation Algorithms for the Feedback Vertex Set Problem in Undirected Graphs Michel X. Goemans y M.I.T. David P. Williamson x IBM Watson

Decision Problems. Observation: Many polynomial algorithms. Questions: Can we solve all problems in polynomial time? Answer: No, absolutely not.

2 The Fractional Chromatic Gap

These notes present some properties of chordal graphs, a set of undirected graphs that are important for undirected graphical models.

Approximation Algorithms

10. EXTENDING TRACTABILITY

Solution for Homework set 3

We ve done. Introduction to the greedy method Activity selection problem How to prove that a greedy algorithm works Fractional Knapsack Huffman coding

Monochromatic loose-cycle partitions in hypergraphs

On Minimum Sum of Radii and Diameters Clustering

Exam problems for the course Combinatorial Optimization I (DM208)

Lecture 10,11: General Matching Polytope, Maximum Flow. 1 Perfect Matching and Matching Polytope on General Graphs

11. APPROXIMATION ALGORITHMS

Models of distributed computing: port numbering and local algorithms

Polyhedral Combinatorics (ADM III)

COMP Analysis of Algorithms & Data Structures

On the Maximum Quadratic Assignment Problem

Approximation algorithms for minimum-cost k-(s, T ) connected digraphs

Paths, Trees, and Flowers by Jack Edmonds

Linear Programming Duality and Algorithms

Lecture 9. Semidefinite programming is linear programming where variables are entries in a positive semidefinite matrix.

Rounding procedures in Semidefinite Programming

Vertex Cover is Fixed-Parameter Tractable

Chapter 10 Part 1: Reduction

Connectivity and Tiling Algorithms

COMP260 Spring 2014 Notes: February 4th

Chordal Graphs: Theory and Algorithms

CSC Linear Programming and Combinatorial Optimization Lecture 12: Semidefinite Programming(SDP) Relaxation

ON WEIGHTED RECTANGLE PACKING WITH LARGE RESOURCES*

Jörgen Bang-Jensen and Gregory Gutin. Digraphs. Theory, Algorithms and Applications. Springer

Analysis of an ( )-Approximation Algorithm for the Maximum Edge-Disjoint Paths Problem with Congestion Two

NP-Hardness. We start by defining types of problem, and then move on to defining the polynomial-time reductions.

11. APPROXIMATION ALGORITHMS

IN general setting, a combinatorial network is

Lecture 14: Linear Programming II

Important separators and parameterized algorithms

Matching Theory. Figure 1: Is this graph bipartite?

Transcription:

PTAS for Matroid Matching Jon Lee 1 Maxim Sviridenko 1 Jan Vondrák 2 1 IBM Watson Research Center Yorktown Heights, NY 2 IBM Almaden Research Center San Jose, CA May 6, 2010 Jan Vondrák (IBM Almaden) PTAS for Matroid Matching 1 / 19

Why matroid matching? Classical combinatorial optimization problems: Max-weight bipartite matching [Hungarian method, 1950 s] Max-weight independent set in a matroid [Rado, 1950 s] Max-weight non-bipartite matching [Edmonds, 1960 s] Max-weight independent set in the intersection of two matroids [Edmonds/Lawler 1970 s] Jan Vondrák (IBM Almaden) PTAS for Matroid Matching 2 / 19

Why matroid matching? Classical combinatorial optimization problems: Max-weight bipartite matching [Hungarian method, 1950 s] Max-weight independent set in a matroid [Rado, 1950 s] Max-weight non-bipartite matching [Edmonds, 1960 s] Max-weight independent set in the intersection of two matroids [Edmonds/Lawler 1970 s] Matroid matching: proposed by Lawler as a common generalization Jan Vondrák (IBM Almaden) PTAS for Matroid Matching 2 / 19

Matroids Definition A matroid on M = (N, I) is a system of independent sets such that 1 I 2 J I; I J I I 3 I, J I; I < J j J \ I; I {j} I. Jan Vondrák (IBM Almaden) PTAS for Matroid Matching 3 / 19

Matroids Definition A matroid on M = (N, I) is a system of independent sets such that 1 I 2 J I; I J I I 3 I, J I; I < J j J \ I; I {j} I. Examples: linear matroid (independent sets = linearly independent vectors) graphic matroid (independent sets = acyclic subgraphs) Jan Vondrák (IBM Almaden) PTAS for Matroid Matching 3 / 19

Matroid Matching Given: Graph G = (V, E), matroid M = (V, I). Find: A matching M in G such that V (M) is independent in M. Jan Vondrák (IBM Almaden) PTAS for Matroid Matching 4 / 19

Matroid Matching Given: Graph G = (V, E), matroid M = (V, I). Find: A matching M in G such that V (M) is independent in M. Note: Matroid matching is equivalent to its special case, where G itself is a matching. Jan Vondrák (IBM Almaden) PTAS for Matroid Matching 4 / 19

Matroid parity Given: Matroid M = (N, I), N partitioned into disjoint pairs p 1,..., p n. Find: A subset I [n] such that i I p i is independent in M. Jan Vondrák (IBM Almaden) PTAS for Matroid Matching 5 / 19

Matroid parity Given: Matroid M = (N, I), N partitioned into disjoint pairs p 1,..., p n. Find: A subset I [n] such that i I p i is independent in M. Reduction from matroid matching: Given G = (V, E), replace each edge e = (u, v) by two unique elements (u e, v e ). For each vertex v, simulate the matching condition by defining {v e : v e} to be parallel copies of v in the matroid M. Jan Vondrák (IBM Almaden) PTAS for Matroid Matching 5 / 19

Special cases of matroid parity Matroid intersection: Given M 1, M 2, find the largest set independent in both matroids. M 1 M 2 Jan Vondrák (IBM Almaden) PTAS for Matroid Matching 6 / 19

Special cases of matroid parity Matroid intersection: Given M 1, M 2, find the largest set independent in both matroids. M 1 M 2 Matching in non-bipartite graphs: obviously a special case of matroid matching. Jan Vondrák (IBM Almaden) PTAS for Matroid Matching 6 / 19

The matchoid problem Given: Graph G = (V, E), matroid M v = (E v, I v ) for each v V. Find: A set of edges F E such that for each vertex v V, the incident edges F E v are independent in M v. Jan Vondrák (IBM Almaden) PTAS for Matroid Matching 7 / 19

The matchoid problem Given: Graph G = (V, E), matroid M v = (E v, I v ) for each v V. Find: A set of edges F E such that for each vertex v V, the incident edges F E v are independent in M v. Note: The matchoid problem is a special case of matroid matching, and it still generalizes matroid intersection and non-bipartite matching. Jan Vondrák (IBM Almaden) PTAS for Matroid Matching 7 / 19

Complexity status overview matroid matching matroid parity matchoid non-b. matching matroid intersection bipartite matching Jan Vondrák (IBM Almaden) PTAS for Matroid Matching 8 / 19

Complexity status overview matroid matching matroid parity NP-hard NP-hard matchoid NP-hard non-b. matching matroid intersection P bipartite matching P Jan Vondrák (IBM Almaden) PTAS for Matroid Matching 8 / 19

Good news Definition A matroid M = (N, I) is linear if there are vectors {v i : i N) such that I I iff {v i : i I} are linearly independent. Lászlo Lovász (1980): Matroid matching of maximum cardinality can be found in polynomial time, if M is a linear matroid. Jan Vondrák (IBM Almaden) PTAS for Matroid Matching 9 / 19

Good news Definition A matroid M = (N, I) is linear if there are vectors {v i : i N) such that I I iff {v i : i I} are linearly independent. Lászlo Lovász (1980): Matroid matching of maximum cardinality can be found in polynomial time, if M is a linear matroid. Notes: There is also a randomized FPTAS in the weighted case for linear matroids. For general matroids given by an oracle, even unweighted matroid matching requires exponentially many queries to solve optimally. Jan Vondrák (IBM Almaden) PTAS for Matroid Matching 9 / 19

Approximation? Easy: The feasible solutions to a matroid matching problem form a 2-independence system: If A is feasible and {e} is a feasible edge, then there are edges a, b A such that (A \ {a, b}) {e} is feasible. Jenkyns (1976): For any 2-independence system, the greedy algorithm gives a 1/2-approximation (even in the weighted case). Jan Vondrák (IBM Almaden) PTAS for Matroid Matching 10 / 19

Approximation? Easy: The feasible solutions to a matroid matching problem form a 2-independence system: If A is feasible and {e} is a feasible edge, then there are edges a, b A such that (A \ {a, b}) {e} is feasible. Jenkyns (1976): For any 2-independence system, the greedy algorithm gives a 1/2-approximation (even in the weighted case). Fujito (1993): 2/3-approximation for unweighted matroid matching. Jan Vondrák (IBM Almaden) PTAS for Matroid Matching 10 / 19

Approximation? Easy: The feasible solutions to a matroid matching problem form a 2-independence system: If A is feasible and {e} is a feasible edge, then there are edges a, b A such that (A \ {a, b}) {e} is feasible. Jenkyns (1976): For any 2-independence system, the greedy algorithm gives a 1/2-approximation (even in the weighted case). Fujito (1993): 2/3-approximation for unweighted matroid matching. More generally, matroid matching in k-uniform hypergraphs is a k-independence system = 1/k-approximation. Jan Vondrák (IBM Almaden) PTAS for Matroid Matching 10 / 19

What we did Theorem (Lee, Sviridenko, V.) 1 There is a PTAS for unweighted matroid matching. 2 In k-uniform hypergraphs, (2/k ɛ)-approximation for any ɛ > 0. Note: Special cases of k-uniform matroid matching are k-set packing (2/k ɛ known by Hurkens-Schrijver) and intersection of k matroids (only 1/k known until recently). Jan Vondrák (IBM Almaden) PTAS for Matroid Matching 11 / 19

What we did Theorem (Lee, Sviridenko, V.) 1 There is a PTAS for unweighted matroid matching. 2 In k-uniform hypergraphs, (2/k ɛ)-approximation for any ɛ > 0. Note: Special cases of k-uniform matroid matching are k-set packing (2/k ɛ known by Hurkens-Schrijver) and intersection of k matroids (only 1/k known until recently). Open question: the weighted case. Theorem (Lee, Sviridenko, V.) A natural LP formulation of matroid matching has Ω(n) integrality gap. After r rounds of Sherali-Adams, still Ω(n/r) integrality gap. Jan Vondrák (IBM Almaden) PTAS for Matroid Matching 11 / 19

Our algorithm PTAS for matroid parity: Local search algorithm, try to add s + 1 new pairs and kick out s. Jan Vondrák (IBM Almaden) PTAS for Matroid Matching 12 / 19

Our algorithm PTAS for matroid parity: Local search algorithm, try to add s + 1 new pairs and kick out s. If we want to achieve a (1 ɛ)-approximation, we need s(ɛ) = 5 1/ɛ. Hence, running time n 51/ɛ. Jan Vondrák (IBM Almaden) PTAS for Matroid Matching 12 / 19

Our algorithm PTAS for matroid parity: Local search algorithm, try to add s + 1 new pairs and kick out s. If we want to achieve a (1 ɛ)-approximation, we need s(ɛ) = 5 1/ɛ. Hence, running time n 51/ɛ. Lemma If A, B are feasible solutions of matroid parity and ( A < 1 1 ) B 2t then there is a local improvement for A with s 5 t 1. Jan Vondrák (IBM Almaden) PTAS for Matroid Matching 12 / 19

Base case: t = 1 We want: If A < 1 2 B, then A can be extended by some pair from B. Jan Vondrák (IBM Almaden) PTAS for Matroid Matching 13 / 19

Base case: t = 1 We want: If A < 1 2 B, then A can be extended by some pair from B. B 0 A B Proof: Since A < 1 2 B, we can extend A to an independent set A B 0 such that B 0 B and B 0 > 1 2 B. B 0 > B \ B 0, so there must be a whole pair in B 0, which can be added to A. Jan Vondrák (IBM Almaden) PTAS for Matroid Matching 13 / 19

General case: t > 1 We assume A < (1 1 2t ) B. A 1 A 2 B 0 B 1 A B Extend A to A B 0 ; if B 0 contains a pair, we are done. Jan Vondrák (IBM Almaden) PTAS for Matroid Matching 14 / 19

General case: t > 1 We assume A < (1 1 2t ) B. A 1 A 2 B 0 B 1 A B Extend A to A B 0 ; if B 0 contains a pair, we are done. Let B 1 be paired up with B 0, and find A 1 A such that A 1 and B 1 can be swapped in the contracted matroid M/B 0. Jan Vondrák (IBM Almaden) PTAS for Matroid Matching 14 / 19

General case: t > 1 We assume A < (1 1 2t ) B. A 1 A 2 B 0 B 1 A B Extend A to A B 0 ; if B 0 contains a pair, we are done. Let B 1 be paired up with B 0, and find A 1 A such that A 1 and B 1 can be swapped in the contracted matroid M/B 0. If A 1 contains a pair, kick it out and add two pairs from B 0 B 1. Jan Vondrák (IBM Almaden) PTAS for Matroid Matching 14 / 19

General case: t > 1 We assume A < (1 1 2t ) B. A 1 A 2 B 0 B 1 A B Extend A to A B 0 ; if B 0 contains a pair, we are done. Let B 1 be paired up with B 0, and find A 1 A such that A 1 and B 1 can be swapped in the contracted matroid M/B 0. If A 1 contains a pair, kick it out and add two pairs from B 0 B 1. Otherwise, let A 2 be paired up with A 1, and recurse on A = A \ (A 1 A 2 ), B = B \ (B 0 B 1 ) in M/(B 0 B 1 ). Jan Vondrák (IBM Almaden) PTAS for Matroid Matching 14 / 19

Inductive argument We have A < (1 1 2t 2 ) B. B 0 A 1 B 1 A 2 A B B Ã By induction there is a local improvement A \ Ã B in M/(B 0 B 1 ) such that B 5 t 1. Jan Vondrák (IBM Almaden) PTAS for Matroid Matching 15 / 19

Inductive argument We have A < (1 1 2t 2 ) B. B 0 A 1 B 1 A 2 A B B Ã By induction there is a local improvement A \ Ã B in M/(B 0 B 1 ) such that B 5 t 1. This set can be extended by pairs from A 1 A 2, but we miss up to 4 B pairs, as we must take whole pairs and keep independence. Jan Vondrák (IBM Almaden) PTAS for Matroid Matching 15 / 19

Inductive argument We have A < (1 1 2t 2 ) B. B 0 A 1 B 1 A 2 A B B Ã By induction there is a local improvement A \ Ã B in M/(B 0 B 1 ) such that B 5 t 1. This set can be extended by pairs from A 1 A 2, but we miss up to 4 B pairs, as we must take whole pairs and keep independence. However, whatever we miss in A 1 A 2, we can make up in B 0 B 1. Jan Vondrák (IBM Almaden) PTAS for Matroid Matching 15 / 19

Inductive argument We have A < (1 1 2t 2 ) B. B 0 A 1 B 1 A 2 A B B Ã By induction there is a local improvement A \ Ã B in M/(B 0 B 1 ) such that B 5 t 1. This set can be extended by pairs from A 1 A 2, but we miss up to 4 B pairs, as we must take whole pairs and keep independence. However, whatever we miss in A 1 A 2, we can make up in B 0 B 1. In total, we gain at least one pair and the swap size is 5 B 5 t. Jan Vondrák (IBM Almaden) PTAS for Matroid Matching 15 / 19

LP relaxations What to do about the weighted matroid matching problem? Local search - we are not sure how to analyze it. LP relaxations? Jan Vondrák (IBM Almaden) PTAS for Matroid Matching 16 / 19

LP relaxations What to do about the weighted matroid matching problem? Local search - we are not sure how to analyze it. LP relaxations? Natural LP: max w e y e : e E x u r M (S); S V u S x u = y e ; u e E, x u, y e 0. Jan Vondrák (IBM Almaden) PTAS for Matroid Matching 16 / 19

Integrality gap Example: Pairs (u 1, v 1 ),..., (u n, v n ). Matroid M t : a set S is independent if it contains at most t pairs, and any number of singletons from the remaining pairs. i T max n y i : i=1 y i 1 ( T + t); T, 2 y i 0. Jan Vondrák (IBM Almaden) PTAS for Matroid Matching 17 / 19

Integrality gap Example: Pairs (u 1, v 1 ),..., (u n, v n ). Matroid M t : a set S is independent if it contains at most t pairs, and any number of singletons from the remaining pairs. i T max n y i : i=1 y i 1 ( T + t); T, 2 y i 0. Optimal solution: S = {(u 1, v 1 ), (u 2, v 2 ),..., (u t, v t )}, value t. Fractional solution: y e = 1/2 for each pair e = (u i, v i ), value n/2. Jan Vondrák (IBM Almaden) PTAS for Matroid Matching 17 / 19

Sherali-Adams Can we strengthen this LP? Sherali-Adams hierarchy: For some r 1, consider all disjoint I, J V such that I + J r. Multiply each constraint by i I y i j J (1 y j), expand the products and replace each monomial l L y k l l by y L. Jan Vondrák (IBM Almaden) PTAS for Matroid Matching 18 / 19

Sherali-Adams Can we strengthen this LP? Sherali-Adams hierarchy: For some r 1, consider all disjoint I, J V such that I + J r. Multiply each constraint by i I y i j J (1 y j), expand the products and replace each monomial l L y k l l by y L. We get constraints like: y l y i l T i I j J(1 y j ) 1 2 (t + T ) i I expand and replace monomials by y L. y i (1 y j ). j J Jan Vondrák (IBM Almaden) PTAS for Matroid Matching 18 / 19

Sherali-Adams Can we strengthen this LP? Sherali-Adams hierarchy: For some r 1, consider all disjoint I, J V such that I + J r. Multiply each constraint by i I y i j J (1 y j), expand the products and replace each monomial l L y k l l by y L. We get constraints like: y l y i l T i I j J(1 y j ) 1 2 (t + T ) i I expand and replace monomials by y L. y i (1 y j ). Fractional solution: y L = 1/2 L is still feasible for this LP, for t = r. LP r n/2, while OPT = t = r. Hence, the gap is Ω(n/r). j J Jan Vondrák (IBM Almaden) PTAS for Matroid Matching 18 / 19

Conclusion We showed a PTAS for unweighted matroid matching. Is the following true? For any ɛ > 0, there exists s(ɛ) such that local search with swap size s(ɛ) gives a (1 ɛ)-approximation for weighted matroid matching. Jan Vondrák (IBM Almaden) PTAS for Matroid Matching 19 / 19

Conclusion We showed a PTAS for unweighted matroid matching. Is the following true? For any ɛ > 0, there exists s(ɛ) such that local search with swap size s(ɛ) gives a (1 ɛ)-approximation for weighted matroid matching. More generally, can we get (2/k ɛ)-approximation for weighted k-uniform matroid matching? Or at least for the weighted matchoid problem? (we have a 2/3-approximation for k = 2) Jan Vondrák (IBM Almaden) PTAS for Matroid Matching 19 / 19