clay-borg/simulators/openspiel.md
tegwick b590e7fd59
Some checks failed
ci / check (push) Failing after 4s
simulators/: persist the survey, and let it shrink two of the three tracks
Eight profiles on a common schema, each marking what was checked against a
source this session and what is background recollection. Three are marked
unverified in full — Machinations, the play substrates, most of RBG — and
say so rather than reading as evaluations. Written straight after three
review rounds whose entire yield was claims outrunning what had been
checked, so the confidence rule is the first thing in the README.

The survey changed the plan, which is what a survey is for.

Track C was described in Positioning as open ground. It is not: Browne
published 57 criteria for game quality, and Ai Ai already computes
designer-facing measures — drama, lead changes, branching factor,
completion, duration — from played games. The track becomes adopt, credit
and find the gap. The gap looks real: those measures presume a leader, and
SHARED GROUND has none — Modes.csv gives its tiebreak as "Not applicable".

Track B probably adopts rather than builds. OpenSpiel implements CFR,
best-response and exploitability over games that are simultaneous-move,
imperfect-information and co-operative, which is all four of GROUND's
awkward properties. "Does ATTACK ever pay" is a best-response question,
and we spent three review rounds refining a two-policy sweep for it. The
first Track B task is now one question — is exploitability meaningful for
a co-operative game with a shared threshold — not a build.

The cost of not surveying earlier is therefore measurable, and is recorded
rather than glossed.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-08 11:56:27 +02:00

3.1 KiB
Raw Blame History

OpenSpiel

Google DeepMind · C++ core with Python bindings · Apache-2.0 unverified · checked for scope and algorithms

What it optimises for

Research in reinforcement learning and search/planning in games, with a strong game-theoretic algorithm library.

Supports n-player single- and multi-agent, zero-sum, cooperative and general-sum, one-shot and sequential, turn-taking and simultaneous-move, perfect and imperfect information — plus grid worlds and social dilemmas. checked

How a game is defined

Games are implemented against a C++ (or Python) API. checked — this is a programming interface, not a description language, which is the axis where Ludii and Ai Ai differ from it.

What it can analyse

The reason this profile matters for Track B. Implemented algorithms include CFR and its Monte-Carlo variants, Deep CFR, exploitability and best-response computation, fictitious play (XFP, NFSP), PSRO, α-Rank, replicator/evolutionary dynamics, minimax, MCTS, and value iteration. checked

Exploitability is the key one: how much an opponent gains by deviating to a best response — a direct, computable measure of how far from equilibrium a strategy is. checked

What it does not do

  • Nothing design-facing. It answers "how strong is this strategy" and "how far from equilibrium", not "is this rule doing its job".
  • No game description language, so no cheap path for a designer.
  • No evidence discipline: outputs are research data.

Relevance to clay-borg

Track B, and it is very likely the answer rather than a competitor.

Our current instrument for "does ATTACK ever pay" is two hand-written policies and a rank parameter. Exploitability and best-response are the principled versions of that question, and they are implemented, tested and published here.

GROUND is simultaneous-move, imperfect-information, cooperative with a defection mechanic — all four are inside OpenSpiel's stated scope.

What to steal

  • Exploitability as the replacement for "we tried three policies". F17's question — does ATTACK earn its place — is a best-response question wearing a sweep's clothes.
  • The distinction between cooperative, general-sum and zero-sum as a first-class property of a game, which our kernel does not represent.

What to avoid

Quoting a solution concept without its assumptions. An equilibrium computed over a policy class we chose is a statement about that class. This is the wrong-subject error in mathematical dress, and it is the specific risk Positioning.md §4 flags for Track B.

Open questions

  • Cost of expressing a GROUND-like game against its API versus our kernel.
  • Whether exploitability is meaningful for a co-operative game with a shared threshold — open, and it is the question that decides whether Track B adopts this or only borrows its vocabulary.
  • Licence.

Sources