The Metropolis Monte Carlo method is a computational approach (i.e.,
an algorithm) for generating a set of N configurations of the system
such that
![]() |
(332) |
where P(
)
is a given probability distribution (e.g., the Boltzmann distribution P(
)
= Z
exp[-
E(
)])
and
is the number of configurations
(e.g., the number of configurations generated with a particular arrangement
of spins
in the Ising model).
The Metropolis Monte Carlo algorithm can be described as follows:
Step (1): Pick a configuration
(the initial configuration can be any configuration of the system,
e.g., any arrangement of spins in the Ising model).
Step (2): Pick a trial configuration
(usually a configuration similar to
)
and compute the probability ratio
.
Pick a random number
with value between 0 and 1. Make
if
.
Otherwise, make
.
Step (3): Go to (2) replacing
by
.
Step (3) is repeated N times, where N is a sufficiently large number.
Note that, according to step (2), the probability of accepting a trial
configuration
by making
from a configuration
is
![]() |
(333) |
Consider an ensemble of N configurations with N(
)
members of the ensemble in state
.
Apply the Metropolis Monte Carlo algorithm to each member of the ensemble
by setting
and
in step (2), where
and
are any two possible states. Note that by applying the algorithm the we
generate more configurations and we therefore evolve the initial distribution.
In order to show that the algorithm produces an ensemble of configurations
that satisfies Eq. (332) we need to show that the any initial distribution
evolves towards the distribution
and once such a distribution is reached it remains at equilibrium.
According to step (2), for any pair of states
and
,
the number of configurations generated in state
by applying the algorithm to the N(
)
configurations in state
is
,
where
is the probability of accepting the trial configuration
when
.
In addition, the number of configurations generated in state
by applying the algorithm to the N(
)
configurations in state
is (1-P
)
N(
).
Therefore, the total number
of configurations generated in state
due to any other state
is
| (334) |
where
| (335) |
is the net change in the number of configurations in state
,
relative to
.
According to Eqs. (333) and (335),
![]() |
(336) |
when
and
![]() |
(337) |
when
.
Therefore, according to Eqs. (336) and (337),
when
and
,
i.e., the algorithm does not alter the relative population of the states
when the ensemble distribution is equal to the equilibrium distribution.
In addition, Eqs. (336) and (337) indicate that
when
(and
when
),
i.e., the algorithm evolves any arbitrary distribution towards the equilibrium
distribution where
.
Note: The most important aspect of the method is that the algorithm
is able generate an ensemble of configurations with the probability distribution
P(
)
= Z
exp[-
E(
)],
simply by computing the probability ratios
.
Therefore, the method avoids the need of computing the canonical partition
function of the system
,
a computational task that would be computationally intractable for most
real applications. This numerical technique is thus extremely useful since
it allows one to compute any canonical ensembles without having to compute
the canonical partition function of the system as follows,
![]() |
(338) |
where
is the value of the observable
for state
and
is the Monte Carlo estimator of
associated with the finite number of configurations N.
Exercise (due 04/24/03):
Implement the Metropolis Monte Carlo Algorithm to generate an ensemble
of configurations for a 2-dimensional Ising model with (20
20 spins) in the absence of an external field. Compute the average value
of the magnetization at various different temperatures and show that the
system exhibits spontaneous magnetization when
,
where J is the coupling constant between spins.