Improving solution times for stable matching problems through preprocessing. (April 2021) - Pettersson, William; Delorme, Maxence; García, Sergio; Gondzio, Jacek; Kalcsics, Joerg; Manlove, David
Highlights: Preprocessing stable matching problems reduces time to find solutions. New theory presented to identify more preprocessing opportunities. Preprocessing extended to HRT with two-sided ties. New polynomial-time algorithms to detect preprocessing. Greater than 50% runtime reduction to find largest stable matching. Abstract: We present new theory, heuristics, and algorithms for preprocessing instances of the Stable Marriage problem with Ties and Incomplete lists (SMTI) and the Hospitals/Residents problem with Ties (HRT). Instances of these problems can be preprocessed by removing from the preference lists of some agents entries such that the set of stable matchings is not affected. Removing such entries reduces the problem size, creating smaller models that can be more easily solved by integer programming (IP) solvers. The new theorems are the first to describe when preference list entries can be removed from instances of HRT when ties are present on both sides, and also extend existing results on preprocessing instances of SMTI. A number of heuristics, as well as an IP model and a graph-based algorithm, are presented to find and perform this preprocessing. Experimental results show that our new graph-based algorithm achieves a 44% reduction in the average running time to find a maximum weight stable matching in real-world instances of SMTI compared to existing preprocessing techniques, and 80% compared to not using preprocessing. We also show that, when solving MAX-HRT instances with ties on both sides, our new techniques can reduce runtimes by up to 55%.