6.2 Model
6.2.1 Agent Based Algorithm
Following Ref. [135], we consider a system composed of N rigid particles (the
molecules) in a fixed volume with PBC, at pseudotemperature T (loosely related
to the thermodynamic temperature of the system as described below). We identify the agent with a collection of particles (a cluster). The size ni of an agent i is the number of particles contained in the agent. At the beginning of the simula- tion every agent-cluster will contain only one particle, then each agent will evolve following a set of rules. Each rule is composed of a condition and an action: if the condition is satisfied, the associated action is performed. The conditions in-
6.2 Model
Figure 6.1: The AB algorithm actions, as described in the text. Each agent is represented by a different colour.
volve the comparison between the current configuration of the system and its past history. The descriptors for the current configuration of the system are the agent
internal energy Ei = 12Pik,ilVikil, where Vikil is the pairwise potential between
the two particles ik and il belonging to the i-th agent, and the interaction energy
Eij = Pik,jlVikjl between two agents i and j, where ik belongs to the agent i, jl
belongs to the agentj, and the summation is taken over all the particles belonging
toiand j. The “history” of the system is stored in the vectorEmin[n], which keeps
track of the internal energy of the most stable agent of each size n formed during
the simulation. By using Emin[n] in some of the rules of the algorithm, an element
of “learning” is incorporated into the algorithm.
An AB simulation step consists of the successive evaluation of four conditions, each associated with one of the following actions, as schematised in Fig. 6.1: (i) Move. A conventional Metropolis MC move, either of the agent or of the single
particle, performed at pseudotemperature T (from (a) to (b), Fig. 6.1). If the
MC moves were performed only on single particles, or only on clusters of particles that do not change their composition, the system would be rigorously simulated at
temperature T. However, because of the other rules,T is not the thermodynamic
temperature. (ii) Merge. Two agents i and j can merge into a new agent if their
6.2 Model
interaction energy Eij is smaller than a reference energy EM (from (b) to (c), in
Fig. 6.1). EM=kM·{Emin[ni+nj]−Emin[ni]−Emin[nj]}, where the parameterkM∈
[0,1] defines how strict this rule should be (a low value ofkMimplies a more frequent
clustering of “wrong structures”), and the term in the curly brackets is an estimate of the optimal interaction energy between the agents. In addition, the minimum
number of agents in the system is set to N/10 to allow a comparison amongst
agents throughout all the simulations. (iii) Split. If the internal energy of an
agentiis greater than a certain threshold ES, it will split emitting the less bonded
particle which will be then defined as a new agent (from (d) to (e), in Fig. 6.1). The new agent will then be brought away by 1000 MC moves with preudotemperature
10×T. ES is set to kS·Emin[ni], where the parameter kS ∈[0,1] determines how
often the split rule takes place. (iv) Disaggregate. Two agents are part of the
same aggregate if their interaction energy is smaller than a certain threshold (i.e.,
Eij < ED, whereED =kD· {Emin[ni+nj]−Emin[ni]−Emin[nj]}). If four or more
agents are part of the same aggregate, the aggregate is broken by partitioning it into two independent sets of agents [223]. The two sets are then broken apart
(from (f) to (g), in Fig. 6.1) by 1000 MC moves with a preudotemperature 10×T.
In general, kD < kM and kD∈[0,1].
The merge rule allows the system to explore space more effectively, by grouping molecules and permitting group moves. The split and disaggregate rules allow the system to escape from kinetic traps. A broader justification of these rules and the method used to set the simulation parameters is given in Ref. [135]. In addition, in the current version of the algorithm, we included the possibility of starting the simulation at higher temperature and gradually decreasing the temperature, in a similar fashion to annealed MC simulations. In the rest of the chapter, AB
simulations that use this annealing schedule will be called annealed AB. Both
agent moves and single particle moves can be performed, and the fraction of single particle moves, which are proven to speed up the convergence [135], is set to the
parameter χMC. The same code is capable of performing MC and annealed MC
simulations by switching off all the AB rules. Finally, it is worth noticing that, since the algorithm incorporates an element of “learning” in the rules that depends on its past history, it is substantially different from the MC algorithms with cluster moves presented by us [107] and others [106, 187].
6.2 Model
Figure 6.2: To calculate the pair potential Vikjl between two molecules, the AB
program passes the atomic coordinates of the two molecules i and j to TINKER
through an interface. TINKER is then able to calculate the intermolecular energy and passes the information back to the AB program.