MODEL GAME THEORY & SAPPHONS · GAME THEORY · EQUILIBRIUM · under KEEPER ERIS

Nash Equilibrium · No Regrets

A Nash equilibrium is a strategy for each player such that nobody gains by changing alone. Nash proved in 1950 that every finite game has one if mixing is allowed. Type any 2 × 2 game and the I-13 VM finds every equilibrium, pure and mixed.

Dave (t252): "i love that set up can you build some pages looking into game theory and those sappons you just built, see if you can build some folded stars and stuff"

Dave’s I-13 engine on this page

booting I-13 v0.3…

LIT What the VM computes here: Every edit sends the 8 payoffs to the VM as literals. It checks all 4 cells for mutual best responses, solves the two indifference equations for the mixed equilibrium, and keeps it only if both probabilities are strictly between 0 and 1. JS only draws.

LIT John Nash, “Equilibrium points in n-person games”, PNAS 36:48 (1950): in any finite game, some profile of (possibly mixed) strategies has every player’s strategy a best response to the others’. The proof uses Kakutani’s fixed-point theorem. Nash, Harsanyi and Selten shared the 1994 economics Nobel.

LIT How to find one in a 2 × 2 game: check the 4 cells for mutual best responses (pure equilibria), then look for the mix that makes the other player indifferent. In the Battle of the Sexes, the row player must play Opera with p = 2/3 so the column player doesn’t care, and the column player with q = 1/3.

LIT Generic games have an odd number of equilibria (Wilson 1971). Battle of the Sexes has 3, Prisoner’s Dilemma 1, and Chicken 3.

MODEL Score on every page in this batch: NashConv, the total either player could gain by switching to a best response against the other’s average play. It is 0 exactly at a Nash equilibrium, and the score is 1 − NashConv / (payoff range).

WALL An equilibrium says nothing about how players get there, and many games have several. Which one people actually reach is an empirical question (see the coordination page).

Lab MODEL interactive, computed on the I-13 VM

preset

row payoffs A: / · column payoffs B: /

pink = row player’s best response to q, blue = column player’s best response to p; white dots = where they cross = equilibria.

Sources (browsed Oct 2026)

  1. Nash (1950) Equilibrium points in n-person games, PNAS 36:48
  2. Nobel Prize in Economic Sciences 1994 (Harsanyi, Nash, Selten)
  3. Wilson (1971) Computing equilibria of n-person games, SIAM J Appl Math 21:80 (oddness)
  4. Hart & Mas-Colell (2000) A simple adaptive procedure leading to correlated equilibrium, Econometrica 68:1127 (regret matching)

MODEL Two agents, as Dave set for every world: DRIVER A and DRIVER B play Chicken over and over by regret matching (Hart & Mas-Colell 2000), each shifting toward the moves it regrets not having played. Their score is 1 − NashConv/11 of their empirical average play (1 = an exact Nash equilibrium), and the I-13 VM re-computes NashConv from the raw averages every time the score improves. The centrepiece is a folded star {6/2} whose fold rises with the score. Three.js r160 from a pinned CDN, devicePixelRatio capped at 2. Drag to orbit, scroll to zoom.

LIT on load: the seal is recomputed, the page’s facts are re-checked as arithmetic (throws on mismatch), 200 seeded rounds of the two agents must improve their score, the workspace loop logs 5 entries, and the OBJ and SVG exports must be consistent. Then the engine boots, its SHA-256 and regression lab are checked, the VM recomputes the agents’ NashConv, and the page’s VM results are compared with independent JS.

Gallery of kept moments (WebGL snapshots):

Workspace improvement loop: instructions for agents MODEL

  1. Measure: every 40 rounds, record NashConv of the average play, the score, the rounds since the last improvement and whether regret-matching+ is on.
  2. Try next: after a 40-round plateau, switch both agents to regret-matching+; if still stuck, halve the exploration ε; if still stuck, forget half the old history. While NashConv falls, keep course (ε × 0.9); if it rises, explore more (ε × 1.25).
  3. Log back: append {entry, round, measured, tried, ε} to the workspace log (in the JSON export and the list below), and have the I-13 VM recompute NashConv.
  4. Repeat, forever: never stop improving. Re-check every claim against the engine and the sources before you make it.

Live workspace log:

    Shared board MODEL DRIVER A ↔ DRIVER B

      Background art: MODEL a generative field seeded from this page’s seal.

      proving…

      Seal sha256(name|slug|blurb): 3afa08eb27967daee258c593cb6b2b2ba336b21b182a68889f4f8d32eaa1c7c1

      ↑ Game Theory & Sapphons index · Protein Folding (same engine) · ← ERIS, keeper of Mayhem