Prisoner's Dilemma
Iterated Prisoner's Dilemma with truly simultaneous, synchronous moves.
The iterated Prisoner's Dilemma with genuinely simultaneous moves. Players are paired by a mutual opponent reference and act each round under a strategy — tit-for-tat, always-cooperate, always-defect or random. Because the update is synchronous, every player's move is computed against a frozen snapshot of the previous round, so one player's choice cannot leak into the other's decision within the same round. Payoffs accumulate under the canonical ordering T > R > P > S.
A precise demonstration of synchronous update semantics, where simultaneity is a correctness property rather than an approximation. The strategy mix and resulting score trajectories are reproducible from the event log, making it a clean substrate for studying cooperation dynamics.
A live sample of the dataset this scenario generates.
Linked tables with guaranteed referential integrity.
Generated REST endpoints. Also exposed as MCP tools.
OSI-compatible definition, emitted with the dataset.
# prisoners-dilemma.osi.yaml — emitted automatically semantic_model: name: "prisoners-dilemma" source: "duckdb://prisoners-dilemma.db" entities: - name: player primary_key: id dimensions: - name: state type: categorical - name: t type: time measures: - name: row_count agg: count - name: active agg: sum filter: "state = 'ACTIVE'"
More worlds.
Game of Life
Conway's automaton as a perfectly observable, deterministic grid world.
London Underground
A live tube graph — eleven lines, hundreds of trains, platforms held as a mutex.
Pac-Man
A self-playing arcade game — ghosts chase a flood-filled distance field.