{"title":"Popular Matchings with Multiple Partners","authors":"F. Brandl, T. Kavitha","doi":"10.4230/LIPIcs.FSTTCS.2017.19","DOIUrl":null,"url":null,"abstract":"Our input is a bipartite graph $G = (A \\cup B,E)$ where each vertex in $A \\cup B$ has a preference list strictly ranking its neighbors. The vertices in $A$ and in $B$ are called students and courses, respectively. Each student $a$ seeks to be matched to $\\mathsf{cap}(a) \\ge 1$ courses while each course $b$ seeks $\\mathsf{cap}(b) \\ge 1$ many students to be matched to it. The Gale-Shapley algorithm computes a pairwise-stable matching (one with no blocking edge) in $G$ in linear time. We consider the problem of computing a popular matching in $G$ -- a matching $M$ is popular if $M$ cannot lose an election to any matching where vertices cast votes for one matching versus another. Our main contribution is to show that a max-size popular matching in $G$ can be computed by the 2-level Gale-Shapley algorithm in linear time. This is an extension of the classical Gale-Shapley algorithm and we prove its correctness via linear programming.","PeriodicalId":175000,"journal":{"name":"Foundations of Software Technology and Theoretical Computer Science","volume":"53 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2016-09-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"14","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Foundations of Software Technology and Theoretical Computer Science","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.4230/LIPIcs.FSTTCS.2017.19","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 14
Abstract
Our input is a bipartite graph $G = (A \cup B,E)$ where each vertex in $A \cup B$ has a preference list strictly ranking its neighbors. The vertices in $A$ and in $B$ are called students and courses, respectively. Each student $a$ seeks to be matched to $\mathsf{cap}(a) \ge 1$ courses while each course $b$ seeks $\mathsf{cap}(b) \ge 1$ many students to be matched to it. The Gale-Shapley algorithm computes a pairwise-stable matching (one with no blocking edge) in $G$ in linear time. We consider the problem of computing a popular matching in $G$ -- a matching $M$ is popular if $M$ cannot lose an election to any matching where vertices cast votes for one matching versus another. Our main contribution is to show that a max-size popular matching in $G$ can be computed by the 2-level Gale-Shapley algorithm in linear time. This is an extension of the classical Gale-Shapley algorithm and we prove its correctness via linear programming.