AutoDock-SS is a novel algorithm designed for ligand-based virtual screening. It leverages advanced computational techniques to efficiently screen large compound libraries against a reference ligand, facilitating the discovery of potential drug candidates. https://doi.org/10.1021/acs.jcim.4c00136
- Efficient screening of large compound libraries
- Utilization of
.pdbqt
format for reference ligands - Support for
.sdf.gz
compressed SDF file format for compound libraries - Integration with AutoDock-GPU for enhanced performance
- For AutoDock-GPU compilation, please refer to https://github.com/ccsb-scripps/AutoDock-GPU
- Clone the AutoDock-SS repository:
git clone https://github.com/NiBoyang/AutoDock-SS.git
- Create a conda environment using the provided
env.yaml
file:
conda env create -f env.yaml
- Activate the environment:
conda activate adss
- Prepare your reference ligand in
.pdbqt
format and your compound library in a compressed.sdf.gz
file. - Modify the common variables in
adss_main.py
to match your file paths and settings:
autodock_gpu_exec_path = "" # directory of Autodock-GPU exec file
lib_path = f'' # directory of your VS library
lig_path = f'' # directory of your reference ligand
path_of_scripts = "" # directory of Autodock-SS scripts
- Run AutoDock-SS:
python adss_main.py
adss_main.py
: Main script to run the virtual screening process.env.yaml
: Conda environment file with necessary dependencies.ligandprep.py
: Script for ligand preparation. Called in the main file.roc_auc.py
: Script for evaluating the performance of the screening. Called in the main file.- Utility scripts:
geometry_utils.py
,grid_map_utils.py
,file_utils.py
for various computational tasks. DA.ipynb
: A Jupyter notebook for data analysis.cal_score.py
: Script for normalizing the scores if they were not correctly calculated by AutoDock-SS. You need to name your reference ligand(s) end with the suffix '_lig'. For example, if a reference ligand is named 'abc', then rename it as 'abc_lig' and put it in your whole library. After running the main file, this file could be used to re-calculate the normalized scores if needed.
The Result_Examples
directory contains example outputs from the AutoDock-SS algorithm, showcasing its capabilities.
The grid_map_utils.py
is the most essential file. You can generate ligand-based grid maps by refering to this file, and feed the map files to AutoDock.
AutoDock-SS is released under MIT License.
Special thanks to all contributors and the open-source community for their support and contributions to this project.