BPMC The Biased Probability Monte Carlo BPMC minimization
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: 1) a random conformation change of the free variables of the system according to a predefined continuous probability distribution 2) 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 3) calculation of the complete energy including non-differentiable terms such us entropy and solvation energy; 4) acceptance or rejection of the total energy based on the Metropolis criterion (see above) and return to step 1. 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 2
Goal Find the global minimum of DGfree=DEvacuum+DGsolv, S • One of the biggest problems in computational physics is to predict the 3 D 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 3
Biased Probability Monte Carlo Random move Conformational stack New / Keep? Conf. 1 Conf. 2 Energy minimization Conf. 3 Conf. 4 ----- Lower energy? Yes No ( Compare ) ----- 4
Biased Probability Monte Carlo l_bpmc Random move set vrestraint Conformational stack mc. Bell mc. Jump mc. Shake mc. Step New / Keep? mnconf Energy minimization mnvisits. Action Mncalls tol. Grad mnhigh. Energy set terms high. Energy. Action … Lower energy? Yes No ( Compare ) temperature mncalls. MC compare Conf. 1 Conf. 2 Conf. 3 Conf. 4 ----- vicinity mnreject. Action 5
Biased Probability Monte Carlo OUTPUTFILE 1 DY __ _Y 2 Visi __ Visi 3 600 600 4 16 32 16 5 6 7 gln xi 3 70 ile BPMC ipt gln BPMC qmm 9 -98 ipt qmt 9 94 ipt qmm 10 -322. 04 -324. 56 11 -324. 56 -290. 80 -323. 93 12 35 18 41 13 14 4. 87 51559 65. 72 51577 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. 6
Biased Probability Monte Carlo montecarlo [ OPTIONS ] [ vs_MC [ vs_minimize ] ] [ local rs_loop ] append fast bfactor OPTIONS appends to the existing conformational stack (overwrites by default). rapid side-chain optimization. This option allows to accelerate the calculation by minimizing only the strained variables after each step. Needs the select. Min. Grad parameter to be set to 1. 5. This mode is useful for side chain optimization in homology modeling. 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_/residue. Range 1, residue. Range 2. . . ] 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_exit. Energy 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. 7
Biased Probability Monte Carlo reverse OPTIONS CONTINUED 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_3 atoms_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_select 1 [ as_select 2]] 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_select 1 as_select 2 - interactions between two selections. For example, a_dom 1 would consider only the internal energy of the domain dom 1. 8
Biased Probability Monte Carlo PARAMETERS l_write. Start. Obj. MC 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). n. Local. Deform. Var Number 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 n. Local. Deform. Var variables, however, if it contains less than n. Local. Deform. Var variables, it will not be deformed. Default (10), minimal number (8). random. Seed 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). 9
Biased Probability Monte Carlo l_bpmc Random move set vrestraint Conformational stack mc. Bell mc. Jump mc. Shake mc. Step New / Keep? mnconf Energy minimization mnvisits. Action Mncalls tol. Grad mnhigh. Energy set terms high. Energy. Action … Lower energy? Yes No ( Compare ) temperature mncalls. MC compare Conf. 1 Conf. 2 Conf. 3 Conf. 4 ----- vicinity mnreject. Action 10
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_rs. Type. Name 1 s_rs. Type. Name 2. . . ] 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" 11
Biased Probability Monte Carlo l_bpmc Random move set vrestraint Conformational stack mc. Bell mc. Jump mc. Shake mc. Step New / Keep? mnconf Energy minimization mnvisits. Action Mncalls tol. Grad mnhigh. Energy set terms high. Energy. Action … Lower energy? Yes No ( Compare ) temperature mncalls. MC compare Conf. 1 Conf. 2 Conf. 3 Conf. 4 ----- vicinity mnreject. Action 12
Biased Probability Monte Carlo mc. Bell average relative size of normally distributed montecarlo step from the center of an ellipsoid surrounding the multidimensional variable restraint zone. Example: mc. Bell = 1. 0 # places one standard deviation at the rs border mc. Bell = 2. 0 # distribution is two times broader etc. Default (1. 0) mc. Jump maximum value (in degrees) of random angular distortion per variable. This local random perturbation occurs if visits. Action, high. Energy or reject. Action ICM-shell variables are set to the "random" value. Randomization is a possible action in three problematic situations in montecarlo procedure. Default (30. 0) mc. Shake 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_my. Molecule//? vt*selection. The center of mass of the molecule randomly moves in an xyz sphere of mc. Shake radius. The molecule is also randomly rotated around a random axis with an amplitude equal to mc. Shake divided by the Molecular. Radius. This parameter is also used as a default amplitude for the randomize command where the six position/orientation variables are selected. Default (2. 0) mc. Step 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) 13
Biased Probability Monte Carlo l_bpmc Random move set vrestraint Conformational stack mc. Bell mc. Jump mc. Shake mc. Step New / Keep? mnconf Energy minimization mnvisits. Action Mncalls tol. Grad mnhigh. Energy set terms high. Energy. Action … Lower energy? Yes No ( Compare ) temperature mncalls. MC compare Conf. 1 Conf. 2 Conf. 3 Conf. 4 ----- vicinity mnreject. Action 14
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 tol. Grad criterion, the procedure will be terminated anyway. Default (100). tol. Grad gradient 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_terms. String ] 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 15
Biased Probability Monte Carlo l_bpmc Random move set vrestraint Conformational stack mc. Bell mc. Jump mc. Shake mc. Step New / Keep? mnconf Energy minimization mnvisits. Action Mncalls tol. Grad mnhigh. Energy set terms high. Energy. Action … Lower energy? Yes No ( Compare ) temperature mncalls. MC compare Conf. 1 Conf. 2 Conf. 3 Conf. 4 ----- vicinity mnreject. Action 16
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 reject. Action parameter (which usually increases the simulation temperature). Default (10) reject. Action 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" 17
Biased Probability Monte Carlo l_bpmc Random move set vrestraint Conformational stack mc. Bell mc. Jump mc. Shake mc. Step New / Keep? mnconf Energy minimization mnvisits. Action Mncalls tol. Grad mnhigh. Energy set terms high. Energy. Action … Lower energy? Yes No ( Compare ) temperature mncalls. MC compare Conf. 1 Conf. 2 Conf. 3 Conf. 4 ----- vicinity mnreject. Action 18
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 a. RMSD < 40 deg Default (15. 0). Do not forget to set it to a lower value if Cartesian RMSD is compared. 19
Biased Probability Monte Carlo l_bpmc Random move set vrestraint Conformational stack mc. Bell mc. Jump mc. Shake mc. Step New / Keep? mnconf Energy minimization mnvisits. Action Mncalls tol. Grad mnhigh. Energy set terms high. Energy. Action … Lower energy? Yes No ( Compare ) temperature mncalls. MC compare Conf. 1 Conf. 2 Conf. 3 Conf. 4 ----- vicinity mnreject. Action 20
Biased Probability Monte Carlo mncalls. MC 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. mncalls. MC 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) 21
Biased Probability Monte Carlo l_bpmc Random move set vrestraint Conformational stack mc. Bell mc. Jump mc. Shake mc. Step New / Keep? mnconf Energy minimization mnvisits. Action Mncalls tol. Grad mnhigh. Energy set terms high. Energy. Action … Lower energy? Yes No ( Compare ) temperature mncalls. MC compare Conf. 1 Conf. 2 Conf. 3 Conf. 4 ----- vicinity mnreject. Action 22
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 visits. Action 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) visits. Action 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” 23
Biased Probability Monte Carlo mnhigh. Energy 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 high. Energy. Action parameter. Default (50) high. Energy. Action action taken upon achievement of the maximal allowed number of montecarlo steps resulting in no modification of a stack mnhigh. Energy, (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" 24
- Slides: 24