# LADDER

> Throw hundreds of cheap short searches at the board, keep only the deepest starts, and promote the survivors through longer and longer rounds.

- Canonical page (with interactive figures/demos): https://eternity2.dev/research/lab/experiments/raphael-anjou/pipelines/ladder/
- Updated: 2026-07-21
- Topics: local-search
- Source: Successive halving / restart strategies (this project's restarts concept page) — https://github.com/raphael-anjou/eternity2/blob/main/web/content/research/build/backtracking/restarts.mdx

---
Most of a long search is wasted on starts that were doomed early. LADDER
spends almost nothing to find out which beginnings are worth pursuing. It runs
a flood of very short probes, keeps the few that got deepest, and only then
pays for longer runs, on those alone. It's tournament selection for search
starts.

## How it works

Round one is hundreds of five-second probes from different random seeds, each
trying to lay down a long run of perfectly-matched cells. Keep the deepest
prefixes, and throw out ones that are near-duplicates of each other so the
survivors stay diverse.

Promote those to a longer round with tighter quality gates, then promote the
best of those to a full-length run. Each rung spends more time on fewer,
better candidates, the way successive-halving tournaments allocate effort to
the contenders that keep winning.

> **[Figure]** Interactive: the rung-by-rung progression — interactive: LadderDiagram. Rendered on the canonical page (link above); not shown in this markdown export.

> **[Figure]** Interactive: run the ladder search live — interactive: LadderLiveLab. Rendered on the canonical page (link above); not shown in this markdown export.

## The result

LADDER produced a 451 board obeying all five official clues, with no guidance
from any known record, the first time the project escaped the band of 444 to
450 that unguided search kept landing in. The finishes are determined by their
prefix: once a strong enough opening is banked, the rest follows. A longer run
later touched 452, one edge more, though 451 is the board committed and
reproducible here.

It also mapped the limits: the supply of perfect openings runs out, and beyond
a point the rungs all converge to the same ceiling. So LADDER is a good way to
find the best start, not a way past the structural walls that stop every
method near the top.

## Method

The ladder is a recursive successive-halving tournament over search *starts*,
scored by prefix depth.

- **Round one: flood.** Hundreds of 5-second probes from different seeds, each
  laying down as long a run of perfectly-matched cells as it can. Rank by the
  depth of that perfect prefix; keep the deepest, and drop near-duplicates
  (prefixes too similar to a survivor) so the kept set stays diverse.
- **Ratchet.** Each subsequent round pins the previous round's deepest banked
  prefix (a depth-15 pin in the recorded run) and probes *beyond* it, pushing
  the perfect-prefix frontier one notch further. The recursion stops when a
  round gains fewer than four cells of depth, the supply of deeper openings has
  run dry.
- **Finish.** From the three deepest distinct prefixes, run long exact-tail-14
  rungs (300 s × 8 seeds each) to convert the banked opening into a full board.

The finding is that *the finish is determined by the prefix*: once a deep enough
perfect opening is banked, the endgame follows. That is why concentrating
compute on finding the best start, rather than spreading it across full runs,
escaped the 444–450 band unguided search kept landing in. A longer finishing
round later touched 452; the committed, reproducible board here is the 451.

## Reproduce

Seeded; the probe-and-promote structure reproduces the *behaviour* reliably
though the exact board depends on seeds. The committed 451 board is checkable in
the viewer. The climb needs no corpus, frame, or witness, it runs from the
puzzle alone, so a runnable backing directory for it is planned alongside the
other from-scratch experiments.

## Open questions

What's the real ceiling of prefix-first selection given more compute on the
early rungs? Could the diversity rule be smarter about which near-duplicates
to keep? And does combining the deepest prefixes from different families beat
promoting within one?

## Related

- [REPLAY](https://eternity2.dev/research/lab/experiments/raphael-anjou/learning/replay) — Rebuild the community's strict 460 boards exactly, and in doing so discover the move ordinary solvers can't make: paying two mismatches at a single cell.
- [PRIOR](https://eternity2.dev/research/lab/experiments/raphael-anjou/learning/prior) — Build a board from nothing, breaking ties by where pieces tend to sit in the strong boards we already have. It reaches a high score with no starting board to copy.
- [Restarts and heavy tails](https://eternity2.dev/research/build/backtracking/restarts) — Run the same backtracker on the same puzzle twice and the runtimes differ by powers of ten. The community measured this in 2007; the CSP literature had already named it. The cure (cut off, reshuffle, restart) is why every record solver since has been a restart portfolio.
