I've become increasingly interested in computer solutions and simulations for domains where you might not expect something can be done. One domain that I've been more and more interested in is NHL hockey -- a sport that I'm a fan of. So before the 2007/2008 playoffs started, I decided to write a simulator that figured out how likely it was that each team won the stanley cup based on their regular season statistics. The results are below, with each team's probability of making it past each round the numbers in the columns. So the Montreal Canadiens have a 72% chance of beating the bruins, and a 12.2% chance of winning the cup.
Montreal_Canadiens 0.720 0.446 0.264 0.122 Pittsburgh_Penguins 0.590 0.362 0.193 0.083 Washington_Capitals 0.481 0.224 0.097 0.033 New_Jersey_Devils 0.477 0.217 0.096 0.034 New_York_Rangers 0.523 0.250 0.116 0.043 Philadelphia_Flyers 0.519 0.236 0.110 0.039 Ottawa_Senators 0.410 0.167 0.086 0.030 Boston_Bruins 0.280 0.098 0.039 0.010 Detroit_Red_Wings 0.811 0.622 0.449 0.330 San_Jose_Sharks 0.634 0.368 0.150 0.082 Minnesota_Wild 0.468 0.187 0.056 0.024 Anaheim_Ducks 0.414 0.182 0.069 0.033 Dallas_Stars 0.586 0.306 0.141 0.079 Colorado_Avalanche 0.532 0.178 0.068 0.031 Calgary_Flames 0.366 0.086 0.037 0.015 Nashville_Predators 0.189 0.072 0.030 0.012
What's startling is Detroit's enormous 33% chance of winning the whole thing. A couple of other surprises include Dallas' relatively high probability of winning the cup (7.9%). It's much higher than the Ducks or Avs which are next to them in the standings.
How does this work? I basically calculate the average goals a team is expected to score against their opposing team by using the season goals-for and goals-against numbers. I use this to simulate games between teams and run entire playoff simulations. The probabilities above are simply the number of times that team reaches the next round divided by the number of simulations.
I don't have very many features added in that I would like to add. One particular one is a recency statistic that increases the relevance of the last 20 games of the season. I expect that such a statistic will greatly increase San Jose and Washington's chances of winning the cup and probably dampen Dallas' chances.
Credit to Darse for giving me some hints and tips on how to create my simulator. Hopefully I'll get a chance to work on it a bit more so that I can build in some more statistics to help it make a more informed decision.