MC302 GRAPH THEORY Thursday, 10/24/13

Similar documents
1 Matchings in Graphs

5 Matchings in Bipartite Graphs and Their Applications

Matchings. Examples. K n,m, K n, Petersen graph, Q k ; graphs without perfect matching. A maximal matching cannot be enlarged by adding another edge.

Matching 4/21/2016. Bipartite Matching. 3330: Algorithms. First Try. Maximum Matching. Key Questions. Existence of Perfect Matching

Matchings, Ramsey Theory, And Other Graph Fun

Graph Theory: Matchings and Factors

Theorem 3.1 (Berge) A matching M in G is maximum if and only if there is no M- augmenting path.

AMS /672: Graph Theory Homework Problems - Week V. Problems to be handed in on Wednesday, March 2: 6, 8, 9, 11, 12.

Topics on Computing and Mathematical Sciences I Graph Theory (3) Trees and Matchings I

Lecture 11a: Maximum Matchings Lale Özkahya

Matching and Covering

Assignment and Matching

The vertex set is a finite nonempty set. The edge set may be empty, but otherwise its elements are two-element subsets of the vertex set.

MATH 682 Notes Combinatorics and Graph Theory II

Notes for Lecture 20

1 The Arthur-Merlin Story

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.

2. Lecture notes on non-bipartite matching

List of Theorems. Mat 416, Introduction to Graph Theory. Theorem 1 The numbers R(p, q) exist and for p, q 2,

Matching Theory. Figure 1: Is this graph bipartite?

MC 302 GRAPH THEORY 10/1/13 Solutions to HW #2 50 points + 6 XC points

Paths, Trees, and Flowers by Jack Edmonds

Matchings and Covers in bipartite graphs

Sources for this lecture. 3. Matching in bipartite and general graphs. Symmetric difference

11.4 Bipartite Multigraphs

1 Matching in Non-Bipartite Graphs

Matchings. Saad Mneimneh

Constraint Programming. Global Constraints. Amira Zaki Prof. Dr. Thom Frühwirth. University of Ulm WS 2012/2013

Graph Algorithms (part 3 of CSC 282),

Lecture 7: Bipartite Matching

Induction Review. Graphs. EECS 310: Discrete Math Lecture 5 Graph Theory, Matching. Common Graphs. a set of edges or collection of two-elt subsets

Matching. Algorithms and Networks

Advanced Algorithms Class Notes for Monday, October 23, 2012 Min Ye, Mingfu Shao, and Bernard Moret

Network Flow. November 23, CMPE 250 Graphs- Network Flow November 23, / 31

Notes slides from before lecture. CSE 21, Winter 2017, Section A00. Lecture 9 Notes. Class URL:

Figure 2.1: A bipartite graph.

Module 7. Independent sets, coverings. and matchings. Contents

Graph Theory II. Po-Shen Loh. June edges each. Solution: Spread the n vertices around a circle. Take parallel classes.

COMP Online Algorithms. Online Graph Problems. Shahin Kamali. Lecture 23 - Nov. 28th, 2017 University of Manitoba

Definition 1.1. A matching M in a graph G is called maximal if there is no matching M in G so that M M.

Ma/CS 6b Class 2: Matchings

Lecture 6: Graph Properties

2. CONNECTIVITY Connectivity

Approximation Algorithms

Section 8.2 Graph Terminology. Undirected Graphs. Definition: Two vertices u, v in V are adjacent or neighbors if there is an edge e between u and v.

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

Matchings in Graphs. Definition 1 Let G = (V, E) be a graph. M E is called as a matching of G if v V we have {e M : v is incident on e E} 1.

MTL 776: Graph Algorithms Lecture : Matching in Graphs

Bipartite Matching & the Hungarian Method

Graph Algorithms (part 3 of CSC 282),

Lecture 11: Maximum flow and minimum cut

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

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

Ma/CS 6b Class 4: Matchings in General Graphs

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

Introduction to Graph Theory

1. Lecture notes on bipartite matching

Copyright 2007 Pearson Addison-Wesley. All rights reserved. A. Levitin Introduction to the Design & Analysis of Algorithms, 2 nd ed., Ch.

Graphs and Algorithms 2016

Maximum Matching Algorithm

Matching Theory. Amitava Bhattacharya

Graphs and Algorithms 2015

Maximum flows & Maximum Matchings

MC302 GRAPH THEORY SOLUTIONS TO HOMEWORK #1 9/19/13 68 points + 6 extra credit points

Jessica Su (some parts copied from CLRS / last quarter s notes)

CS483 Analysis of Algorithms Lecture 09 Linear Programming 01

Reductions and Satisfiability

The Dynamic Hungarian Algorithm for the Assignment Problem with Changing Costs

implementing the breadth-first search algorithm implementing the depth-first search algorithm

Coping with NP-Completeness

CS388C: Combinatorics and Graph Theory

Graph Algorithms Matching

Global Constraints. Combinatorial Problem Solving (CPS) Enric Rodríguez-Carbonell (based on materials by Javier Larrosa) February 22, 2019

5.1 Min-Max Theorem for General Matching

1 Better Approximation of the Traveling Salesman

Approximation Algorithms

Advanced Combinatorial Optimization September 17, Lecture 3. Sketch some results regarding ear-decompositions and factor-critical graphs.

Discrete Mathematics and Probability Theory Fall 2016 Seshia and Walrand Midterm 1

Matching in Bipartite Graphs

Some Elementary Lower Bounds on the Matching Number of Bipartite Graphs

1. Lecture notes on bipartite matching February 4th,

CPSC 320 Midterm #1. February 4, 2015

Design and Analysis of Algorithms

Lecture notes on: Maximum matching in bipartite and non-bipartite graphs (Draft)

CS261: A Second Course in Algorithms Lecture #14: Online Bipartite Matching

Online Bipartite Matching: A Survey and A New Problem

GRAPH THEORY and APPLICATIONS. Matchings

Mathematical and Algorithmic Foundations Linear Programming and Matchings

Perfect matchings in O(nlogn) time in regular bipartite graph

Classic Graph Theory Problems

Greedy Algorithms. Previous Examples: Huffman coding, Minimum Spanning Tree Algorithms

Graph Theory S 1 I 2 I 1 S 2 I 1 I 2

PERFECT MATCHING THE CENTRALIZED DEPLOYMENT MOBILE SENSORS THE PROBLEM SECOND PART: WIRELESS NETWORKS 2.B. SENSOR NETWORKS OF MOBILE SENSORS

Solutions to Assignment# 4

REU 2006 Discrete Math Lecture 5

Grade 7/8 Math Circles Graph Theory - Solutions October 13/14, 2015

CSE 417 Network Flows (pt 3) Modeling with Min Cuts

GRAPH DECOMPOSITION BASED ON DEGREE CONSTRAINTS. March 3, 2016

NP Completeness. Andreas Klappenecker [partially based on slides by Jennifer Welch]

Notes for Lecture 24

Transcription:

MC302 GRAPH THEORY Thursday, 10/24/13 Today: Return, discuss HW 3 From last time: Greedy Algorithms for TSP Matchings and Augmenting Paths HW 4 will be posted by tomorrow Reading: [CH] 4.1 Exercises: [CH] p. 127: 4.1.1, 4.1.2, 4.1.9 Thursday, 10/24/13, Slide #1

Matching Problems Marriage Problem k men and m women, and each male-female pair has expressed whether or not they are willing to marry. Find the maximum number of pairs of willing mates. Personnel Assignment Problem k workers X 1,, X k and m jobs Y 1,, Y m. Each worker is qualified to do some jobs, but not others. Assign workers to jobs so that number of assignments is maximized. Optimal Assignment Problem Each worker X i and job Y j is given a weight w ij indicating the effectiveness of assigning worker X i to job Y j. Assign workers to jobs so that the total effectiveness of the assignments of assignments is maximized. Thursday, 10/24/13, Slide #2

Matchings Definition: Let G be a graph. A matching in G is a set M of edges, no two of which share an endpoint. A vertex that is an endpoint of an edge in the matching M is called M-saturated; otherwise it s M-unsaturated. G does not need to bipartite, but in applications it often is. A B C D E F G H 010 110 011 111 1 101 0 1 Thursday, 10/24/13, Slide #3

Maximum and Perfect Matchings A matching M is maximum if it has the largest size (# of edges) among all possible matchings. A matching M is perfect (or complete) if every vertex in G is incident with an edge in the matching. Does maximum imply perfect? Does perfect imply maximum? Thursday, 10/24/13, Slide #4

Matchings in familiar graphs and (cycle & path on n vertices): What s the size of a maximum matching? What conditions on permit a perfect matching?,, assume : What s the size of a maximum matching? What conditions on, permit a perfect matching? : What s the size of a maximum matching? What conditions on permit a perfect matching? Thursday, 10/24/13, Slide #5

Making a matching bigger: Alternating and Augmenting paths If G has a matching M, an M-alternating path is a path that alternates between edges in and not in M. An M-augmenting path is an M- alternating path whose endpoints are not incident with any M-edges. Give two M-alternating paths in the graph at right, one M-augmenting, one not. A transfer along an M-augmenting path P creates a new matching M by removing from M the matched edges on P and adding to M the unmatched edges on P How is the size of M related to the size of M? a d g b e f h j c i Thursday, 10/24/13, Slide #6

Berge's Theorem Berge s Theorem. A matching M is maximum if and only if it has no M-augmenting paths. Proof. (î): If M is maximum, then there can't be an M-augmenting path why? For other direction (í), prove contrapositive: If M is not maximum, then there is an M-augmenting path. Let M' be a matching with more edges than M. Let H = M D M' = (M \ M ) (M \ M) = the edges that are in M or M', but not both (called their symmetric difference). Thursday, 10/24/13, Slide #7

Properties of H = M M' 1. All vertices in H have degree 1 or 2, so each component of H is a path or a cycle. 2. The edges on each path or cycle must alternately be in M and M. 3. Since M' > M, H has more edges from M' than from M. 4. It follows from (1-3) that some component of H has more edges of M' than M, and therefore must be an M-augmenting path. This is what we wanted to prove! Thursday, 10/24/13, Slide #8

Edmonds's Matching Algorithm Input: A graph G and a matching M (including the empty matching), Output: A maximum matching. 1. Pick any unmatched vertex v in the matching. 2. Grow an M-alternating tree from v. 3a. If any M-augmenting path P is found (i.e., if you reach an unmatched vertex), do a transfer along P, creating a larger matching M. Repeat from Step 1 using the matching M. 3b. If no M-augmenting path is found, grow a tree from another unmatched vertex. Repeat until either all vertices are matched or all have been examined without finding any M-alternating paths. Thursday, 10/24/13, Slide #9

Examples Each graph below has a matching M (in red). In each graph find an M-augmenting path to extend the matching. Thursday, 10/24/13, Slide #10