AMBER Archive (2009)

Subject: Re: [AMBER] use of random seed in multiple runs

From: Gustavo Seabra (gustavo.seabra_at_gmail.com)
Date: Fri Jun 05 2009 - 14:18:35 CDT


You may also want to check this article:

http://pubs.acs.org/doi/abs/10.1021/ct800573m

Gustavo Seabra
Postdoctoral Associate
Quantum Theory Project - University of Florida
Gainesville - Florida - USA
-------------------------------------------------------------------------------------------
Q: Why do mountain climbers rope themselves together?
A: To prevent the sensible ones from going home.

2009/6/5 Marek Maly <marek.maly_at_ujep.cz>:
> Hi Gustavo,
> thanks for your info and for the simple explanation of the "correlation
> problem".
> I just downloaded relevant article:
>
> Uberuaga, B.P.; Anghel, M.; Voter, A.F. Synchronization of trajectories in
> canonical
> molecular-dynamics simulations: Observation, explanation, and exploitation.
> J. Chem.
> Phys., 2004, 120, 6363-6374.
>
> but I had no time to read it so far ...
>
>
> Best,
>
>  Marek
>
>
>
> Dne Fri, 05 Jun 2009 15:37:42 +0200 Gustavo Seabra
> <gustavo.seabra_at_gmail.com> napsal/-a:
>
>> Hi Marek,
>>
>> Notice that this correlation problem does not affect any of your
>> individual MD runs. Individually, they are all OK, and will give you
>> the correct results, meaning that this does not introduce any bug or
>> calculation error, your calculation wil not crash and the results
>> should be the same irrespective of the random seed.
>>
>> You will only notice this correlation problem when comparing multiple
>> simulations of *the same system*. Basically by running multiple
>> sumulations we expect to get better statistics. However, since they
>> tend to synchronize if using the same seed, what we would have is just
>> a bunch of copies of the same simulation, and the statistics are not
>> as good as we expected.
>>
>> Gustavo Seabra
>> Postdoctoral Associate
>> Quantum Theory Project - University of Florida
>> Gainesville - Florida - USA
>>
>> -------------------------------------------------------------------------------------------
>> Q:      Why do mountain climbers rope themselves together?
>> A:      To prevent the sensible ones from going home.
>>
>>
>>
>>
>> 2009/6/4 Marek Maly <marek.maly_at_ujep.cz>:
>>>
>>> Hi Carlos,
>>> thanks for your notice. It is clear to me that the "correlation problem"
>>> is
>>> still present
>>> in my simulations which I have done using ig=-1 in PMEMD. For this reason
>>> I
>>> pointed out
>>> the importance to implement this ig value (-1) in PMEMD the same way like
>>> in
>>> SANDER.
>>>
>>> For this moment I just hope that this correlation effect is not too big
>>>  and
>>> that his influence of
>>> binding energy of my ligand and receptor will not be so crucial. In this
>>> moment I am
>>> just happy that this seed value didn't affect beadly pseudorandom number
>>> generator and thus also thermostat function.
>>>
>>> Best,
>>>
>>>   Marek
>>>
>>>
>>>
>>> Dne Thu, 04 Jun 2009 21:20:59 +0200 Carlos Simmerling
>>> <carlos.simmerling_at_gmail.com> napsal/-a:
>>>
>>>> well keep in mind that changing the see with restarts or between runs is
>>>> not
>>>> about the temperature being wrong, it's about correlation of the rng
>>>> stream.
>>>> even if -1 works in this pmemd version and gives correct temperature, it
>>>> doesn't overcome the correlation problem.
>>>>
>>>>
>>>> 2009/6/4 Marek Maly <marek.maly_at_ujep.cz>
>>>>
>>>>> OK, as I noticed before, it seems that you are right and -1 is OK for
>>>>> the
>>>>> temperature control.
>>>>> Just for the illustration I attached output file from last 0,5ns of the
>>>>> 7ns
>>>>> run which
>>>>> was performed in T=310K.
>>>>>
>>>>> Thanks also for your preliminary "patch" since the reason why ig=-1 was
>>>>> implemented
>>>>> in SANDER is in my opinion even more important in PMEMD since probably
>>>>> the
>>>>> most researchers
>>>>> use SANDER just for the "initial" part of the simulation (minim, heat,
>>>>> density) but for the
>>>>> production runs use PMEMD since it is faster.
>>>>>
>>>>> Best,
>>>>>
>>>>>  Marek
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> Dne Thu, 04 Jun 2009 19:02:58 +0200 Robert Duke <rduke_at_email.unc.edu>
>>>>> napsal/-a:
>>>>>
>>>>>
>>>>>  Hi Marek,
>>>>>>
>>>>>> It would take a bit of poking, but it could be that the real problem
>>>>>> is
>>>>>> setting the seed to 0, and if you use < 0, then the math in the
>>>>>> Marsaglia
>>>>>> rng works out okay; I just have not checked it out and really only
>>>>>> recently
>>>>>> noticed that there are no input range controls on ig in pmemd
>>>>>> (probably
>>>>>> because there were none in sander).  The reason that sander has the -1
>>>>>> feature and pmemd doesn't is that no one told me this was being done
>>>>>> in
>>>>>> sander; I can miss new stuff that affects compatibility very easily
>>>>>> unless
>>>>>> there is a specific test, because there is a huge volume of other
>>>>>> irrelevant
>>>>>> changes as a general rule.  Sorry for any trouble caused by this.
>>>>>> - Bob
>>>>>> ----- Original Message ----- From: "Marek Maly" <marek.maly_at_ujep.cz>
>>>>>> To: "AMBER Mailing List" <amber_at_ambermd.org>
>>>>>> Sent: Thursday, June 04, 2009 12:35 PM
>>>>>> Subject: Re: [AMBER] use of random seed in multiple runs
>>>>>>
>>>>>>
>>>>>> Hi Bob,
>>>>>>
>>>>>> I just finished some series of calculations and I have some another in
>>>>>> progress with setting ig=-1.
>>>>>> Of course that I really didn't assume that this complementary
>>>>>> thermostat
>>>>>> setting is defined only for SANDER and not for PMEMD so
>>>>>> I used it also for the production PMEMD runs (using Amber10).
>>>>>>
>>>>>> I had no time to do detail analysis yet but after reading of this
>>>>>> contribution I at least checked the temperature evolution
>>>>>> and it seems that it is OK (I used Langevin thermostat). I also
>>>>>> checked
>>>>>> visually one of my simulated system and didn't
>>>>>> see any significant problems.
>>>>>>
>>>>>> I have some another simulations with this setting (ig=-1) in progress
>>>>>> so
>>>>>> it is question if it is not worth to
>>>>>> change ig setting there, but I would like to  have all the simulations
>>>>>> done with the same setting ...
>>>>>>
>>>>>> So please when you learn more about possible problems with this
>>>>>> setting
>>>>>> in
>>>>>> actual version of PMEMD, let me know
>>>>>> since I need to know if my results are trustable or not. As I already
>>>>>> mentioned, temperature control seems OK
>>>>>> but there could be another issues ...
>>>>>>
>>>>>> Anyway if some serious "hazards" regarding to this setting in PMEMD
>>>>>> will
>>>>>> be found, would be resonable to
>>>>>> notice in Amber users manual  ( for example in this section: "2.6.8.
>>>>>> Temperature regulation" ), that
>>>>>> setting "ig=-1" is not implemented in the actual version of PMEMD and
>>>>>> that
>>>>>> it is not recommended
>>>>>> sice it could cause some serious problems...
>>>>>>
>>>>>> Thank you in advance for any additional info to this topic.
>>>>>>
>>>>>>   Best
>>>>>>
>>>>>>      Marek
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> Dne Thu, 04 Jun 2009 16:31:32 +0200 Robert Duke <rduke_at_email.unc.edu>
>>>>>> napsal/-a:
>>>>>>
>>>>>>  Well, I would not recommend doing that.  It looks to me like there is
>>>>>>>
>>>>>>> nothing to stop one from doing this in the code, but the random
>>>>>>> number
>>>>>>> initialization code clearly states the seed should be > 0.  I would
>>>>>>> have to
>>>>>>> dink with it to see what really happens when you do this.  The fix to
>>>>>>> actually use -1 is pretty simple; I can probably send out a patch at
>>>>>>>  some
>>>>>>> point, or some simple directions for folks to hack their own code.
>>>>>>>
>>>>>>> Well, try this:
>>>>>>>
>>>>>>> In mdin_ctrl_dat.fpp, in the subroutine init_mdin_ctrl_dat(),
>>>>>>>
>>>>>>> In the variable declarations, change
>>>>>>>
>>>>>>> integer    ifind
>>>>>>>
>>>>>>> to
>>>>>>>
>>>>>>> integer    ifind, sec_temp
>>>>>>>
>>>>>>> Right before the "return" in the subroutine init_mdin_ctrl_dat() add
>>>>>>> the
>>>>>>> line:
>>>>>>>
>>>>>>> if (ig .eq. -1) call get_wall_time(sec_temp, ig)
>>>>>>>
>>>>>>>
>>>>>>> That's it.  Really simple, very informal patch.
>>>>>>>
>>>>>>> - Bob
>>>>>>>
>>>>>>> ----- Original Message ----- From: "Jifeng Wang" <wangjf_at_gmail.com>
>>>>>>> To: "AMBER Mailing List" <amber_at_ambermd.org>
>>>>>>> Sent: Thursday, June 04, 2009 10:10 AM
>>>>>>> Subject: Re: [AMBER] use of random seed in multiple runs
>>>>>>>
>>>>>>>
>>>>>>>  On Wed, Jun 3, 2009 at 11:59 PM, Robert Duke <rduke_at_email.unc.edu>
>>>>>>>>
>>>>>>>> wrote:
>>>>>>>>
>>>>>>>>  Note that the -1 capability is not yet in a released version of
>>>>>>>> pmemd
>>>>>>>>>
>>>>>>>>> (I
>>>>>>>>> think we have it in the pmemd 11 codebase).
>>>>>>>>> - Bob
>>>>>>>>>
>>>>>>>>>
>>>>>>>> Is it ok to use "-1" itself as a random seed for PMEMD?
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>> ----- Original Message ----- From: "Gustavo Seabra" <
>>>>>>>>> gustavo.seabra_at_gmail.com>
>>>>>>>>> To: "AMBER Mailing List" <amber_at_ambermd.org>
>>>>>>>>> Sent: Wednesday, June 03, 2009 10:00 PM
>>>>>>>>> Subject: Re: [AMBER] use of random seed in multiple runs
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Any group of simulations using stochastic thermostats, including
>>>>>>>>> Langevin, is subject to synchronization effects if using the same
>>>>>>>>> seed
>>>>>>>>> for all simulations, and eventually you end up with all correlated
>>>>>>>>> runs, which influences your statistics. Note that, in Amber10, you
>>>>>>>>> can
>>>>>>>>> avoid that by just using 'ig=-1' in all cases. That will tell
>>>>>>>>> sander
>>>>>>>>> to generate a new random seed every time, I believe based on clock
>>>>>>>>> time.
>>>>>>>>>
>>>>>>>>> Gustavo Seabra
>>>>>>>>> Postdoctoral Associate
>>>>>>>>> Quantum Theory Project - University of Florida
>>>>>>>>> Gainesville - Florida - USA
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> -------------------------------------------------------------------------------------------
>>>>>>>>> Q:      Why do mountain climbers rope themselves together?
>>>>>>>>> A:      To prevent the sensible ones from going home.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Wed, Jun 3, 2009 at 3:26 PM, Andrew Voronkov
>>>>>>>>> <drugdesign_at_yandex.ru>
>>>>>>>>> wrote:
>>>>>>>>>
>>>>>>>>>  Only that I did several runs in this way...ok so I'll remake it.
>>>>>>>>>>
>>>>>>>>>> 03.06.09, 17:55, "Gustavo Seabra" <gustavo.seabra_at_gmail.com>:
>>>>>>>>>>
>>>>>>>>>>  Do you have any reason *not* tuo use a differend random seed for
>>>>>>>>>> each
>>>>>>>>>>
>>>>>>>>>>> run?
>>>>>>>>>>> Gustavo Seabra
>>>>>>>>>>> Postdoctoral Associate
>>>>>>>>>>> Quantum Theory Project - University of Florida
>>>>>>>>>>> Gainesville - Florida - USA
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> -------------------------------------------------------------------------------------------
>>>>>>>>>>> Q: Why do mountain climbers rope themselves together?
>>>>>>>>>>> A: To prevent the sensible ones from going home.
>>>>>>>>>>> On Wed, Jun 3, 2009 at 5:28 AM, Andrew Voronkov <
>>>>>>>>>>> drugdesign_at_yandex.ru>
>>>>>>>>>>> wrote:
>>>>>>>>>>> > I want to make 30-50 nanosecond run of the protein with
>>>>>>>>>>> > explicit
>>>>>>>>>>> > >
>>>>>>>>>>> waters. But I have limitations on our cluster for time of each
>>>>>>>>>>> job.
>>>>>>>>>>> Can  > I
>>>>>>>>>>> divide it in several (let's say 5-10 nanosecond runs) without
>>>>>>>>>>> random
>>>>>>>>>>> > seed
>>>>>>>>>>> or I need to use random seed in each restart? (output rst ->
>>>>>>>>>>> input
>>>>>>>>>>> >
>>>>>>>>>>> rst).
>>>>>>>>>>> Main question of the study is to look at stability of the >
>>>>>>>>>>>  structure and
>>>>>>>>>>> make average structure from stability parts of > trajectpry.
>>>>>>>>>>> >
>>>>>>>>>>> > Best regards,
>>>>>>>>>>> > Andrew Voronkov
>>>>>>>>>>> >
>>>>>>>>>>> > _______________________________________________
>>>>>>>>>>> > AMBER mailing list
>>>>>>>>>>> > AMBER_at_ambermd.org
>>>>>>>>>>> > http://lists.ambermd.org/mailman/listinfo/amber
>>>>>>>>>>> >
>>>>>>>>>>> _______________________________________________
>>>>>>>>>>> AMBER mailing list
>>>>>>>>>>> AMBER_at_ambermd.org
>>>>>>>>>>> http://lists.ambermd.org/mailman/listinfo/amber
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>> _______________________________________________
>>>>>>>>>> AMBER mailing list
>>>>>>>>>> AMBER_at_ambermd.org
>>>>>>>>>> http://lists.ambermd.org/mailman/listinfo/amber
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>  _______________________________________________
>>>>>>>>>
>>>>>>>>> AMBER mailing list
>>>>>>>>> AMBER_at_ambermd.org
>>>>>>>>> http://lists.ambermd.org/mailman/listinfo/amber
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> _______________________________________________
>>>>>>>>> AMBER mailing list
>>>>>>>>> AMBER_at_ambermd.org
>>>>>>>>> http://lists.ambermd.org/mailman/listinfo/amber
>>>>>>>>>
>>>>>>>>>  _______________________________________________
>>>>>>>>
>>>>>>>> AMBER mailing list
>>>>>>>> AMBER_at_ambermd.org
>>>>>>>> http://lists.ambermd.org/mailman/listinfo/amber
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> AMBER mailing list
>>>>>>> AMBER_at_ambermd.org
>>>>>>> http://lists.ambermd.org/mailman/listinfo/amber
>>>>>>>
>>>>>>> __________ Informace od NOD32 4051 (20090504) __________
>>>>>>>
>>>>>>> Tato zprava byla proverena antivirovym systemem NOD32.
>>>>>>> http://www.nod32.cz
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Tato zpráva byla vytvořena převratným poštovním klientem Opery:
>>>>> http://www.opera.com/mail/
>>>>>
>>>>> _______________________________________________
>>>>> AMBER mailing list
>>>>> AMBER_at_ambermd.org
>>>>> http://lists.ambermd.org/mailman/listinfo/amber
>>>>>
>>>>>
>>>> _______________________________________________
>>>> AMBER mailing list
>>>> AMBER_at_ambermd.org
>>>> http://lists.ambermd.org/mailman/listinfo/amber
>>>>
>>>> __________ Informace od NOD32 4051 (20090504) __________
>>>>
>>>> Tato zprava byla proverena antivirovym systemem NOD32.
>>>> http://www.nod32.cz
>>>>
>>>>
>>>
>>>
>>>
>>> --
>>> Tato zpráva byla vytvořena převratným poštovním klientem Opery:
>>> http://www.opera.com/mail/
>>>
>>> _______________________________________________
>>> AMBER mailing list
>>> AMBER_at_ambermd.org
>>> http://lists.ambermd.org/mailman/listinfo/amber
>>>
>>
>> _______________________________________________
>> AMBER mailing list
>> AMBER_at_ambermd.org
>> http://lists.ambermd.org/mailman/listinfo/amber
>>
>> __________ Informace od NOD32 4051 (20090504) __________
>>
>> Tato zprava byla proverena antivirovym systemem NOD32.
>> http://www.nod32.cz
>>
>>
>
>
>
> --
> Tato zpráva byla vytvořena převratným poštovním klientem Opery:
> http://www.opera.com/mail/
>
> _______________________________________________
> AMBER mailing list
> AMBER_at_ambermd.org
> http://lists.ambermd.org/mailman/listinfo/amber
>

_______________________________________________
AMBER mailing list
AMBER_at_ambermd.org
http://lists.ambermd.org/mailman/listinfo/amber