240 likes | 394 Views
BPMC. The Biased Probability Monte Carlo (BPMC) minimization procedure is used for global energy optimization. The BMPC global energy optimization method consists of the following steps:
E N D
BPMC The Biased Probability Monte Carlo (BPMC) minimization procedure is used for global energy optimization. The BMPC global energy optimization method consists of the following steps: • a random conformation change of the free variables of the system according to a predefined continuous probability distribution • local energy minimization of analytical differentiable terms, since it has also been shown that after each random step full local minimization greatly improves the efficiency of the procedure • calculation of the complete energy including non-differentiable terms such us entropy and solvation energy; • acceptance or rejection of the total energy based on the Metropolis criterion (see above) and return to step 1.
ICM Stochastic Global Optimization • Full atom, any subset of internal coordinates • Gradient local minimization after random moves + double energy scheme • Designed, Statistically-justified • collective moves: • Search Strategy: Reactive history mechanism, stack • Not simulated annealing (T=const), • Not Monte Carlo (no local balance) • Convergence, multiple starts Li, Scheraga, MCM, 1987 Abagyan, Totrov, JMB 1994, JCP, 1999 Zhou, Abagyan, JCP, 1999
Goal • Find the global minimum of • DGfree=DEvacuum+DGsolv,S • One of the biggest problems in computational physics is to predict the 3D structure of proteins and peptides by global optimization of the free energy estimate (30 years). • Problems 1. Accuracy of free energy estimate 2. Size of conformational space • Out-performs MD and MC • Gradient local minimization after random moves • Optimally biased, designed, continuous group moves. • Double energy scheme • Reactive history mechanism (RHM), stack
Biased Probability Monte Carlo Random move Conformational stack Conf. 1 Conf. 2 Conf. 3 Conf. 4 - - - - - - - - - - New / Keep? Energyminimization Yes Compare Lower energy? No ( )
Biased Probability Monte Carlo l_bpmc set vrestraint mcBell mcJump mcShake mcStep Random move Conformational stack Conf. 1 Conf. 2 Conf. 3 Conf. 4 - - - - - - - - - - New / Keep? mnconf mnvisits visitsAction mnhighEnergy highEnergyAction Energyminimization Mncalls tolGrad set terms … Yes Compare Lowerenergy? No ( ) compare vicinity temperature mnreject rejectAction mncallsMC
Biased Probability Monte Carlo OUTPUTFILE 1 2 3 4 5 6 7 9 9 10 11 12 13 14 DY Visi 600 16 gln xi3 70 -98 94 -322.04 -324.56 35 4.87 51559 __ __ 600 32 ile BPMC ipt ipt ipt -324.56 -290.80 18 65.72 51577 _Y Visi 600 16 gln BPMC qmm qmt qmm -324.56 -323.93 41 3.78 51618 1. DY = Down Yes, i.e. energy has decreased after change and new conf. is accepted __ = up no , i.e. energy has increased and new conf. is not accepted _Y = up Yes, i.e. energy has increased, but new conf. is accepted 2. stack operation code; 3. current temperature in Kelvin; 4. number of selected residue 5. selected residue name 6. name of randomly selected angle or BPMC to indicate the biased probability move 7. internal coordinate value or name of the multidimensional zone before random change; 8. internal coordinate value or name of the multidimensional zone after the random change but before minimization; 9. internal coordinate value or name of the multidimensional zone after the minimization; 10. energy before the random change; 11. energy after the random change and subsequent minimization; 12. number of function calls made during minimization; 13. gradient RMS deviation ( normal completion is with low or zero gradient ); 14. total number of function calls in the simulation.
Biased Probability Monte Carlo montecarlo [ OPTIONS ] [ vs_MC [ vs_minimize ] ] [ local rs_loop ] OPTIONS append appends to the existing conformational stack (overwrites by default). fast rapid side-chain optimization. This option allows to accelerate the calculation by minimizing only the strained variables after each step. Needs the selectMinGrad parameter to be set to 1.5. This mode is useful for side chain optimization in homology modeling. bfactor you can use the bfactor option to sample 'hot' parts of structure with higher probabilities. The relative frequences are taken from the b-factors of the atoms belonging to the mc-variables. local [ dash ] [ a_/residueRange1,residueRange2... ] option local makes local deformation type movement for specified regions. Suboption dash chooses angles for random deformation symmetrically with respect to the loop center. movie records all accepted conformations sequentially in a binary *.mov file. mute suppresses the text output about every random move ~~r_exitEnergy real argument determines if you want your procedure to exit upon achievement of equal or lower energy value . For example, if you know energy of the minimum, you may want to stop the search when this value is achieved.
Biased Probability Monte Carlo • OPTIONS CONTINUED • reverse this option allows to make a more intellegent random move in singlechain or a multichain molecule. By default if an angle is randomly changed near the beginning of a molecule, the second part of this chain moves. With the reverse option out of two parts on both sides of the randomly chosen angle, to the moving part is chosen in a random, but more rational way, namely, the heavier part is more likely to stay where it is than the lighter part. The probability that a part stays static is propotional to the number of atoms of this part. It is important that the virtual variables ( v_//?vt* are not fixed). • This option is very useful in docking, since the receptor is static and the moving molecule should try to preserve the majority of current interactions. Also, the reverse option helps if one simulates the N-terminus of a multichain protein, or a docking of a peptide to a protein. • superimpose as_3atoms_per_molecule • superimposes new generated conformations after every move. Usually if you change backbone torsion at the N-terminus, the whole molecule moves. This option allows to generate conformational changes at the N-terminal part of a peptide while its C-terminus occupies the same position in space. After each random move the first 3 atoms selected in molecule(s) will be superimposed on their initial position and the 6 positional variables (v_//?vt*) will be updated accordingly. • two atom selections: montecarlo .. as_1 as_2 • Atom selection arguments [ as_select1 [ as_select2]] impose a filter on atom pairs considered in the terms of internal energy like "vw,el,hb,sf". There are three possibilities: • no selections - the whole object (all atoms) is considered (the default) • as_select - interactions of the specified atoms with ALL atoms in the object. • as_select1as_select2 - interactions between two selections. For example, a_dom1 a_dom1 would consider only the internal energy of the domain dom1.
Biased Probability Monte Carlo PARAMETERS l_writeStartObjMC write the starting object in the montecarlo command to a file. This object will have the fixation (set of free and fixed variables) as in your montecarlo simulation. In case the variable is set to no, the same object can be generated if you repeat the fix and unfix command as in your simulation script. Default (yes). nLocalDeformVarNumber of backbone torsion angle variables (excluding omegas) which are changed simultaneously to provide local deformation. This parameter can be less than the actual number of backbone torsion angles in the loop. In other words it is OK if the loop contains more than nLocalDeformVar variables, however, if it contains less than nLocalDeformVar variables, it will not be deformed. Default (10), minimal number (8). randomSeed is a seed used by the random-number generator in the montecarlo , randomize , Random function. Helpful if you need to reproduce exactly a calculation which uses random number(s). If the variable has its zero default value, the random function is seeded from the current time. Otherwise, if you explicitly redefine it before, let us say, a montecarlo run, it will use the specified number. Default (0).
Biased Probability Monte Carlo l_bpmc set vrestraint mcBell mcJump mcShake mcStep Random move Conformational stack Conf. 1 Conf. 2 Conf. 3 Conf. 4 - - - - - - - - - - New / Keep? mnconf mnvisits visitsAction mnhighEnergy highEnergyAction Energy minimization Mncalls tolGrad set terms … Yes Compare Lowerenergy? No ( ) compare vicinity temperature mnreject rejectAction mncallsMC
Biased Probability Monte Carlo l_bpmc if yes, use Biased Probability Monte Carlo moves in the Monte Carlo procedure. See Abagyan and Totrov, 1994 for reference. Important: the probability zones are described in the icm.rst file and should be assigned to a peptide before the montecarlo command with the set vrestraint a_/* command. Default (yes). set vrestraint [energy] rs_ [ s_rsTypeName1 s_rsTypeName2 ... ] sets variable restraints of specified types to the selected residues rs_. Variable restraint type names (strings) can be read from a *.rst type file and shown by the show vrestraint type command. Option energy enforces the "energy" type of vrestraint. Number of imposed variable restraints is saved in i_out. Examples: # assign all relevant zones to all residues set vrestraint a_/* # assign alpha and beta zones to all Ala residues set vrestraint a_/ala "aa" "ab"
Biased Probability Monte Carlo l_bpmc set vrestraint mcBell mcJump mcShake mcStep Random move Conformational stack Conf. 1 Conf. 2 Conf. 3 Conf. 4 - - - - - - - - - - New / Keep? mnconf mnvisits visitsAction mnhighEnergy highEnergyAction Energy minimization Mncalls tolGrad set terms … Yes Compare Lower energy? No ( ) compare vicinity temperature mnreject rejectAction mncallsMC
Biased Probability Monte Carlo mcBell average relative size of normally distributed montecarlo step from the center of an ellipsoid surrounding the multidimensional variable restraint zone. Example: mcBell = 1.0 # places one standard deviation at the rs border mcBell = 2.0 # distribution is two times broader etc. Default (1.0) mcJump maximum value (in degrees) of random angular distortion per variable. This local random perturbation occurs if visitsAction, highEnergy or rejectAction ICM-shell variables are set to the "random" value. Randomization is a possible action in three problematic situations in montecarlo procedure. Default (30.0) mcShake amplitude [Angstrom] of Brownian type the montecarlo random move applied to a molecule when one of the 6 variables defining its relative position is picked. Usually these variables may be selected by v_myMolecule//?vt*selection. The center of mass of the molecule randomly moves in an xyz sphere of mcShake radius. The molecule is also randomly rotated around a random axis with an amplitude equal to mcShake divided by the MolecularRadius . This parameter is also used as a default amplitude for the randomize command where the six position/orientation variables are selected. Default (2.0) mcStep montecarlo step size (degrees). Maximum random change of one variable. This parameter is also used as the default amplitude for the randomize command Default (180.0)
Biased Probability Monte Carlo l_bpmc set vrestraint mcBell mcJump mcShake mcStep Random move Conformational stack Conf. 1 Conf. 2 Conf. 3 Conf. 4 - - - - - - - - - - New / Keep? mnconf mnvisits visitsAction mnhighEnergy highEnergyAction Energy minimization Mncalls tolGrad set terms … Yes Compare Lower energy? No ( ) compare vicinity temperature mnreject rejectAction mncallsMC
Biased Probability Monte Carlo mncalls maximal number of function calls in local minimization performed in minimize, and as a part of one step of a multistep procedure in montecarlo, ssearch, convert . The number of function evaluations required to find the local minimum varies widely depending on the terms used (i.e. the "tz" term makes minimization very slow, if structure is far from its target). If the minimum is found according to the tolGrad criterion, the procedure will be terminated anyway. Default (100). tolGradgradient tolerance criterion for local minimization. Minimization is stopped if the gradient root-mean-square deviation from zero is less than the parameter value. Default (0.05). set terms [ only ] [ s_termsString ] set energy and/or penalty terms for further energy calculations. Each term has a two-character abbreviation. The terms are appended to the string unless option only is specified. The final energy-term string is returned in the s_out string Examples: # vacuum terms, solvation and entropy set terms only "vw,14,hb,to,el,sf,en" set terms "tz" # add tethers to the list
Biased Probability Monte Carlo l_bpmc set vrestraint mcBell mcJump mcShake mcStep Randommove Conformational stack Conf. 1 Conf. 2 Conf. 3 Conf. 4 - - - - - - - - - - New / Keep? mnconf mnvisits visitsAction mnhighEnergy highEnergyAction Energy minimization Mncalls tolGrad set terms … Yes Compare Lower energy? No ( ) compare vicinity temperature mnreject rejectAction mncallsMC
Biased Probability Monte Carlo • temperature • montecarlo simulation temperature. A new trial conformation with a higher energy than the current one is accepted with the probability of exp(-(Etrial - Enew)/RT)). RT is 0.6 kcal/mole for T = 300 Kelvin. • The effect of temperature on the montecarl procedure is the following: • to find the global minimum successfully one needs a combination of persistense if a chosen place with a good sense of when to stop searching in this place and move along to the next one. • if the temperature is too high, the acceptance ratio improves (gets higher) and wider sampling becomes easier since more high energy conformations are accepted. The downside of this is the low "persistence" (or "lack of patience") of the search procedure. Instead of spending more time in each conformational vicinity to find the real global minimum, the procedure just tries a couple of sub-optimal conformations and jumps away. • if the temperature is too low the procedure may not cover the global conformational space of interest. • Default (300.). • mnreject • maximal number of consecutive rejections (due to the Metropolis criterion) of trial conformations generated by the montecarlo procedure. When this threshold is reached the procedure acts according to the rejectAction parameter (which usually increases the simulation temperature). • Default (10) • rejectAction • what to do, if the MC procedure rejects mnreject trial conformations in a row. Four actions can be taken: • 1. " heat" <- default choice • 2. " stackjump" • 3. " random" • 4. " exit"
Biased Probability Monte Carlo l_bpmc set vrestraint mcBell mcJump mcShake mcStep Randommove Conformational stack Conf. 1 Conf. 2 Conf. 3 Conf. 4 - - - - - - - - - - New / Keep? mnconf mnvisits visitsAction mnhighEnergy highEnergyAction Energy minimization Mncalls tolGrad set terms … Yes Compare Lower energy? No ( ) compare vicinity temperature mnreject rejectAction mncallsMC
Biased Probability Monte Carlo compare { as_ | vs_ } options The goal of the two following compare commands is to provide a desired setting before the montecarlo command . This command defines a filter which is used to decide how many and what conformations from the stochastic optimization trajectory are kept as low energy representatives of a certain area in conformational space. This metric is also used for the subsequent stack manipulations, e.g. compress stack. The compare command defines the distance measure between molecular conformations which is used to form a set of different low energy conformers in the course of the stochastic global optimization procedure. The defined distance is compared with the vicinity parameter and determines whether two conformations should be considered different or similar (i.e. belonging to the same slot in the conformational stack). The compare command determines the spectrum of conformations that will be retained in the stack, accumulated during a montecarlo procedure. The default comparison set is a set of all free torsion variables (see compare vs_ ). Other methods compare atom RMSD with and without superposition, and compare only the atoms in the vicinity of a static object ( compare surface ). vicinity maximum angular root-mean-square deviation per variable (degrees) or cartesian root-mean-square deviation per atom (Angstroms) when two structures are still considered belonging to the same conformational family in conformational stack manipulations. The type of comparison is defined by the compare command. Examples: compare a_//ca,c,n # compare by Cartesian RMSD vicinity = 3.0 # conf. are similar if RMSD< 3 A compare v_//phi,psi # compare by angular RMSD vicinity = 40.0 # conf. are similar if aRMSD < 40 deg Default (15.0) . Do not forget to set it to a lower value if Cartesian RMSD is compared.
Biased Probability Monte Carlo l_bpmc set vrestraint mcBell mcJump mcShake mcStep Random move Conformational stack Conf. 1 Conf. 2 Conf. 3 Conf. 4 - - - - - - - - - - New / Keep? mnconf mnvisits visitsAction mnhighEnergy highEnergyAction Energy minimization Mncalls tolGrad set terms … Yes Compare Lower energy? No ( ) compare vicinity temperature mnreject rejectAction mncallsMC
Biased Probability Monte Carlo mncallsMC maximal number of function calls in the montecarlo command. Since the procedure performs random steps accompanied by local minimization (controlled by the mncalls parameter), the number of function evaluations for the whole procedure can be roughly evaluated as a product of mncalls and the number of MC iterations. mncallsMC should be sufficiently large to ensure convergence of the global optimization procedure and may range from 10,000 for a single side-chain, 100,000 for a 3-4 residue peptide to several million calls for 15-20 residue peptide or a large protein loop. Default ( 1000 ). The default value is small to minimize damage of the unintentional calls of the montecarlo command. mnconf maximal number of conformations in the conformational stack . The stack stops growing after this number is achieved and starts replacing representative conformations with higher energy values by new conformations with superior energies, if the latter are found. Default (50)
Biased Probability Monte Carlo l_bpmc set vrestraint mcBell mcJump mcShake mcStep Random move Conformational stack Conf. 1 Conf. 2 Conf. 3 Conf. 4 - - - - - - - - - - New / Keep? mnconf mnvisits visitsAction mnhighEnergy highEnergyAction Energy minimization Mncalls tolGrad set terms … Yes Compare Lower energy? No ( ) compare vicinity temperature mnreject rejectAction mncallsMC
Biased Probability Monte Carlo mnvisits maximal number of visits to the same slot of the conformational stack in the course of a montecarlo procedure. When this threshold is reached the MC procedure acts according to the visitsAction parameter. A visit is an event when a newly generated conformation finds a slot with a similar conformation in it, but the stack conformation is not replaced by the new one because it has a better energy. The optimal mnvisits parameter grows with the size of the problem (it may be several hundred for a 15-20 residue peptide). Default (50) visitsAction what to do, if one stack conformation is overvisited, i.e. mnvisits has been reached. The following actions are allowed: 1. "random" 2. "heat" <- default choice 3. "stackjump" 4. "exit”
Biased Probability Monte Carlo mnhighEnergy maximal number of consecutive accepted trial conformations which do not change the conformational stack because their energies are higher than energies of the stack conformations. Therefore, the montecarlo procedure is walking in the high energy area and is probably wasting its time. When this threshold is reached the procedure acts according to the highEnergyAction parameter. Default (50) highEnergyAction action taken upon achievement of the maximal allowed number of montecarlo steps resulting in no modification of a stack mnhighEnergy, (it means that conformations are dissimilar to those in the stack and have higher energy). Four actions can be taken: 1. " heat" 2. " stackjump" <- default 3. " random" 4. " exit"