Multicanonical ensemble

From HandWiki

In statistics and physics, multicanonical ensemble (also called multicanonical sampling or flat histogram) is a Markov chain Monte Carlo sampling technique that uses the Metropolis–Hastings algorithm to compute integrals where the integrand has a rough landscape with multiple local minima. It samples states according to the inverse of the density of states,[1] which has to be known a priori or be computed using other techniques like the Wang and Landau algorithm.[2] Multicanonical sampling is an important technique for spin systems like the Ising model or spin glasses.[1][3][4]


In systems with a large number of degrees of freedom, like spin systems, Monte Carlo integration is required. In this integration, importance sampling and in particular the Metropolis algorithm, is a very important technique.[3] However, the Metropolis algorithm samples states according to [math]\displaystyle{ \exp(-\beta E) }[/math] where beta is the inverse of the temperature. This means that an energy barrier of [math]\displaystyle{ \Delta E }[/math] on the energy spectrum is exponentially difficult to overcome.[1] Systems with multiple local energy minima like the Potts model become hard to sample as the algorithm gets stuck in the system's local minima.[3] This motivates other approaches, namely, other sampling distributions.


Multicanonical ensemble uses the Metropolis–Hastings algorithm with a sampling distribution given by the inverse of the density of states of the system, contrary to the sampling distribution [math]\displaystyle{ \exp(-\beta E) }[/math] of the Metropolis algorithm.[1] With this choice, on average, the number of states sampled at each energy is constant, i.e. it is a simulation with a "flat histogram" on energy. This leads to an algorithm for which the energy barriers are no longer difficult to overcome. Another advantage over the Metropolis algorithm is that the sampling is independent of the temperature of the system, which means that one simulation allows the estimation of thermodynamical variables for all temperatures (thus the name "multicanonical": several temperatures). This is a great improvement in the study of first order phase transitions.[1]

The biggest problem in performing a multicanonical ensemble is that the density of states has to be known a priori.[2][3] One important contribution to multicanonical sampling was the Wang and Landau algorithm, which asymptotically converges to a multicanonical ensemble while calculating the density of states during the convergence.[2]

The multicanonical ensemble is not restricted to physical systems. It can be employed on abstract systems which have a cost function F. By using the density of states with respect to F, the method becomes general for computing higher-dimensional integrals or finding local minima.[5]


Consider a system and its phase-space [math]\displaystyle{ \Omega }[/math] characterized by a configuration [math]\displaystyle{ \boldsymbol{r} }[/math] in [math]\displaystyle{ \Omega }[/math] and a "cost" function F from the system's phase-space to a one-dimensional space [math]\displaystyle{ \Gamma }[/math]: [math]\displaystyle{ F(\Omega) = \Gamma = [\Gamma_\min, \Gamma_\max] }[/math], the spectrum of F.


The Ising model with N sites is an example of such a system; the phase-space is a discrete phase-space defined by all possible configurations of N spins [math]\displaystyle{ \boldsymbol{r} = (\sigma_1, \ldots, \sigma_i, \ldots, \sigma_N) }[/math] where [math]\displaystyle{ \sigma_i\in\{-1,1\} }[/math]. The cost function is the Hamiltonian of the system:

[math]\displaystyle{ H(\boldsymbol{r}) = - \sum_{\langle i~j\rangle} J_{ij} (1 - \sigma_i \sigma_j), }[/math]

where [math]\displaystyle{ \lt i,j\gt }[/math] is the sum over neighborhoods and [math]\displaystyle{ J_{ij} }[/math] is the interaction matrix.

The energy spectrum is [math]\displaystyle{ \Gamma = [E_\min, E_\max] }[/math] which, in this case, depends on the particular [math]\displaystyle{ J_{ij} }[/math] used. If all [math]\displaystyle{ J_{ij} }[/math] are 1 (the ferromagnetic Ising model), [math]\displaystyle{ E_\min = 0 }[/math] (e.g. all spins are 1.) and [math]\displaystyle{ E_\max = 2 D N }[/math] (half spins are up, half spins are down). Also notice that in this system, [math]\displaystyle{ \Gamma \in \mathbb{Z} }[/math]

The computation of an average quantity [math]\displaystyle{ \langle Q\rangle }[/math] over the phase-space requires the evaluation of an integral:

[math]\displaystyle{ \langle Q\rangle = \int_\Omega Q(\boldsymbol{r}) P_r(\boldsymbol{r}) \,d\boldsymbol{r} }[/math]

where [math]\displaystyle{ P_r(\boldsymbol{r}) }[/math] is the weight of each state (e.g. [math]\displaystyle{ P_r(\boldsymbol{r})=1/V }[/math] correspond to uniformly distributed states).

When Q does not depend on the particular state but only on the particular F's value of the state [math]\displaystyle{ F(\boldsymbol{r}) = F_\boldsymbol{r} }[/math], the formula for [math]\displaystyle{ \langle Q\rangle }[/math] can be integrated over f by adding a dirac delta function and be written as

[math]\displaystyle{ \begin{align} \langle Q\rangle & = \int_{\Gamma_\min}^{\Gamma_\max} \int_\Omega Q(F_\boldsymbol{r}) P_r(F_\boldsymbol{r}) \delta(f - F_\boldsymbol{r}) \,d\boldsymbol{r} \,df \\ & = \int_{\Gamma_\min}^{\Gamma_\max} Q(f) \int_\Omega \delta(f - F_\boldsymbol{r}) P_r(F_\boldsymbol{r}) \,d\boldsymbol{r} \, df \\ & = \int_{\Gamma_\min}^{\Gamma_\max} Q(f) P(f) \, df \\ \end{align} }[/math]


[math]\displaystyle{ P(f) = \int_\Omega P_r(r)\delta(f - F(\boldsymbol{r})) \,d\boldsymbol{r} }[/math]

is the marginal distribution of F.


A system in contact with a heat bath at inverse temperature [math]\displaystyle{ \beta }[/math] is an example for computing this kind of integral. For instance, the mean energy of the system is weighted by the Boltzmann factor:

[math]\displaystyle{ \langle E\rangle = \frac{1}{V}\int_\Omega H_\boldsymbol{r} \frac{e^{-\beta H_\boldsymbol{r}}}{Z} d\boldsymbol{r} }[/math]


[math]\displaystyle{ Z = \frac{1}{V}\int_\Omega e^{-\beta H_\boldsymbol{r}} d\boldsymbol{r}. }[/math]

The marginal distribution [math]\displaystyle{ P(E) }[/math] is given by

[math]\displaystyle{ P(E) = \frac{1}{V}\int_\Omega e^{-\beta H_\boldsymbol{r}} \delta(E - H_\boldsymbol{r}) d\boldsymbol{r} = e^{-\beta E} \frac{1}{V}\int_\Omega \delta(E - H_\boldsymbol{r}) d\boldsymbol{r} = e^{-\beta E} \rho(E) }[/math]

where [math]\displaystyle{ \rho(E) }[/math] is the density of states.

The average energy [math]\displaystyle{ \langle E\rangle }[/math] is then given by

[math]\displaystyle{ \langle E\rangle = \int_{E_\min}^{E_\max} E P(E) \, dE }[/math]

When the system has a large number of degrees of freedom, an analytical expression for [math]\displaystyle{ \langle Q\rangle }[/math] is often hard to obtain, and Monte Carlo integration is typically employed in the computation of [math]\displaystyle{ \langle Q\rangle }[/math]. On the simplest formulation, the method chooses N uniformly distributed states [math]\displaystyle{ \boldsymbol{r}_i\in \Omega }[/math], and uses the estimator

[math]\displaystyle{ \overline{Q}_N = \sum_{i = 1}^N Q(\boldsymbol{r}_i) V P_r(\boldsymbol{r}_i) }[/math]

for computing [math]\displaystyle{ \langle Q\rangle }[/math] because [math]\displaystyle{ \overline{Q}_N }[/math] converges almost surely to [math]\displaystyle{ \langle Q\rangle }[/math] by the strong law of large numbers:

[math]\displaystyle{ \lim_{N\rightarrow\infty} \overline{Q}_N = \langle Q\rangle. }[/math]

One typical problem of this convergence is that the variance of Q can be very high, which leads to a high computational effort to achieve reasonable results.


On the previous example, the states that mostly contribute to the integral are the ones with low energy. If the states are sampled uniformly, on average, the number of states which are sampled with energy E is given by the density of states. This density of states can be centered far away from the energy's minima and thus the average can be difficult to obtain.

To improve this convergence, the Metropolis–Hastings algorithm was proposed. Generally, Monte Carlo methods' idea is to use importance sampling to improve the convergence of the estimator [math]\displaystyle{ \overline{Q}_N }[/math] by sampling states according to an arbitrary distribution [math]\displaystyle{ \pi(\boldsymbol{r}) }[/math], and use the appropriate estimator:

[math]\displaystyle{ \overline{Q}_N = \sum_{i = 1}^N Q(\boldsymbol{r}_i) \pi^{-1}(\boldsymbol{r}_i) P_r(\boldsymbol{r}_i) }[/math].

This estimator generalizes the estimator of the mean for samples drawn from an arbitrary distribution. Therefore, when [math]\displaystyle{ \pi(\boldsymbol{r}) }[/math] is a uniform distribution, it corresponds the one used on a uniform sampling above.

When the system is a physical system in contact with a heat bath, each state [math]\displaystyle{ \boldsymbol{r} }[/math] is weighted according to the Boltzmann factor, [math]\displaystyle{ P_r(\boldsymbol{r}_i) \propto \exp(-\beta F_\boldsymbol{r}) }[/math]. In Monte Carlo, the canonical ensemble is defined by choosing [math]\displaystyle{ \pi(\boldsymbol{r}) }[/math] to be proportional to [math]\displaystyle{ P_r(\boldsymbol{r}_i) }[/math]. In this situation, the estimator corresponds to a simple arithmetic average:

[math]\displaystyle{ \overline{Q}_N = \frac{1}{N} \sum_{i = 1}^N Q(\boldsymbol{r}_i) }[/math]

Historically, this occurred because the original idea[6] was to use Metropolis–Hastings algorithm to compute averages on a system in contact with a heat bath where the weight is given by the Boltzmann factor, [math]\displaystyle{ P(\boldsymbol{x}) \propto \exp(-\beta E(\boldsymbol{r})) }[/math].[3]

While it is often the case that the sampling distribution [math]\displaystyle{ \pi }[/math] is chosen to be the weight distribution [math]\displaystyle{ P_r }[/math], this does not need to be the case. One situation where the canonical ensemble is not an efficient choice is when it takes an arbitrarily long time to converge.[1] One situation where this happens is when the function F has multiple local minima. The computational cost for the algorithm to leave a specific region with a local minimum exponentially increases with the cost function's value of the minimum. That is, the deeper the minimum, the more time the algorithm spends there, and the harder it will be to leave (exponentially growing with the depth of the local minimum).

One way to avoid becoming stuck in local minima of the cost function is to make the sampling technique "invisible" to local minima. This is the basis of the multicanonical ensemble.

Multicanonical ensemble

The multicanonical ensemble is defined by choosing the sampling distribution to be

[math]\displaystyle{ \pi(\boldsymbol{r}) \propto \frac{1}{P(F_\boldsymbol{r})} }[/math]

where [math]\displaystyle{ P(f) }[/math] is the marginal distribution of F defined above. The consequence of this choice is that the average number of samples with a given value of f, m(f), is given by

[math]\displaystyle{ m(f) = \int_\Omega \delta(f - F_\boldsymbol{r}) \pi(\boldsymbol{r}) P_r(\boldsymbol{r})\,d\boldsymbol{r} \propto \int_\Omega \delta(f - F_\boldsymbol{r}) P_r(\boldsymbol{r}) \frac{1}{P(F_\boldsymbol{r})} d\boldsymbol{r} = \frac{1}{P(f)} \int_\Omega \delta(f - F_\boldsymbol{r}) P_r(\boldsymbol{r}) d\boldsymbol{r} = 1 }[/math]

that is, the average number of samples does not depend on f: all costs f are equally sampled regardless of whether they are more or less probable. This motivates the name "flat-histogram". For systems in contact with a heat bath, the sampling is independent of the temperature and one simulation allows to study all temperatures.


On the ferromagnetic Ising model with N sites (exemplified on previous section), the density of states can be analytically computed. In this case, a multicanonical ensemble can be used to compute any other quantity Q by sampling the system according to [math]\displaystyle{ P(\boldsymbol{r}) }[/math] and using the proper estimator [math]\displaystyle{ \overline{Q} }[/math] defined on the previous section.

Tunneling time and critical slowing down

Like in any other Monte Carlo method, there are correlations of the samples being drawn from [math]\displaystyle{ P(\boldsymbol{r}) }[/math]. A typical measurement of the correlation is the tunneling time. The tunneling time is defined by the number of Markov steps (of the Markov chain) the simulation needs to perform a round-trip between the minimum and maximum of the spectrum of F. One motivation to use the tunneling time is that when it crosses the spectra, it passes through the region of the maximum of the density of states, thus de-correlating the process. On the other hand using round-trips ensures that the system visits all the spectrum.

Because the histogram is flat on the variable F, a multicanonic ensemble can be seen as a diffusion process (i.e. a random walk) on the one-dimensional line of F values. Detailed balance of the process dictates that there is no drift on the process.[7] This implies that the tunneling time, in local dynamics, should scale as a diffusion process, and thus the tunneling time should scale quadratically with the size of the spectrum, N:

[math]\displaystyle{ \tau_{tt} \propto N^2 }[/math]

However, in some systems (the Ising model being the most paradigmatic), the scaling suffers from critical slowing down: it is [math]\displaystyle{ N^{2+z} }[/math] where [math]\displaystyle{ z\gt 0 }[/math] depends on the particular system.[4]

Non-local dynamics were developed to improve the scaling to a quadratic scaling[8] (see the Wolff algorithm), beating the critical slowing down. However, it is still an open question whether there is a local dynamics that does not suffer from critical slowing down in spin systems like the Ising model.


  1. 1.0 1.1 1.2 1.3 1.4 1.5 Berg, B.; Neuhaus, T. (1992). "Multicanonical ensemble: A new approach to simulate first-order phase transitions". Physical Review Letters 68 (1): 9–12. doi:10.1103/PhysRevLett.68.9. PMID 10045099. Bibcode1992PhRvL..68....9B. 
  2. 2.0 2.1 2.2 Wang, F.; Landau, D. (2001). "Efficient, Multiple-Range Random Walk Algorithm to Calculate the Density of States". Physical Review Letters 86 (10): 2050–2053. doi:10.1103/PhysRevLett.86.2050. PMID 11289852. Bibcode2001PhRvL..86.2050W. 
  3. 3.0 3.1 3.2 3.3 3.4 Newmann, M E J; Barkema, G T (2002). Monte Carlo Methods in Statistical Physics. USA: Oxford University Press. ISBN 0198517971. 
  4. 4.0 4.1 Dayal, P.; Trebst, S.; Wessel, S.; Würtz, D.; Troyer, M.; Sabhapandit, S.; Coppersmith, S. (2004). "Performance Limitations of Flat-Histogram Methods". Physical Review Letters 92 (9): 097201. doi:10.1103/PhysRevLett.92.097201. PMID 15089505. Bibcode2004PhRvL..92i7201D. 
  5. Lee, J.; Choi, M. (1994). "Optimization by multicanonical annealing and the traveling salesman problem". Physical Review E 50 (2): R651–R654. doi:10.1103/PhysRevE.50.R651. PMID 9962167. Bibcode1994PhRvE..50..651L. 
  6. Metropolis, N.; Rosenbluth, A. W.; Rosenbluth, M. N.; Teller, A. H.; Teller, E. (1953). "Equation of State Calculations by Fast Computing Machines". The Journal of Chemical Physics 21 (6): 1087. doi:10.1063/1.1699114. Bibcode1953JChPh..21.1087M. 
  7. Robert, Christian; Casella, George (2004). Monte Carlo statistical methods. Springer. ISBN 978-0-387-21239-5. 
  8. Wolff, U. (1989). "Collective Monte Carlo Updating for Spin Systems". Physical Review Letters 62 (4): 361–364. doi:10.1103/PhysRevLett.62.361. PMID 10040213. Bibcode1989PhRvL..62..361W.