A foosball table. At Veneficus, that is the most used item in the office, apart from our laptops of course. During the Friday afternoon drinks, after a good conversation with customers or inbetween the development of algorithms: the beloved table never remains unmanned for a long time. We would not be Veneficus if there were not different models developed by the employees to determine the rankings and make predictions. The algorithm of mine - Data Scientist Hoksan Yip - works best.


For a few years there has been a foosball table at the office. We are now using the second one (completely in Veneficus style), because it is used so often. We have been keeping the foosball scores for a long time. In the beginning it was very simple, in an Excel file with simple calculations: it looked at how often someone had won versus the number of games that had been played. Who won got a point and that was it.


Then we thought: 'we develop algorithms all day long, can we not do better than that?' We were not satisfied with the way the ranking was determined, because if you often won against 'less skilled' players, you would end up high in the ranking. While someone who is constantly loosing against good players, is not necessarily very bad. That is why we were looking for more statistical models.


Foosball table algorithm

And so a number of Venefici started to develop a foosball algorithm. The advantage of my algorithm - which we use now - is that it takes into account who you are playing against. That way we get a fair ranking. The algorithm also takes into account security margins: normally you cannot say how good players are who have not played so often. The results showed, for example, that there was a player who, although he did not play often, was labeled as 'very good' by the algorithm with a reasonable certainty.


Now we can track and process scores in the algorithm. From this we deduce who is truly outstanding in foosball. In addition, we have a much fairer ranking.


Future developments

But just tracking the current scores and using it in the algorithm to create the fair ranking is not enough. That is why we are now also 'predicting' the probability of winning. It will take some time before we have developed that. Until then, we continue to practice a lot and gather more data.


We are happy to share the code of the algorithm with you. You will find it here.