Mobile Site You Are Here >  >  > NFL EloRater

News: s-r blog:Stadium Histories Added

NFL EloRater

About the NFL EloRater ▪ Rate Some Matchups ▪ View the Ratings

The Elo rating system is a method for calculating the relative skill levels of players in two-player games. The creator of the system, Arpad Elo, was a professor of physics at Marquette University who wanted an improved chess rating system. Although the system has its roots in chess, today it is used in many other games.

We decided to take Elo's work and apply it to the ranking of football players. Our player pool consists of 1500 NFL players: the top 1000 in AV post-1975 and the top 500 in AV pre-1975.

All players have an initial rating of 1500 points. These ratings are then updated by randomly selecting pairs of players and having them "play" each other.

We start by computing the win probabilities for each player (let's call them A and B):

 
P(A wins) = 1 / (1 + 10^((RB - RA) / 400))
P(B wins) = 1 / (1 + 10^((RA - RB) / 400))

where RA = rating for A
      RB = rating for B

After the winner has been determined, the ratings of the two players are adjusted. If A wins the match then the new ratings are:

 
RA_new = RA + K * P(B wins)
RB_new = RB - K * P(B wins)

The "K" above stands for the "K-factor" and has a value of 10.

While if B wins the match then the new ratings are:

 
RA_new = RA - K * P(A wins)
RB_new = RB + K * P(A wins)

For example, suppose Tom Brady ("TB") has a rating of 2500 and Peyton Manning ("PM") has a rating of 2450. The win probabilities for each player are:

 
P(TB wins) = 1 / (1 + 10^((2450 - 2500) / 400)) = 0.571
P(PM wins) = 1 / (1 + 10^((2500 - 2450) / 400)) = 0.429

If TB wins then the new ratings are:

 
TB_new = 2500 + 24 * 0.429 = 2510
PM_new = 2450 - 24 * 0.429 = 2440

While if PM wins then the new ratings are:

 
TB_new = 2500 - 24 * 0.571 = 2486
PM_new = 2450 + 24 * 0.571 = 2464

Here are a few more notes about the way we have chosen to implement the Elo rating system:

As always, please send us some feedback if you have any comments or questions.