Simulated Annealing
Consider the task of computing a thermodynamic ensemble average for a system
with many degrees of freedom at low temperature (e.g., a large cluster,
a polymer, or a protein).
The challenge presented by these many-body systems is that in addition
to their global minumum energy configuration they usually have many local
energy minima separated by high energy barriers. A Metropolis Monte Carlo
computation at low temperature that starts from a configuration that is
far from the minimum energy geometry usually leads to erroneous results.
The reason for this is that the configurations that make the most important
contributions to an ensemble average are those that are close to the minimum
energy configuration and the algorithm is inefficient at sampling configurations
that are beyond high potential energy barriers. Reliable Monte Carlo calculations
thus require obtaining first the minimum energy configuration of the system.
The simulated annealing algorithm (by S. Kirkpatrick, C.D. Gelatt
and M.P. Vecchi Science 220 671-680, 1983) is an efficient
technique to find the minimum energy configuration of the system. The algorithm
can be described as follows:
Step (1): Initialize an arbitrary configuration
for the system at temperature
,
where
is reasonably large.
Step (2): Starting from the configuration
,
sample N configurations
by implementing the Metropolis Monte Carlo method with
exp
.
Step (3): Go to (2), replacing
by
and
by a lower temperature.
Step (3) is repeated each time on the subsequent configuration
until the temperature of the system is equal to 0. It can be shown that
the configuration that corresponds to the global minimum of
can be reached according to such algorithm whenever the temperature decreases
at a logarithmic rate (e.g., see S. Geman and D. Geman IEEE Transactions
on Pattern Analysis and Machine Intelligence 6:721-741, 1984).
In practice, however, a linear or even exponential temperature decrease
schedule can often be implemented.
Exercise (due 04/24/03): This computational assignment has
been designed and organized by Dr. Jose A. Gascon.
-
Write a program for implementing the simulated annealing procedure and
find the minimumm energy geometry of a ``cluster'' of two atoms interacting
according to the 12-6 Lennard-Jones potential
![$\displaystyle U(r)=4\varepsilon\left[\left(\frac{\sigma}{r}\right)^{12}-\left(\frac{\sigma}{r}\right)^{6}\right],$](img844.png) |
(362) |
where
ev and
Å. You can write you own code or modify the Fortran program mclj.for
attached to the www page for the lecture notes of this course.
Notes:
-
If you decide to use the mclj.for program, you will have to edit
the code and write a few lines as specified in the mclj.for file.
The missing lines should specify the Metropolis Monte Carlo procedure.
-
When running the mclj.for program you will be asked for the initial
and final temperature. A reasonable value for the initial temperature is
10 K (just type 10). Since we are trying to find the global minimum the
final temperature must be zero.
-
When asked "Is the initial geometry random (yes/no)?", type "yes" to have
the program select an initial guess of the geometry. You can eventually
put your own initial guess in which case type "no". To create an initial
geometry you must create a file called initial.xyz in the standard
xyz format, where the first line is the number of atoms, the second line
is left blank or with any coment, and the following lines have the atom
type and coordinates as shown below for a cluster of N argon atoms.
N
comment
Ar 

Ar 

...
Ar 

-
The mclj.for program reports on the screen the numbers of steps,
the average interatomic distance, the energy at that step and the ratio
of accepted trials out of 100.
-
The final geometry is recorded in the output file final.xyz.
-
Visualize the final geometry using a molecular viewer program such as Rasmol
or Molden.
The file movie.xyz contains snapshots of the accepted geometries
along the simulation. The movie with the sequence of accepted geometries
can be visualized by using Molden. Compare the minimum energy geometry
(i.e., the minimum energy distance between the two Ar atoms) found by the
simulated annealing algorithm with the exact value computed from the expression
of the 12-6 Lennard-Jones potential.
-
In order to appreciate the power of the simulated annealing method, find
the minimum energy geometry of clusers with 3 and 13 argon atoms and report
the values of the minimum energy. For the cluster with 13 atoms run the
program with three different initial temperatures, 10 K, 20 K and 30 K.
Compare the final results. Do the final energy and geometry depend on the
initial temperature? Why, or why not?
-
How would you compute a thermodynamic average at a constant temperature
using the program for simulating annealing ?