Abstract

Let \(G = (A \cup 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.

Highlights

  • Let G = (A ∪ B, E) be a bipartite graph on n vertices and m edges, where each u ∈ A ∪ B has a list ranking its neighbors in an order of preference

  • 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

  • There are many applications where stability is not a proper objective: for instance, in matching students with counselors or applicants with training posts, we cannot compromise on the size of the matching and a fair matching is a natural candidate for an optimal matching in such problems

Read more

Summary

Introduction

The fair matching problem can be solved in polynomial time as follows: for an edge e with incident ranks i and j, let w(e) = ni−1 + nj−1. Our first technique The running time of is an this aitlegroartiitvhemcoims bOin(ra∗tmor√ialna)lgoorrOith(rm∗nfωor) with high probability, where r∗ is the largest rank used in a fair matching and ω ≈ 2.37 is the exponent of matrix multiplication This algorithm is based on linear programming duality and in iteration i, we solve the following “dual problem” – dual to a variant of the maximum weight matching problem. Our second technique uses scaling in order to solve the fair matching problem, by the aforementioned reduction to computing a maximum weight matching using exponentially large edge weights. Using [9] would result in O(r2mn) running time and O(rm) space

Background
Our Combinatorial Technique for fair matchings
Solving the dual problem
Our main algorithm
The fair b-matching problem: our scaling technique
Full Text
Paper version not known

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.