Reinforcement / Methods
verifiedSelf-Play
A system improves by playing against itself. There is no human data and no fixed opponent — the training signal comes from the game's own rules, and the difficulty scales automatically because the opponent is always exactly as good as you are.
That automatic difficulty is the mechanism people underrate. A fixed opponent is either too hard to learn from or too easy to learn from for most of training; an opponent that improves alongside you is at the right difficulty by construction, which is a curriculum nobody had to design. The requirement is a cheap and exact reward, which games have and almost nothing else does — extending this to open domains is mostly the problem of what to put where the rules were.
Improvement compounds because each round trains against the previous round's policy, so gains multiply rather than adding — but only while the opponent distribution stays broad. Training solely against the current best invites cycling, where A beats B beats C beats A and nothing improves; keeping a population or a history of past versions is what prevents it, and that mitigation is what makes the compounding real rather than apparent.
past-opponents holds 17% of the budget; rest holds the remaining 83%.
Past versions kept in the opponent pool, against the current best alone, in versions. Drag the pool up to watch the training distribution broaden — a pool of one invites cycling, where each policy beats the last and nothing gets better.
Reviewed by opendroid · 2026-08-18
- arXiv:1712.01815 — Mastering Chess and Shogi by Self-Play with a General Reinforcement Learning Algorithm
- arXiv:1511.06732 — Sequence Level Training with Recurrent Neural Networks