Wolff algorithm

The Wolff algorithm, named after Ulli Wolff, is an algorithm for Monte Carlo simulation of the Ising model and Potts model in which the unit to be flipped is not a single spin (as in the heat bath or Metropolis algorithms) but a cluster of them. This cluster is defined as the set of connected spins sharing the same spin states, based on the Fortuin-Kasteleyn representation.

The Wolff algorithm is similar to the Swendsen–Wang algorithm, but different in that the former only flips one randomly chosen cluster with probability 1, while the latter flip every cluster independently with probability 1/2. It is shown numerically that flipping only one cluster decreases the autocorrelation time of the spin statistics.

The advantage of Wolff algorithm over other algorithms for magnetic spin simulations like single spin flip is that it allows non-local moves on the energy. One important consequence of this is that in some situations (e.g. ferromagnetic Ising model or fully frustrated Ising model), the scaling of the Multicanonic simulation is $$N^2$$, better than $$N^{2+z}$$, where z is the exponent associated with the critical slowing down phenomena.