V2 structure.LocalWiggleSelected is performing much worse than the V1 do_local_wiggle

Case number:954892-991103
Topic:Developer Preview
Opened by:pauldunn
Status:Closed
Type:Bug
Opened on:Wednesday, November 16, 2011 - 17:01
Last modified:Wednesday, February 29, 2012 - 18:07

I've been converting recipes from V1 to V2 and I've noticed that some recipes in V2 get much fewer points than the V1 routines. I think I've tracked it down to the local wiggle functions. Below is the code that I used to verify my assumptions and below them are the results from running on the Beta Alignment puzzle. The recipes that I most frequently use that are affected by these differences are any LWS recipe, Rav3n_pl WalkeR, and gary Minima Finder.

Note: Wiggle Accuracy=3.0 and Shake Accuracy=0.0 (changing values had no significant effect on results)
Note to self: Beta Alignment starting point is stored offline in "local wiggle test"
============== V1 ==============
function local_wiggle(n)
for seg1=1,get_segment_count()-n+1 do
deselect_all()
select_index_range(seg1,seg1+n-1)
reset_recent_best()
do_local_wiggle(2)
restore_recent_best()
end
end

print("Initial score: "..get_ranked_score(true))
quicksave(10)
for n=1,4 do
quickload(10)
s1=get_ranked_score(true)
local_wiggle(n)
s2=get_ranked_score(true)
gain=s2-s1
print("n="..n.." gain="..gain.." score: "..get_ranked_score(true))
end

================== V2 ================
function local_wiggle(n)
for seg1=1,structure.GetCount()-n+1 do
selection.DeselectAll()
selection.SelectRange(seg1,seg1+n-1)
recentbest.Save()
structure.LocalWiggleSelected(2,true,true)
recentbest.Restore()
end
end

print("Initial score: "..current.GetScore())
save.Quicksave(10)
for n=1,4 do
save.Quickload(10)
s1=current.GetScore()
local_wiggle(n)
s2=current.GetScore()
gain=s2-s1
print("n="..n.." gain="..gain.." score: "..current.GetScore())
end

=============== V1 results ================
Initial score: 7921.1537834966
n=1 gain=3.4011489988616 score: 7924.5549324954
n=2 gain=2.252244367568 score: 7923.4060278641
n=3 gain=2.0136324896539 score: 7923.1674159862
n=4 gain=5.7310169409457 score: 7926.8848004375

=============== V2 results =================
Initial score: 7921.1537834966
n=1 gain=0.61414385132775 score: 7921.7679273479
n=2 gain=0.64667083213135 score: 7921.8004543287
n=3 gain=0.77468861922807 score: 7921.9284721158
n=4 gain=0.95666618927771 score: 7922.1104496858

(Wed, 11/16/2011 - 17:01  |  4 comments)


Joined: 09/22/2011
Groups: None

I have recently noticed a considerable improvement to the standard wiggle tools (Wiggle All, Wiggle Backbone, Wiggle Sidechains), but wondered if the devs had also optimized the LWS routine. Perhaps they missed this...

beta_helix's picture
User offline. Last seen 2 days 23 hours ago. Offline
Joined: 05/09/2008
Groups: None

assigning...

pauldunn's picture
User offline. Last seen 4 days 21 hours ago. Offline
Joined: 09/20/2010
Groups: Go Science

fixed in latest code. Thanks

pauldunn's picture
User offline. Last seen 4 days 21 hours ago. Offline
Joined: 09/20/2010
Groups: Go Science
Status: Open » Closed

Sorry, I forgot to close it last time.

Sitemap

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, RosettaCommons