Title:

Efficient algorithms for bipartite matching problems with preferences

Matching problems involve a set of participants, where each participant has a capacity and a subset of the participants rank a subset of the others in order of preference (strictly or with ties). Matching problems are motivated in practice by largescale applications, such as automated matching schemes, which assign participants together based on their preferences over one another. This thesis focuses on bipartite matching problems in which there are two disjoint sets of participants (such as medical students and hospitals). We present a range of efficient algorithms for finding various types of optimal matchings in the context of these problems. Our optimality criteria involve a diverse range of concepts that are alternatives to classical stability. Examples include socalled popular and Pareto optimal matchings, and also matchings that are optimal with respect to their profile (the number of participants obtaining their first choice, second choice and so on). The first optimality criterion that we study is the notion of a Pareto optimal matching, a criterion that economists regard as a fundamental property to be satisfied by an optimal matching. We present the first algorithmic results on Pareto optimality for the Capacitated House Allocation problem (CHA), which is a manytoone variant of the classical House Allocation problem, as well as for the HospitalsResidents problem (HR), a generalisation of the classical Stable Marriage problem. For each of these problems, we obtain a characterisation of Pareto optimal matchings, and then use this to obtain a polynomialtime algorithm for finding a maximum Pareto optimal matching. The next optimality criterion that we study is the notion of a popular matching. We study popular matchings in CHA and present a polynomialtime algorithm for finding a maximum popular matching or reporting that none exists, given any instance of CHA. We extend our findings to the case in CHA where preferences may contain ties (CHAT) by proving the extension of a wellknown result in matching theory to the capacitated bipartite graph case, and using this to obtain a polynomialtime algorithm for finding a maximum popular matching, or reporting that none exists. We next study popular matchings in the Weighted Capacitated House Allocation problem (WCHA), which is a variant of CHA where the agents have weights assigned to them. We identify a structure in the underlying graph of the problem that singles out those edges that cannot belong to a popular matching. We then use this to construct a polynomialtime algorithm for finding a maximum popular matching or reporting that none exists, for the case where preferences are strict. We then study popular matchings in a variant of the classical Stable Marriage problem with Ties and Incomplete preference lists (SMTI), where preference lists are symmetric. Here, we provide the first characterisation results on popular matchings in the bipartite setting where preferences are twosided, which can either lead to a polynomialtime algorithm for solving the problem or help establish that it is NPcomplete. We also provide the first algorithm for testing if a matching is popular in such a setting. The remaining optimality criteria that we study involve profilebased optimal matchings. We define three versions of what it means for a matching to be optimal based on its profile, namely socalled greedy maximum, rankmaximal and generous maximum matchings. We study each of these in the context of CHAT and the HospitalsResidents problem with Ties (HRT). For each problem model, we give polynomialtime algorithms for finding a greedy maximum, a rankmaximal and a generous maximum matching.
