Skip to content

B. Initial Parameters

Roberto Ulloa edited this page Aug 21, 2016 · 16 revisions

In order to change the initial configuration of the simulation, go to Simulation -> Parameters. The following dialog will appear:

Initial Parameters

First, you need to decide which model you would like to use, and then adjust the parameters. At the end of the section, a table will give you a starting point of parameters that you can use with each model. Below you can find the explanation of models and parameters and references that point you to related literature (Flache & Macy (2011) and Ulloa (2016) are key readings to understand in detail the implementation details of the models):

  • Model: This drop-down menu gives you multiple options for basic model implementation for the simulation. Four models are available in this version. Identifiers of the models (internally, the name of the class), are the initial letters of the descriptions:

    • M1 - Homophily (Axelrod, 1997) including mutation and selection error - Experiment 1, Flache & Macy (2011): This implementation is based on Axelrod (1997). Homophily, the principle that "like attracts like", is used to decide whether an agent can influence another agent. This model also includes two noise sources: mutation, where individual traits can change randomly (Klemm et al., 2003a, 2003b), and selection error, where individuals make a judgment error regarding the homophily of their neighbors (Flache & Macy, 2011). This model is equivalent to the model used in Experiment 1 of Flache & Macy (2011).

    • M2 - Multilateral social influence without homophily - Experiment 2, Flache & Macy (2011): This implementation includes multilateral social influence, such that interactions can occur between multiple agents at the same time instead of in dyadic formation where only two agents can interact with each other at one time (Flache & Macy, 2011). The mechanism is also known as frequency bias (Parisi et. al, 2003; Boyd & Richerson, 1985). This implementation does not consider homophily. Mutation and selection error are included as in M1.

    • M3 - Multilateral social influence with homophily - Experiment 3, Flache & Macy (2011): This implementation is an extension of M2, by including homophily as presented in M1.

    • M4 - Institutions including homophily Axelrod (1997) - Ulloa et al. (2016): This implementation is based on M1, and thus includes homophily, mutation and selection error. It additionally introduces institutions as described by Ulloa (2016). An institution can influence agents that belong to it by making them adopt or keep traits that are equivalent to the institution's traits. The table below (taken from the original publication) presents all rules inherent in the (institutional) model.

Initial Parameters

The parameters of the simulation are organized in four sections in the interface:

  • Controls:

  • Random initialization: When selected, the initial traits of the agents' cultural vectors (i.e. the list of cultural traits of each agent) are initialized randomly with a uniform distribution. When not selected, the initial state of the simulation has all agents belonging to one (the same) institution, and all cultural vectors contain exactly the same traits (i.e. agents all belong to the same culture). This provides an interesting baseline to compare effects of events between diverse and not-diverse scenarios.

  • Iterations: Sets number of iterations after which the simulation stops. One iteration is defined as the time span after which all agents have had on average one opportunity of interaction. Notice that it is on average, so not necessarily all agents will participate each turn as the initiator agents of interactions are picked randomly. Also notice that the interaction might not actually occur (that it is why is called opportunity of interaction), for example when the homophily rule prevents an interaction, or due to selection errors). A recommended value of number of iterations is 100000, however certain parameters might cause the convergence to be slower; you can check if the simulation is converging to a value in the interface (See (Response Variables)[https://github.com/robertour/CulSim/wiki/F.-Response-variables]) or in the progressions folder (See Output Values)

  • Speed: Sets the number of iterations that occur between checkpoints. Several important things happens during checkpoints: (1) Results are calculated from the current state of the simulation, (2) Current response variables are sent to the result output files, (3) Interface is updated with current results, and (4) Simulation checks for current queued events and executes them, if any. (It is called speed because it affects how fast the simulation will run, as calculations of responses variables and output of results is costly. Events are always implemented at checkpoints to make sure they are visualized properly on the interface). Speed should be a multiple of iterations, and, in batch mode, you should be careful with very small values as it could produce big files and slow down the simulation.

  • Buffer Size: Controls the size of the file buffer sizes. A larger buffer size makes the simulation more efficient, but waiting times to check intermediate results in output files are produced at a slower rate. (Buffer size can be important when Batch Mode is executed.)

  • World: Sets informational space (vector sizes) of the model. These traits cannot be modified after initialization (See Events.)

  • Rows: Number of rows of the world grid.

  • Cols: Number of columns of the world grid. So far, studies seems to have limited the grid sizes to less than 100 rows and column (100x100) because of computational costs. In terms of results, M1 produces fewer cultures the bigger the grid (Axelrod, 1997), M2 and M3 produce more cultures with bigger grids (Flache & Macy, 2011), and M4 produces a number of cultures that is more or less proportional to the size of the grid (Ulloa et al., 2016), meaning that the culture sizes are more or less equivalent regardless of the grid size.

  • Radius: The radius of the Von Neumann neighborhood is also known as the Manhattan distance. A Von Neumann nrighborhood of radius 6 can be seen here:

Von Neumann neighborhood

In terms of results, M1 produces fewer cultures as the interaction radius increases (Greig, 2012) and a value of 1 is recommended. Flache & Macy (2011) used a radius of 6 for M2 and M3. Ulloa et al. also used also a radius of 6. Preliminary results on M4 also indicate that, when democracy and propaganda (see below) are not activated, a smaller radius produces fewer cultures, but when (democracy and propaganda) are activated this effect is reduced substantially (don't hesitate to drop me a line if you are interested in a collaboration to publish this result).

  • Features: Size of the cultural vector. Each feature represents a possible dimension of the culture, e.g. music. In M1, the more features the less cultures are obtained (Axelrod, 1997). No studies exist for the other models.

  • Traits: Number of possible values that a feature can adopt. Each trait represent a possible cultural item for the feature, for example if the feature is music, one possible trait can be rock music, another jazz. In M1, the more features the more cultures are obtained (Axelrod, 1997). No studies exist for the other models, though preliminary results suggest the same effects in M4.

  • Noise: Sources of perturbation inside the simulation.

  • Mutation: Probability of a random trait change in the agent's cultural vector after an interaction. M1 is very sensitive to mutation (Klemm, 2003a, 2003b). M2-M4 present different degrees of resistance to mutation (Flache & Macy, 2011; Ulloa, 2016). Values below 0.1 have been studied in the literature.

  • Selection Error: Probability of making a judgement mistake in the selection of the agent with which the interaction will happen. M3 and M4 are the more stable models against selection error (Flache & Macy, 2011; Ulloa, 2016). Values below 0.1 have been studied in the literature.

  • Institutions: Set the levels at which institutions can affect agents. These parameters only apply to M4.

  • Influence: A value between 0 and 1 that determines the level of importance that is given to institutional influence (alpha value in the rule table above). Alpha is multiplied by the similarity with the institution, and a beta value (1 - alpha) is multiplied by the similarity with the agent (homophily). The resulting probability determines whether the interaction (an agent accepting the other agent's trait) will be successful. High values (>0.6) are necessary to generate diversity, and it is fairly stable across grid sizes (Ulloa et al., 2016). Preliminary results suggest that small values of influence can be used if democracy and propaganda are activated; e.g. grid size=100x100, radius=3, influence=0.35, democracy=10, propaganda=5 produces ~20-30 cultures (also, replacing radius=6, and influence=0.55). Please don't hesitate to contact me if you are interested and willing to collaborate to explore this result.

  • Loyalty: A value between 0 and 1 that determines the likehood of an agent staying or changing their institution after a successful interaction between agents (alpha prime value in the rule table above). Alpha prime is multiplied by a value that depends on the similarity with the institution, and a beta (1 - alpha) to the similarity with the neighbor's institution. The resulting probability determines whether an agent changes its institution to adopt the institution of its neighbor. The effect of loyalty is rather small compared to the influence (Ulloa et al., 2016); this is likely because there is a confounding effect (loyalty depends on the influence).

  • Democracy: Inverse frequency (called period) of a democratic process, use 0 to turn it off. A democratic process is a bottom-up process which consists of an institution changing its trait as a result of a referendum in which multiple agents vote to change a trait, increasing similarity with their institution. The most voted trait is changed in the institution. Democracy by itself has a small effect in cultural diversity but creates more institutions; but it prevents (or has a moderator effect) the explosion of diversity when propaganda is present (Ulloa et al., 2016).

  • Propaganda: Inverse frequency (called period) of a propagandist process, use 0 to turn it off. A propagandist process is a top-down process which consists of an institution propagating one of its traits on the agents that belong to it. The trait (and corresponding feature) is chosen based on the most conflicting trait, i.e. the one that produces most dissimilarity between the institution and its agents. Propaganda increases the number of cultures, though it can be partially reduced by the presence of democracy (Ulloa et al., 2016) .

The following table provides a guideline for parameter setting. It is possible that many other values will provide interesting results (that is the idea of the software), this is just a set of values that, according to the literature, will very likely produce diversity.

Parameter M1 M2 M3 M4
Rows 10 32 32 32
Columns 10 32 32 32
Radius 1 < 6 <= 6 <= 6
Features 5 6 6 6
Traits 15 14 14 14
Mutation 0 < 0.001 < 0.01 < 0.01
Selection Error 0 < 0.001 < 0.01 < 0.01
Influence n/a n/a n/a 0.8-0.82
Loyalty n/a n/a n/a 0.05-0.95
Democracy n/a n/a n/a 1-100
Propaganda n/a n/a n/a 1-100

Finally, there are controls to load and save configuration. Indeed, you will find a preset configuration that fits inside the values of the table for each of the models M1-M4 in the package.

  • Load and save configurations: This section at the bottom of the dialog helps to load pre-set configurations, for example those which are similar to experiments previously executed in literature, and others that the users can set up and save themselves.

  • Save: The user can save their own configurations. Saving configuration is important in order to run simulations in batch mode (see Batch Mode).

  • Load: A user can load a previously saved configuration.