Efficient Many-To-Many Matching of Points with Demands in One Dimension
Fatemeh Rajabi-Alni, Behrouz Minaei-Bidgoli
TL;DR
This work addresses the minimum-cost many-to-many matching with demands (MMD) and its capacity-enabled variant in one dimension, where the goal is to pair points from two sets on a line so that each point meets its demand (and capacity) with minimal total distance. The authors develop a dynamic-programming framework that partitions the merged point set into alternating blocks along the line and uses states $C(q,j)$ to capture the minimum cost up to a point with exact demand accounting, augmented by structural lemmas about optimal pairings. They present the first $O(n^2)$-time algorithms for both the one-dimensional OMMD and the extended OMMDC problem, enabling efficient solutions for large instances. The methods have potential applications in wireless networks and line-based data association, where per-point demand/capacity constraints and geometric costs are natural modeling choices.
Abstract
Given two point sets $S$ and $T$, the minimum-cost many-to-many matching with demands (MMD) problem is the problem of finding a minimum-cost many-to-many matching between $S$ and $T$ such that each point of $S$ (respectively $T$) is matched to at least a given number of the points of $T$ (respectively $S$). We propose the first $O\left(n^2\right)$-time algorithm for computing a one dimensional MMD (OMMD) of minimum cost between $S$ and $T$, where $\left|S\right|+\left|T\right|=n$. In an OMMD problem, the input point sets $S$ and $T$ lie on the real line and the cost of matching a point to another point equals the Euclidean distance between the two points. We also study a generalized version of the MMD problem, the many-to-many matching with demands and capacities (MMDC) problem, that in which each point has a limited capacity in addition to a demand. We give the first $O(n^2)$-time algorithm for the minimum-cost one dimensional MMDC (OMMDC) problem.
