🤖 AI Summary
This paper studies the maximum-weight $b$-matching problem on undirected bipartite graphs with vertex capacity constraints: given $G = (A cup B, E)$ and a capacity bound $b(v)$ for each vertex $v$, the goal is to select edges of maximum total weight such that each $v$ is matched to between $1$ and $b(v)$ neighbors. We present the first combinatorial algorithm with $O(n^3)$ time complexity, supporting arbitrary real-valued edge weights—unifying both maximum matching (for nonpositive weights) and minimum matching (for nonnegative weights)—thus overcoming prior restrictions to integer weights. The algorithm integrates augmenting-path techniques with potential-function-based optimization, leveraging bipartite structure to design efficient relaxation and update procedures. Under the standard assumption $|A| + |B| = O(n)$, its cubic-time complexity is tight. This result significantly improves upon generic network-flow approaches in both theoretical efficiency and practical applicability.
📝 Abstract
Background: A matching between two sets A and B assigns some elements of A to some elements of B. Finding the similarity between two sets of elements by advantage of the matching is widely used in computational biology for example in the contexts of genome-wide and sequencing association studies. Frequently, the capacities of the elements are limited. That is, the number of the elements that can be matched to each element should not exceed a given number. Results: We use bipartite graphs to model relationships between pairs of objects. Given an undirected bipartite graph G = (A∪B,E), the b-matching of G matches each vertex v in A (resp. B) to at least 1 and at most b(v) vertices in B (resp. A), where b(v) denotes the capacity of v. We propose the first O(n3) time algorithm for finding the maximum weight b-matching of G, where |A|+|B| = O(n). Conclusions: The b-matching has been studied widely for the bipartite graphs with integer weight edges. But our algorithm is the first algorithm for the maximum (respectively minimum) b-matching problem with non positive real (respectively non negative real) edge weights.