rank maximal matchings
play

Rank Maximal Matchings Meghana Nasre talk based on paper by R. W. - PowerPoint PPT Presentation

Rank Maximal Matchings Meghana Nasre talk based on paper by R. W. Irving, T. Kavitha, K. Mehlhorn, D. Michail, K. Paluch Outline of the Talk Matchings preliminaries. Rank maximal matchings. Problem definition. Some intuition.


  1. Rank Maximal Matchings Meghana Nasre talk based on paper by R. W. Irving, T. Kavitha, K. Mehlhorn, D. Michail, K. Paluch

  2. Outline of the Talk • Matchings – preliminaries. • Rank maximal matchings. • Problem definition. • Some intuition. • Dulmage Mendelsohn decomposition. • An efficient algo for RMM.

  3. Matching in a graph A matching M is a set of vertex disjoint edges. v 2 v 1 v 6 v 5 v 3 v 4

  4. Matching in a graph A matching M is a set of vertex disjoint edges. v 2 v 1 v 6 v 5 v 3 v 4 • Goal: compute a maximum sized matching.

  5. Maximal vs. Maximum matchings A matching M is a set of vertex disjoint edges. v 2 v 1 • Maximal: M is not a strict subset v 6 of any other matching. There may exist a larger sized v 5 v 3 matching. v 4

  6. Maximal vs. Maximum matchings A matching M is a set of vertex disjoint edges. v 2 v 1 • Maximal: M is not a strict subset v 6 of any other matching. There may exist a larger sized v 5 v 3 matching. v 4 v 2 v 1 • Maximum: Has size as large as v 6 possible amongst all matchings. v 5 Every maximum matching is v 3 maximal. v 4

  7. Alternating paths A path having alternate matched and unmatched edges. v 2 v 1 v 6 v 5 v 3 v 4

  8. Augmenting paths An alternating path starting and ending in free vertices. v 2 v 1 v 6 v 3 v 5 v 4

  9. Augmenting paths An alternating path starting and ending in free vertices. v 2 v 1 v 6 v 3 v 5 v 4 • How are augmenting paths useful? • Properties of augmenting paths.

  10. Using augmenting paths Berge’s Theorem (1957): A matching M is maximum iff M does not admit an augmenting path with respect to it. • Assume P is an augmenting path.

  11. Using augmenting paths Berge’s Theorem (1957): A matching M is maximum iff M does not admit an augmenting path with respect to it. • Assume P is an augmenting path. • M ′ = M ⊕ P . v 2 v 2 v 1 v 1 v 6 v 6 augment M with P v 5 v 3 P v 5 v 3 P v 4 v 4 M M’

  12. Using augmenting paths Berge’s Theorem • If no aug. path w.r.t. M ⇒ M is maximum. Proof (by contradiction) • Suppose M does not admit any aug. path and still it is not maximum. • Some other matching M ′ is maximum.

  13. Using augmenting paths Berge’s Theorem • If no aug. path w.r.t. M ⇒ M is maximum. Proof (by contradiction) • Suppose M does not admit any aug. path and still it is not maximum. • Some other matching M ′ is maximum. • Consider M ⊕ M ′ . • Construct an aug. path w.r.t. M .

  14. Computing max. matchings Input: G = ( V , E ) . Goal: Compute a max. cardinality matching.

  15. Computing max. matchings Input: G = ( V , E ) . Goal: Compute a max. cardinality matching. G is bipartite. • Hopcroft and Karp (1973): O ( m √ n ) time algorithm.

  16. Computing max. matchings Input: G = ( V , E ) . Goal: Compute a max. cardinality matching. G is bipartite. • Hopcroft and Karp (1973): O ( m √ n ) time algorithm. General graphs. • Edmond’s Blossom shrinking algorithm (1963): O ( n 4 ) time. • Micali and Vazirani (1980): O ( m √ n ) time algorithm.

  17. Outline of the Talk • Matchings – preliminaries. • Rank maximal matchings. • Problem definition. • Some intuition. • Dulmage Mendelsohn Decomposition. • An efficient algorithm for RMM.

  18. Rank Maximal Matchings Input: Bipartite graph G = ( A ∪ P , E ) . • Every a ∈ A has a preference ordering over the edges. p 1 2 Goal: Compute a matching p 2 a 1 1 that matches as many appli- 1 a 2 p 3 cants to their rank-1 posts, 3 2 subject to that as many to 1 a 3 p 4 rank-2 and so on. P A

  19. Rank Maximal Matchings Input: Bipartite graph G = ( A ∪ P , E ) . • Every a ∈ A has a preference ordering over the edges. p 1 2 Goal: Compute a matching p 2 a 1 1 that matches as many appli- 1 a 2 p 3 cants to their rank-1 posts, 3 2 subject to that as many to 1 a 3 p 4 rank-2 and so on. P A Signature of matching: � x 1 , x 2 , . . . , x r +1 � . x i : the number of applicants matched to their rank-i posts.

  20. Comparing two matchings Input: Bipartite graph G = ( A ∪ P , E ) . • Every a ∈ A has a preference ordering over the edges. M : � x 1 , x 2 , . . . , x r +1 � M ′ : � y 1 , y 2 , . . . , y r +1 � • x i : # of applicants matched to their rank-i post in M .

  21. Comparing two matchings Input: Bipartite graph G = ( A ∪ P , E ) . • Every a ∈ A has a preference ordering over the edges. M : � x 1 , x 2 , . . . , x r +1 � M ′ : � y 1 , y 2 , . . . , y r +1 � • x i : # of applicants matched to their rank-i post in M . • M is better than M ′ w.r.t. rank-maximality ( M ≻ M ′ ) iff : • there exists an index 1 ≤ k ≤ r : • for 1 ≤ i < k , x i = y i and x k > y k .

  22. Comparing two matchings Input: Bipartite graph G = ( A ∪ P , E ) . • Every a ∈ A has a preference ordering over the edges. M : � x 1 , x 2 , . . . , x r +1 � M ′ : � y 1 , y 2 , . . . , y r +1 � • x i : # of applicants matched to their rank-i post in M . • M is better than M ′ w.r.t. rank-maximality ( M ≻ M ′ ) iff : • there exists an index 1 ≤ k ≤ r : • for 1 ≤ i < k , x i = y i and x k > y k . • Goal: Compute a matching that has best signature.

  23. Comparing two matchings Input: Bipartite graph G = ( A ∪ P , E ) . • Every a ∈ A has a preference ordering over the edges. M : � x 1 , x 2 , . . . , x r +1 � M ′ : � y 1 , y 2 , . . . , y r +1 � • x i : # of applicants matched to their rank-i post in M . • M is better than M ′ w.r.t. rank-maximality ( M ≻ M ′ ) iff : • there exists an index 1 ≤ k ≤ r : • for 1 ≤ i < k , x i = y i and x k > y k . • Goal: Compute a matching that has best signature. • Can be achieved by converting the problem to a max-weight matching problem with edge of rank-i given a weight of n r − i .

  24. Greedy approach • Geedily match applicants to their rank-1, subject to this, greedily match applicants to their rank-2 and so on. p 1 2 p 2 1 a 1 1 a 2 p 3 3 2 1 a 3 p 4 P A

  25. Greedy approach • Geedily match applicants to their rank-1, subject to this, greedily match applicants to their rank-2 and so on. p 1 p 1 2 2 p 2 p 2 1 1 a 1 a 1 1 1 a 2 p 3 a 2 p 3 3 3 2 2 1 1 a 3 p 4 a 3 p 4 P P A A • Choice of rank-1 edges forces a signature of � 2 , 0 , 1 � .

  26. Greedy approach • Geedily match applicants to their rank-1, subject to this, greedily match applicants to their rank-2 and so on. p 1 p 1 2 2 p 2 p 2 1 1 a 1 a 1 1 1 a 2 p 3 a 2 p 3 3 3 2 2 1 1 a 3 p 4 a 3 p 4 P P A A • Optimal signature of � 2 , 1 , 0 � .

  27. Graph on rank-1 edges p 1 1 p 2 a 1 1 a 2 p 3 1 a 3 p 4 P A G 1

  28. Graph on rank-1 edges Some observations • For a RMM, the signature p 1 is � 2 , × , ×� 1 p 2 a 1 1 a 2 p 3 1 a 3 p 4 P A G 1

  29. Graph on rank-1 edges Some observations • For a RMM, the signature p 1 is � 2 , × , ×� 1 p 2 a 1 • p 2 and p 4 must be matched to some rank-1 1 a 2 p 3 applicant. 1 a 3 p 4 P A G 1

  30. Graph on rank-1 edges Some observations • For a RMM, the signature p 1 is � 2 , × , ×� 1 p 2 a 1 • p 2 and p 4 must be matched to some rank-1 1 a 2 p 3 applicant. 1 a 3 p 4 • Safe to delete higher P A ranked edges incident on p 2 and p 4 . G 1

  31. Graph on rank-1 edges Some observations • For a RMM, the signature p 1 is � 2 , × , ×� 1 p 2 a 1 • p 2 and p 4 must be matched to some rank-1 1 a 2 p 3 applicant. 1 a 3 p 4 • Safe to delete higher P A ranked edges incident on p 2 and p 4 . G 1 • Unclear which of a 1 , a 2 gets matched to rank-1 post in an RMM.

  32. Outline of the Talk • Matchings – preliminaries. • Rank maximal matchings. • Problem definition. • Some intuition. • Dulmage Mendelsohn decomposition. • An efficient algorithm for RMM.

  33. Need to study DM decomposition • Which vertices remain matched in every max. matching? • Which edges can NEVER belong to a max. matching? • How to use these answers to solve RMM efficiently.

  34. Maximum matchings – some observations a 1 p 1 a 2 • Size of max. matching: 3. • Every max. matching a 3 p 2 matches { a 3 , a 4 , p 1 , p 4 } . p 3 • No max. matching a 4 p 4 contains ( a 3 , p 1 ) . A P Vertices that some max. matching leaves unmatched: { a 1 , a 2 , p 2 , p 3 }

  35. Sets Odd, Even, Unreachable a 1 p 1 • Bipartite graph G . a 2 • Max. matching M . a 3 p 2 • Define 3 sets of vertices: • even ( E ) p 3 a 4 • odd ( O ) p 4 • unreachable ( U ) A P

  36. Sets Odd, Even, Unreachable a 1 p 1 • Bipartite graph G . a 2 • Max. matching M . a 3 p 2 • Define 3 sets of vertices: • even ( E ) p 3 a 4 • odd ( O ) p 4 • unreachable ( U ) A P • Even ( E ): set of vertices which are reachable via even length alternating paths from a free vertex x .

  37. Sets Odd, Even, Unreachable a 1 p 1 • Bipartite graph G . a 2 • Max. matching M . a 3 p 2 • Define 3 sets of vertices: • even ( E ) p 3 a 4 • odd ( O ) p 4 • unreachable ( U ) A P • Even ( E ): set of vertices which are reachable via even length alternating paths from a free vertex x . • Odd ( O ): set of vertices which are reachable via odd length alternating paths from a free vertex x .

Recommend


More recommend