Skip to content

fulopjoz/polaris-antiviral-submission

Repository files navigation

Polaris Antiviral Competition Submission

This repository contains code and data for the ASAP Discovery x OpenADMET Antiviral Ligand Poses Challenge submission, focusing on computational docking of potential antiviral compounds against MERS-CoV and SARS-CoV-2 Mpro targets.

Setup and Usage

  1. Clone this repository:
git clone https://github.com/fulopjoz/polaris-antiviral-submission.git
cd polaris-antiviral-submission
  1. Make the setup script executable and run it:
chmod +x setup.sh
./setup.sh
  1. Run the docking pipeline:
conda activate ezdock
python easydock_pipeline_sub.py

The pipeline will create all necessary directories and output files automatically.

Important Notes:

  • If you want to rerun the docking process, you must first delete the existing .db files in the output_cmd directory, otherwise EasyDock will use the cached results
  • With the current configuration (exhaustiveness=320), the docking process takes approximately 3 hours using 30 CPU cores

Approach Overview

I developed a docking and pose prediction pipeline using EasyDock with a substructure-based alignment approach. The pipeline performs the following steps:

  1. Docking: Uses EasyDock with Vina to generate initial poses for both MERS-CoV Mpro and SARS-CoV-2 Mpro targets
  2. Pose Extraction: Extracts 3D poses from the resulting SQLite databases
  3. Substructure Alignment: Computes RMSD based on isoquinoline substructure matching against reference ligands
  4. Filtering and Reranking: Filters and reranks poses based on RMSD values with a tolerance of 0.5Å
  5. Final Pose Selection: Creates the final pose predictions by matching SMILES from the test set

Key Components

  • Substructure Matching: Uses isoquinoline substructure pattern for alignment
  • RMSD Calculation: Implements a quick RMSD calculation based on matched substructure atoms
  • Pose Filtering: Selects poses with RMSD < 2.0Å when possible
  • Fallback Mechanism: Includes fallback options when no poses meet the RMSD threshold

Requirements

  • RDKit 2024.09.6
  • EasyDock 0.4.dev0
  • NumPy 1.26.4
  • Pandas 2.2.2

Usage

The main pipeline script is easydock_pipeline_sub.py, which can be run to reproduce the entire workflow.

Directory Structure

  • data/: Contains input SMILES and configuration files
  • poses/: Contains output pose files at various stages of processing
  • output_cmd/: Contains docking results databases
  • ligand_poses_reference_structures/: Contains reference ligand structures for alignment

Citations and Acknowledgments

This work utilizes the following tools and methods:

EasyDock

AutoDock Vina

  • Citation: Trott O, Olson AJ. AutoDock Vina: improving the speed and accuracy of docking with a new scoring function, efficient optimization, and multithreading. J Comput Chem. 2010 Jan 30;31(2):455-61. doi: 10.1002/jcc.21334. PMID: 19499576; PMCID: PMC3041641.

Author

Jozef Fulop

License

This project is licensed under the MIT License - see the LICENSE file for details.

This project uses EasyDock which is licensed under the BSD 3-clause license. See the EasyDock repository for details.

About

Polaris Antiviral Competition Submission

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published