• No results found

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.