Observable-state MCTS
Grow the look-ahead by simulation, but only ever let the search know what a player would actually be able to see.
rejectedrecordedInstead of examining every column to a fixed depth, grow the look-ahead only where it looks promising, guided by quick simulated playouts.
4 approaches, featured pages first. The label above each title is the technique the approach uses; the same pages appear under that technique on the approaches index.
Instead of examining every column to a fixed depth, grow the look-ahead only where it looks promising, guided by quick simulated playouts.
The reference policy in this repository is fair expectimax at depth 4: at every turn it considers all seven columns, then all seven again after the game deals the next disc, and so on for four of the player's own moves. Nothing is skipped. That completeness is what makes it trustworthy, and it is also what makes it expensive: the number of positions at the bottom of the tree multiplies by roughly forty-nine every time you look one move further ahead.
Monte Carlo tree search asks a different question. Rather than how do I cover everything four moves out, it asks where is my next unit of thinking best spent. It plays a future forward quickly, sees roughly how it turned out, records that against the first move it made, and lets that record decide where to look next time. Moves that keep doing well get explored deeply; moves that keep doing badly are visited a few times and left alone. The tree ends up lopsided — very deep along a few lines, one node thick along the rest.
Two consequences follow, and both matter here. A lopsided tree can reach much further ahead than a complete one for the same cost, which is attractive in a game where the thing that kills you — falling behind on clearing discs over dozens of row rises — happens far beyond four moves. But its answer is a sample, not a calculation. Run it twice and it may pick differently; run it with a bad quick-playout policy and it will confidently rank moves by a future no good player would ever have.
At a turn, the search reads only what a player can see: the visible board, the visible next disc, the number of moves until the next rise, and whether the game is over. Its output is one column. In between, it repeats one loop a few hundred to a few thousand times:
After the last repetition, play the column with the best record at the root.
Between your move and your next move, the game does two things you cannot predict: it deals a disc, and, if your move cracked a gray disc open, it shows you a number that was hidden. A tempting shortcut is to guess all of that in advance — imagine a complete future, plan perfectly inside it, and average over many such imagined futures. That shortcut is called determinization, and it quietly cheats: it credits a first move with a plan that could only have been made by someone who already knew the hidden number. The ledger calls that failure strategy fusion, and the family's main implementation avoids it by sampling each chance event only at the moment the search actually crosses it, and by identifying tree nodes purely by the visible position that resulted. See choice, chance, and looking ahead for how the reference handles the same problem.
Every member of this family that was tested was retired, and the one that was never tested is still sitting there unrun.
The record shows that the tree machinery worked and the thing it was built on did not. Nodes stayed within their memory budgets, the searches were deterministic and passed their information-boundary self-tests, and one variant genuinely improved on the depth-3 comparator on two of the three quantities it reported, missing only the frozen top-choice gate. But no version ever demonstrated a better whole game, and the most informative experiment in the family found that making the search bigger made it worse at the thing it was being asked to do. Scaling up the number of simulations, the horizon, and the chance sampling turned the search into a much better imitator of the short-horizon reference, while making it a worse predictor of how a position would look twenty-five moves later. The audit's own conclusion was that the weak quick-playout policy and the small replayed pool of chance outcomes were optimizing the wrong future, so the next experiment should replace the continuation, not buy a bigger budget.
| Approach | Status and evidence | Recorded outcome |
|---|---|---|
| Observable-state UCT | Rejected; ledger-recorded | Missed a frozen top-action gate by one root out of 32 |
| Confidence-gated override | Rejected; ledger-recorded | Held-out pairwise accuracy and regret both worsened |
| Scaled observable MCTS | Rejected; ledger-recorded | Larger search ranked 25-move outcomes worse |
| Learned-guidance search | Rejected; ledger-recorded | Screens were worse than the plain depth-3 comparator |
| TypeScript MCTS lab | Rejected; task-record only | "Ordinary MCTS did not establish a whole-game improvement" |
| PUCT | Unknown; repository-verified | Complete lab, preregistered gates, never run |
Sources: the experiment index tree-search table and the ledger entries "Observable-state stochastic UCT", "Confidence-gated MCTS over fair depth 3", "Scaled public-state observable MCTS", "Learned deeper-search override", and "Root reveal quadrature" in the experiment history. Per-experiment numbers are on the approach pages, each with its own evidence label. Two of the tree-search sources are locked to the historical 7,000-point Sequence scoring and are archival; the research status page explains why those are not comparable with corrected Hardcore results.
A small Monte Carlo tree search — 400 simulations, a sixteen-move horizon — is registered as a policy in the benchmark playground and plays the scripted rounds on the leaderboard. That is a demonstration you can watch, not evidence. Eight fixed rounds cannot separate policies whose scores are heavy-tailed, and the rounds are visible in the repository, so nothing there is ever used as a research result.
strategies.md lists as still worth
trying: replace the continuation, not the budget.