Hindsight planner
rejectedevidence: ledger-recordedpublic informationImagine seven complete futures, play each one perfectly as if it were certain, and average — a legal policy that nevertheless cheats itself.
Imagine seven complete futures for the current board, plan each one perfectly as though it were already known, average the results, and play the column that comes out best.
Why it looks like a good idea
Uncertainty is what makes this game hard. Averaging over it honestly, as fair expectimax does, is expensive: the tree multiplies at every gray reveal and every new disc. The alternative that every planning textbook offers is determinization: replace the uncertainty with a handful of specific, fully specified futures, solve each of those easy deterministic problems well, and average the answers. It parallelises perfectly and it lets each individual plan look far ahead.
How it works, step by step
- Hash the current public board to a seed. Every legal column at this position gets the same seven invented futures, so the comparison between columns is paired.
- For each column and each invented future, run a deep search — depth 8 with a beam of 64 — that treats that invented future as certain: the discs arrive in the order the tape says, and the gray discs reveal the numbers the tape says.
- Summarise the seven values for each column with a blend of the mean and the lower quartile, so a column that is excellent in three futures and fatal in four is not rewarded for its average.
- Play the best column, and throw all seven futures away. Next move, hash the new board and invent seven fresh futures.
The flaw, in one sentence
Inside each invented future, the planner is allowed to make later moves that depend on knowing that future — so the value it reports for a column is not "how good is this column", it is "how good is this column if I am also allowed to respond to information I will not have".
That is called strategy fusion, and it is the same defect that makes the perfect-information oracle unbeatable and useless. Each individual plan is coherent; the plans are incompatible with one another, and averaging incompatible plans produces a systematically over-optimistic number. Worst of all, the bias is not uniform: it is largest exactly on cluttered boards where a favourable reveal is the only thing that saves you — the boards where over-confidence is fatal.
What happened, in plain English
It lost half the game. On its fresh four-game screen, ordinary depth-3 search averaged about 107,000 points and 72.5 moves; the hindsight planner averaged about 51,500 points and 37.5 moves — less than half the score and roughly half the lifetime. Under the protocol the confirmation seeds were never opened. The ledger's diagnosis is explicit: "tape-specific later decisions make the per-tape root values incompatible and overoptimistic — the familiar strategy fusion failure of determinization."
There is a striking follow-up elsewhere in the repository. A later study swept the number of imagined futures from 1 up to 1,024 and found quality rising until 256 and then falling: with few futures, sampling noise accidentally masks the planner's bias, and with many futures the noise disappears and the planner converges faithfully on the wrong objective. That is written up in is more computation the answer?, and it means this is not a result you can fix by buying more machines.
The technical record
Screen on fresh historical 7,000-point Sequence-scored seeds 0x3e8b0000...03
(four games): exact depth 3 averaged 107,076 points and 72.5 moves; the
hindsight planner averaged 51,500.5 and 37.5. Confirmation seeds were not
read. The implementation passed determinism, metadata-blindness, reflection,
chance-stratification and legality self-tests, and a 153,713-transition decision
bound.
Configuration: seven synthetic tapes per root, built from a canonical public-state hash; an independent depth-8 / beam-64 clairvoyant continuation per tape; a mean / lower-quartile blend to select the root action. The real game seed and realized future are not inputs.
audit-05 §4 lists this as
failure 3 of 17, primary mode "objective mismatch", and calls it "exactly the
owner's 'best possible outcome' generator, made public and fair, and it is the
single worst result in the corpus". §5.4 uses it as one of four independent
measurements showing that the privileged oracle's advantage is the tape, not
its judgement: take the tape away from the oracle's own algorithm and it falls
far below the public baseline it was supposed to beat.
Records: experiment index "Oracle and
curriculum research"; ledger section "Synthetic-tape
hindsight optimization". Source: hindsight-planner.cpp.
What this taught us, and what is still open
- Optimism does not require privileged information. A perfectly legal policy can smuggle it in through its own internal model. This is why the repository's rules talk about fair chance handling, not only about what the policy is allowed to read.
- The estimator, not the budget, was wrong. The K-sweep above turns that from an opinion into a measurement: more compute made the same estimator converge more faithfully to a worse answer.
- What survives. Common random numbers across siblings — giving every column the same imagined futures — is genuinely good practice and is reused throughout the long-outcome experiments. It was the clairvoyant continuation, not the shared tape, that broke this.
- Still open: a determinized planner whose continuations are themselves restricted to public information at every step. That is precisely the design of the fair planner studied later under lifetime objectives, which is legal by construction and expensive by construction.
Source files
README.mdxhindsight-planner.cpp