You are here

Another request for help with restarts

3 posts / 0 new
Last post
Another request for help with restarts
#1

I have read the other forum messages related to retarting a rossettaDock run.

The advice seems to be that one can simply reissue the original command leaving all input flags and everything the same and the program will detect the no. of structures already present and just pick up from there. This does not happen for me. Rather, when I reissue the original start command, although it appends to the bottom of the output file, the first new line in the output file has all the same score data as original first line. I have included below an attempt to reproduce this by way of example, in which I deliberately killed the job after 5 structures were generated for a run with nstruc=10. When I just resubmit the command it is clear that score 6-10 are just repeats of score 1-5 except for the pdb label--however, pdbs for 6-10 are also same as pdbs for 1-5.

SEQUENCE:
SCORE: total_score rms cen_rms interchain_contact interchain_env interchain_pair interchain_vdw st_rmsd description
SCORE: -70.789 143.176 143.176 5.000 -76.404 0.269 0.346 146.450 prepack__asa2_1swb_0001_0001
SCORE: -75.522 225.831 225.831 2.000 -76.404 -1.582 0.464 231.155 prepack__asa2_1swb_0001_0002
SCORE: -79.060 183.843 183.843 -3.000 -75.925 -1.033 0.897 189.741 prepack__asa2_1swb_0001_0003
SCORE: -69.708 164.115 164.115 6.000 -76.117 0.404 0.005 163.760 prepack__asa2_1swb_0001_0004
SCORE: -62.492 99.959 99.959 14.000 -76.009 -0.490 0.007 101.060 prepack__asa2_1swb_0001_0005
SCORE: -70.789 143.176 143.176 5.000 -76.404 0.269 0.346 146.450 prepack__asa2_1swb_0001_0006
SCORE: -75.522 225.831 225.831 2.000 -76.404 -1.582 0.464 231.155 prepack__asa2_1swb_0001_0007
SCORE: -79.060 183.843 183.843 -3.000 -75.925 -1.033 0.897 189.741 prepack__asa2_1swb_0001_0008
SCORE: -69.708 164.115 164.115 6.000 -76.117 0.404 0.005 163.760 prepack__asa2_1swb_0001_0009
SCORE: -62.492 99.959 99.959 14.000 -76.009 -0.490 0.007 101.060 prepack__asa2_1swb_0001_0010

the command line is:

/home/james/ROSETTA_3.4/rosetta_bin_linux_2015.19.57819_bundle/main/source/bin/docking_protocol.default.linuxgccrelease @flags -database /home/james/ROSETTA_3.4/rosetta_bin_linux_2015.19.57819_bundle/main/database -run:constant_seed -nodelay 2>&1 \
> log

flags file:
-s prepack__asa2_1swb_0001.pdb
-ex1
-ex2aro
-native asa2_1swb.pdb
-docking:partners LHMK_S
-nstruct 10
-docking:low_res_protocol_only
-randomize1
-mute core.util.prof ## dont show timing info
-out:file:scorefile asa2_1swb.fasc
-mute core.io.database
-use_input_sc
-unboundrot asa2_1swb.pdb
-ignore_zero_occupancy false

Any assistance is appreciated

J Snyder

Category: 
Post Situation: 
Tue, 2015-08-18 12:14
jasnyderjr

TL;DR: use -constant_seed and -jran ##### (where # is a number) to pick a random number seed and fix this.

What you have done here is guarunteed to produce identical models - you've used -constant_seed. That sets the RNG seed to something like 1111111 and will recalculate the same trajectories every time. I'm not going into how computational pseudorandom number generators work here, but it's a known problem in computation.

-jran will set the RNG seed to whatever value you want. If that value is different from run to run, you get different results. If you're trying to "resume" a run literally from where it left off: you can't. The RNG state is never saved and is irrecoverable. If you're trying to "resume" a run w/r/t restarting at the right job number and continue with an appropriately functioning RNG: use a new seed for -jran.

Tue, 2015-08-18 12:30
smlewis

To add to that answer, the reason why it's normally said you can resume a Rosetta run with exactly the same commandline is that the normal defaults (without -constant_seed) picks a random seed from a random number generator on your computer which will vary from run to run. So when you restart the command, you will almost surely get a different starting seed, resulting in different output structures.

All that changes with -constant_seed - it will skip the randomly setting of the seed and use the seed you specify with -jran. Note that if you manually set the seed you'll need to manually change it in the -jran option every time you restart, or otherwise you'll use the same seed and get the same structures.

Tue, 2015-08-18 17:11
rmoretti