The Signal
NCAA bracket predictor using PageRank over the season's game graph, with Monte Carlo for the tournament.
LiveSummary
The Signal predicts the NCAA tournament bracket by running PageRank across every game played in the regular season, treating each win as a directed edge between teams, and then Monte Carloing the bracket forward thousands of times to produce per-team championship probabilities and a most-likely "Path to the Championship" for each team.
Why it exists
Most public bracket models lean on Elo, KenPom, or seed priors. PageRank is a different lens: it doesn't care about preseason expectations, only about who beat whom and how strongly the win graph connects. The Signal was a weekend experiment to see what falls out of treating the entire season as a single network problem.
How it works
Regular-season game results form a directed graph. PageRank iterates over the graph to produce a stable ranking that implicitly rewards strength of schedule. Those rankings feed a Monte Carlo simulation of the tournament bracket, each matchup resolved probabilistically, and the simulation runs thousands of times to estimate championship probability per team and the most-traveled path to the title.
Here's the core idea, live and in your browser: a synthetic season rendered as its win graph. Every game is a link pointing at the winner, and PageRank iterates over the network until the ranking stabilizes. Watch the bubbles grow into the final ranking as the iterations tick:
Stack
- Vanilla JavaScript single-file HTML on the client
- Python pre-processing the game graph + PageRank
- Vercel deploy
Status
Live. Built in a weekend during a March Madness window.