Enumerating contingency tables via random permanents

  • Authors:
  • Alexander Barvinok

  • Affiliations:
  • Department of mathematics, university of michigan, ann arbor, mi 48109-1043, usa (e-mail: barvinok@umich.edu)

  • Venue:
  • Combinatorics, Probability and Computing
  • Year:
  • 2008

Quantified Score

Hi-index 0.00

Visualization

Abstract

Given m positive integers R = (ri), n positive integers C = (cj) such that Σri = Σcj = N, and mn non-negative weights W=(wij), we consider the total weight T=T(R, C; W) of non-negative integer matrices D=(dij) with the row sums ri, column sums cj, and the weight of D equal to $\prod w_{ij}^{d_{ij}}$. For different choices of R, C, and W, the quantity T(R,C; W) specializes to the permanent of a matrix, the number of contingency tables with prescribed margins, and the number of integer feasible flows in a network. We present a randomized algorithm whose complexity is polynomial in N and which computes a number T′=T′(R,C;W) such that T′ ≤ T ≤ α(R,C)T′ where $\alpha(R,C) = \min \bigl\{\prod r_i! r_i^{-r_i}, \ \prod c_j! c_j^{-c_j} \bigr\} N^N/N!$. In many cases, ln T′ provides an asymptotically accurate estimate of ln T. The idea of the algorithm is to express T as the expectation of the permanent of an N × N random matrix with exponentially distributed entries and approximate the expectation by the integral T′ of an efficiently computable log-concave function on mn.