2 replies [Last post]
Susume's picture
User offline. Last seen 6 hours 8 min ago. Offline
Joined: 10/02/2011

In foldit we have a BUNS filter in design puzzles, because it has not been possible to include the BUNS penalty directly in the score function. The foldit score function, like the Rosetta score function, only includes attributes of single amino acids (such as backbone angles) or pairs of amino acids (such as clashing). Anything that requires looking at more than two amino acids at a time (such as whether a polar atom is satisfied or not) has to be added as a separate bonus or penalty. Now a scientist at Baker lab has developed a way to calculate the BUNS penalty for each pair of amino acids. Hopefully this will be incorporated into foldit at some point! Then wiggle and similar tools can weigh the BUNS penalty against all the other score parts when optimizing, instead of having it as a separate (and slower) filter penalty.

Author summary from B. Coventry:
We present an algorithm that fits into existing protein design software that allows researchers to penalize unsatisfied polar atoms in protein structures during design. These polar atoms usually make hydrogen-bonds to other polar atoms or water molecules and the absence of such interactions leaves them unsatisfied energetically. Penalizing this condition is tricky because protein design software only looks at pairs of amino acids when considering which amino acids to choose. Current approaches to solve this problem use additive approaches where satisfaction or unsatisfaction is approximated on a continuous scale; however, in reality, satisfaction or unsatisfaction is an all-or-none condition. The simplest all-or-none method is to penalize polar atoms for simply existing and then to give a bonus any time they are satisfied. This fails when two different amino acids satisfy the same atom; the pairwise nature of the protein design software will double count the satisfaction bonus. Here we show that by anticipating the situation where two amino acids satisfy the same polar atom, we can apply a penalty to the two amino acids in advance and assume the polar atom will be there. This scheme correctly penalizes unsatisfied polar atoms and does not fall victim to overcounting.

Link to paper:

bkoep's picture
User offline. Last seen 20 hours 15 min ago. Offline
Joined: 11/15/2012
Groups: Foldit Staff
Difficult for Foldit

Yes, in order for the Shake and Mutate algorithms to work efficiently, base score terms need to be "pairwise decomposable." For example, if we consider three residues A, B, and C: mutating residue A may affect A-B interactions and A-C interactions; but mutating residue A may not affect B-C interactions, otherwise the algorithm becomes too intensive to calculate quickly. Of course, real-world physics does not always work this way, so this approximation trades off accuracy for speed.

The typical, "naive" BUNS calculation violates this rule, which means that we can't include BUNS scores in the Shake and Mutate algorithms (this is why we have to include BUNS as an Objective, which is supplemental to the Foldit base score). This new paper describes a way to get around the issue so that BUNS scores can be optimized with the Shake and Mutate algorithm.

However, there is a different problem that will make this difficult to use in Foldit. The Wiggle algorithm has a different requirement to work efficiently: all of the base score terms need to be differentiable (with respect to bond torsions). And this new BUNS calculation is still not differentiable. This is not such a big problem for scientists at the IPD, for example, because they can simply use different score functions for Mutating and Wiggling. But a Foldit puzzle needs to use the same score function the whole time, whether you are Shaking, Mutating, or Wiggling. We may still be able to find a way to use this new BUNS calculation in Foldit, but unfortunately it will not be as simple as plugging it into the base score to replace the Foldit BUNS Objective.

Susume's picture
User offline. Last seen 6 hours 8 min ago. Offline
Joined: 10/02/2011
Thanks for clarifying

Interesting! I didn't realize the pairwise requirement and the differentiable requirement were separate and affected different tools. Learn something new every day!


Developed by: UW Center for Game Science, UW Institute for Protein Design, Northeastern University, Vanderbilt University Meiler Lab, UC Davis
Supported by: DARPA, NSF, NIH, HHMI, Amazon, Microsoft, Adobe, Boehringer Ingelheim, RosettaCommons