The World Floorball Championships is of course the crown jewel of international floorball. For players as well as for the audience. And for floorball stat nerds to. I have previously predicted world championships and qualifications and this time is no different. I have, in fact, refined the prediction methods to a new level this time. If you don’t care about the details, scroll down to the Results section below. Otherwise we get right into the method used when the predictions were calculated.
The prediction algorithm contains of two parts. Every teams actual Elo-rating (Ratings here and theory here) is of course one part, the other is based around a Monte Carlo-method with randomly generated Poisson-distributed numbers. Then I merged the two together. I chose Poisson-distribution because floorball results seems to correlate with a Poisson-distribution with mean value set to 5.4229. There may be a better way to do this but I think it is close enough for this application. Just don’t blame the Elo-model if you loose a fortune betting..
To simplify for those not mathematically inclined:
- The official match schedule is loaded into a computational algorithm.. just kidding. The official match schedule is king. My model follows it, and the rules to the point.
- Every game gets two randomly generated numbers that are Poisson-distributed, one for each team. This is the base result for each team.
- Every team get an additional bonus to their base score depending on how good or bad it is, and this bonus is added to the teams base score as well as subtracted from the opponents base score. This bonus is based on Elo-rating, the details is shown below together with an example.
- The final result is calculated as Base Score + Bonus – Opponent Bonus and rounded to nearest integer.
- After the group stage is finished the play-offs begin, and the play off tree is based on the results from the group stage. Again, based on the official match schedule.
- If a game in the play-off ended with a tie, the match simulate the overtime in the same way and if the overtime also ends with a tie the team with the highest Elo-rating is considered the winner.
- The placement of every team is recorded.
- Repeat 1000 times from 1.
Example: Switzerland – Latvia
Switzerland’s Elo-rating is 2012.38 and Latvia’s is 1689.10. This is used to calculate the bonus.
The bonus calculations is based on every teams Elo-rating, namely the distance of respective teams Elo-rating and the average Elo-rating of all teams (even those outside this championship) which is around 1300.
This value is divided by 2 and then inserted in the formula for GD inside the paranthesis as shown below.
Switzerland’s bonus is then calculated to 7.12 and Latvia’s to 3.90.
Random number generation and final game score
Then the random numbers is generated to 3 for Switzerland and 8 for Latvia. This is only the base score. Now we add the bonus scores.
Switzerland = 3 + 7.12 – 3.90 = 5.22 (5)
Latvia = 8 + 3.90 – 7.12 = 2.78 (3)
The final result of the game is 5 – 3 to Switzerland. This means that for Lativa to win the game their randomly generated number must be 7 more than Switzerland’s generated number. This is to simulate the higher quality of the Swiss team and that they should, on average, win by 6.44 goals. Not impossible for Latvia to win, just not as probable as a Swiss win.
It is not possible to get a lower final score than 0. Every score below zero is set to zero.
Now for the interesting stuff.
The results of 1000 group stages is shown below. The average position, wins, ties, losses, goal differens and total points can be seen as well as every teams placement distribution in the group stage.
The play-off results show the percentages for every team to reach a certain tier as well as podium finishes and average final placement.
If you just can’t get enough of small blue squares with percentages, here is another one for you!
I will leave the analysis up to you. What do you think? Sweden to big favourites? Switzerland underrated?