Information Diffusion  -  A Tutorial

by Manfred Füllsack

WHAT IS IT?

This model simulates the spread of  information in society. Think of political opinions for instance, of convictions, of fashion trends, scientific paradigms, rumours etc. The model demonstrates the social construction of this information, i.e. the impact of the social environment on our convictions. See below how it works.

Part 1 - Grid-diffusion

To get an initial idea, the first part of the model demonstrates the diffusion of information on a regular grid. Agents align their conviction with the one of their fellows. Obviously, this alludes to Tom Schelling's famous segregation model.

HOW IT WORKS

Push the <grid-setup>-button to produce a random initial distribution of white and red points which represent agents and here are called "believers" (white) and "disbelievers" (red). Push <go> to watch them "arrange  each other" corresponding to their idea of how many agents of the same kind make up a perfect neighborhood. This "idea" can be set with the sliders <believers-want-similar> and <disbelievers-want-similar> (If the sliders are set at 50%, the <type-of-neighborhood>-chooser is set at "Moore" and the <random-deviation>-slider is set at zero each agent wants a minimum of four of her immediate eight neighbors to be of the same color. Otherwise she changes color). In order to "arrange", each time step (tick) each agent looks at her neighborhood and adjusts her conviction ("believer" or "disbeliever") according to the convictions of her neighbors.

What exactly is meant by "neighborhood" can be set with the <type-of-neighborhood>-chooser. A so called Von-Neumann-neighborhood consists of the four agents to the north, east, south and west of the acting agent. A Moore-neighborhood additionally includes the agents north-east, south-east, south-west and north-west of the acting agent. It thus consists of eight agents. The third alternative called SITSIM defines neighborhood with the social impact theory of Bibb Latané (1981). This theory calculates the impact of one agent on another using an inverse power law which means that the influence of one agent on another is inversely proportional to their separation. A nearby agent is more influential than one far away. (Note that this alternative is pretty slow since each agent has to be computed in relation to all others. You can either speed up the model by moving the <speed>-slider on top of the display to the right. Or hit the <go>-button twice and watch the agents move for just one tick.)

The percentage of "believers" at the beginning of the simulation (at <grid-setup>) can be adjusted with the slider <%-believers>. The <random-deviation>-slider adds a certain randomly distributed variation factor to the agent's idea of how many agents of the same kind make up a perfect neighborhood.

Part 2 - Network-diffusion

This part of the model simulates the spread of  information in networks. Agents' convictions are formed by the aggregate persuasiveness of their link-neighbors (i.e. the neighbors with a direct link to the agent).

HOW IT WORKS

By pushing <network-setup>, a randomly drawn network is displayed. The impact of agents on each other can be adjusted with the sliders <persuasiveness-believers> and <persuasiveness-disbelievers>. In addition, this persuasiveness can be randomized with the <random-deviation>-slider. The <average-degree>-slider lets you determine the number of links each agent is connected with - again randomly varied by a certain factor.

The button <persuade> makes the agents try to persuade their link-neighbors to take on their conviction, being supported thereby by other (direct) link-neighbors of the same color. The actual (aggregate) persuasiveness thus depends on the number and distribution of links. High average-degrees accelerate diffusion.

You can add, delete or move links and agents and change their conviction manually by pushing <setup-by-hand> and turning on the corresponding switch.

Calculations are made at setup and whenever you push the button <recalculate>. The "Average Path Length" indicates how many steps on average are needed to get from one node to an other. It is counted by looking for the shortest path between two nodes (done by iterating over all nodes) and then summing up all shortest paths and dividing them through the overall number of pairs of nodes. (Currently, Average Path Length is not computed if by chance some nodes are not connected. Sorry for that, I'm working on it). The "Clustering Coefficient" indicates the probability that a node i that is linked to a node j is linked to a node k as well if j and k are linked. It is counted by taking the average of all "local clustering coefficients", with the "local clustering coefficient" being the number of node-triplets linked to a node i divided through the number of triple-noded links with node i as center. It quantifies how close a node and its neighbors are to being a "clique". Networks with short "Average Path Length" and high "Clustering Coefficient" are called "Small World Networks"

The button <update-network-matrix> produces a matrix of the displayed network (Note that it might get pretty large with high agent numbers. It is best viewed with less than 15 agents).

For testing the effect of network hubs, that is of well-connected sub-networks within the overall network, a cluster of more or less tightly cooperating "disbelievers" can be formed by turning on the <cluster>-switch and then pushing <network-setup>. The cluster size can be adjusted by the <cluster-%>-slider (a percentage of <number-of-disbelievers>).

With the <type-of-diffusion>-switch you can switch to a model of diffusion known as SIR-Model (named after the three states its agents can be in: 1. "susceptible" meaning the agent can be infected (here "persuaded"), 2. "infected" meaning the agent is already "persuaded", and 3. "resistant" meaning the agent has acquired immunity).

In the SIR-part of this model, agents are not persuading each other mutually. Think of a virus. Only "disbelievers" (red nodes) are trying to "infect" "believers" (white nodes). Once infected the agents can become "resistant" to any further attacks (symbolized by turning green). The probability of becoming resistant can be adjusted with the <gain-resistance-chance>-slider. If "resistant" the agent can function as a "gatekeeper" in the diffusion process. In this case, if there is no other path along which the "virus" (or the information) can travel, the diffusion is blocked.

Additionally, the model foresees adjustment of a <virus-spread-chance>, a <recovery-chance> and a <virus-check-frequency>.

Note that SIR-Models (like other population-growth-models) tend to produce a "feedback" on their own operations. If the "virus" spreads successfully, it might undermine its own footing by eventually leaving no further agents to infect - and this even more if agents (like here) can become resistant. An initial rapid diffusion thus can be slackened by its own success (watch the red population curve grow steeply at first only to start decreasing after some time and finally fading out). Moreover, the development in SIR-Models is susceptible to chaotic behaviour.

CREDITS AND REFERENCES

Code by Manfred Füllsack (well, more or less, as always, source code on demand), Sept. 2008  (to be improved and continued)

(Some) Literature on diffusion and networks:

Bailey, Norman T. J. (1957). The Mathematical Theory of Infectious Diseases and Its Applications. London.

Barabasi, Albert-Laszlo (2003): Linked: How Everything Is Connected to Everything Else and What It Means for Business, Science, and Everyday Life. New York: Plume.

Centola, Willer und Macy (2005): The Emperor’s Dilemma. A Computational Model of Self-Enforcing Norms; in: American Journal of Sociology Vol 110(4), p. 1009-1040.

Daley, Daryl J. /Kendall, David G. (1964): Epidemics and Rumours; in: Nature 204, p. 1118.

Gladwell, Malcolm (2000) The Tipping Point: How Little Things Can Make a Big Difference (Little, Brown, New York).

Goffman, William / Newill, Vaun A. (1964): Generalization of Epidemic Theory: An Application to the Transmission of Ideas; in: Nature 204, p. 225-228.

Latané, Bibb (1981): The psychology of social impact; in: American Psychologist 36, p. 343-356.

Schelling, Thomas C. (1978): Micromotives and Macrobehavior. W. W. Norton and Co.

Watts, Duncan J. (1999): Networks, Dynamics and the Small-World Phenomenon; in: American Journal of Sociology 105, p. 493-527.

Watts, Duncan J. (2002): A simple model of global cascades on random networks; in: Proceedings of the National Academy of Sciences 99/2002: 5766-5771.