CMPSCI611: The Matroid Theorem Lecture 5

Similar documents
/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Matroids and Greedy Algorithms Date: 10/31/16

10.3 Matroids and approximation

Discrete Optimization 2010 Lecture 2 Matroids & Shortest Paths

CS599: Convex and Combinatorial Optimization Fall 2013 Lecture 17: Combinatorial Problems as Linear Programs III. Instructor: Shaddin Dughmi

1 Some loose ends from last time

15.1 Matching, Components, and Edge cover (Collaborate with Xin Yu)

Greedy Algorithms. CSE 101: Design and Analysis of Algorithms Lecture 10

Discrete Wiskunde II. Lecture 5: Shortest Paths & Spanning Trees

Trees. A tree is a graph which is. (a) Connected and. (b) has no cycles (acyclic).

General Methods for Algorithm Design

Proof methods and greedy algorithms

An Introduction to Matroids & Greedy in Approximation Algorithms

CS675: Convex and Combinatorial Optimization Fall 2014 Combinatorial Problems as Linear Programs. Instructor: Shaddin Dughmi

CMPSCI 611 Advanced Algorithms Midterm Exam Fall 2015

Today s Outline. CS 561, Lecture 15. Greedy Algorithms. Activity Selection. Greedy Algorithm Intro Activity Selection Knapsack

Minimum spanning tree

1 Matroid intersection

Notes on MapReduce Algorithms

Undirected Graphs. V = { 1, 2, 3, 4, 5, 6, 7, 8 } E = { 1-2, 1-3, 2-3, 2-4, 2-5, 3-5, 3-7, 3-8, 4-5, 5-6 } n = 8 m = 11

Greedy Algorithms My T. UF

CS 561, Lecture: Greedy Algorithms. Jared Saia University of New Mexico

Lecture 10 February 4, 2013

Matroids and submodular optimization

Matroids. Start with a set of objects, for example: E={ 1, 2, 3, 4, 5 }

Contents. Typical techniques. Proving hardness. Constructing efficient algorithms

Homework Assignment 1 Solutions

Bipartite Matchings. Andreas Klappenecker

Kruskal s Theorem Rebecca Robinson May 29, 2007

Sublinear Algorithms for Big Data

Discrete Mathematics, Spring 2004 Homework 9 Sample Solutions

Problem set 1. (c) Is the Ford-Fulkerson algorithm guaranteed to produce an acyclic maximum flow?

Minimal Spanning Tree From a Minimum Dominating Set

CS 374: Algorithms & Models of Computation, Spring 2017 Greedy Algorithms Lecture 19 April 4, 2017 Chandra Chekuri (UIUC) CS374 1 Spring / 1

The Matching Polytope: General graphs

CS675: Convex and Combinatorial Optimization Fall 2016 Combinatorial Problems as Linear and Convex Programs. Instructor: Shaddin Dughmi

CMPSCI 311: Introduction to Algorithms Second Midterm Exam

CSE101: Design and Analysis of Algorithms. Ragesh Jaiswal, CSE, UCSD

University of Toronto Department of Electrical and Computer Engineering. Final Examination. ECE 345 Algorithms and Data Structures Fall 2016

Combinatorial Optimisation, Problems I, Solutions Term /2015

Greedy Algorithms. Kleinberg and Tardos, Chapter 4

University of California Berkeley CS170: Efficient Algorithms and Intractable Problems November 19, 2001 Professor Luca Trevisan. Midterm 2 Solutions

a 1 a 2 a 3 a 4 v i c i c(a 1, a 3 ) = 3

Algorithm Design and Analysis

CS 161: Design and Analysis of Algorithms

Reading 11 : Relations and Functions

19. Basis and Dimension

University of New Mexico Department of Computer Science. Final Examination. CS 362 Data Structures and Algorithms Spring, 2007

1 Perfect Matching and Matching Polytopes

MINORS OF GRAPHS OF LARGE PATH-WIDTH. A Dissertation Presented to The Academic Faculty. Thanh N. Dang

Maximum Flow Problem (Ford and Fulkerson, 1956)

Rough Sets. V.W. Marek. General introduction and one theorem. Department of Computer Science University of Kentucky. October 2013.

More on NP and Reductions

1 Maximizing a Submodular Function

Algorithm Design and Analysis

Network Design and Game Theory Spring 2008 Lecture 2

Complexity Theory VU , SS The Polynomial Hierarchy. Reinhard Pichler

1 Heuristics for the Traveling Salesman Problem

Outline. Complexity Theory EXACT TSP. The Class DP. Definition. Problem EXACT TSP. Complexity of EXACT TSP. Proposition VU 181.

1 Basic Definitions. 2 Proof By Contradiction. 3 Exchange Argument

CS281A/Stat241A Lecture 19

On Greedy Algorithms and Approximate Matroids

Countable Menger s theorem with finitary matroid constraints on the ingoing edges

Recap & Interval Scheduling

Algorithms: Lecture 12. Chalmers University of Technology

Submodular Functions, Optimization, and Applications to Machine Learning

Matroid intersection, base packing and base covering for infinite matroids

CS Lecture 3. More Bayesian Networks

Preliminaries. Graphs. E : set of edges (arcs) (Undirected) Graph : (i, j) = (j, i) (edges) V = {1, 2, 3, 4, 5}, E = {(1, 3), (3, 2), (2, 4)}

NATIONAL UNIVERSITY OF SINGAPORE CS3230 DESIGN AND ANALYSIS OF ALGORITHMS SEMESTER II: Time Allowed 2 Hours

Lecture December 2009 Fall 2009 Scribe: R. Ring In this lecture we will talk about

APPROXIMATION ALGORITHMS RESOLUTION OF SELECTED PROBLEMS 1

The algorithm of adaptive random search for discrete-continuous optimization 1

Search and Lookahead. Bernhard Nebel, Julien Hué, and Stefan Wölfl. June 4/6, 2012

Submodular Functions, Optimization, and Applications to Machine Learning

/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Asymptotic Analysis, recurrences Date: 9/7/17

CSE 417. Chapter 4: Greedy Algorithms. Many Slides by Kevin Wayne. Copyright 2005 Pearson-Addison Wesley. All rights reserved.

Outline / Reading. Greedy Method as a fundamental algorithm design technique

ICS 252 Introduction to Computer Design

CS781 Lecture 3 January 27, 2011

2. A vertex in G is central if its greatest distance from any other vertex is as small as possible. This distance is the radius of G.

IS 709/809: Computational Methods in IS Research Fall Exam Review

Approximation Algorithms for Asymmetric TSP by Decomposing Directed Regular Multigraphs

A tabu search algorithm for the minmax regret minimum spanning tree problem with interval data

Part II: Integral Splittable Congestion Games. Existence and Computation of Equilibria Integral Polymatroids

Synthesis of 2-level Logic Exact and Heuristic Methods. Two Approaches

CMPSCI 611: Advanced Algorithms

One-to-one functions and onto functions

Combinatorial Optimization

CMPSCI 250: Introduction to Computation. Lecture #23: Finishing Kleene s Theorem David Mix Barrington 25 April 2013

Reachability-based matroid-restricted packing of arborescences

CS60007 Algorithm Design and Analysis 2018 Assignment 1

Announcements. CompSci 102 Discrete Math for Computer Science. Chap. 3.1 Algorithms. Specifying Algorithms

ACO Comprehensive Exam March 20 and 21, Computability, Complexity and Algorithms

Lecture 6: Greedy Algorithms I

CMPSCI 250: Introduction to Computation. Lecture #29: Proving Regular Language Identities David Mix Barrington 6 April 2012

Graphs (Matroids) with k ± ɛ-disjoint spanning trees (bases)

3.4 Relaxations and bounds

COMP538: Introduction to Bayesian Networks

FINAL EXAM PRACTICE PROBLEMS CMSC 451 (Spring 2016)

ACO Comprehensive Exam 19 March Graph Theory

Transcription:

CMPSCI611: The Matroid Theorem Lecture 5 We first review our definitions: A subset system is a set E together with a set of subsets of E, called I, such that I is closed under inclusion. This means that if X Y and Y I, then X I. The optimization problem for a subset system (E, I) has as input a positive weight for each element of E. Its output is a set X I such that X has at least as much total weight as any other set in I. A subset system is a matroid if it satisfies the exchange property: If i and i are sets in I and i has fewer elements than i, then there exists an element e i \ i such that i {e} I. 1

The Generic Greedy Algorithm Given any finite subset system (E, I), we find a set in I as follows: Set X to. Sort the elements of E by weight, heaviest first. For each element of E in this order, add it to X iff the result is in I. Return X. Today we prove: Theorem: For any subset system (E, I), the greedy algorithm solves the optimization problem for (E, I) if and only if (E, I) is a matroid. 2

Theorem: For any subset system (E, I), the greedy algorithm solves the optimization problem for (E, I) if and only if (E, I) is a matroid. Proof: We will show first that if (E, I) is a matroid, then the greedy algorithm is correct. Assume that (E, I) satisfies the exchange property. Pick an arbitrary weight function, let X be the set chosen by the greedy algorithm, and let Y be any other maximal set. We show that X has weight at least that of Y. First note that X and Y must have the same size, which we will call n. If one had fewer elements, we could add an element of the other and stay in I. But Y is assumed to be maximal in I, and if X were not maximal the greedy algorithm would add an element to it rather than stopping with it. 3

(We are proving that if (E, I) is a matroid, greedy set X has weight at least that of any arbitrary maximal set Y.) X = {x 1,..., x n } Y = {y 1,..., y n } Here the elements are listed in descending order of weight. If Y has total weight greater than that of X, then for some k, w(x k ) < w(y k ). Choose the smallest such k. Now let α be the first k 1 elements of X and let β be the first k elements of Y. By the Exchange Property, we can make a set Z in I by adding one of the elements of β to α. Since each element of β has weight greater than that of x k, Z has greater weight than {x 1,..., x k }. This means that at some point, the greedy algorithm chose an x j when a higher-weight element of Z was available. This contradicts the definition of the greedy algorithm. 4

Now we must prove that if (E, I) fails to satisfy the Exchange Property, then there is some weight function on which the greedy algorithm fails. Suppose there are two sets i and i in I, with i < i, such that no element of i \ i can be added to i while keeping the result in I. Let m be i. Our weight function is: Elements in i have weight m + 2, Elements in i \ i have weight m + 1, Other elements have weight 0. Greedy Algorithm: Tries elements of weight m+2 first, gets all m of them, then is stuck because no element of weight m + 1 fits, total score m(m + 2). Optimal Algorithm: Does at least as well as the set i, which has total weight at least m 2 + 2m + 1 because each of its elements has weight at least m + 1. This concludes both halves of the proof. 5

CMPSCI611: The Cardinality Theorem Lecture 5 A subset system is a matroid if it satisfies the exchange property: If i and i are sets in I and i has fewer elements than i, then there exists an element e i \ i such that i {e} I. A subset system (E, I) satisfies the Cardinality Property if for any set A E, all maximal independent sets in A have the same number of elements. (X is a maximal independent set in A if X I and there is no set Y I with X Y A.) The Cardinality Theorem: A subset system is a matroid iff it satisfies the Cardinality Property. 6

The Cardinality Theorem: A subset system is a matroid iff it satisfies the Cardinality Property. Proof: We showed earlier that in a matroid, all sets that are maximal in E must have the same cardinality, but now we must show a bit more. Let A be a set and let X and Y be two sets in I that are maximal in A. We must show that X and Y have the same size. Suppose X is smaller than Y. Then by the Exchange Property, we can add some element of Y to X and keep the result Z in I. But since X and Y are both subsets of A, the set Z is also a subset of A and thus X is not maximal in A. 7

The Cardinality Theorem: A subset system is a matroid iff it satisfies the Cardinality Property. For the other half of the proof, we will show that if (E, I) is not a matroid, then it fails to satisfy the Cardinality Property. Let X and Y be two sets in I such that X < Y but no element of Y \ X can be added to X to get a result in I. We let A be X Y. Now X is a maximal set in A, since we cannot add any of the other elements of A to it. The set Y may not be maximal in A, but if it isn t there is some subset of A that contains it and is maximal in A. Since this set is at least as big as Y, it is strictly bigger than X and we have a violation of the Cardinality Property. 8

If we now go back to the Maximum Weight Forest problem, we can see fairly easily that the subset system (E, I), where E consists of the edges of the graph G and I consists of the acyclic sets of edges, satisfies the Cardinality Property. If G is connected, the maximal sets in I must be spanning trees. If not, they are spanning forests forests that consist of a spanning tree for each connected component of G. (This is because if there were two nodes connected by a path in G but not in the forest, there would be an edge we could add to the forest without creating a cycle. But we proved earlier that any forest on n nodes with c connected components, it has exactly n c edges. If A is any set of edges, the subgraph of G with edge set A has some number of connnected components, c. Any maximal acyclic set of edges must have exactly n c edges. So all the maximal subsets of A have cardinality n c. and the Cardinality Property holds. 9

So the acyclic-edge-set subset system is a matroid, and thus our general results about matroids prove that the Kruskal algorithm always produces a minimum spanning tree. (As the greedy algorithm for MWF on the related weight function would give us a maximum weight forest whose edges would be an MST of the original graph.) Next time we ll consider the maximum matching problem, where we saw that the greedy algorithm does not always work. The corresponding subset system is not a matroid, but we will see that it is the intersection of two matroids. We ll present an algorithm for the matching problem on bipartite graphs, and show how it can be adapted to any system that is the intersection of two matroids. 10