Andre-lab / evodock

A Memetic Algorithm boosts accuracy and speed of all-atom protein-protein docking
24 stars 8 forks source link

How to do local docking #1

Open SenyorDrew opened 3 years ago

SenyorDrew commented 3 years ago

Thanks for putting together such a good resource. I was wondering how I can do local docking only as described in the paper - is there an option that allows this? Also, if it's possible, do you have a suggestion for population sizes and number of generations for local docking?

Thanks!

danielvarela commented 3 years ago

The previous version of the code had not any option to run local docking. It was implemented, but a variable at the code should be changed in order to run it. I have updated the code to be able to switch the docking protocol by just changing an option at the configuration file.

Now, the configuration file contains an additional section "[Docking]" with a "type" option that accepts "Global" or "Local" depending on the docking protocol that you want to run. An example can be seen at the README.md file.

It should be mention that, at our article, we presented the results for local docking with a constraint that forces the algorithm to create an initial population with individuals which RMSD against the native conformation is higher than 2 angstrom. That would show the capacity of the EvoDOCK to recover the native state. However, that restraint would not necessary at a real case. Currently, that constraint is a variable (LOW_LIMIT_INIT_DIVERSITY) in src/single_process.py and it is set to 0. Feel free to change it if you want to increase the diversity of the initial population. In the following weeks I may implement this variable as a option in the configuration file.

We recommend a population size (popsize) of 100 and number of generations (maxiter) of 100. However, we recommend to run it several times with the same configuration in order to proper explore the energy landscape. With global docking, we perform 1000 runs, while 50 runs of local docking should be enough. I could provide you more information about parameter tuning in case that it is necessary.

Thank you very much for your interest in our work and I hope that this message could help you.