Personal tools
You are here: Home FAQs & Help FAQs
Document Actions

FAQs

View entire FAQ in full Up to table of contents
Frequently Asked Questions (& Answers!)

Running AutoDock

How can I prevent a segmentation fault when trying to run AutoDock 3?

The first time I try to run AutoDock, I get a "segmentation fault" error. How can I fix it?

The default size for something called the "stack" on Linux and Mac OS X is too small for AutoDock to run. You need to tell the system to remove this limit, and this depends on which shell you are using. You can find out what shell you are running by typing:

  echo $SHELL

in a terminal.

If you are using "csh" or "tcsh", you should put this command:

  limit stacksize unlimited

in your "~/.cshrc" or "~/.tschrc", whichever one you have.

If you are using "sh" or "bash" (the default shell on many Linuxes and now on the latest version of Mac OS X, 10.3, aka Panther), then put this command:

  ulimit -s unlimited

in your "~/.bashrc" or "~/.bash_profile". (Note: Some people running Mandrake 9.1 have reported ulimit -s 131072 works better than ulimit -s unlimited .)

Either way, remember you will need to source your ".cshrc" or ".bash_profile" before this will take effect. Type source .cshrc or source .bash_profile at the prompt in the terminal. Now try running AutoDock again, everything should work properly now. (For the curious, you can type limit (csh & tcsh) or ulimit -a (sh & bash) and you will see what the value of the stack size is.)

This FAQ applies to: AutoDock 3

What are the commands to start AutoGrid 3 and AutoDock 3?

I have downloaded AutoDock 3. How do I start AutoGrid 3 and AutoDock 3 from the command line?

Before You Start AutoDock 3

You need AutoGrid 3 grid maps that have been computed for the receptor you want to dock to.

AutoGrid 3

To run AutoGrid 3, you need:

  • a grid parameter file, or GPF; let's say it is called my_receptor.gpf
  • a receptor file in PDBQS format--the receptor can be a protein, DNA, RNA or other macromolecule.

Once you have these files, you can type the following at the command line:

     autogrid3 -p my_receptor.gpf -l my_receptor.glg &

AutoGrid 3 uses the following flags:

  • -p specifies the name of the GPF (grid parameter file) that will be read in by AutoGrid 3
  • -l specifies the name of the GLG (grid log file) that will be created by AutoGrid 3

AutoDock 3

Before you can start AutoDock 3, you need:

  • a docking parameter file, or DPF; let's say it is called my_docking.dpf
  • a ligand saved as a PDBQ file
  • a set of grid maps calculated by AutoGrid 3; this includes:
    • the map files (extension ".map")
    • the grid size file (extension ".xyz")
    • the grid field file (extension ".fld")

Once you have these files, you can type the following at the command line:

     autodock3 -p my_docking.dpf -l my_docking.dlg &

Take a look at the AutoDock 3 User's Guide for more details.

This FAQ applies to: AutoDock 3

What are the commands to start AutoGrid 4 and AutoDock 4?

I have downloaded AutoDock 4. How do I start AutoGrid 4 and AutoDock 4 from the command line?

Before You Start AutoDock 4

You need AutoGrid 4 grid maps that have been computed for the receptor you want to dock to.

AutoGrid 4

To run AutoGrid 4, you need:

  • a grid parameter file, or GPF; let's say it is called my_receptor.gpf
  • a receptor file in PDBQT format--the receptor can be a protein, DNA, RNA or other macromolecule.

Once you have these files, type the following at the command line:

     autogrid4 -p my_receptor.gpf -l my_receptor.glg &

AutoGrid 4 uses the following flags:

  • -p specifies the name of the GPF (grid parameter file) that will be read in by AutoGrid 4
  • -l specifies the name of the GLG (grid log file) that will be created by AutoGrid 4

AutoDock 4

Before you can start AutoDock 4, you need:

  • a docking parameter file, or DPF; let's say it is called my_docking.dpf
  • a ligand saved as a PDBQT file
  • optionally, a flexible residues file saved in PDBQT format, holding the atoms in the receptor that will be treated as moving
  • a set of grid maps calculated by AutoGrid 4; this includes:
    • the map files (extension ".map")
    • the grid size file (extension ".xyz")
    • the grid field file (extension ".fld")

Once you have these files, you can type the following at the command line:

     autodock4 -p my_docking.dpf -l my_docking.dlg &

This FAQ applies to: AutoDock 4

Which values of the genetic algorithm parameters do you normally use?

When running a docking using the GA (genetic algorithm) or LGA (Lamarckian GA), there are a number of parameters to set. Which values do you normally use?

Here is part of a typical DPF (docking parameter file) for AutoDock:
ga_pop_size 150                      # number of individuals in population
ga_num_evals 25000000 # maximum number of energy evaluations
ga_num_generations 27000 # maximum number of generations
ga_elitism 1 # number of top individuals to survive to next generation
ga_mutation_rate 0.02 # rate of gene mutation
ga_crossover_rate 0.8 # rate of crossover
ga_window_size 10 #
ga_cauchy_alpha 0.0 # Alpha parameter of Cauchy distribution
ga_cauchy_beta 1.0 # Beta parameter Cauchy distribution
set_ga # set the above parameters for GA or LGA
sw_max_its 300 # iterations of Solis & Wets local search
sw_max_succ 4 # consecutive successes before changing rho
sw_max_fail 4 # consecutive failures before changing rho
sw_rho 1.0 # size of local search space to sample
sw_lb_rho 0.01 # lower bound on rho
ls_search_freq 0.06 # probability of performing local search on individual
set_sw1 # set the above Solis & Wets parameters
The parameters that begin with 'ga_' control the genetic algorithm, while the parameters that begin with 'sw_' control the Solis and Wets local search method.  This block of parameters, along with the "set_ga" and "set_sw1" commands, tells AutoDock to run a hybrid global-local search, i.e. Lamarckian GA.

Which parameters are the most important?


The  parameters that control how long the GA and LGA runs are 'ga_num_evals' and 'ga_num_generations'.  AutoDock stops a docking if either the maximum number of evaluations or the maximum number of generations is reached, whichever comes first.  In this case, the docking would terminate based on reaching the maximum number of energy evaluations, namely 25 million evals, since there are fewer than 27000 generations in these runs.  An energy evaluation is performed every time the GA or the local search computes the fitness of a candidate docking.  If there is a population of 150, as specified by the 'ga_pop_size' parameter, then every generation, there will be 150 energy evaluations to compute the fitness of all the members of the population; if there is any local search, then the proportion of the population set by the 'ls_search_freq' parameter will undergo local searches.  Here, the local search frequency is set to 0.06, so 6% of 150 individuals, or 9 individuals, will undergo local search.  In this example the number of local search iterations is set to 300, using the 'sw_max_its' parameter, so each of these 9 local searches could consume up to 300 energy evaluations each.  Note that the Solis and Wets local search method changes the step size during the search, and it will terminate if the current step size becomes smaller than 'sw_lb_rho', which here is set to 0.01; it will also terminate if the maximum number of iterations, 'sw_max_its', is exceeded, whichever condition is reached first.

The number of energy evaluations needed for a docking will depend on the number of torsions in the ligand (and receptor, if it is flexible).  For rigid ligands and rigid receptors, here are some general guidelines:

Number of Torsions ga_num_evals ga_num_generations
0 25 000  to  250 000 27 000
1-10 250 000  to  25 000 000 27 000
>10 >25 000 000 27 000

There are some AutoDock users who prefer to set 'ga_num_evals' to a very large number and then set the 'ga_num_generations' parameter to a number in the range of 500 to 1000.  There are no hard-and-fast rules here, and it is well worth trying a few variations of parameters on your own docking problem before settling on your best values.

It is worth noting that Hetenyi et al. showed that for the same docking, keeping everything else constant, increasing  'ga_pop_size' from 50 to 300 in steps of 50, that they got the most robust docking results with a population size of 300.  You may want to increase the default from 150 to 300, and see if you get better docking results.

How many dockings should I run?


The more dockings you do, the better your statistics and clustering are likely to be.  We recommend you run at least 50 dockings, specified by the  'ga_run' parameter. Make sure that each AutoDock process starts with different random number generator (RNG) seeds.  If you use the default 'seed pid time', the RNG will be seeded with the current AutoDock process ID and the number of seconds since 0 hours, 0 minutes, 0 seconds, January 1, 1970, Coordinated Universal Time, without including leap seconds.

References

Hetenyi, C. and van der Spoel, D. (2002) Efficient docking of peptides to proteins without prior knowledge of the binding site. Protein Science, 11(7): 1729-1737.

This FAQ applies to: AutoDock 3, AutoDock 4

How do I do a local energy minimisation?

If I specify "do_local_only" in the DPF, what exactly is being energy-minimised?

Whatever you have specified as flexible will be energy minimised: at least the ligand, and if you have any, the flexible sidechains you have specified with the "flexres" keyword in the DPF. The energy minimisation will be performed in the context of the grid maps you have calculated for the receptor. So you could use this command to optimise the position, orientation and conformation of a ligand in an active site, to remove any bad contacts that may be present in an x-ray crystal structure.

The ligand's position, orientation and torsion angles (if flexible) will be optimised, in addition to any flexible sidechains' torsion angles if specified.

The starting point of the ligand can be controlled by the "tran0", "quaternion0" and "dihe0" keywords in the AutoDock 4 DPF. (Note that in AutoDock 3, the orientation is specified using the "quat0" keyword.)

  • To keep the ligand's input position the same as in the ligand PDBQT, use the same "tran0" x,y,z values as those specified in the "about" line of the DPF.
  • To keep the ligand's input orientation, use "quaternion0 1. 0. 0. 0.".
  • To keep the input conformation, use "dihe0" with a "0." value for every torsion in the ligand.

    This FAQ applies to: AutoDock 3, AutoDock 4

    by morris last modified 2007-07-19 17:31
    Contributors: Ruth Huey, Garrett M. Morris, Sargid Dallakyan, Stefano Forli

    Powered by Plone CMS, the Open Source Content Management System

    This site conforms to the following standards: