Home
Help
Resources
Extensions
FAQ
NetLogo Publications
Donate

Models:
Library
Community
Modeling Commons

User Manuals:
Web
Printable
Chinese
Czech
Farsi / Persian
Japanese
Spanish

## NetLogo User Community Models

WHAT IS IT?

A simple model of cooperators (altruists/), cooperators who punish non-cooperators (police), non-cooperators who punish cooperators (terrorists/droogs), and non-cooperators who don't punish anybody.

HOW IT WORKS

At each turn, all individuals throw their bounty into a pot (if they cooperate), where it is doubled, and then divided among neighbors (even if they are defectors and didn't cooperate). Police can then punish those who don't cooperate (but they pay a cost to do so) and terrorist/droogs can punish cooperators (but they also pay a cost to do so). Then there is a social-adjustment, where individuals can change to be like there neighbors if their neighbors did better than them in the last turn.

HOW TO USE IT

Adjust parameters to see what happens:
1. coop-cost = the cost of cooperating, it is subtracted from cooperators at each turn.
2. base-cost-p = the cost of being a policeman, substracted each turn
3. punishment = the amount subtracted from the punished.
4. cost-punishment = the amount subtracted from the punishers for each individual punished
5. p-change = the probability of changing to be like a neighbor who did better in the last turn.
6. mutate? = allows a few individuals to change to be something else, randomly (this is useful to turn on for a minute after the population goes to fixation--or you can press 'setup' and randomly mutate everyone).
7. allow-terrorists?? = will you allow non-cooperators to punish (i.e., will you allow terrorist/droogs in your population?)

THINGS TO NOTICE

If there is no cost to punishing (cost-punishment = 0), then terrorists and defectors win often.
Note what happens if you don't allow terrorists but have no cost to punishing; then cooperators always win.
If there is a cost to punishing (cost-punishment > 0 ), then things are less predictable, and police can sometimes win.
Try other things, like increasing the base-cost for punishing, the amount of punishment, and whether or not you allow terrorists.

EXTENDING THE MODEL

You could try making it so that terrorists only punish the police (so they are strict retaliators); or you could make them hurt everyone (defectors as well).

CREDITS AND REFERENCES

This simulation was built by Thomas Hills (2006, updated in 2010). This simulation is discussed in more detail in "Building Ethical Agent Based Simulations: A Case Study of a Pathological Problem in Altruistic Punishment", presented at AlifeX ( the pdf can be found here: http://ethicalife.dynalias.org/abstracts.html ). Please email me with any bugs: thomhills@gmail.com.