Nowak Mechanisms
Status
Python-backed. This section describes the five named Moran-process packages under moran_models/nowak_mechanisms/ in the sibling EvolvedCooperation repository. None are browser replay case studies yet.
This section contains one package for each of the five mechanisms for the evolution of cooperation identified in Nowak (2006). Each package is a thin wrapper over the shared interaction_kernel Moran engine.
Shared Engine
All five mechanisms run on the same Moran update loop. What differs across them is the routing step — specifically the kernel that distributes cooperative benefit to neighbors, and any additional per-site state that modulates it.
The full engine description is on the Interaction Kernel page.
The Five Mechanisms
| Mechanism | How cooperation is sustained |
|---|---|
| Kin Selection | Benefit is routed with a lineage bias. Same-lineage neighbors receive more weight, operationalising Hamilton's rule rB > C. |
| Direct Reciprocity | Each site carries a memory of recently received help. Expressed cooperation is scaled by that memory, creating a direct reciprocal feedback loop. |
| Indirect Reciprocity | Each site carries a public reputation. The routing kernel is biased toward higher-reputation recipients, sustaining cooperation through a reputation channel. |
| Network Reciprocity | Benefit is routed uniformly over local grid neighbors. Spatial structure alone protects cooperator clusters from exploitation, with no memory or lineage bias. |
| Group Selection | Sites are partitioned into groups. Individual Moran replacement runs each step. Periodically the highest-fitness group is copied into the lowest-fitness group, adding a second level of selection. |
Beyond These Five
Nowak's taxonomy is a useful compact framework but not an exhaustive list. Important cooperation mechanisms outside the five include:
- Partner choice — agents preferentially interact with cooperative partners and abandon poor ones.
- Partner control — agents alter partner incentives through sanctions, punishment, or exclusion.
- Byproduct mutualism — an action benefits others because it directly benefits the actor at the same time.
- Policing — third parties suppress selfish behavior or stabilize collective rules.
- Pseudoreciprocity — an actor benefits another because a more productive partner later improves the actor's own payoff.
- Greenbeard effects — a recognizable trait marks cooperators and directs help toward others carrying the same marker.
- Niche construction — cooperative behavior changes the environment, which then feeds back on selection.
- Institutional enforcement — norms, monitoring, and punishment stabilize cooperation at social scales.
- General assortment — cooperators interact with cooperators more often than random mixing predicts, regardless of the specific cause.
The shared condition across all of them mirrors the repo-level feedback framing: cooperation spreads when enough of the value it creates returns to cooperators or copies of the cooperative rule to outweigh the private cost.
References
- Nowak, M. A. (2006). Five rules for the evolution of cooperation. Science, 314(5805), 1560–1563. https://doi.org/10.1126/science.1133755
- Hamilton, W. D. (1964). The genetical evolution of social behaviour. I. Journal of Theoretical Biology, 7(1), 1–16. https://doi.org/10.1016/0022-5193(64)90038-4