Matrix scaling by network flow
Günter Rote, Martin Zachariasen · 2007
A given nonnegative n × n matrix A =(aij) istobescaled,by multiplying its rows and columns by unknown positive multipliers λi and µj, such that the resulting matrix (aijλiµj) has specified row and column sums ri and sj. We give an algorithm that achieves the desired row and column sums with a maximum absolute error ε in O(n4 (log n +logh ε)) steps, where h is the overall total of the result matrix. Our algorithm is a scaling algorithm. It solves a sequence of more and more refined discretizations. The discretizations are minimumcost network flow problems with convex piecewise linear costs. These discretizations are interesting in their own right because they arise in proportional elections.