User Pass
Home Sign Up Contact Log In
Mornacale
offline
Link
 
I don't know how many of you have seen Beatpaths. Basically, it's a very interesting alternative method of displaying NFL results and ranking teams. Check out www.beatpaths.com to see what's up.

Anyway, I've been kicking around the idea of trying to do these for Oceania Pro. Given that we're starting a new season, and that I have a fair bit of extra time since I'm on break, I thought this season would be a great opportunity to get things started.

Are you folks interested in an alternative set of Power Rankings? GLB will probably offer some unique graphs, given the lack of both interleague play and home-and-away divisional matchups.

Update 9 Jan:
Beatpaths Power Rankings are live! Here is a "short" explanation of the algorithm, in case you want to actually know what they mean:

Beatpaths are based around a graphing concept, and generally displayed in a shiny graph; displaying the graphs visually is still a work in progress. What I do have is Power Rankings based on them. I will summarize the method used to arrive at them here.

1) Create the graph: Create all the teams, then for each team load in what teams it has defeated.

2) Remove Beatloops: Beatloops are any cycle in the graph. Say, for instance, that Team A defeats Team B who goes on to defeat Team C, who has a victory over Team A. Because Beatpaths is based only on wins and losses, these three games tell us nothing about who is better. Therefore, we eliminate all three of these games from the graph. Thus, there is a difference between wins and losses, and what we will call Beatwins and Beatlosses: Team A has a win over Team B in this example, but not a Beatwin. On the other hand, Team B has a loss, but not a Beatloss. Only Beatwins and Beatlosses matter to the Beatgraphs algorithm. It is possible to have numerous Beatloops of different lengths. If so, all beatloops of the same length are removed at the same time, going from smallest to largest.

3) Remove duplicates: If Team A has a Beatwin to Team B, and also has a Beatpath to Team B (that is, a way to get to B through some other team(s)), then we remove the direct Beatwin. It makes the graph simpler and doesn't change anything.

These three steps leave us with what nerds call a directed acyclic graph--all the connections have a direction (from winner to loser), and there are no loops. This is a Beatgraph. Now we can make Power Rankings, keeping in mind the central Beatpaths principle: if Team A has a Beatpath to Team B, then Team A should be ranked above B. To create the Power Rankings, we do the following:

1) Find all teams in the Beatgraph with no Beatlosses.

2) Rank these teams based on a tiebreaker.

3) Remove these teams from the graph.

4) Go to 1.

The tiebreaker used on www.beatpaths.com is known as BeatPower. Here is how it works: find out how many teams have Beatpaths to Team A, how many teams Team A has Beatpaths to, and how many teams are in Beatloops with Team A. Total these numbers to find the number of teams related to Team A. Team A's BeatPower = ((teams A has Beatpaths to) - (teams with Beatpaths to A))/(the number of teams related to A). BeatPower can thus range between -1 and 1; to get the number you see on the Power Rankings, I simply multiply by 100. So, -100 means you've got nothing but Beatlosses, 100 is nothing but Beatwins, and 0 means you have an equal number of good and bad. Note also that being involved in Beatloops will tend to move your BeatPower closer to 0.

If teams are still tied after that, the current second tiebreaker is...alphabetical order by team abbreviation (Samoa isn't AAA, I swear ). It's a work in progress.

They do a fair bit of experimentation with tiebreakers on the website, and I plan to do some of my own. Watch out for updates.
Last edited Jan 9, 2009 03:15:14
 
HaplosDog
offline
Link
 
Go for it!
 
turnit643
offline
Link
 
Do it - would be interesting to see.
 
GotMilk
offline
Link
 
Good idea
 
Linker2596
offline
Link
 
Yeah this is definitely a good idea. Should be very cool to see how this stacks up with the coaches poll.
 
Link
 
I would love to see this
 
bberyquiet
offline
Link
 
Originally posted by brennerdlinger
I would love to see this


 
nautilus
offline
Link
 
Originally posted by brennerdlinger
I would love to see this


 
Lifebleeder
offline
Link
 
What he said.
 
sxewesley
offline
Link
 
Originally posted by nautilus
Originally posted by brennerdlinger

I would love to see this




 
SCACE
offline
Link
 
Originally posted by sxewesley
Originally posted by nautilus

Originally posted by brennerdlinger


I would love to see this






 
Mornacale
offline
Link
 
Just to give you fine folks an update, the project is proceeding nicely, despite delays caused by watching real football. I've got my input situation squared away now. The next step is to create the logic to remove beatloops, then to make it produce a set of power rankings. My goal is to have the power rankings for your perusal following Week 3 (which is really when things start to get interesting anyway), but--code gods willing--there is an outside chance I'll have them today or tomorrow.

Once I have power rankings, the next piece of the puzzle is actually making pretty graphs. If anyone happens to know of any good packages for the creation and display of this sort of graph, I would be much obliged. I'm programming right now in Java, but I could translate it to C++ or PHP if something good is available (in fact, I'm likely to seek a PHP solution down the road somewhere in any case).

Thanks for the support, and I'll try to get you some results ASAP.
 
nautilus
offline
Link
 
Thanks
 
wrw47
offline
Link
 
You want the graphviz package, which takes .dot format graph descriptions and renders them into postscript, pdf, and various standard image formats. I expect there are java packages that will write .dot files given various standard graph data structures; I know there are python ones as I've been looking into doing the same thing there.
 


You are not logged in. Please log in if you want to post a reply.