The Evolution of Cooperation Shade Shutters School of Life Sciences & Center for Environmental Studies
Why Cooperation? No true Darwinian explanation “The Tragedy of the Commons” The prisoners’ dilemma Often a prerequisite for sustainability
The Prisoners’ Dilemma
Why Does Cooperation Exist? Theories of kin selection Theories of reciprocal altruism Theories of non-reciprocal altruism –Riolo et al (2001)
The Model Proposed by Riolo et al (2001) Agent-based Programmed in JAVA
Agent Parameters Each agent has only 3 variables –Tag value –Recognition Tolerance –Fitness
Tag Value A generic trait detectable by others –Think of this as hair or eye color –A value on [0, 1] and initially random
Recognition Tolerance A range around each agent’s Tag value –A measure of how likely an agent is to consider another agent “similar” –A value on [0, 1] and initially random
The 3 phases of a generation 1) Pairings –Random, unidirectional meetings between agents –The initiating agent donates to the other if the other is deemed “similar” and is charged a cost –Fitness t+1 = Fitness t + donations - costs 2) Matings –Random meetings in which fitnesses are compared –Agent with greater fitness enters next generation –Winners of ties are determined randomly (50/50)
The 3 phases of a generation 3) Random mutations –With a probability of m, each agent destined for the next generation mutates –Mutation = Gaussian noise (µ = 0, σ = 1) added to both the Tag and Tolerance –Parameters knocked outside of [0, 1] by mutation are adjusted back to either 0 or 1
Pairing example Agent A (the selecting agent) –Tag = 0.54, Tolerance = 0.22 –Range of recognition = 0.54 ± 0.22 or [0.32, 0.76] Agent B (the selected agent) –Tag = 0.38, Tolerance - irrelevant Result –Agent A sees B as similar and donates –Fitness A = Fitness A – cost –Fitness B = Fitness B + donation
Expected outcome Those that donate for nothing in return should go extinct Tolerance should evolve to 0 Donations should cease
Results of a typical run
Simulation parameters 100 agents per generation Each pairs with 3 other agents Each agent mates with 1 other agent 30,000 generation per run 30 runs
Full simulation results Average tolerance = Average donation rate = 0.737
Criticisms Ratio of donation to cost was high –Donation = 1.00, cost = 0.05 –When cost > 0.50, donations go away Dependent on tolerance being ≤ –Riolo: donate if |tag A – tag B | ≤ tolerance –When using strict <, donations go to 0
Conclusion Cooperation is a largely unexplained phenomenon Cooperation is essential to the sustainable management of common pool resources Agent-based modelling is helping to explain cooperation
If you’re still interested… The Journal of Artificial Societies and Social Simulations (on-line journal) – Complexity and Ecosystem Management: The Theory and Practice of Multi-agent Systems (edited volume) –Ed. by Marco Janssen