GHSA Boys Soccer

Ratings & Bracket Simulator · 2025–2026
Rank Team Class Region Record Rating Attack Defense MaxPreps PSR
Loading…
Loading…
Loading…
TeamClassRegion · SeedBracket R16QFSFFinalChampion
Loading…

Rating Model: Dixon-Coles Bivariate Poisson

Each team is assigned an attack rate α and defense rate β. For a matchup home team h vs. away team a:

λ = α_h · β_a · γ · (duration/80)  (expected home goals)

μ = α_a · β_h · (duration/80)  (expected away goals)

A low-score correction ρ adjusts the probability of 0–0, 0–1, 1–0, and 1–1 scorelines to account for the negative correlation between goals. Scores are drawn from a joint Poisson distribution with this correction.

Margin-of-Victory Transform

The Massey warm-start uses f(d) = sign(d) · log(1 + |d|) (FiveThirtyEight convention). This preserves ordering over all margins while compressing extreme blowouts — consistent with GHSA's own 3-goal cap in region seeding tiebreakers.

Variable Game Duration

GHSA adopts the NFHS mercy rule: a 7+ goal halftime deficit shortens the second half to 20 minutes; a 10+ goal halftime deficit terminates the game. Goal rates λ and μ are per-80-minute rates; each game scales them by duration_used / 80. Duration is observed from MaxPreps halftime scores when available; otherwise imputed from final margin via a lookup table (design §7.4).

PK-Score Contamination Recovery

GHSA rules require adding a phantom goal to the PK winner's final score. MaxPreps reports the true pre-shootout regulation score. The model likelihood uses regulation scores only, removing phantom-goal contamination. When MaxPreps is unavailable, the GHSA reported score is used as fallback.

Time Decay

Games are weighted w = exp(−ξ · Δt) with ξ = 0.015/day (half-life ≈ 46 days). Earlier games count less than recent form.

Non-GHSA Games

Games against non-GHSA opponents (out-of-state teams, private opponents not in the GHSA database) are excluded from model fitting — their results do not affect attack/defense ratings — but included in displayed records. Opponents receive stable synthetic IDs so results are counted in W/L/T totals.

Region Seeding

Within each class + region group, teams are seeded using the official GHSA tiebreaker sequence:

  1. Region W-L record
  2. Head-to-head record among tied teams
  3. Goals allowed in head-to-head games (tied teams only)
  4. Goal differential in head-to-head games, capped at 3 goals per game
  5. Goals allowed in all region games
  6. Goal differential in all region games, capped at 3 goals per game
  7. If still tied, repeat from step 2 on the remaining tied subset

PK wins count as a one-goal win for the winner; the loser receives no additional goal penalty. If all tiebreakers are exhausted, PSR rank then DC rating serve as a final fallback.

Bracket Simulation

200,000 Monte Carlo simulations per bracket, fully vectorized — all outcomes for a given matchup are sampled in a single NumPy call rather than a per-simulation loop.

Win probability is computed analytically for each matchup:

  1. Regulation: integrate joint Dixon-Coles PMF over all scorelines where one side wins
  2. Overtime (20-min period): repeat with goals scaled to 20/80 of full-game rates
  3. Penalty kicks: sigmoid of log attack-rate ratio (α_h / α_a)

Home advantage: the higher-rated team hosts rounds 1–4; the championship is on a neutral site. Home advantage applies γ to the home team's expected goal rate.

Impact Score

Each game on a team's schedule shows an impact score in the range [−10, +10]:

Impact = (outcome − P(win)) × 10

where outcome is 1 (win), 0.5 (draw), or 0 (loss), and P(win) is the model's pre-game win probability. A positive score means the team outperformed expectations; negative means they underperformed. A dominant win against a strong opponent scores near +10; a loss to a weak opponent scores near −10.

References

GHSA Soccer Handbook — official rules, mercy rule, and region tiebreaker procedures.

Dixon & Coles (1997) — "Modelling Association Football Scores and Inefficiencies in the Football Betting Market," Applied Statistics 46(2).