- 96 Views
- Uploaded on
- Presentation posted in: General

BPMC

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

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.

- 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

Random move

Conformational stack

Conf. 1

Conf. 2

Conf. 3

Conf. 4

- - - - -

- - - - -

New / Keep?

Energyminimization

Yes

Compare

Lower energy?

No

( )

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

appendappends to the existing conformational stack (overwrites by default).

fastrapid 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.

bfactoryou 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.

movierecords all accepted conformations sequentially in a binary *.mov file.

mutesuppresses 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).

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"

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)

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

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"

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.

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)

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"