4. What's New

In AutoDock version 3.0, we have added a promising new, hybrid search technique that implements an adaptive global optimizer with local search, based on the work of Rik Belew and William Hart 1 at the Department of Computational Science, University of California at San Diego. The global search method is a C++ implementation of a modified genetic algorithm ( GA ), with 2-point crossover and random mutation. The local search method is based on the optimization algorithm of Solis and Wets 2 ( SW ), which has the advantage that it does not require gradient information in order to proceed. The local searcher modifies the phenotype, which is allowed to update the genotype: clearly this contravenes Mendelian genetics observed in nature, but it does improve the overall performance of the method. We refer to this hybrid genetic algorithm with phenotypic local search as a Lamarckian Genetic Algorithm or LGA for short, since it utilizes (discredited) Lamarckian notion that an adaptations of an individual to its environment can be inherited by its offspring.

The SW local searcher uses fixed variances which are initially and uniformly 1. These variances are used for probabilistically determining the change to a particular state variable, like the x -translation. These variances are either doubled or halved during the search, depending on the number of consecutive successful or failed moves. Success is a drop in energy. We have modified the classical SW method to take into account in the variances the relative magnitudes of translations and rotations (in Angstroms and radians respectively). We call this method pseudo-Solis and Wets ( pSW ).

The genome consists of floating point genes each of which encodes one state variable describing the molecular position, orientation and conformation. This is a departure from the classical GA approach, which dictates a purely binary implementation. By setting the rate of genetic crossover to zero, and increasing the rate of genetic mutation, our hybrid GA can mimic an evolutionary programming ( EP ) method.

AutoDock can now be used as a standalone energy minimizer by using the command " do_local_only ". Thus the user can now minimize a structure using exactly the same force field as is used in the dockings. This could be useful, for example, in minimizing a crystal structure to relieve bad contacts.

The hybrid global-local search routine uses a library of portable routines for random number generation, based on the method of L'Ecuyer & Cote 3 . This is code is a transliteration of the original Pascal carried out by the Department of Biomathematics, University of Texas. This random number generator (RNG) has the advantage of providing a set of random numbers that are hardware independent. The simulated annealing (SA) algorithm still uses the built-in "drand48" function on most platforms, but the drand48 implementation may vary from platform to platform.

Our results show that the Lamarckian GA, (also known as the hybrid GA-SW and GA-pSW methods) reproduce the crystal complex more reliably using the same number of energy evaluations than SA does.

There are new keywords that have been added to AutoDock to assist in setting up a docking using the new methods. Those keywords that pertain to the genetic algorithm are prefixed with the letters " ga_ " , those specific to local search have the prefix " ls_ " and those specific to Solis and Wets and pseudo-Solis and Wets have the prefix " sw_ ". To use the GA, the " set_ga " directive must be given Classical Solis and Wets needs " set_sw1 ", and pseudo-Solis and Wets requires " set_psw1 ". In order to begin the GA, the keyword " ga_run " must be given along with a number of runs to be executed.

In order to perform conformational cluster analysis after the dockings, the keyword "analysis" must be supplied as the final line, otherwise no structural output will be generated.

A small change must now be made to old SA docking parameter files, with the addition of the keywords " simanneal " and " analysis ". These instruct AutoDock respectively to begin the SA docking, and when the requested number of runs have been carried out, perform cluster analysis.


1. William Hart's doctoral thesis describes this hybrid global-local method, and can be found on the World Wide Wed at "http://www.cs.sandia.gov/~wehart/abstracts_html/thesis.html".

2. F.J. Solis and R.J.-B. Wets. (1981) "Minimization by random search techniques", Mathematical Operations Research, 6, 19-30.

3. P. L'Ecuyer and S. Cote. (1991) "Implementing a Random Number Package with Splitting Facilities", ACM Transactions on Mathematical Software, 17, 98-111