IP-MATCH: Integer Programming for Large and Complex Matching Problems

Lead Research Organisation: University of Glasgow
Department Name: School of Computing Science

Abstract

Matching Problems are discrete optimization problems involving a set of applicants who seek to be collectively matched to a set of objects. Applicants may have preferences over a subset of the objects, and vice versa. Preferences may be ordinal, i.e., expressible in terms of a first, second, third choice etc., or cardinal, i.e., there is a real-valued utility associated with assigning an applicant to an object. Typical goals are to maximize the size of the matching, i.e., number of matched applicant-object pairs, and/or to optimize social welfare according to the given preferences.

This project will focus on three specific Matching Problems with direct practical applications: Kidney Exchange, Junior Doctor Allocation and Teacher Placement.

The Kidney Exchange problem involves kidney patients who have a willing but incompatible donor "swapping" their donor with that of another patient in a similar position. The objective is to find an optimal set of swaps among patients (the applicants) and donors (the objects), taking into account the utility of a potential donor kidney to a patient. Since 2007, NHS Blood & Transplant have run the National Living Donor Kidney Sharing Schemes, which seeks out optimal sets of swaps involving kidney transplant patients and donors on their database every quarter. As every matched patient may lead to an additional life saved, optimality is an important goal.

In Junior Doctor Allocation, intending junior doctors (the applicants) are to be assigned to hospital posts (the objects), on the basis of ordinal preferences of doctors over hospitals and vice versa. The UK Foundation Programme Office annually runs a centralized scheme to form an optimal allocation of doctors to hospitals, taking these preferences into account. Another example of a Matching Problem with ordinal preferences is Teacher Placement in which intending teachers (the applicants) are to be assigned to geographic regions (the objects) on the basis of teachers' ordinal preferences over regions that they are prepared to work in. In the UK, Teach First places graduates in schools serving low-income communities across England and Wales. In both applications, optimizing preferences is seen as important from both the standpoints of applicants' careers and workforce supply. Success in this respect improves participants' satisfaction and ultimately the well-being of society.

In each of the three applications, current techniques used to construct optimal matchings are not scalable to larger problem sizes or more complex planning restrictions and optimality criteria. These issues will arise, for example, 1) for Kidney Exchange through the planned transnational collaboration between European countries; 2) for Junior Doctor Allocation through couples applying jointly to be matched to geographically close hospitals; 3) for Teacher Placement through the need to load-balance the allocation of teachers to schools according to regional targets.

In this project we will develop novel algorithms to tackle the new challenges exemplified above. Since the underlying optimization problems are computationally hard, sophisticated optimization techniques must be used. Also, since problem instances can be large (e.g., Junior Doctor Allocation in the UK involves around 7,000 applicants annually), the algorithms must be scalable and efficient, running in seconds or minutes rather than hours or days, for both small instances and also for large instances where the number of participants is in the thousands.

This project will bring together two internationally-leading research groups in a new collaboration, combining the expertise of the FATA research group at the School of Computing Science, University of Glasgow, in solving Matching Problems, with that of the the ERGO research group at School of Mathematics, University of Edinburgh, in solving integer programming problems, in order to tackle the above large and complex Matching Problems.

Planned Impact

This project addresses three important societal problems that have a direct impact on human health and well-being: (i) how to increase living kidney donation in the UK; (ii) how to assign teachers participating in Teach First to UK regions in an optimal way; and (iii) how to allocate junior doctors to foundation programmes in UK hospitals optimally.

Kidney transplants are life-saving interventions that also release patients from costly and life-restricting dialysis treatment. An optimal placement of teachers to schools will reduce drop-out rates and help to ensure that the UK can successfully recruit the next generation of motivated teachers. An optimal allocation of junior doctors to hospitals positively influences their future career and job satisfaction and also allows hospitals to meet their workforce requirements.

Considering kidney transplants, patients with a willing but incompatible donor can 'swap' their donor with that of another patient in a similar position through 'cycles'. Altruistic donors can also trigger 'chains', benefiting multiple patients, each of whose willing but incompatible donor donates to the next patient in the chain. NHS Blood and Transplant (NHSBT) run a matching scheme that finds optimal sets of cycles and chains every quarter.

Currently cycles and chains are restricted in size due to logistical reasons. NHSBT are considering allowing longer cycles and chains, which would greatly increase the complexity of the optimization problem. Also there are moves towards transnational collaboration in a European context as envisioned by the ENCKEP COST Action ("European Network for Collaboration on Kidney Exchange Programmes"). Such collaboration involves sharing of donor-patient pools, and whilst it would bring undoubted benefits to the UK (in terms of increased transplants), larger pools also give rise to major optimization challenges.

As part of this project we will develop new algorithms for NHSBT (a Project Partner) that can handle larger datasets, and longer cycles and chains. These algorithms will directly benefit kidney patients by identifying more transplants than before, and will benefit the NHS through financial savings made as a consequence of patients being released from dialysis.

Turning to teacher placement, the particular challenges that this project aims to address are: (i) ensuring that regional targets can be met, meaning that schools in low-income communities succeed in recruiting adequate numbers of teachers, and (ii) optimizing the satisfaction of the applicants in relation to their assigned region; in the past dissatisfaction with the geographic location of their assigned school has been a major factor in applicants dropping out before completing their teaching placement.

The new collaboration with Teach First (a Project Partner) provides an immediate route to realising the impact of improved algorithms for allocating teachers to regions. The benefits that this research would bring about are therefore (i) financial savings for Teach First due to automation of the matching process, (ii) increased quality of life for applicants, and consequently retention problems for schools being alleviated, and (iii) workforce requirements in regions being met.

Regarding the third application, namely junior doctor placement, the UK Foundation Programme Office (UKFPO) runs a matching scheme for allocating junior doctors to foundation programmes in UK hospitals. However the current algorithm can produce matchings that are sub-optimal in various ways.

We will design optimal algorithms that scale up to datasets for junior doctor allocation in a UK-wide setting; current algorithms (based on our prior work in a Scottish context) can only handle datasets that are a tenth of the size of the UK application. Replacing the current UKFPO algorithm with an optimal one will give similar benefits for doctors and hospitals as detailed above for teachers and regions under teacher placement.
 
Description We have introduced new algorithms based on integer programming to solve the Stable Marriage problem with Ties and Incomplete lists (SMTI) and its many-to-one generalisation the Hospitals / Residents problem with Ties (HRT). We have also developed new algorithms for preprocessing instances of SMTI with ties on both sides - using these, we can solve large problem instances much more efficiently. We have further developed new algorithms based on integer programming to solve the Hospitals / Residents problem with Couples and Ties (HRCT). These models and algorithms can be applied to junior doctor allocation and to allocating children to adoptive families in the UK.

We have also developed a range of algorithms for finding types of stable matchings in variants of the Student-Project Allocation problem. These algorithms have applications to the assignment of students to projects in university departments. Additionally, we designed algorithms to find "fair" stable matchings in instances of the Stable Marriage problem, under different notions of fairness.

Finally, we designed new algorithms to solve kidney exchange problems where different objectives are optimised hierarchically. These algorithms can be used to find optimal solutions much more efficiently for kidney exchange problem instances arising from the UK, Dutch and Spanish kidney exchange programmes. They also allow larger problem instances to be tackled than is currently possible, which provides solution techniques that anticipate larger pools arising from transnational collaboration.
Exploitation Route Algorithms arising from this project (see https://doi.org/10.1016/j.ejor.2019.03.017 in particular) have been used by the British children's charity, Coram (https://www.coram.org.uk) to construct matchings of children to adoptive families, providing decision support for social workers when making placements. We are also working towards the goal that our matching models will be useful for junior doctor allocation at the UK level; this is ongoing research. The kidney exchange algorithms will be of interest to NHS Blood and Transplant to analyse the efficiency of their current policies for the UK Living Kidney Sharing Scheme.
Sectors Communities and Social Services/Policy,Healthcare,Other

URL https://optimalmatching.com/IP-MATCH
 
Description Algorithms arising from this project (see https://doi.org/10.1016/j.ejor.2019.03.017 in particular) have been used by the British children's charity, Coram (https://www.coram.org.uk) to construct matchings of children to adoptive families, providing decision support for social workers when making placements.
First Year Of Impact 2017
Sector Communities and Social Services/Policy,Other
Impact Types Societal,Economic

 
Description ENCKEP: European Network for Collaboration on Kidney Exchange Programmes (COST Action CA15210)
Amount € 720,000 (EUR)
Funding ID CA15210 
Organisation European Commission 
Sector Public
Country European Union (EU)
Start 09/2016 
End 03/2021
 
Description KEP-SOFT: Software for Transnational Kidney Exchange Programmes
Amount € 124,200 (EUR)
Funding ID IG15210 
Organisation European Cooperation in Science and Technology (COST) 
Sector Public
Country Belgium
Start 11/2021 
End 10/2022
 
Description KidneyAlgo: New Algorithms for UK and International Kidney Exchange
Amount £456,945 (GBP)
Funding ID EP/X013618/1 
Organisation Engineering and Physical Sciences Research Council (EPSRC) 
Sector Public
Country United Kingdom
Start 02/2023 
End 01/2025
 
Title A 3/2-approximation algorithm for the Student-Project Allocation problem 
Description This data corresponds to the data and experiemnts described in Section 5 of the following paper submitted to SEA conference 2018: A 3/2-approximation algorithm for the Student-Project Allocation problem. Authors: Frances Cooper and David Manlove. The dataset file for this record is too large for automatic download. Please use the request dataset button for access. 
Type Of Material Database/Collection of data 
Year Produced 2018 
Provided To Others? Yes  
 
Title A new matheuristic and improved instance generation for kidney exchange programmes 
Description This repository contains a number of kidney exchange instances as used in http://www.optimization-online.org/DB_HTML/2021/06/8432.html These are stored in directories, where each directory corresponds to one particular generator configuration as per the published paper. Each directory contains 640 instances, and the configuration file used to generate these is contained within a config.json file also within said directory. The format for these files is explained at https://kep-solver.readthedocs.io/en/latest/source/formats.html#input, and the exact configuration used to generate each set of instances (besides size) is given in a config.json file in each directory. 
Type Of Material Database/Collection of data 
Year Produced 2021 
Provided To Others? Yes  
Impact None known yet 
URL http://researchdata.gla.ac.uk/id/eprint/1160
 
Title An Integer Programming Approach to the Student-Project Allocation Problem with Preferences over Projects 
Description Instances of the Student-Project Allocation problem created for experiments conducted in this paper: https://doi.org/10.1007/978-3-319-96151-4_27 
Type Of Material Database/Collection of data 
Year Produced 2018 
Provided To Others? Yes  
Impact None yet 
URL https://github.com/sofiatolaosebikan/spa-p-isco-2018
 
Title Data: Algorithms for new types of fair stable matchings 
Description This data corresponds to the data and experiments described in Section 5 of
the following paper: Algorithms for new types of fair stable matchings
Authors: Frances Cooper and David Manlove The paper is located at: https://arxiv.org/abs/2001.10875 The software is located at: https://zenodo.org/record/3630383 The data is located at: https://zenodo.org/record/3630349 See the README for more information. 
Type Of Material Database/Collection of data 
Year Produced 2020 
Provided To Others? Yes  
URL https://zenodo.org/record/3630349
 
Title Data: Algorithms for new types of fair stable matchings 
Description This data corresponds to the data and experiments described in Section 5 of
the following paper: Algorithms for new types of fair stable matchings
Authors: Frances Cooper and David Manlove The paper is located at: https://arxiv.org/abs/2001.10875 The software is located at: https://zenodo.org/record/3630383 The data is located at: https://zenodo.org/record/3630349 See the README for more information. 
Type Of Material Database/Collection of data 
Year Produced 2020 
Provided To Others? Yes  
URL https://zenodo.org/record/3630350
 
Title Enhanced mathematical models for hierarchical optimisation in kidney exchange programmes 
Description  
Type Of Material Database/Collection of data 
Year Produced 2020 
Provided To Others? Yes  
URL http://researchdata.gla.ac.uk/id/eprint/1016
 
Title Improved instance generation for kidney exchange programmes 
Description Kidney exchange instances This archive contains a large number of kidney exchange instances. Each folder contains 640 instances, each of which is a JSON file as described at https://kep-solver.readthedocs.io/en/latest/source/formats.html#input Each folder corresponds to a particular experimental setup as described in the preprint paper available at http://www.optimization-online.org/DB_HTML/2021/06/8432.html 
Type Of Material Database/Collection of data 
Year Produced 2021 
Provided To Others? Yes  
Impact None known yet 
URL http://researchdata.gla.ac.uk/id/eprint/1213
 
Title Improving solve times of stable matching problems through preprocessing 
Description  
Type Of Material Database/Collection of data 
Year Produced 2019 
Provided To Others? Yes  
 
Title Mathematical models for stable matching problems with ties and incomplete lists 
Description We present new integer linear programming (ILP) models for NPhard optimisation problems in instances of the Stable Marriage problem with Ties and Incomplete lists (SMTI) and its many-to-one generalisation, the Hospitals / Residents problem with Ties (HRT). These models can be used to eciently solve these optimisation problems when applied to (i)instances derived from real-world applications, and (ii) larger instancesthat are randomly-generated. In the case of SMTI, we consider instancesarising from the assignment of children to adoptive families, wherepreferences are obtained from a quality measure of each possibleassignment of child to family. In this case we seek a maximum weightstable matching. We present new theory and algorithms for preprocessinginstances of SMTI with ties on both sides, as well as new ILP models.Algorithms based on existing state-of-the-art models only solve 6 of our22 real-world instances within an hour per instance, and our new modelssolve all 22 instances within a mean runtime of 60 seconds. For HRT, weconsider instances derived from the problem of assigning junior doctorsto foundation posts in Scottish hospitals. Here we seek a maximum sizestable matching. We show how to extend our models for SMTI to the HRTcase. For the real instances, we reduce the mean runtime from an averageof 144 seconds when using state-of-the-art methods, to 3 seconds whenusing our new ILP-based algorithms. We also show that our modelsconsiderably outperform state-of-the-art models on larger randomlygeneratedinstances of SMTI and HRT. 
Type Of Material Database/Collection of data 
Year Produced 2018 
Provided To Others? Yes  
 
Title Stability definitions for the Hospitals / Residents problem with Couples and Ties: Mathematical models and computational studies 
Description  
Type Of Material Database/Collection of data 
Year Produced 2020 
Provided To Others? Yes  
URL http://researchdata.gla.ac.uk/id/eprint/953
 
Title Super-stability in the Student-Project Allocation Problem with Ties 
Description Instances of the Student-Project Allocation problem created for experiments conducted in this paper: http://dx.doi.org/10.1007/978-3-030-04651-4_24 
Type Of Material Database/Collection of data 
Year Produced 2018 
Provided To Others? Yes  
Impact None yet 
URL https://github.com/sofiatolaosebikan/spa-st-super-stability
 
Description ENCKEP: European Network for Collaboration on Kidney Exchange Programmes (COST Action CA15210) 
Organisation Erasmus University Rotterdam
Department Institute of Health Policy & Management (iBMG)
Country Netherlands 
Sector Academic/University 
PI Contribution Drafting the proposal for the COST Action. Vice-Chair to April 2018 and Chair from May 2018.
Collaborator Contribution Drafting the proposal for the COST Action. Vice-Chair to April 2018 and Chair from May 2018.
Impact Memorandum of Understanding published at https://e-services.cost.eu/files/domain_files/CA/Action_CA15210/mou/CA15210-e.pdf Publications listed at https://www.enckep-cost.eu/category/resources/publications Outputs / impacts listed in the final achievement report: https://e-services.cost.eu/files/domain_files/CA/Action_CA15210/final_achievement_report/final_achievement_report-CA15210.pdf
Start Year 2016
 
Description ENCKEP: European Network for Collaboration on Kidney Exchange Programmes (COST Action CA15210) 
Organisation INESC TEC
Country Portugal 
Sector Private 
PI Contribution Drafting the proposal for the COST Action. Vice-Chair to April 2018 and Chair from May 2018.
Collaborator Contribution Drafting the proposal for the COST Action. Vice-Chair to April 2018 and Chair from May 2018.
Impact Memorandum of Understanding published at https://e-services.cost.eu/files/domain_files/CA/Action_CA15210/mou/CA15210-e.pdf Publications listed at https://www.enckep-cost.eu/category/resources/publications Outputs / impacts listed in the final achievement report: https://e-services.cost.eu/files/domain_files/CA/Action_CA15210/final_achievement_report/final_achievement_report-CA15210.pdf
Start Year 2016
 
Title A 3/2-approximation algorithm for the Student-Project Allocation problem 
Description Implementation of a 3/2-approximation algorithm for the Student-Project Allocation problem 
Type Of Technology Software 
Year Produced 2018 
Impact None yet 
URL http://dx.doi.org/10.4230/LIPIcs.SEA.2018.8
 
Title An Integer Programming Approach to the Student-Project Allocation Problem with Preferences over Projects 
Description Software for finding large stable matchings in instances of the Student-Project Allocation problem with preferences over projects. Includes implementation of an algorithm for finding a maximum stable matching based on integer programming, and implementations of approximation algorithms for for finding a maximum stable matching. 
Type Of Technology Software 
Year Produced 2018 
Impact None yet 
URL https://doi.org/10.1007/978-3-319-96151-4_27
 
Title IP-MATCH/StableMatchingCodes: Codes used for Mathematical Models for Stable Matching Problems with Ties 
Description This is the code used to produce the results shown in the Mathematical Models for Stable Matching Problems with Ties paper, by Maxence Delorme, Sergio García, Jacek Gondzio, Joerg Kalcsics, David Manlove and William Pettersson. 
Type Of Technology Software 
Year Produced 2019 
Impact Code facilitated experiments conducted in the paper. 
URL https://zenodo.org/record/2538150
 
Title IP-MATCH/StableMatchingCodes: Preprocessing HRT with two-sided ties 
Description These are the codes used for the preprocessing experiments, including additional experiments, in the revised paper "Improving solve times of stable matching problems through preprocessing" by Maxence Delorme, Sergio García, Jacek Gondzio, Joerg Kalcsics, David Manlove and William Pettersson 
Type Of Technology Software 
Year Produced 2020 
Impact Code facilitated the experiments reported in the paper. 
URL https://zenodo.org/record/3956390
 
Title New Algorithms for Hierarchical Optimization in Kidney Exchange Programs 
Description C++ implementations of algorithms described in the paper "New Algorithms for Hierarchical Optimization in Kidney Exchange Programs" 
Type Of Technology Software 
Year Produced 2020 
Open Source License? Yes  
Impact Code facilitated experiments conducted in the paper. 
 
Title Stability in the hospitals/residents problem with couples and ties: Mathematical models and computational studies 
Description Software for finding a stable matching or reporting that none exists, given an instance of the Hospitals / Residents problem with Couples and Ties 
Type Of Technology Software 
Year Produced 2020 
Impact Facilitated experiments reported in the paper. 
URL https://doi.org/10.5281/zenodo.3626706
 
Title Super-stability in the Student-Project Allocation Problem with Ties 
Description A polynomial-time algorithm for finding a super-stable matching or reporting that none exists, given an instance of the Student-Project Allocation problem 
Type Of Technology Software 
Year Produced 2018 
Impact None yet 
URL http://dx.doi.org/10.1007/978-3-030-04651-4_24
 
Title fmcooper/regret-equal-sm: Updates to table and plot makers 
Description This software corresponds to the data and experiments for the paper: Algorithms for new types of fair stable matchings Authors: Frances Cooper and David Manlove The data is located at: https://zenodo.org/record/3630349 The software is located at https://zenodo.org/record/3630383 See the README for more information. 
Type Of Technology Software 
Year Produced 2020 
Impact Code facilitated the experiments reported in the paper. 
URL https://zenodo.org/record/3871470
 
Description Invited lecture for Royal Scottish Society for Arts 
Form Of Engagement Activity A talk or presentation
Part Of Official Scheme? No
Geographic Reach Regional
Primary Audience Public/other audiences
Results and Impact Talk title: Designing algorithms for matching markets in healthcare
Year(s) Of Engagement Activity 2020
URL https://www.rssa.org.uk/20200127.shtml
 
Description Kidney Exchange Game 
Form Of Engagement Activity Engagement focused website, blog or social media channel
Part Of Official Scheme? No
Geographic Reach International
Primary Audience Public/other audiences
Results and Impact The Kidney Exchange Game is a web application developed by William Pettersson with the aim of increasing awareness and understanding of kidney exchange through an educational game that the general public can participate in.
Year(s) Of Engagement Activity 2020,2021
URL https://www.optimalmatching.com/IP-MATCH/kidney_exchange_game/