What I’m going to talk about now is an implementation of the Simple Ranking System in Perl. The Simple Ranking System is described on Pro Football Reference here. It’s important because it’s a simple – perhaps the simplest – model of the form
team strength = a(Point Spread) + b(Correction Factor)
where a and b are small positive real numbers. In SRS, a = 1 and b = 1/(total number of games played). The correction factor is the sum of the team strengths of all the team’s opponents.
The solution described by Doug Drinen on the Pro Football Reference page isn’t the matrix solution, but an iterative one. You simply do the calculation over and over again until you get close enough.