This Applet should run in your browser windown. Alterantively you can view/download model file: Symbiosis-be-final.nlogo (this will necessitate downloading and installing NetLogo).
powered by NetLogo
The applet requires Java 1.4.1 or higher. It will not run on
Windows 95 or Mac OS 8 or 9. Mac users must have OS X 10.2.6 or higher
a browser that supports Java 1.4. (Safari works, IE does not.
Mac OS X comes with Safari. Open Safari and set it as your default
web browser under Safari/Preferences/General.)
On other operating systems, you may obtain the latest Java plugin from
Sun's Java site.
This model demonstrates how cooperation (sharing) can be achieved through essentially selfish groups. Over time, groups of symbiotic relationships develop, and eventually collapse again.
This is the model described in the paper:
Edmonds, B. (2006) The Emergence of Symbiotic Groups Resulting From Skill-Differentiation and Tags. Journal of Artificial Societies and Social Simulation, 9(1). (http://jasss.soc.surrey.ac.uk/9/1/10.html).
Each agent can harvest food of a single type, but must have stores of all food types in order to survive. Agents with similar tag values will share excess resources, giving a means of accessing other resources. Agents who gather enough resources reproduce, propagting their strategies (with some mutation); agents who fail to gather sufficient resources die.
Press setup to initialise the model, then "step" for a single step, or "go" for continuous running.
Notice that setting maxNumNew to 0 is catastrophic - some random mutation of the population is essential. Once mutual donation has started occurring (when there are enough overlapping individuals of each food type) the population takes of and a "tag group" forms. Eventually this group fails, followed by a short period of non-viability before a new group forms.
The "Tag Profile" is a visualisation of all the individuals that are alive at this instance. Each individual is represented as a horizontal line, whose centre is at the individual's tag value and whose width is that of its tollerance. Given enough spare food each individual might donate some of its unneeded food to any other current individuals whose centre (i.e. tag) lies within its width. The bollour of the individual indicates its skill (i.e. the type of nutrition it can directly harvest). Clearly to be viable there must be some indivuals of each kind in each viablew tag group. The horizontal position of the lines indicate the age of the individual. Individuals of the same age are spread out a little horizontally so they can be seen.
The "Agent Atributes" graph shows the population size, the avereage tollerance of individuals and the rate at which individuals donate to others.
The "Subpopulations" graph shows the number of individuals of each skill type as a seperate line of dots (one colour for each type). Once a cooperative (i.e. mutally donating) tag group forms you see the population of all types rise and then oscilate with respect of each other until the group eventually collapses again to a situation of non-viability.
The Turtle view is another visualisation of the current population. Each individual is represented by a seperate turtle their: x-position being their tag, y-position being their tolerance (up to the maximum value), their colour being their skill type, their size representing the average size of their stores, and the direction indicating their age (from veritcally upwards for age 0 and rotating to the right each time interval until almost vertical again at their maximum age).
The model was written by Bruce Edmonds and reimplemented in Java and Netlogo by Emma Norling.
This model came out of many discussions with David Hales which started when we were trying to understand a model published as:
Riolo, R. L., Cohen, M. D. and Axelrod, R. (2001) Evolution of cooperation without reciprocity. Nature, 411:441-443.
Our analysis and critique of this model was:
Edmonds, B. and Hales, D. (2003) Replication, Replication and Replication - Some Hard Lessons from Model Alignment. Journal of Artificial Societies and Social Simulation 6(4) (http://jasss.soc.surrey.ac.uk/6/4/11.html)
This model is an attempt to produce a model of tag-based cooperation which did not suffer from the defects of the Riolo et al model, but showed genuiine tag-based cooperation.
The page for this model is at: http://cfpm.org/cpmrep140.html