Man, after a 3-0 start, there were so many upsets this week, and a couple more that were way closer than they seemingly should have been. Last week’s season rankings ended up 8-8 in predicting this week’s games. It’s a big shift – the AFC North rises, the NFC East falls – which means that all of a sudden, it’s looking like the AFC has dominance again.

| Rank | Team | Notes | Last Week | BeatPower |
1 |
![]() |
(Beat PHI) Boy, that was a close one, wasn’t it? I think it would be so funny if New England went 16-0 but then lost in the playoffs. Maybe to Denver. That would really piss a lot of people off. I’d like that. And then Denver would get blown out in the next playoff game. As a Broncos fan, that would suck, but it would also just be so damn funny. I don’t actually hate New England, I think it’s a cool team. It’s just some of the New England fans are starting to annoy the crap out of me. (Not anyone that visits this site though!) |
1 |
100.0(26/26 – 0/26) |
2 |
![]() |
(Beat BUF) Jacksonville rises to #2. They basically rise due to beatpath attrition. Buffalo is seen as a relatively strong victory, but there are no beatloop changes for Jacksonville, and most of the reason for their rise is because of previously strong beatwins looking weaker for other teams, like most of the NFC East. |
6 |
92.1(16/19 – 0/19) |
3 |
![]() |
(Beat DET) Green Bay holds steady. Their loss to Chicago is keeping them from beatwins over SD, MIN, and DET, but their other wins are still seen as high quality. They’re not hurt as much as the NFC East is. |
3 |
95.7(21/23 – 0/23) |
4 |
![]() |
(Beat MIA) Pittsburgh rises significantly. Since Chicago beat Denver, Pittsburgh becomes a beneficiary through a DEN->PIT->SEA->CHI->DEN beatloop. So, Pittsburgh loses credit for defeating Seattle, but sheds the Denver beatloss. That’s not sufficient for them to rise this much, but Cleveland is also looking much stronger, too, which pushes Pittsburgh up more. |
14 |
88.9(14/18 – 0/18) |
5 |
![]() |
(Beat ATL) Indianapolis wins as expected, and they aren’t as affected by other graph dynamics, so it works out that they hold steady. |
5 |
87.5(16/20 – 1/20) |
6 |
![]() |
(Lost to GB) Despite losing to Green Bay, Detroit is helped out by the collapse of the NFC East. Detroit loses credit for their beatwin over Minnesota due to Minnesota defeating the Giants, who had earlier beaten the Lions. But they also shed their beatloss to the Giants. In addition, Tampa Bay’s victory over Washington means Detroit sheds the beatloss to Washington. Finally, the loss to Green Bay is beatlooped away due to the victory over Chicago. The end result is that Detroit has no beatlosses, mainly due to the NFC West abdicating. |
8 |
86.4(16/22 – 0/22) |
7 |
![]() |
(Beat HOU) The biggest rise of the week belongs to Cleveland. By defeating Houston, they shrink an earlier OAK->CLE->SEA->CHI->OAK beatloop, which makes their beatwin over Seattle re-emerge. The combination of Pittsburgh having more room to rise, plus the Seattle beatwin being stronger than their Cincinnati beatwin, plus the collapse of other teams in the rankings, make Cleveland rise twelve. |
19 |
86.7(13/15 – 2/15) |
8 |
![]() |
(Beat NYJ) Dallas has a bunch of wins over good teams, but the teams that used to be the strongest beatwins don’t look as strong as they used to. The Green Bay game coming up is still a very good game, though. Just not as good as it seemed for the last few weeks. |
2 |
95.2(20/21 – 1/21) |
9 |
![]() |
(Lost to CHI) After all that drama, the main effect is that Denver loses credit for its beatwin over Pittsburgh. But due to other teams tumbling, and their Buffalo beatwin looking slightly stronger, Denver holds steady in the rankings. |
9 |
68.8(14/24 – 5/24) |
10 |
![]() |
(Beat NYG) This is an interesting team! They don’t get the beatwin over the Giants, but they are able to shed their beatloss to Detroit. |
12 |
65.6(8/16 – 3/16) |
11 |
![]() |
(Lost to MIN) The Giants, with a costly loss, lose their beatwins over Philadelphia and Detroit. They still have their (weirdly squiggly) beatwin over Atlanta, and Washington, although Washington doesn’t look so strong anymore. |
4 |
65.4(7/13 – 3/13) |
12 |
![]() |
(Lost to OAK) Kansas City loses their direct beatwin over Oakland due to the season split, but their beatwin over Cincinnati, which looks stronger now, protects Kansas City from falling far. |
11 |
76.3(12/19 – 2/19) |
13 |
![]() |
(Lost to JAC) Buffalo’s loss to Jacksonville doesn’t really matter, and Denver looks about the same. But Cincinnati looks better, which helps Buffalo rise. |
16 |
64.3(13/21 – 7/21) |
14 |
![]() |
(Beat STL) No big reward for defeating St. Louis, but Seattle is another team that is a beneficiary of Cincinnati looking better. Plus, Denver’s loss to Chicago helps Seattle not be buried as much due to it helping Pittsburgh and Cleveland look better. |
21 |
75.0(12/18 – 3/18) |
15 |
![]() |
(Beat WAS) Tampa Bay’s victory hurts Washington, but Tampa Bay doesn’t get helped by it due to it being beatlooped away since Washington had defeated Detroit. In addition, Tampa Bay’s beatwin over Tennessee is looking worse now. |
10 |
75.0(10/16 – 2/16) |
16 |
![]() |
(Beat TEN) Cincinnati develops an important beatwin over Tennessee, which helps them rise significantly in the rankings. |
23 |
47.9(11/24 – 12/24) |
17 |
![]() |
(Lost to TB) The biggest loser of the week, Washington sinks significantly. There really wasn’t a lot keeping Washington up, they had a rickety structure. Their beatwin over Detroit was propping them up, but losing to Tampa Bay demolished that since Detroit had previously defeated Tampa Bay. When your next most quality beatwin is over the Jets, it doesn’t help your situation much. |
7 |
50.0(4/11 – 4/11) |
18 |
![]() |
(Lost to NE) They came close, although it wouldn’t have changed the rankings much. Philadelphia does shed their beatloss to the Giants thanks to Minnesota defeating the Giants, but it doesn’t change thing much either. Philadelphia basically falls because other teams leapfrog them. |
15 |
45.0(2/10 – 3/10) |
19 |
![]() |
(Lost to CIN) Tennessee suffers a new beatloss. They’re not in any loops other than their season split with Jacksonville, they just have a fairly straightforward position in the graph. Losing to Cincinnati hurt them, even as it helped Cincinnati. |
13 |
39.1(9/23 – 14/23) |
20 |
![]() |
(Beat BAL) It occurs to me that San Diego has basically reverted to the same kind of team that they were in 2004 and 2005. Talented and undisciplined – capable of beating the best teams, but also stinking while playing mediocre teams. It’s a locker room problem. I don’t think this is Norv’s fault exactly. A tough coach can get them beyond it as Marty did, but it’s ultimately up to the players. San Diego beats Baltimore as expected, but some other teams leapfrog them. |
18 |
56.2(6/16 – 4/16) |
21 |
![]() |
(Lost to CLE) Houston loses credit for their beatwin over Oakland after losing to Cleveland, and drops four. |
17 |
26.1(4/23 – 15/23) |
22 |
![]() |
(Beat DEN) Chicago doesn’t get credit for defeating Denver due to a beatloop with Seattle and Pittsburgh. A couple of other teams have leapfrogged them, and Chicago is still seen as an inconsistent team – there’s not a lot of data to know where to place them. |
20 |
46.2(2/13 – 3/13) |
23 |
![]() |
(Lost to SD) Baltimore rises a couple, apparently because San Francisco looks slightly better. |
25 |
18.4(3/19 – 15/19) |
24 |
![]() |
(Lost to IND) Atlanta rises a bit, also apparently because of San Francisco. |
28 |
19.6(3/23 – 17/23) |
25 |
![]() |
(Beat CAR) New Orleans splits the season series with Carolina and sheds the beatloss, which helps them rise a bit. |
29 |
21.4(3/21 – 15/21) |
26 |
![]() |
(Lost to NO) Carolina loses to New Orleans, and are otherwise affected by the strength of their beatwins and beatlosses. |
22 |
15.0(2/20 – 16/20) |
27 |
![]() |
(Beat KC) Oakland sheds the beatloss to Kansas City on the season split, but is otherwise hurt by their other beatlosses being a little more oppressive. |
24 |
7.5(1/20 – 18/20) |
28 |
![]() |
(Lost to DAL) No big penalty for losing to Dallas. The Jets hold about steady. |
27 |
16.7(1/15 – 11/15) |
29 |
![]() |
(Beat ARI) San Francisco sweeps the season series against Arizona, which Arizona will have a hard time rising above. |
32 |
8.7(2/23 – 21/23) |
30 |
![]() |
(Lost to SF) Arizona just seems snakebitten these last two years. Talented team, just bad luck, bad something. |
26 |
3.8(1/26 – 25/26) |
31 |
![]() |
(Lost to PIT) That punt that landed and just stuck in the ground… that was unreal. What a mudpit. |
30 |
0.0(0/24 – 24/24) |
32 |
![]() |
(Lost to SEA) Fumbling on fourth down… god that sucks. |
31 |
0.0(0/26 – 26/26) |
































Small typo in the Lions section. I think it should read “…who had earlier beaten the Lions” instead of the Giants.
It looks like one of the schizophrenic teams teams from earlier in the season, Arizona, has finally sorted themselves out. Now if only Chicago and San Diego could decide if they’re good or not. And as someone in the Washington, DC area, I’ve been waiting for the Redskins to loose their beatwin over Detroit for a while. I knew it was coming sooner or later.
Dallas has 5 non-redundant beatwins.
Ridiculous.
So does Green Bay. Tennessee has 4, but over notably lower opponents.
–
I have found a version of Graphviz which is what I think you’re using to create your graphs. I’m working on integrating it with my results so that I don’t have to go through the pain of drawing out the graphs myself.
My graphs are up.
http://www.twomuffin.com/BeatPaths.htm
http://www.twomuffin.com/BeatPathsWeighted.htm
Moose, I like the rules for your graph layout, although your graph as a whole is much harder to read.
I think this is the first week where my iterative path removal approach would have a dramatic effect on the graph, but it’s getting to be a real bear to calculate.
I’m *still* hypothetically interested in taking a closer look at doktarr’s approach. My main two obstacles are my Real Job (programming), my Real Hobby (music), and I need to clear out enough brain space to make sure that the approach wouldn’t actually contradict my overall concept of looking at it all in terms of an ecology that sorts itself out. At first glance it looks good but I’ll need to take a closer look.
I *think* this is the changes the approach would produce this week:
1) Pittsburgh gets a beatpath to Buffalo. No major effect.
2) San Diego gets a beatpath to Chicago. Again, no major effect.
3) Indianapolis gets its win over Jacksonville.
4) Jacksonville and Seattle both get a beatpath to Tampa.
5) Add TB->WAS->DET->MIN. This has a significant lengthening effect on the graph, primarily due to WAS->DET. It pushes down the NFC North and, by extension, the AFC West.
6) Add NYG->PHI->DET. Little additional effect given that WAS->DET already rearranged things.
7) SD gets its win over Denver back. This also has little additional effect, given that Detroit’s fall already pushes Denver down.
There may be a couple more minor effects – it’s hard to tell as it’s getting too complicated to do by hand without making some mistakes. There were a wins by St. Louis and Arizona that are “kept”, but they would get killed when you start considering 4-team beatloops.
I have a preliminary run of Doktarr’s suggestion complete. I haven’t tested it fully to make sure it’s bug-free, so this may not be the correct final output. The rough graph is here:
http://www.twomuffin.com/images/Doktarr.gif
This is the processing output:
BeatWins for LoopSize 3:
Found minimum weight of 0.25:
These BeatLoops were broken in this pass:
IND/KC/SD/IND
KC/SD/HOU/KC
KC/SD/DEN/KC
KC/SD/CHI/KC
Found minimum weight of 0.333333333333333333:
These BeatLoops were broken in this pass:
KC/MIN/CHI/KC
PIT/BUF/NYJ/PIT
PIT/BAL/NYJ/PIT
PIT/CIN/NYJ/PIT
MIN/CHI/PHI/MIN
MIN/CHI/GB/MIN
GB/DET/CHI/GB
GB/SD/CHI/GB
Found minimum weight of 0.5:
These BeatLoops were broken in this pass:
NO/JAC/HOU/NO
NO/JAC/TB/NO
NO/ATL/HOU/NO
NO/SEA/STL/NO
NO/SEA/TB/NO
PIT/BAL/ARI/PIT
PIT/SF/ARI/PIT
WAS/DET/TB/WAS
MIN/NYG/PHI/MIN
MIN/NYG/DET/MIN
DET/TB/ARI/DET
TB/ARI/SEA/TB
SEA/SF/ARI/SEA
BAL/ARI/CIN/BAL
Found minimum weight of 0.666666666666666666:
These BeatLoops were broken in this pass:
PHI/DET/CHI/PHI
Found minimum weight of 0.75:
These BeatLoops were broken in this pass:
IND/JAC/SD/IND
Found minimum weight of 1:
These BeatLoops were broken in this pass:
HOU/OAK/CLE/HOU
BeatWins for LoopSize 4:
Found minimum weight of 0.166666666666666666:
These BeatLoops were broken in this pass:
KC/MIN/ATL/HOU/KC
KC/MIN/SD/HOU/KC
KC/MIN/SD/DEN/KC
KC/MIN/SD/CHI/KC
Found minimum weight of 0.25:
These BeatLoops were broken in this pass:
CAR/ARI/CIN/TEN/CAR
BAL/SF/ARI/CIN/BAL
Found minimum weight of 0.416666666666666666:
These BeatLoops were broken in this pass:
KC/CIN/TEN/HOU/KC
Found minimum weight of 0.5:
These BeatLoops were broken in this pass:
NO/SF/ARI/STL/NO
Found minimum weight of 1:
These BeatLoops were broken in this pass:
PIT/SEA/CHI/DEN/PIT
BeatWins for LoopSize 5:
Found minimum weight of 0.25:
These BeatLoops were broken in this pass:
CAR/ARI/DET/DEN/TEN/CAR
ATL/SF/ARI/DET/MIN/ATL
Hi! I just found this site last week, and great job! I like the idea of plotting beatpaths; most of the systems out there (including my own) use team-by-team numbers, while the NFL itself just uses standings. Congratulations on a great idea.
On a secondary note, since I found your site I have put together my own beatpath graph. It looks a bit different from yours because I am removing beatflukes first. I define a beatfluke to be game where the loser has a beatpath to the winner on a graph where all the loops have been removed. I also remove beatflukes based on the resulting graph, but I’m not yet sure if those are possible, given that I haven’t found any yet.
I calculated my graph manually, since I don’t have Visual Basic or Java on my computer. I would post a link to it, but I don’t have an internet site to put it on. The differences from your graph are these:
DET does not have a beatwin over CHI (because I allow multiple loops to destroy a double header).
SEA and JAC gain beatwins over TB.
SD->OAK->MIA and HOU->MIA are replaced by SD->HOU->OAK->MIA. (This also replaces TEN->HOU AND TEN->OAK WITH TEN->HOU->OAK.)
NO loses its last beatwin (over SF).
ARI loses its last beatwin (over STL). BAL and CAR still have (now direct) beatwins over STL.
Wow, awesome Moose. I’m so glad somebody implemented it. That looks right based on what I was doing before I gave up on doing it by hand this week. I knew the Arizona->Detroit win would get beatlooped away, but I just didn’t have the patience to trace it all the way down. I was wrong about Seattle getting a beatpath to Tampa, I guess. It’s pretty tough to do this version by hand!
I actually like the way that graph looks, even after the beating the graph took from last week. The ability to incrementally remove outliers gives you more data to work with. TT, if anything, I’d say this approach is more of “an ecology that sorts itself out”, because the changes are more gradual and fluid from week to week.
Moose, if you were going to use your “paths out – paths in” ranking approach, you could/should weight the paths using the residual weights after all the loops are removed. The easiest way to do this is to weight a path by the minimum weight along it.
My fearless prediction: both TT’s and Moose’s approach to that graph would rank Cincinnati 20th, and they have a beatpower of 10/31.
Finally, Dallas’s win last night means NE would have a beatpath to everyone except Pittsburgh.
Yeah, the variants that lead to more stability in week-to-week rankings appeal to me a bit more. Last year with beatflukes, there were a great many more huge shifts. But I also found that with the beatfluke system usually making a more vertical graph, the picks would get a little less accurate, so I tend to be careful with the approaches that restore too many beatwins.