Control parameters¶
The following control parameters are related to MCFFOptimizer. The default value for each parameter is given in parentheses.
- mcffit - number of MC iterations (10000). Since the Monte-Carlo method does not have any notion of convergence the optimization is stopped after mcffit iterations.
- mcbeta - initial MC beta parameter in the acceptance probability calculation \(P=exp(-\beta \Delta E)\) (1.0). Here, \(\Delta E\) is a difference in the error function between the current and the best step so far. If the current step is the best, it is always accepted. Otherwise, the acceptance probability is calculated using the formula above and it is calculated with a random number from the (0,1) range. The optimal value of beta depends on values of the error function.
- mcdbet - simulated annealing: increase the beta parameter by this value at each step (0.0). A positive mcdbet value means that the probability to take a step that increases the error function will decrease over time. This has the same effect as decreasing the temperature in the classical molecular Monte-Carlo method.
- mcbsca - simulated annealing: divide the beta parameter by this value at each step (1.0). A value of mcbsca less than 1.0 has an effect similar to positive mcdbet.
- mcacpf - probability to vary a variable at each step (0.2). To avoid taking very large steps only some of the variables are varied at each step (selected randomly).
- mcrxdd - number of steps to divide the parameter range between ffield_min and ffield_max into (100).
- mcstep - initial max step size in units of range/mcrxdd, where range = difference between ffield_max and ffield_min values (1.0).
- mcmxst - maximum allowed value of max step size (100);
- mcscps - factor to scale max step size to satisfy acceptance tolerance (1.1);
- mctart - target acceptance rate, percent (30.0);
- mcmart - max acceptance rate, percent (70.0);
- mcmini - if not 0, minimize the best force-field parameter set after so many iterations (0). The optimization is performed only if the best set has changed since the previous minimization. The minimization employed here is gradient-free and relatively slow so it should not be used too frequently.
- replic - number of replicas to try at each step (1). At each step, replic Monte-Carlo steps are done and the one with the lowest error is selected for the next iteration.
Relation between mcrxdd, mcstep, mcmxst, and mcscps. The allowed range for each parameter is divided into mcrxdd steps. At each optimization step, a number of force-field parameters is changed by a random value in the range \((-\Delta x, \Delta x)\), where \(\Delta x = mcstep*(Xmax-Xmin)/mcrxdd\). Here, Xmax and Xmin are values of this parameter from ffield_max and ffield_min, respectively. When performing optimization, the program keeps track of the average acceptance rate and adjusts mcstep up or down by the mcscps factor to keep the acceptance rate close to mctart. If the acceptance rate is too low the step size is decreased to allow searching for a smaller parameter space. The mcstep value can never be larger than mcmxst.
It should be noted that the value of the MC step size (and thus all the parameters discussed in this section) applies to all force-field parameters to the same extent, which means that it is very important to select the min and max parameter values very carefully. The rule of thumb here is that the range should be as small as possible covering only the physically meaningful values.