The exhibit could not load.
The snapshot file is unavailable. Reload the page, or inspect the source on GitHub.
A season is
a distribution.
What changes when a team's uncertain strength is shared across its future games? Explore the NFL season through latent ratings and Monte Carlo rollouts.
This website displays a fixed historical reconstruction and precomputed scenarios. It does not fetch current scores or run a Python server.
- Expected final wins
- Central 90% simulation range
- Model playoff probability
Final regular-season wins
Height is the share of simulated seasons ending at each win total. The horizontal axis shows final wins, including wins already recorded at the cutoff.
Inspect the underlying counts
| Wins | Baseline draws | Scenario draws |
|---|
Uncertainty changes the shape of a season.
The correlated model samples each team's latent strength once per rollout, then allows it to drift. A team that is stronger than its estimated mean tends to outperform across several games together. The fixed-strength model removes that shared uncertainty.
Compare the widths and tails, not just expected wins. These modes also differ in marginal probabilities and drift; this comparison does not isolate correlation alone.
Inspect historical evaluation →Does the uncertainty
survive evaluation?
An archived NFL experiment over 2021–2025. The question is whether simulated final-win ranges cover the realized outcomes, alongside the error in expected wins.
These are existing research results, not a new prospective validation. The cohort uses five seasons with the current NFL playoff format; this page focuses on regular-season wins.
Scroll the table horizontally to see every column.
| Season checkpoint | Correlated coverage | Fixed coverage | Correlated MAE | Fixed MAE |
|---|
What this supports
In this archived cohort, accounting for shared strength uncertainty produces wider ranges with coverage closer to the nominal target. Expected-win error is similar between modes.
This is evidence about this simulator and sample. It does not establish betting edge, universal calibration, or a statistically significant advantage.
What needs caution
Coverage includes a ±0.5-win boundary tolerance. Team outcomes within a season are dependent, and the five seasons are a small evaluation cohort.
Schedules and membership were reconstructed retrospectively. Exact provider publication times were not archived. Full limitations are part of the exhibit.
Read the assumptions →Inspect the individual season rows
Scroll the table horizontally to see every column.
| Season | Checkpoint | Mode | Coverage | Wins MAE |
|---|
From game results
to correlated futures.
The exhibit exposes one quantitative mechanism from the broader SportsWorld engine: a latent-strength state-space model connected to a full-season simulator.
- Archived resultsESPN game records and retrospective schedule membership
- Latent strengthKalman posterior mean and variance for every team
- Season rolloutsShared strength draws, Gaussian margins and time drift
- DistributionsFinal wins and approximate playoff qualification
The generative model
Scroll the code horizontally to read every line.
θᵢ ∼ Normal(μᵢ, vᵢ)
θᵢ(t + Δt) = θᵢ(t) + Normal(0, qΔt)
margin = home advantage + θₕ − θₐ + ε
ε ∼ Normal(0, observation variance)The fixed-strength mode holds θ at the posterior mean. Both modes use Gaussian margins here. The separate logistic game classifier in the full engine is not used by this exhibit.
Read the simulator ↗Evidence at the cutoff
Results are included when kickoff plus four hours precedes the cutoff. This is a result-availability proxy, not a recorded publication timestamp. The snapshot does not apply today's injury report.
Parameters come from the archived 2025 preseason evaluation, fitted on earlier seasons. The complete bundled input and its SHA256 are downloadable.
Download replay input (Base64) ↓Limitations are part of the result.
Snapshot provenance
Explore in a browser.
Verify in code.
The public exhibit is static. Its data, saved interventions and evaluation rows ship with the website. The full Python engine and original live interfaces remain in the repository.
Run the exhibit with no API keys
Scroll the code horizontally to read every line.
git clone https://github.com/rajdeeepm/SportsWorld.git
cd SportsWorld
python -m http.server 8080 --directory portfolioOpen http://localhost:8080. There is no database, model server, login, paid provider or live sports feed required for this public mode.
Regenerate the saved simulations
Scroll the code horizontally to read every line.
python -m venv .venv
source .venv/bin/activate
pip install -e backend
python scripts/export_portfolio.py
node scripts/verify_portfolio.mjsThe exporter reads the bundled historical inputs and runs the existing simulator with seed 17 and 10,000 draws per branch. It writes the browser snapshot. It makes no provider calls. The input hash makes changes to the underlying evidence inspectable.
Inspect the original live system
The hackathon application includes additional leagues, game views, context ingestion and optional agent/voice integrations. Those capabilities require their original runtime and data setup; they are demonstrated in the recording rather than presented as active services here.