Presentation is loading. Please wait.

Presentation is loading. Please wait.

Matchings Matching: A matching in a graph G is a set of non-loop edges with no shared endpoints.

Similar presentations


Presentation on theme: "Matchings Matching: A matching in a graph G is a set of non-loop edges with no shared endpoints."— Presentation transcript:

1 Matchings Matching: A matching in a graph G is a set of non-loop edges with no shared endpoints

2 Maximal & Maximum Matchings Maximal Matching: A maximal matching in a graph is a matching that cannot enlarged by adding an edge Maximum Matching: A maximum matching is a matching of maximum size among all matchings in the graph Maximal MatchingMaximum Matching

3 Symmetric Difference ∆ If M and M’ are matchings, then M ∆ M’=(M- M’)  (M’-M). M △ M’

4 Lemma 3.19 Every component of the symmetric difference of two matchings is a path or an even cycle. 1. Let F=M∆M’. 2. ∆(F)<=2  Every component is a path or cycle. 3. Every path or cycle alternates between M-M’ and M’-M.  The cycle has even length. M △ M’

5 M-saturated M-saturated Vertices: The vertices incident to the edges of a matching M M-unsaturated Vertices: The vertices which are not saturated by M M M-saturated vertex M-unsaturated vertex

6 M-augmenting Path M-alternating path: Given a matching M, and an M-alternating path is a path that alternates between edges in M and edges not in M M-augmenting path: An M-alternating path whose endpoints are unsaturated by M M M-alternating path M-augmenting path

7 Theorem 3.10 A matching M is a maximum matching in G iff G has no M-augmenting path (  ) Suppose G has an M-augmenting path. Then, we can produce a matching larger than M. M M’  |M’| > |M|

8 Theorem 3.10 (  ) Let M’ be a matching in G larger than M. Then, we can construct an M-augmenting path. 1. Let F=M∆M’. F consists paths and even cycles. 2. F must have a path with more edges of M’ than of M. 3. Such a path is an M-augmenting path in G. M △ M’

9 Independent Set Independent Set: a set of pairwise nonadjacent vertices in graph A B C D E

10 Bipartite Graph Bipartite Graph: A graph is bipartite if V is the union of two disjoint independent sets called partite sets of G X,Y-bigraph: A bipartite graph with partite sets X and Y Y X

11 N(S) N(S): The set of vertices having a neighbor in S x2x2 x3x3 y2y2 y3y3 Let S = {x 1, x 2 } Then N(S) = {y 1, y 2, y 3 } x1x1 y1y1

12 Hall’s Condition An X,Y-bigraph G has a matching that saturates X iff |N(S)|>=|S| for all S  X. (  ) If |N(S)|<|S| for some S  X, then no matching can saturate S. BCDEA S = {B, D, E} X Y

13 Hall’s Condition (  ) 1. Let M is a maximum matching in G, we need to prove no node v  X is M-unsaturated if |N(S)|>=|S| for all S  X. 2. Suppose that node v  X is M-unsaturated. 3. Let X* and Y* be the sets of M-saturated vertices in X and Y, respectively. 4. v has at least one neighbor v* in Y. 5. v*  Y*. Otherwise, M’=M  {vv*} is a matching larger than M. v X Y X* Y* v*

14 Hall’s Condition 6. We can construct an M-augmenting path starting at v.  M is not a maximum matching.  no node v  X is M-unsaturated. v X Y X* Y* v1*v1* a1a1 a1*a1*a1*a1* b1b1 b1*b1* a2*a2* b2b2 a2a2 v2*v2*

15 Perfect Matching A perfect matching in a graph is a matching that saturates every vertex.

16 The Marriage Theorem A X,Y-bigraph G with |X|=|Y| has a perfect matching iff |N(S)|>=|S| for all S  X X Y

17 k-regular Bipartite Graph The maximum degree is denoted  (G). The minimum degree is denotedδ(G). G is regular if  (G) = δ(G). G is k-regular if  (G) = δ(G) = k. X Y

18 Corollary 3.1.13 For k>0, any k-regular bipartite graph has a perfect matching 1. k|X|=k|Y|  |X|=|Y|. 2. Let m be the number of edges from S to N(S). 3. m=k|S| and m<=k|N(S)|  |S|<= |N(S)|. S X Y

19 Vertex Cover Vertex Cover: A vertex cover of a graph G is a set Q  V(G) that contains at least one endpoint of every edge.

20 Theorem 3.1.16 If G is a bipartite graph, then the maximum size of a matching in G equals to the minimum size of a vertex cover in G 1. |Q|>=|M|.

21 Theorem 3.1.16 2. Let Q be the smallest vertex cover of G. 3. Let R=Q  X and T=Q  Y. 4. Let H and H’ be sugraphs of G induced by R  (Y-T) and T  (X-R), respectively. R T S N H (S) H’H X Y

22 Theorem 3.1.16 (2/2) 5. Let S  R. Let N H (S)=N(S)  (Y-T). 6. |N H (S)|>=|S|. Otherwise, T  (R-S)  N H (S) is a vertex cover smaller than Q. 7. H has a matching that saturates R. 8. Similarly, H’ has a matching that saturates T. R T S N H (S) H’H X Y

23 Dual Optimization Problem A maximization problem M and a minimization problem N, defined on the same instances, such that: (1) for every candidate solution M to M and every candidate solution N to N, the value of M is less than or equal to the value of N. (2) obtaining candidate solutions M and N that have the same value PROVES that M and N are optimal solutions for that instance.

24 Edge Cover Edge Cover: An edge cover of G is a set L of edges such that every vertex of G is incident to some edge of L  (G): maximum size of independent set  ’(G): maximum size of matching  (G): minimum size of vertex cover  ’(G): minimum size of edge cover

25 Lemma 3.1.21 In a graph G, S  V(G) is an independent set iff V(G)- S is a vertex cover, and hence  (G)+  (G)=n(G) (  )1. No edge joins two nodes in S.  Every edge has an endpoint in V(G)-S.  V(G)-S is a vertex cover.

26 Lemma 3.1.21 (  ) Every edge has an endpoint in V(G)-S.  No edge joins two nodes in S.  S is an independent set Does Lemma 3.1.21 hold if G has isolated nodes?

27 Theorem 3.1.22 If G is a graph without isolated vertices, then  ’(G)+  ’(G)=n(G). 1. (1) Let M be a maximum matching M. (2) We can construct an edge cover of size n(G)-|M| by adding to M one edge incident to each unsaturated vertex.   ’(G)<=n(G)-  ’(G). unsaturated

28 Theorem 3.1.22 (2/2) 2. (1) Let L be a minimum edge cover. (2) Only one endpoint of e  L belong to edges in L other than e. (Otherwise, L-{e} is also an edge cover)  each component of L is a star. (3) Let k be the number of components in L.  |L|=n(G)-k. (4) We can form a matching M of size k=n(G)-|L|.   ’(G)>=n(G)-  ’(G). Why does Theorem 3.1.22 not hold if G has isolated nodes?

29 Corollary 3.1.24 If G is a bipartite graph with no isolated vertices, then  (G)=  ’(G). 1.  ’(G)+  ’(G)=n(G) by Theorem 3.1.22. 2.  (G)+  (G)=n(G) by Lemma 3.1.21. 3.  ’(G)=  (G) by Theorem 3.1.16.

30 Dominating Set Dominating Set: In a graph G, a set S  V(G) is a dominating set if every vertex not in S has a neighbor in S. Dominating Number  (G): the minimum size of a dominating set in G.

31 Theorem For any graph G,  (G)<=  (G). 1. Let I be a maximum independent set. 2. For all v  V(G)-I, v must be adjacent to some vertex in I. Otherwise, I  {v} is an independent set larger than I.  I is a dominating set of G.  (G)<=  (G). A B C D E

32 Homework 3.1.19, 3.1.29, 3.1.39, 3.1.49, 3.1.65 –Due 10/9, 2006


Download ppt "Matchings Matching: A matching in a graph G is a set of non-loop edges with no shared endpoints."

Similar presentations


Ads by Google