Ron Bronson

Draft Lab

A comparative research instrument for sports draft lottery design.

Screenshot of giantplanet.org

Every major professional sports league shares one structural problem: losing is rational. When the team at the bottom of the standings receives the best odds at the next generation’s star player, organizations face a perverse incentive to fail deliberately. Draft lotteries exist to blunt this, and every league has built its own approach.

Draft Lab asks one question across fifteen rule systems and six professional leagues: what does this mechanism actually reward? Each system runs through thousands of synthetic seasons, measuring how teams behave, how draft equity distributes, and whether the rules create an environment where winning is always the better strategy.

The centerpiece is the Chip Window, an original mechanism designed here. The window opens mid-season: teams bet chips on nightly games during a defined stretch, and those accumulated bets determine lottery position. Tanking during the window costs you picks. Competing for chips requires playing to win every night the window is open. The mechanism makes tanking structurally impossible.

What it does

Runs parametric Monte Carlo simulations across:

  • 15 lottery systems — current NBA and NHL formats alongside original proposals including a UEFA-style rolling coefficient, a single-elimination tournament, and a fixed 30-year wheel.
  • 6 leagues — NBA, NHL, MLB, WNBA, PWHL, MLS — each with accurate team counts, schedule lengths, playoff structures, and published odds tables.
  • Comparative analysis — any two systems can be run head-to-head, producing side-by-side breakdowns of pick distribution, competitive balance (Gini coefficient), tanking frequency, and effort curves across the season.

Stack & method

Backend
Python · FastAPI · custom Monte Carlo engine, seed-controlled for reproducibility.
Frontend
Server-rendered HTML via Jinja2 · pure SVG charting with all geometry computed server-side · minimal vanilla JavaScript for interactivity.
Data layer
Stateless simulation. Each run is fully deterministic from its seed and fully parameterized from its league config. Historical NBA seasons (2000–2026) ground the simulator against reality.
Architecture
A single LeagueConfig dataclass holds every league-specific parameter. A LotterySystem protocol defines the interface all fifteen systems implement. The simulation engine is decoupled from the web layer — it runs identically in a test, a request handler, or a notebook.

The design argument

Most sports reform proposals are rhetorical. They describe the outcomes they want and skip past the incentives their rules would actually create. Draft Lab treats league design the way an engineer treats load-bearing structure — something you can test, measure, and iterate before anything is built.

The Chip Window started as a constraint: what is the minimal change to the rules that makes tanking structurally worse than competing? The answer became a mechanism. The mechanism became a simulation. The simulation became evidence.

giantplanet.org