| repak shawahb | |||||
| si vis pacem, para rectum | |||||
blogroll |
Wed, 14 Nov 2007 ...rankings. I was bored and decided to write some code to produce NFL power rankings. Perhaps one of my perenially disappointed faithful readers might care to peruse. (Gautham actually suggested splitting the offensive and defensive power rankings; previously I'd only looked at overall power rankings, which I present below.) First, a little explanation: these are split offensive and defensive power rankings; in other words, normalized rankings by points for and points against considering the record of the opposition as given by the same ranking. My assumption here is that my rankings should be zero-sum when offense and defense are combined. That is, every (adjusted) point counted towards an offense is counted precisely the same against the opposing defense. The rankings are determined as follows:
Note that this is very much a discrete feedback system, and as such is subject to instability. To ameliorate this problem, we add a "gain" term as such: Finally, using approximately the same algorithm (details if you insist), I do the same thing for total performance, taking into account win/loss, point differential, defensive performance, and home field advantage. So now we have a mess of numbers. What are they? Well, in one sentence, they are normalized offensive and defensive ratings adjusted for relative strength of schedule. How, relative? Well, we look at the difference between the opposing defense and our offense (or vice-versa), not our defense versus the league average or some such. Think of it this way: if the worst team in the league had to play a bunch of mediocre teams, those would be hard-fought wins; conversely, the best team in the league should have little trouble with those same teams. Relative strength of schedule takes this into account. Here are the numbers: combined offense defense NWE 100.000 NWE 100.000 PIT 100.000 GNB 88.877 DAL 83.321 SEA 89.290 DAL 85.341 IND 72.842 TAM 85.638 IND 83.189 CLE 67.917 NWE 84.650 PIT 80.843 PIT 64.065 GNB 83.451 JAC 66.579 GNB 58.556 IND 81.508 TEN 66.043 DET 54.766 TEN 76.748 DET 64.926 CIN 54.511 BUF 70.769 NYG 63.272 NYG 53.387 JAC 66.878 SDG 56.904 SDG 51.525 KAN 59.164 TAM 53.994 HOU 49.478 BAL 56.930 SEA 53.481 NOR 48.993 PHI 56.024 WAS 52.787 ARI 41.471 SDG 53.106 CLE 51.385 PHI 40.369 CAR 51.544 BUF 50.391 JAC 38.916 CHI 51.263 PHI 43.508 SEA 37.553 MIN 49.928 CHI 41.806 TEN 36.275 NYG 49.785 HOU 40.583 WAS 34.992 ATL 49.339 ARI 40.051 MIA 34.039 WAS 49.119 DEN 39.732 MIN 32.003 DAL 45.858 NOR 39.701 CHI 29.441 OAK 43.484 KAN 38.975 TAM 29.306 ARI 36.620 CAR 38.408 DEN 28.936 SFO 30.923 BAL 36.894 NYJ 26.355 DET 23.899 MIN 32.504 OAK 23.123 NYJ 21.136 CIN 31.475 CAR 21.660 NOR 19.135 ATL 26.070 BUF 17.196 HOU 18.749 OAK 15.436 KAN 15.675 DEN 15.649 SFO 13.263 ATL 15.238 MIA 7.479 NYJ 6.447 BAL 14.313 STL 6.008 STL 3.783 STL 14.185 CIN 5.766 MIA 0.000 SFO 0.000 CLE 0.000 Sucks for Cleveland that they have a terrible defense, since their offense pretty much rocks... I'll keep these updated weekly until the end of the season. Edit: here's the code if you want to play with it yourself. [ permalink | 0 comments (add one you lazy bastard!) ] writebacks (add one you lazy bastard!)post a comment: |
||||