🚀 PJNAME : AI-powered protein receptor mutation
A computational tool designed to generate protein receptor mutants that allows enhanced binding specificity towards a target ligand, based on PocketGen. While generating a set of mutated receptor structures, PJNAME evaluates their affinity with the ligand using AutoDock Vina. The key point is that the docking simulation is embedded as a scoring function, making it the target of the gradient descent.
Outputs and expected results
If executed correctly, PJNAME will generate a set of unique mutated receptor proteins in PDB format, designed to maximize the binding affinity for the ligand ; and a summary file containing, for each receptor :
- The corresponding docking score, affinity constant and rank compared to other mutants.
- Additional information about the receptor-ligand interaction (e.g. ligand position, residues involved).
- The sequence of mutations that leads to its creation, starting from the original receptor.
Getting started with PJNAME
git clone __PJURL__
cdn __PJNAME__
Install the environment and dependencies using [conda]'s config file
conda env create -f env.yaml
conda activate __PJNAME__
If you intend to build environment without conda, keep in mind that installing AutoDock Vina from pip
or any other package manager is deprecated. Besides, to run the project from Windows, this question on stackoverflow might be helpful.
├── pocketgen # can be cloned from PocketGen repository
├── checkpoints
│ └── checkpoint.pt # needs to be downloaded manually
│
├── eval
├── model
└── __PJNAME__.py
This (above) is what should ressemble your working directory after installing PJNAME.
Usage from command line
python __PJNAME__.py --receptor <receptor.pdb> --ligand <ligand.pdbqt> --output <output_directory>
-
<receptor.pdb>
: Path to the input protein receptor file in PDB format. -
<ligand.pdbqt>
: Path to the input ligand file in SDF format. -
<output_directory>
: Directory where the output mutant structures and scores will be saved.