• No results found

5.4 Experimental setup

5.4.1 Interaction regime

Within each timestep of the simulation, there are three phases: (i) agent com- munication, (ii) lexicon spreading, and (iii) lexicon update. The communica- tion, spreading, and updating actions are split into separate loops to prevent unforeseen synchronisation effects, such as agents updating their lexicons from out-of-date information. The full interaction regime for the simulation is shown in Algorithm 1.

Communication

In the first phase, every agent in turn fulfils the role of speaker. The speaker

selects a random neighbour, fulfilling the role ofhearer, and sends them a one-

word communication about a concept. The payoff for the speaker is 1 if both agents choose the same strategy (i.e. have the same mapping) and 0 otherwise.

For the hearer, the payoff is always 0. An agent’scommunicative efficacy is the

average payoff over the last 20 timesteps (discussed in more detail in Section

5.4.4). Note that Salazar et al. (2010b) define communicative efficacy as the

difference between successful (understood) and unsuccessful (not understood) communications, calculated every 20 timesteps. We use the normalised form for clarity of analysis.

3Spreading of conventions can also be interpreted observationally, such that agents receiv- ing a convention from another can be said to be observing that agent’s convention.

Spreading

After all agents have acted as a speaker in a timestep, each agent is in turn given a chance to send their lexicon (either partially or completely) to all their neighbours. We assume that agents update their lexicons based on information provided by others (i.e., there is no centralised authority). Consideration must be given to the synchronicity of the agent update processes. Given the literature

concerning the limitations of synchronous strategy update (Page, 1997; Szab´o

& Fath, 2007), we use an asynchronous probabilistic update model: during each

timestep, an agent sends lexicon information (see below) with probabilitypsend,

and updates its lexicon based on received information with probabilitypupdate.

This differs from Salazar et al.(2010b) who combine both probabilities into a

single value for spreading. They do not explicitly state when agents initiate their update processes, or whether they are synchronised, but the model presented

in Salazar et al. (2008) suggests that agents update after a given number of

timesteps with a given probability.

Salazaret al.(2010b) consider two potential mechanisms for lexicon spread-

ing: Complete transfer (also called Copy transfer) and Partial transfer. In

complete transfer, agents send their entire lexicons to their neighbours. This should only be seen as an idealised scenario — in practice, it is likely that re- source constraints such as bandwidth will mean that only partial transfer is

possible, and we therefore focus on partial transfer. Salazaret al.(2010b) state

that their partial transfer mechanism is based on recombination techniques from evolutionary algorithms literature, but they give no further detail.

We define partial transfer using a two-point crossover mechanism that mir- rors two-point crossover in genetic algorithms, in which two points are selected in the parent gene strings. Everything between those two points is swapped, generating two offspring. In our case, we generate a single offspring, in the form of a new lexicon, using the following mechanism:

at random at the start of the simulation, that defines the lexicon transfer length. This represents the number of mappings an agent will try to spread

from its lexicon to other agents (i.e. l = |W| corresponds to complete

transfer). For simplicity, we assume that all agents have the same number of words and concepts in their lexicons.

2. When an agent decides to initiate a partial transfer, it selects a random

start point,a, in its lexicon such thata+l≤ |W|.

3. Then,lmappings are selected from the lexicon starting at mappinga, and

are communicated to the neighbour set of the agent.

4. If a recipient chooses to incorporate these mappings in the update phase

then it replaces l mappings in its own lexicon, starting at a, with the

received mappings.

Updating

When selecting which of the incoming partial lexicons to incorporate into their

own lexicon, agents can use either random or elitist strategy update func-

tions (Salazar et al., 2010b). Random strategy update selects between each

incoming convention seed uniformly at random, whereas the elitist strategy up-

date picks the seed with the highest quality. Salazar et al. (2010b) assume

that agents send a quality valuation with the convention seeds, and that this is honest. In our investigation we adopt this assumption, but note that this is idealistic. The quality valuation for a lexicon (whether partial or complete) is the sum of the communicative efficacy and specificity for the full lexicon, and so the two components are evenly weighted.

An agent’s strategy is encapsulated by the population-wide variables psend

and pupdate, the agent-specific variable l, its individual lexicon, and the agent- specific update strategy of random or elitist.

IAs are modelled as agents with a fixed lexicon: they attempt to propagate their own lexicon as normal (which may or may not be shared with other IAs),

Algorithm 1 Interaction regime

1: //I is set of interactions 2: //Communication Phase 3: for allAgent∈P opulationdo

4: P artner←getRandomN eighbour(Agent)

5: I←I∪ hLC,hAgent, σ1, Speakeri,hP artner, σ2, Hearerii

6: end for 7:

8: //Spreading

9: for allAgent∈P opulationdo 10: r←randomDouble()

11: if r < pSend then

12: Inew← hLC,hAgent, σ1, Senderii

13: i←0

14: for allN eighbour∈Agent.getN eighbours()do 15: Inew←Inew∪ hN eighbour, σi, Receiveri

16: i←i+ 1 17: end for 18: I←I∪Inew 19: end if 20: end for 21: 22: //Updating

23: for allAgent∈P opulationdo 24: r←randomDouble() 25: if r < pU pdatethen 26: I←I∪ hLC,hAgent, σ1, U pdaterii 27: end if 28: end for 29: return I

but will discard any incoming partial lexicons, regardless of their quality. Unless otherwise specified, IAs are all given the same initial lexicon. In practice there is likely to be an upper bound on how many agents it might be practical to insert into a system. For example, there might be a limit of a proportion of 0.05 IAs in a population (e.g. 50 agents out of 1000) that it is realistic to insert. However, for evaluation purposes we performed simulations with proportions up to 0.4. While such proportions are likely to be impractical, they are useful in characterising the behaviour of the model.