Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Regarding sampling algorithms in covalent docking #170

Open
Hong-Rui opened this issue Dec 30, 2021 · 5 comments
Open

Regarding sampling algorithms in covalent docking #170

Hong-Rui opened this issue Dec 30, 2021 · 5 comments

Comments

@Hong-Rui
Copy link

Hi developers,
Recently I've tested covalent docking using AutoDock-FR in our internal pipeline, and I found few questions regarding usages and conformational search algorithms between different engines in AutoDock series, such as AutoDock-FR, AD-GPU, and Vina:

  1. In the ADFR paper published in 2015, the author said that for covalent and flex residue docking, the ADFR outperforms Vina in the docking success rates, due to its traditional GA approach. But in other reports, Vinda seems to performs better in general free dockings due to its MC+BFGS local search, while AD4 and ADFR use Solis-Wets. So I'm wondering that, in covalent or flex res docking, does ADFR performs better than Vina due to the LGA sampling method or there's some internal tricks that ADFR did in the source code that manipulate the flex res rotamer states so that you get better conformation samplings?

  2. Does ADFR's LGA different from AD4's (or AD4-GPU's) LGA method? When I read through the source codes of ADFR, I found the operations is so different compare to AD4. The genes load an external translation points to move ligands in unbound docking, while AD-GPU does not do this.

  3. From your understanding, what is the currently best or better docking engines for doing covalent docking or flex res docking? The old ADFR, Vina, or AD-GPU?

  4. For AD-GPU, to do the covalent docking, I need to treat the bound ligand as a flex receptor side chain, so I need to use the --flexres option, but it seems that this option are not supported as inputs in the filelist, currently the filelist only support maps, ligand pdbqt filenames, and output filenames. In addition, for doing covalent docking, it seems that I need to input an empty ligand file in the filelist and specify the -F option to point to the flex res simultaneously?

Thank you for answer these questions!

Regards,

@Hong-Rui
Copy link
Author

Hong-Rui commented Jan 7, 2022

Hi @diogomart @atillack
Any comments or suggestions on these questions?

Thank you so much!

@diogomart
Copy link
Member

Hi @Hong-Rui,

  1. I don't know.

  2. Yes the LGA is different.

  3. It's hard to tell because we haven't compared these programs explicitly for the case of flexible sidechains. AD-GPU uses a convergence criterion to stop the search, and we noticed that adding flexible residues (in addition to a ligand) makes it run significantly longer. This may suggest that there's room for improvement in sidechain sampling. However, I don't really know how Vina and ADFR behave in comparison, so maybe this observation holds for those programs too.

  4. Yes, AD-GPU was not developed with covalent docking in mind, but I think the trick you suggest, to pass an empty ligand, works fine.

Best regards,

@atillack
Copy link
Collaborator

atillack commented Jan 7, 2022

@Hong-Rui @diogomart I would currently recommend not adding an empty ligand as a work-around to get covalent docking to work. The reason is that the search minimizer in this case will still try to optimize root atom translation/rotation which might throw it off and lead to weird behavior/results.

This shouldn't be hard to overcome though and I will work on adding this feature in the future.

@Hong-Rui
Copy link
Author

Okay, really thanks for your answering!
and I would maybe have a try and benchmark test between AD-GPU, vina, and ADFR when the covalent docking is working in AD-GPU.

Thanks a lot!

@Yongrui-Wang
Copy link

Hello!
@Hong-Rui
How to use autodock GPU for covalent docking?
Thank you!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants