Statistical thinking for competitive gaming and beyond

William
Analytics Vidhya
Published in
3 min readApr 27, 2020

If you have ever played an online competitive game you have most likely participated in a matchmaking system, where you are pitted against players of about equal personal rating to hopefully resulting in satisfying gameplay. I’m not gonna go into too much details about these MMR systems, for this article it is just some system, that attempts to access your current performance given your historical data — your games played.

If the system works well, and places people correctly all participating players should hopefully be able to enter state of flow coined by Mihaly Csikszentmihalyi. This should be the goal of any match making system.

Lets assume that this system works relatively well, and after a number of games it has placed you at some score: 1500.

Going into a game you can reasonably expect a 50–50. If you loose your game you will loose rating, and for your next game you should thereby in theory have a higher win chance, given that your actual skill stays the same. Many looses in a row should put you at a higher win chance — that’s always nice to keep in mind.

When we play games or sport at a competitive level (or any level really) we have all felt a certain variance in our own performance, sometimes you hit the ball perfectly, and sometimes not so much. This variance can be a bit confusing and give a sense of personal skill depreciation — have you really gotten worse since that perfect game two weeks ago?

Now for the statistical thinking part: This kind of problem can be framed in the mind as a show of the variance in our personal skill. If one can accept that our skill might vary from shot to shot, then perhaps one can take it a step further and think of our personal skill as a statistical distribution. I have found it helpful for survival in a cutthroat environment by accepting some variance in personal performance. It changes the mindset by:

  1. If you have a really bad performance you can think of it as an outlier unlikely to happen again.
  2. After a perfect performance it is easy to assume that this is your new standard, which can quickly be a disappointing sentiment. By thinking of this as a positive outlier it is easier to deal with and enjoy.

That said it is of course important not just to write off bad performance, as there should be some focus on how to improve.

player1_100_games = rnorm(100,1500,50)
player2_100_games = rnorm(100,1450,50)
sum(player1_100_games > player2_100_games)

Running the above snippet gives me 78, meaning player 1 won over player 2 78/100 times. I think this nicely gives an intuition of expectations of interactions between players on different levels — you win some, you loose some, but the better player comes out ahead on average. Basically it means that just because you are a bit better you cannot expect to win every time, but over the long run you come out ahead against players rated a bit below yourself.

Overlapping normal distributions with different means and equal variance.

While this might be blatantly obvious to some people it seems to me that many people would think of these outcomes in a more binary way. Many well designed games will have taken this into account, and by playing more rounds with more skill based interactions between competitors the randomness will average out.

Thanks for reading!

--

--

William
Analytics Vidhya

I write shorts about various machine learning projects that I am working on.