The traditional Metropolis algorithm, when applied do the Ising models close to their critical points, suffers from severe critical slowing down problems. This is due to its single-site updating procedure, which is good for updating the short-wavelength components of the configurations, but very bad at updating the long-wavelength components. Near the critical point the long-wavelength components play an important role due to the emergence of long-distance correlations, and in these circumstances the algorithm tends to diffuse only very slowly through the configuration space of the model. This increases the autocorrelations along the stochastic sequence of configurations and severely degrades the statistical quality of the results.
This is always a problem is the case of quantum field theory, since in that theory we are interested primarily in the critical region of the statistical models. If we are to use the Ising model in the analysis of problems in quantum field theory, we must use simulation techniques that do not suffer from such problems. The cluster algorithms are the answer to our needs, and among them the Wolff algorithm is particularly well suited for the task, due to its simplicity and efficiency. Cluster algorithms are characterized by the updating of whole sets of sites, or clusters, at a time, and in doing this they solve the problem of critical slowing down. The problem of how to make collective updates with a low rate of rejection and in such a way that the required statistical distribution is still produced correctly is a very difficult one, which was solved by the inventors of the cluster algorithms.
In this section we will describe the basic algorithm and show that it satisfied the condition of detailed balance, thus converging to the correct distribution. After that we will generalize the algorithm to the case in which we introduce external sources in the systems, as well as to the case in which we use fixed rather than the more usual periodical boundary conditions. This last topic will also lead us to consider the use of truncated clusters, a variation of the algorithm which may be useful under some circumstances.
Let us start by reviewing the fundamentals of the Metropolis algorithm.
In order to do that we must first establish some notation. Consider a
model in quantum field theory defined by an action functional ,
where
is the field. This action determines the distribution of
probabilities for all the possible configurations
of the field, which
is given by
, where
is a normalization
constant and the dependence on the field can be represented either by
or by
. What a simulation algorithm does is to establish
a probability
for going from a configuration
to
a configuration
on a single iteration of the algorithm. By iterating
the algorithm indefinitely one produces a sequence of configurations with
a distribution of probabilities that is supposed to approach
.
In order for this to work, it suffices that the algorithm satisfy two
conditions: ergodicity and detailed balance. Although not strictly
necessary, these conditions are sufficient to ensure convergence to the
correct distribution. Ergodicity means that any configuration should
be reachable from any other configuration
in a finite number of
iterations of the algorithm. In other words, the algorithm should never
get stuck in any particular configuration that it is unable to leave, and
there should be no configuration that it cannot reach from some other
configuration. This means that the algorithm should be able to diffuse
through the whole space of possible configurations of the field, without
leaving out any points or regions within it. Note that no statement is
made here about how fast it is able to diffuse. Of course, in practice
the quality of the algorithm will depend on it being able to do so fast,
because the space of configurations is usually very large.
The condition of detailed balance is the one which will mostly concern us
here. It is a relation between the probability
of
going from the configuration
to the configuration
and the
probability
of doing the reversed update, that is,
of going from
to
, and involves the probabilities
and
of the two configurations involved, within the ensemble of all
possible configurations. It states that the ratio of these two
probabilities should satisfy the condition
Since the probabilities of the configurations can be written in terms of the action, this condition can be translated into
where is the change in the action due to the update of the
configuration. It is possible to show by elementary means, in a simple
one-dimensional case, that this condition is sufficient to guarantee that
the set of configurations produced by the algorithm converges to the
correct distribution. However, that is not our focus here, and we will
simply take it as a given fact. Let us now describe in detail the usual
Metropolis algorithm for a single local update in the Ising model, and
show that it satisfies this condition. Starting from some initial
configuration, the Metropolis single-site updating algorithm is given by
the following sequence of steps:
As one can see, the algorithm is very simple and easily generalizable to
more complex models. It is also possible to improve it in various rather
technical ways, that help in some cases but that do not solve the central
problem of critical slowing down caused by the local update. It is now
easy to verify that this algorithm satisfies the condition of detailed
balance. We must consider three cases, depending on whether the variation
of the action is positive, zero or negative. If the update is such that
, then we have for its probability
; in this case the reversed update is such that
, so that we have for its probability
;
it therefore follows that
as required by the condition. If the update is such that ,
then the probability for the update is
, and the
probability for the reversed update is
, where
is the variation of the
action in the reversed update; it therefore follows that
![]() |
just as in the previous case. If , then we also have
, and hence
, so
that the ratio of the two updating probabilities is equal to
; since
in this case
is also equal to
, we see that
in all three cases the condition is satisfied.
In order to discuss the Wolff algorithm, we must now establish a few more concepts and notations. The basic idea of the algorithm will be to first built a cluster of sites according to certain rules, and then to flip the whole cluster. The cluster will be built by the ``activation'' of some of the links between two neighboring sites, and requires that we classify the links according to whether it connects two sites where the field has the same orientation, or opposite orientations. At first, let us consider only lattices with periodical boundary conditions and the model in the absence of any external sources. Later on we will extend the algorithm to these other cases. We should recall here that the Ising model is defined by the action
where
is the free parameter of the model, the sum is
over the links and
,
are the values of the field at
the two ends of a given link. In figure 1 one can
see an example of a two-dimensional periodical lattice with all its sites
and links dully classified. The sites where the field is positive are
shown as black circles and those where the field is negative as white
circles. The links that connect two sites with the same orientation are
shown as solid lines, and those connecting sites with opposite
orientations as dashed lines. Note that this is true for the border links
as well, which establish the periodical boundary conditions. The links
represented by solid lines will be denoted by
in the formulas,
and those represented by dashed lines by
. According to the
algorithm only
links can be activated to form clusters, so the
sets of sites connected by solid lines illustrate the clusters that can
be formed in this particular configuration. We may now state the Wolff
algorithm, which is given by the following sequence of steps:
Note that in steps and
, since only
links can be
activated, the argument of the exponential is negative and thus
is a number in the interval
.
Therefore, so is the probability
.
Note also that during the construction of the cluster a certain site may
be approached by the growing cluster from two or more different
directions, along different links. If that site does not get linked to
the cluster at the first trial, it might still get linked at a later
trial. The algorithm implies that the same link is never tried more than
once for activation, but a single site my be tried more than once for
linking to the cluster, if it has more than one link able to be
activated. Finally, observe that during construction it might happen that
two sites already included in the cluster are connected by a link that
has not yet been tried. That link will in fact never be tried by the
algorithm, and may be considered as automatically activated, that is,
they can simply be activated with probability
at the end of the
construction. A simple cluster that could result from the algorithm is
shown in figure 2, with its sites and activated
links, which are shown in a thicker solid line.
Let us now show that this algorithm satisfied the condition of detailed
balance. In order to do this, given a certain cluster, we must calculate
the probability that it will be built and flipped. We will denote the
cluster by and the boundary of the cluster, that is, the set of
links that connect the cluster with sites outside the cluster, by
.
In figure 3 one can see a larger lattice with a cluster
that could have been built by the algorithm, as well as its boundary,
illustrated by the thick dotted line which crosses all the links that
connect the cluster to sites outside the cluster. Since the probability
of flipping a cluster is
, once it has been built, we must simply
calculate the total probability of building a certain given cluster. The
process of building the cluster might start at any of its sites, so we
start the calculation with the probability that one of the sites of the
cluster will be chosen in step
of the algorithm. Let us call this
probability
, and there is no need to further elaborate on it.
Irrespective of where the construction starts, the probability that the
given cluster will be built is the product of the probabilities that each
one of its internal links will be activated, times the product of the
probabilities that each one of the links of its borders will not be
activated. Now, all the internal links are links, so the
probability that they will be activated is given by
For the links in the border of the cluster not to be
activated we have the probability
where
is the complementary
probability to
. Since the probability for the
links at
the border not to be activated is
, this product is the complete
probability for the construction of the boundary. We have therefore the
complete probability for the construction of the cluster, and hence the
complete probability for the update of the configuration,
Next we must consider the probability for the reversed update. Since the
same set of sites that makes up the cluster in the configuration
also makes up the flipped cluster
in the configuration
, it is
clear that the probability
is the same in either case. Now,
repeating the argument used for the cluster
we get for the
probability that the cluster
will be built
Observe now that when we flip the fields certain mappings between links
take place. When we go from the cluster to the flipped cluster
, we can see that all the internal
links of
become
internal
links of
, since the fields at both ends of each
link get flipped and hence their product does not change sign. This means
that the first products that appears in the two formulas above are equal,
and therefore that we may write the ratio of the two probabilities as
For the links at the border, however, we have that the links
of
become the
links of
, and that the
links of
become the
links of
, since for these
links only the field at one end gets flipped and therefore the sign of
the product changes. In addition to this, the term of the action
corresponding to each link changes sign, so that the factor
gets
mapped to
. If we write the ratio above in terms of the action
terms,
we see that we can decompose each one of the two products in two parts,
Now, due to the mappings of the boundary links which we just discussed, we have that the following two equations hold,
so that the ratio of updating probabilities may be written as
Note that in this way we have completed the set of boundary links in both the numerator and the denominator, so that we may write
What we see here in the argument of the two exponentials in the last form
of this equation is the negative of the part of the action that
corresponds to the boundary links, which we may denote by
. We may therefore write
the ratio of the two updating probabilities as
Since in the flipping of a cluster the parts of the action corresponding
to links that are either completely internal to the cluster or completely
external to it do not change at all, the only variation of the action is
that due to the boundary links, which means that
,
and hence we get the final relation
which is indeed the condition of detailed balance, as we set out to show. Please note how important it is for this demonstration the fact that the update of a cluster changes the action exclusively at the boundary links of the cluster, and not at its bulk, that is, at its interior sites and links.