Predicting the NHL Playoffs 07/08

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.