Adaptive simulated annealing: A near-optimal connection between sampling and counting

  • Authors:
  • Daniel Štefankovič;Santosh Vempala;Eric Vigoda

  • Affiliations:
  • University of Rochester, Rochester, NY;Georgia Institute of Technology, Atlanta, GA;Georgia Institute of Technology, Atlanta, GA

  • Venue:
  • Journal of the ACM (JACM)
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

We present a near-optimal reduction from approximately counting the cardinality of a discrete set to approximately sampling elements of the set. An important application of our work is to approximating the partition function Z of a discrete system, such as the Ising model, matchings or colorings of a graph. The typical approach to estimating the partition function Z(β*) at some desired inverse temperature β* is to define a sequence, which we call a cooling schedule, β0 = 0 1 ℓ = β* where Z(0) is trivial to compute and the ratios Z(βi+1)/Z(βi) are easy to estimate by sampling from the distribution corresponding to Z(βi). Previous approaches required a cooling schedule of length O*(ln A) where A=Z(0), thereby ensuring that each ratio Z(βi+1)/Z(βi) is bounded. We present a cooling schedule of length ℓ =O*(&sqrt; lnA). For well-studied problems such as estimating the partition function of the Ising model, or approximating the number of colorings or matchings of a graph, our cooling schedule is of length O*(&sqrt; n), which implies an overall savings of O*(n) in the running time of the approximate counting algorithm (since roughly ℓ samples are needed to estimate each ratio). A similar improvement in the length of the cooling schedule was recently obtained by Lovász and Vempala in the context of estimating the volume of convex bodies. While our reduction is inspired by theirs, the discrete analogue of their result turns out to be significantly more difficult. Whereas a fixed schedule suffices in their setting, we prove that in the discrete setting we need an adaptive schedule, that is, the schedule depends on Z. More precisely, we prove any nonadaptive cooling schedule has length at least O*(ln A), and we present an algorithm to find an adaptive schedule of length O*(&sqrt; ln A).