Best Protein Structure Minimization Algorithm
3
5
Entering edit mode
12.8 years ago
Pappu ★ 2.1k

While looking at literature, I found several techniques for protein structure minimization starting from steepest descent, L-BGFS, conjugate gradient, monte carlo replica exchange, simulated annealing, genetic algorithms etc. But I did not understand properly which technique is good for which purpose i.e. what is the advantage of simulated annealing vs. steepest descent followed by L-BGFS etc?

protein modeling • 5.3k views
ADD COMMENT
3
Entering edit mode
12.8 years ago
DG 7.3k

Usually you'll find that molecular dynamics programs use some combination of these. Steepest descent and conjugate gradient basically traverse "down" the sides of energy well, but they aren't very good as traversing rugged landscapes and can easily get caught in local minima. Simulated annealing and monte carlo gibbs sampling allow, with some probability generally associated with a "temperature" for bigger jumps across an energy landscape, allowing for more even sampling. Both of these give you opportunities to sample less energetically favourable conformations than you currently are in, especially if subsequent moves produce lower energetic minima.

A common approach would be to do simulated annealing coupled with steepest decent or conjugate gradient in tandem.

ADD COMMENT
1
Entering edit mode
12.7 years ago

I have found that L-BFGS followed by steepest descent consistently works very well. As mentioned earlier, steepest descent on its own will often get stuck in local minima. However, I have found that L-BFGS on its own will converge too quickly. So the combination of the two has been very successful for me.

I have also tried simulated annealing followed by steepest descent and this seems to work very well too.

ADD COMMENT
1
Entering edit mode
12.7 years ago
Flow ★ 1.6k

In such context, stochastic tunneling or evolutionary algorithms work much better

ADD COMMENT
0
Entering edit mode

@flow could you suggest a few good open source implementations of these algorithms?

ADD REPLY
0
Entering edit mode

there are not, I am afraid; I implemented by myself

ADD REPLY
0
Entering edit mode

@flow Would you be willing to walk me through pseudocode for an evolutionary algorithm approach?

ADD REPLY

Login before adding your answer.

Traffic: 1771 users visited in the last hour
Help About
FAQ
Access RSS
API
Stats

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6