matttrenary / rugby-ratings

Calculate ratings from rugby scores
2 stars 1 forks source link

Create Pairwise calculation #8

Closed matttrenary closed 1 year ago

grjanke commented 1 year ago

I'll jumpstart this.

Pairwise Criteria

My proposed criteria are based off of college hockey. Ties are broken with ELO.

Issues to Address

matttrenary commented 1 year ago

Elo doesn't use integers. We just display them in integers for easier viewing. So ties are unlikely. However, if there is a tie, I'd assume both teams would get a half-win, rather than giving neither team a win.

matttrenary commented 1 year ago

As for determining who is included in the comparison pool, I agree that it should be anyone included in the Elo list.

We should consider a minimum number of games to be included, but Pairwise doesn't need to wait.

FIDE uses a 5-game minimum. Current 15s game breakdown for <= 5 games: 5 games: 14 teams 4 games: 5 teams 3 games: 11 teams 2 games: 6 teams 1 game: 25 teams

grjanke commented 1 year ago

I don't know exactly how FIDE works, but I imagine there's an element of randomness in game selection, so they feel confident in giving players ratings after 5 games. I think 5 games would be enough for us, but only if teams have played a variety of teams / some non-conference games in that sample.

California Lutheren has played 5 games, but all are against conference opponents who have also played <= 5 games. No way should they be included.

I bet 5 games is enough if its required that one of those opponents is connected to the "broader web" of Division 1 teams?

matttrenary commented 1 year ago

I'm pretty open to whatever works here. I'm not too concerned since this issue will become less of an issue over time, and generally only impacts lower-rated teams. But having clear criteria (and code) is going to help.

grjanke commented 1 year ago

I'm going to finally take a crack at implementing this.

Timeframe There should be a new Pairwise Ranking each school year. This gives teams a fresh start. Note that ELO still won't reset each school year (unlike RPI), but that's okay.

Tiebreakers I've changed my mind on this. Instead of using ELO as the end all be all tiebreaker, we should use the following order:

  1. Head to head wins
  2. Sum of win-pct vs common opponents
  3. ELO

I think it's best to reward teams on what they've accomplished against each opponent that year. If two teams are next to each other in the rankings, let's bump up the one who has the head to head win!

With more than 100 teams and only a dozen games each year, ELO still has a ton of say in the rankings.

Obviously we can experiment with this after implementation. I'm just documenting my thought process.

matttrenary commented 1 year ago

Sounds good. We should even consider using your order outright. i.e., if team A went 1-0 vs team B during the season, that's it, team A wins the pairwise. If they didn't play, then you just look at win pct vs common opponents. If no common opponents, Elo.

Or... You use Elo ratings gained/lost for all of these.

  1. Elo gained/lost in head to head games
  2. Elo gained/lost vs common opponents
  3. Elo

This gets a little bit away from "most deserving", so is just a thought for experimenting.

grjanke commented 1 year ago

This is almost done!

grjanke commented 1 year ago

I fixed the final PWR tiebreaker. Now, we run a mini pairwise between the tied teams. If they are still tied (rare), then ELO is the last resort.