In trying to keep the title short I left out that I am talking about computer sports rankings made with artificial neural networks (competitive neural networks to be more specific), as initially explained in an earlier post. That original post was based on a paper that didn’t effectively assess the home/visitor advantage (if there is one) so here I am proposing a way to address the issue.
Computer Sports Rankings
As shown in the original post, the network is built with nodes representing teams and connections representing the games between team pairs. Each node carries the team value and each connection “transfers” value according to the game’s result and/or score.
The image shows team B beating teams A and C, and so it gets value from them. In this case, B beat A by 12 points (the original paper and post were about college football). B gets 12 points in value from A, and A gets -12 points in value from B. The values transferred between B and C are not shown. A and C did not play (the network can be very sparse) and therefore they are not connected.
Assessing home advantage
The configuration as presented does not take into account the home field advantage or disadvantage).
Two teams can face each other in three circumstances: in each other’s home fields or in a neutral field. However, a team either plays at the home field or away from it. To reconcile all previous considerations I consider that each team is really two teams: one always plays at home and the other always away.
What happens when two teams play on a neutral field? I assume then that the version of each team that always plays away is the one playing, so technically they are both away teams.
Summary of the above:
Finally, to keep the network as connected as before introducing these home and away teams, I assume that if the home and away versions of a team played each other they would play to a draw (they are the same team!). So I add the original team connected transferring 0 points to each the home and away versions of itself.
The portion of the network capturing a game between A-Home and B-Away in which A won by 12 points would look like this:
More on games in neutral fields
For games in neutral fields, it would be possible to use the “real” teams (i.e. A and B) instead of the away teams. However, usually few games are played in neutral fields (maybe finals or elimination games) and most games will be played at home or at the opponent’s home (regular seasons) so if, for instance, a team plays 4 games at home, 4 away and 2 in a neutral field the “real” team (i.e. A) would be connected in the network to A-home representing the 4 at-home games, to A-Away representing the 4 away games and to two other “real” teams. So there would be 4 connections and the games played in a neutral field would carry more weight than the other games.
Using A-Away for neutral games guarantees that the calculated value of A will be the simple average of the value of A-Home and A-Away. Please see the previous post for details on the calculated team values.
The home advantage
When the network is run and all the nodes’ values are calculated, the home advantage for a team will be the difference between the value at home and the team value. In the example I’ve been using:
A’s home advantage = A-Home’s value – A’s value
Most times the value will be positive but in many cases, it is not significant and even can be negative (“home-crowd pressure”?).