Algorithms for Biproportional Apportionment

For the biproportional apportionment problem two algorithms are discussed, that are implemented in the Augsburg BAZI program, the alternating scaling algorithm and the tie-and-transfer algorithm of Balinski and Demange (1989b). The goal is to determine an integer-valued apportionment matrix that is “proportional to” a matrix of input weights (e.g. vote counts) and that at the same time achieves prespecified row and column marginals. The alternating scaling algorithm finds the solution of most of the practical problems very efficiently. However, it is possible to create examples for which the procedure fails. The tie-and-transfer algorithm converges always, though convergence may be slow. In order to make use of the benefits of both algorithms, a hybrid version is proposed.