MAZE_MEMETIC_SAMPLING
This is part of the maze module
It is only available if you configure PLUMED with ./configure –enable-modules=maze . Furthermore, this feature is still being developed so take care when using it and report any problems on the mailing list.

Calculates the biasing direction along which the ligand unbinds by minimizing the MAZE_LOSS function. The optimal biasing direction is determined by performing a population-based memetics search with local heuristics.

Description of components

By default this Action calculates the following quantities. These quantities can be referenced elsewhere in the input by using this Action's label followed by a dot and the name of the quantity required from the list below.

Quantity Description
x Optimal biasing direction; x component.
y Optimal biasing direction; y component.
z Optimal biasing direction; z component.
loss Loss function value defined by the provided pairing function.
sr Sampling radius. Reduces sampling to the local proximity of the ligand position.
The atoms involved can be specified using
LIGAND Indices of ligand atoms.. For more information on how to specify lists of atoms see Groups and Virtual Atoms
PROTEIN Indices of protein atoms.. For more information on how to specify lists of atoms see Groups and Virtual Atoms
Compulsory keywords
N_ITER Number of optimization steps. Required only for optimizers, do not pass this keyword to the fake optimizers (results in crash) , e.g., random walk, steered MD, or random acceleration MD.
OPTIMIZER_STRIDE Optimizer stride. Sets up a callback function that launches the optimization process every OPTIMIZER_STRIDE.
CAPACITY Sampling set size.
MUTATION_RATE Probability of mutation.
MATING_RATE Probability of mating.
CAUCHY_ALPHA Mean of Cauchy distribution for sampling.
CAUCHY_BETA Spread of Cauchy distribution for sampling.
Options
NUMERICAL_DERIVATIVES ( default=off ) calculate the derivatives for these quantities numerically
NOPBC ( default=off ) ignore the periodic boundary conditions when calculating distances
SERIAL ( default=off ) Perform the simulation in serial – used only for debugging purposes, should not be used otherwise.
PAIR ( default=off ) Pair only the 1st element of the 1st group with the 1st element in the second, etc.
NLIST ( default=on ) Use a neighbor list of ligand-protein atom pairs to speed up the calculating of the distances.
LOCAL_SEARCH_ON

( default=off ) Turn local search on.

NL_CUTOFF Neighbor list cut-off for the distances of ligand-protein atom pairs.
NL_STRIDE Update stride for the ligand-protein atom pairs in the neighbor list.
LOSS Loss function describing ligand-protein interactions required by every optimizer.
N_LOCAL_ITER Number of local search iterations.
LOCAL_SEARCH_RATE Rate of mutation in local search.
LOCAL_SEARCH_TYPE Type of local search.
Examples

Every optimizer implemented in the maze module needs a loss function as an argument, and it should be passed using the MAZE_LOSS keyword.

MAZE_MEMETIC_SAMPLING ...
  LABEL=ma

  LOSS=l

  N_ITER=10
  OPTIMIZER_STRIDE=200

  CAPACITY=20

  LOCAL_SEARCH_ON
  N_LOCAL_ITER=10
  LOCAL_SEARCH_RATE=0.1
  LOCAL_SEARCH_TYPE=stochastic_hill_climbing

  MUTATION_RATE=0.1
  MATING_RATE=0.7
  CAUCHY_ALPHA=0
  CAUCHY_BETA=0.1

  LIGAND=2635-2646
  PROTEIN=1-2634
... MAZE_MEMETIC_SAMPLING

As shown above, each optimizer should be provided with the LIGAND and the PROTEIN keywords.

The neighbor list can be turned on by providing the NLIST keyword.