Creating a College Football Ranking Algorithm

As we roll up on college football season each year, I can barely contain my excitement. Despite the many question marks on my own team (Go Hokies!), I love everything about the sport. It led me to create a team ranking system last season with fairly average results.

I used a point-based system where teams earned (or lost) points based on who the quality of the team they played and the margin of victory. Although the poll was considerably controversial during the season, it caught up at the end when teams in conferences without a championship game played their final regular season game (without a game on championship Saturday, the conferences give themselves an extra bye week to extend their seasons).

This season, however, I decided creating another point system was stupid. I had to calculate it manually each week, so it was naturally prone to errors and far too simplistic. One extra point scored in a game could have a significant impact on a team’s ranking that week – which is dumb.

My New Algorithm

This season’s algorithm is based largely on each team’s scoring offense and scoring defense rank. Since points are all that really matters in terms of winning, I ignored all other statistics. Winning teams either score a lot of points on offense, stop the opposing team from scoring a lot of points, or are decent at both.

With these values for each team, I also create a value for strength of schedule. After all, running up the score on patsies should only help you so much…while putting up poor stats while running through a gauntlet of ranked teams, isn’t necessarily a bad thing. The SOS value for each team is an average of each of their opponents scoring stats.

Finally, I multiply the final value by a team’s winning percentage.

Running the algorithm on last year’s data provides the following top 10:

Rank Team Record
1 Alabama 13-1
2 Oregon 12-1
3 Ohio State 12-0
4 Texas A&M 11-2
5 Kansas State 11-2
6 Florida State 12-2
7 Georgia 12-2
8 Notre Dame 12-1
9 South Carolina 11-2
10 Florida 11-2

Not too bad in mind. I’ll update the blog as the season goes on to see how my algorithm is working.

It also has me thinking about predictive algorithms that could (hypothetically) be used for gambling purposes. With my experience web scraping for Roster Brain, I’m pretty good at acquiring large amounts of data from various web sources. Applying some statistics to data of seasons past should yield decent results, although a lot of college football seems to deal more with emotions and circumstances, which certainly won’t be captured by a poor statistical analysis.

Comments are closed.