CPU Algorithms

PandaDock provides 5 CPU-based docking algorithms optimized for different use cases.

Enhanced Hierarchical CPU

Algorithm ID: enhanced_hierarchical_cpu

Recommended default algorithm for high-accuracy general docking.

Description: 3-stage hierarchical search with progressive refinement from coarse to fine sampling.

Stages:

  1. Global Search: Coarse exploration (2-5 Å steps, 30-60° rotations)

  2. Local Refinement: Medium resolution (0.5-1 Å steps, 10-20° rotations)

  3. Fine Optimization: High precision (0.1-0.3 Å steps, 2-5° rotations) with simulated annealing

Performance:

  • Mean RMSD: ~0.08 Å

  • Runtime: 150-250 seconds

  • Success rate: 95-98% (RMSD < 2Å)

Usage:

pandadock dock -r protein.pdb -l ligand.sdf \
               --algorithm enhanced_hierarchical_cpu \
               --center 10 20 30 --box 20 20 20

Monte Carlo CPU

Algorithm ID: monte_carlo_cpu

Best for: Fast screening and initial exploration

Description: Monte Carlo sampling with Metropolis criterion and simulated annealing for efficient conformational space exploration.

Algorithm:

  1. Generate random initial pose

  2. Apply random perturbation

  3. Evaluate energy

  4. Accept/reject based on Metropolis criterion

  5. Gradually decrease temperature

Performance:

  • Mean RMSD: ~0.5-1.5 Å

  • Runtime: 30-60 seconds (fastest)

  • Success rate: 85-90% (RMSD < 2Å)

Usage:

pandadock dock -r protein.pdb -l ligand.sdf \
               --algorithm monte_carlo_cpu \
               --center 10 20 30 --box 20 20 20

Genetic Algorithm CPU

Algorithm ID: genetic_algorithm_cpu

Best for: Complex binding sites and flexible ligands

Description: Evolutionary algorithm that evolves a population of ligand poses through selection, crossover, and mutation.

Steps:

  1. Initialize random population

  2. Evaluate fitness

  3. Tournament selection

  4. Crossover (blend poses)

  5. Mutation (random perturbations)

  6. Elitism (preserve top 10%)

Performance:

  • Mean RMSD: ~0.3-0.8 Å

  • Runtime: 120-200 seconds

  • Success rate: 90-95% (RMSD < 2Å)

Usage:

pandadock dock -r protein.pdb -l ligand.sdf \
               --algorithm genetic_algorithm_cpu \
               --center 10 20 30 --box 20 20 20

Hierarchical CPU

Algorithm ID: hierarchical_cpu

Best for: Balanced accuracy and speed

Description: Standard 2-stage hierarchical search with grid-based exploration and local optimization.

Performance:

  • Mean RMSD: ~0.5-1.0 Å

  • Runtime: 60-100 seconds

  • Success rate: 88-92% (RMSD < 2Å)

Usage:

pandadock dock -r protein.pdb -l ligand.sdf \
               --algorithm hierarchical_cpu \
               --center 10 20 30 --box 20 20 20

Crystal Guided CPU

Algorithm ID: crystal_guided_cpu

Best for: Validation studies and reproducing crystal structures

Description: Uses crystallographic information to guide docking towards known binding modes.

Performance:

  • Mean RMSD: ~0.05-0.2 Å (with reference)

  • Runtime: 100-150 seconds

  • Success rate: 98-100% (with crystal structure)

Usage:

pandadock dock -r protein.pdb -l ligand.sdf \
               --algorithm crystal_guided_cpu \
               --reference-ligand crystal_ligand.pdb \
               --center 10 20 30 --box 20 20 20

Algorithm Selection Guide

By Use Case

  • General docking: enhanced_hierarchical_cpu

  • Fast screening: monte_carlo_cpu

  • Complex sites: genetic_algorithm_cpu

  • Validation: crystal_guided_cpu

By Ligand Flexibility

  • Rigid (0-3 rotatable bonds): hierarchical_cpu

  • Flexible (4-8 bonds): enhanced_hierarchical_cpu

  • Highly flexible (>8 bonds): genetic_algorithm_cpu

Performance Comparison

Accuracy (Mean RMSD):

  1. enhanced_hierarchical_cpu: 0.08 Å ⭐

  2. crystal_guided_cpu: 0.10 Å

  3. genetic_algorithm_cpu: 0.45 Å

  4. hierarchical_cpu: 0.72 Å

  5. monte_carlo_cpu: 1.10 Å

Speed (Runtime):

  1. monte_carlo_cpu: 30-60s ⭐

  2. hierarchical_cpu: 60-100s

  3. genetic_algorithm_cpu: 120-200s

  4. enhanced_hierarchical_cpu: 150-250s

  5. crystal_guided_cpu: 100-150s

Parallel Processing

All CPU algorithms support parallel processing:

# Use 8 CPU cores
pandadock dock -r protein.pdb -l ligand.sdf \
               --algorithm enhanced_hierarchical_cpu \
               --cpuworkers 8 \
               --center 10 20 30 --box 20 20 20

Fast Mode

For quick testing:

pandadock dock -r protein.pdb -l ligand.sdf \
               --algorithm enhanced_hierarchical_cpu \
               --fast \
               --center 10 20 30 --box 20 20 20

See Also