Evolution of altruistic punishment in heterogeneous populations

The applet below shows the effect of heterogeneity in the ability to punish on the ability of altruistic behaviour to stabilize in two types of populations playing a voluntary public goods game with punishment in the form of a simplex. Each dot in the simplex represents a simulation. The location of the dot shows the initial situation of the population. The closer the dot is to one of the corners, the higher the initial proportion of loners (L), altruistic non-punishers (AN), selfish non-punisher (SN) or altruistic punishers (AP) in the population. For example, the dot closest to the corner L represents the simulation in which almost the entire population consisted of loners, which refuse to play the game. The color and brightness of each dot indicates the fate of the population as a whole.

To show the effects of heterogeneity, the population is divided into two classes that can differ in the cost they pay to punish others for their selfish behaviour, as well as the effectiveness of their punishment (i.e. the cost selfish individuals pay for being punished).

Infinite and well-mixed population

In the infinite and well-mixed population, individuals play the game with randomly selected co-players, and are assumed never to meet the same co-players twice. In this scenario, bright dots indicate that eventually, the entire population is altruistic. That is, the entire population contributes to the public good. Light gray dots indicate the same, but also that individuals that have to pay a high cost to punish never actually punish. Dark gray dots, on the other hand, indicate that selfish behaviour persists in the population.

Lattice-based population

In the lattice-based population, individuals only play the game in specific groups. Each individual is part of five different groups, and only plays the game with the members of those groups. In this scenario, the brightness of the dots indicates how much of the population eventually becomes altruistic: bright white dots show that the entire population contributes to the public good, while black dots indicate that everybody refuses to play the game.

The color of a dot indicates how punishers are distributed across the classes. When a dot is red, this means that punishers are mostly those individuals that pay the least for punishing. Blue dots, on the other hand, show that punishment is done mostly by the individuals that are more effective punishers. The brighter the color of a dot, the higher the difference: a gray dot shows that on average, punishers are uniformly distributed across classes.


Since the results are shown in a three-dimensional figure, the full extent of the results are not immediately visible. Also, the combination of brightness and color may make some of the results harder to determine. The following controls are available:

  • Up arrow or left arrow: Move the slice plane backwards.
  • Down arrow or right arrow: Move the slice plane forwards.
  • Page up: Move the slice plane backwards ten steps.
  • Page down: Move the slice plane forwards ten steps.
  • C or S: Toggle the display of color.
  • B or V: Toggle the display of brightness.

The applet can also be downloaded to be used as an offline version.

This entry was posted in Uncategorized. Bookmark the permalink.