Fair Matchings and Related Problems
Let G = (A union B, E) be a bipartite graph, where every vertex ranks its neighbors in an order of preference (with ties allowed) and let r be the worst rank used. A matching M is fair in G if it has maximum cardinality, subject to this, M matches the minimum number of vertices to rank r neighbors, subject to that, M matches the minimum number of vertices to rank (r-1) neighbors, and so on. We show an efficient combinatorial algorithm based on LP duality to compute a fair matching in G. We also show a scaling based algorithm for the fair b-matching problem.
Our two algorithms can be extended to solve other profile-based matching problems. In designing our combinatorial algorithm, we show how to solve a generalized version of the minimum weighted vertex cover problem in bipartite graphs, using a single-source shortest paths computation---this can be of independent interest.
Matching with Preferences
Fairness and Rank-Maximality
Bipartite Vertex Cover
Linear Programming Duality
Complementary Slackness
339-350
Regular Paper
Chien-Chung
Huang
Chien-Chung Huang
Telikepalli
Kavitha
Telikepalli Kavitha
Kurt
Mehlhorn
Kurt Mehlhorn
Dimitrios
Michail
Dimitrios Michail
10.4230/LIPIcs.FSTTCS.2013.339
Creative Commons Attribution 3.0 Unported license
https://creativecommons.org/licenses/by/3.0/legalcode