Finding Hall blockers by matrix scaling
For a given nonnegative matrix A=(A_ij), the matrix scaling problem asks whether A can be scaled to a doubly stochastic matrix XAY for some positive diagonal matrices X,Y. The Sinkhorn algorithm is a simple iterative algorithm, which repeats row-normalization A_ij← A_ij/∑_jA_ij and column-normalization A_ij← A_ij/∑_iA_ij alternatively. By this algorithm, A converges to a doubly stochastic matrix in limit if and only if the bipartite graph associated with A has a perfect matching. This property can decide the existence of a perfect matching in a given bipartite graph G, which is identified with the 0,1-matrix A_G. Linial, Samorodnitsky, and Wigderson showed that a polynomial number of the Sinkhorn iterations for A_G decides whether G has a perfect matching. In this paper, we show an extension of this result: If G has no perfect matching, then a polynomial number of the Sinkhorn iterations identifies a Hall blocker – a certificate of the nonexistence of a perfect matching. Our analysis is based on an interpretation of the Sinkhorn algorithm as alternating KL-divergence minimization (Csiszár and Tusnády 1984, Gietl and Reffel 2013) and its limiting behavior for a nonscalable matrix (Aas 2014). We also relate the Sinkhorn limit with parametric network flow, principal partition of polymatroids, and the Dulmage-Mendelsohn decomposition of a bipartite graph.
READ FULL TEXT