Exact Optimal Transport by Matching
cs.DS, cs.LG, cs.RO
Submitted: 2026-10-02
Updated: 2026-10-02
Comments: 21 pages, 3 figures, 8 tables
Code: https://github.com/dimkadimon/OT-Blossom
Project page: https://pythonot.github.io
License: http://creativecommons.org/licenses/by/4.0/
The gist: Balanced discrete optimal transport between n sources and n targets of unit mass is exactly the minimum-cost assignment problem-a bipartite perfect matching-and is therefore solvable exactly by
Terminology
Abstract
Balanced discrete optimal transport between n sources and n targets of unit mass is exactly the minimum-cost assignment problem-a bipartite perfect matching-and is therefore solvable exactly by industrial matching engines in milliseconds to seconds. We ask when the exact approach beats the standard approximate alternatives, entropic Sinkhorn and its accelerated variant Greenkhorn, and make the sparse-exact side certified by a textbook LP dual-feasibility clip. Three contributions. (i) Measurement: on dense 2-D instances, exact matching (Jonker-Volgenant) is faster and strictly more accurate than either approximate method throughout the moderate-n regime (0.01 s at n=500 to 11.5 s at n=8000); reaching a 1% quality target on the same hardware requires roughly 10-80 min for Greenkhorn (factors 4e2-6e4 over exact; plain Sinkhorn is 20-650x slower still), a rough power-law projection beyond the measured range. Greenkhorn's measured speedup over plain Sinkhorn is only 1.0-1.5x on most converged cells. (ii) A simple kNN-pool gap certificate: given a pool matching and its Blossom dual, a one-pass O(n 2) clip produces a dense-feasible lower bound; combined with the Sinkhorn dual potential (valid at every iterate, not just at convergence), the bound is valid on all 45 measured configurations and tightens monotonically with k. (iii) A multi-robot task-allocation sanity check where the discrete plan is the deliverable: per-round exact assignment costs 0.1-68 ms, while a Sinkhorn-plus-hardening pipeline costs 0.12-15.9 s and accumulates 6-27% extra travel over 15 rounds. The Sinkhorn family's large-n dense regime is acknowledged and left untouched. Code, data, and results under MIT: https://github.com/dimkadimon/OT-Blossom.
Sources
- Blossom VI: A Practical Minimum Weight Perfect Matching Algorithm
- Near-linear time approximation algorithms for optimal transport via Sinkhorn iteration
- A Survey on Algorithmic Developments in Optimal Transport Problem with Applications
Related papers
- Cascaded Learned Bloom Filter for Optimizing Model-Filter Size Balance and Fast Rejection
- Computational and Statistical Hardness of Calibration Distance
- Edge-Private Matching Kernels Through Local Decoding
- Tight Bounds for Equivalence Testing with Non-Adaptive Conditional Samples
- Local Node Differential Privacy
- Cheaper by the Batch: Shared Traversal for Genotype Graph Editing