Monte-Carlo Simulation of SC2 Ladder

Introduction.
Presented below is the output of a Monte-Carlo simulation of the SC2 ladder. The simulation is programmed to match the real world as closely as possible, while still being as simple as possible. The goal is to use the simulation to estimate various properties of the ladder (such as balance).


Overview of the algorithm.

  1. There are 10,000 players on the virtual ladder.
  2. There are an equal number of zergs, terrans and protoss.
  3. The skill distribution of each race is the same.
  4. The ladder is simulated for 10,000,000 games.
  5. Each player’s current ladder MMR rank is updated for the outcome of each game that that player plays.
  6. A player’s true skill level (not current MMR) decides the outcome of each game.
  7. Players are matched based on MMR like the SC2 ladder.
  8. After every 10,000 games are played:
    - 0.1% of players with the worst MMR quit the game. The idea here is that players who have a tremendously horribly experience on the ladder will stop playing the game altogether.
    - 1% of players with the worst win-rate will switch races, while retaining their “real” skill level. The idea here is that players who have a bad experience (but not horrible) will be likely to switch races.
  9. A small “balance bias” is added to each player’s “true skill”: +30 pts (+4% win-rate vs equal opponent) is added to each Terran, +20 pts (+2%) is added to each Protoss, and -10 pts (-1%) is added to each zerg. This is the only asymmetry in the simulation.
  10. Once the simulation is completed, players are sorted and ranked by league like the SC2 ladder.

Results:
https://i.imgur.com/3lQ6pGv.png


Summary:
As you can see, I have replicated many of the effects observed on the real ladder:

  1. Zerg becomes the least played race across the whole ladder.
  2. Zerg becomes the least represented race in both the highest and lowest leagues.
  3. Zerg peaks in representation in the middle leagues, around Diamond/Masters/Platinum league.
  4. Terran dominates the lower leagues.
  5. Terran and Protoss dominate Grandmaster.

The explanation for this behavior is very simple. At higher leagues, the slight win-rate disadvantage bumps a bunch of zergs down enough they are no longer in the higher league. At the lower leagues, the slight win-rate disadvantage puts them at an increased risk of going on a string of losses, and either switching race or quitting the game. Since people who switch races to T/P are less likely to then switch races again and/or quit the game (since a slight win-rate advantage decreases the odds of a string of bad losses), they ultimately become the most played races, Terran most especially.


Conclusion.
Hopefully this puts to rest the myth that Zerg is more common in Diamond etc leagues because it’s advantaged. An advantaged race creates literally the opposite effect (sweltering across the whole ladder, but most especially lower leagues) while a disadvantaged race creates under-representation at both the upper and lower leagues, with the middle leagues being the most dense.

Now, if I were to tune the parameters of the simulation, I could probably match the SC2 ladder numbers exactly. I may do that eventually, but for now matching the behavior will have to be enough.

This definitely proves it is possible to explain the SC2 ladder scenario using nothing but a small probability of race switching / quitting the game, and a small performance bias for each race.

1 Like

Was the ‘balance bias’ per matchup or per race?

I have the suspicion you put the graph above as if each group (professional, Gm, Masters, diamond, etc) had a similar number of players. If it is true then you just disproved what you tried to show since the distribution would be widely different than reality.

Let’s give you the benefit of the doubt here.
You have several wrong hypothesis to start with. The first one is that there was an equal number of players of each race to start with and players would only leave. In the past 5 years we started with zergs (30%) being less represented than terrans 33% (but more than toss 27%) to the opposite situation but also from 44K zergs max to 136K at max. Since there was a lot more new arrivals than departure your model can’t is off from the start, from the hypothesis. Especially your 8) does not seem to quite capture what is happening.

If you change your 8 to take into account new arrivals, change the starting conditions) (and still assuming, although it is naive to trust you, that you use the right percentages for the leagues and not just a custom made non sensical X axis) then you could start to have something interesting.

3 Likes

Good question. It was per race. The simulation doesn’t support individual matchups at the moment.

What software did you use? MS Excel?
Put colors instead of races and derive conclusions from colors, it will be easier to read.

As you can see, I have replicated many of the effects observed on the real ladder:
But a few more effects could change results completely. Don’t you think your conclusions are a bit early, specially when you admit, it is far from perfection?

**This definitely proves it is possible to explain the SC2 ladder scenario**
Ughm… where? I don’t claim it’s not possible and itself is a curious topic, but I don’t see where in the text you proved the point.

That’s going to be interesting.

I see Anesthetic’s troll accounts are out in full force today.

Do you mean that in your simulation all races have the same number of players having the same true skill level
example 30T/30Z/30P -players having true skill level of bronze player?

Or do you assume that all players have the same skill level?

Logical.

How do you select a race that the player will switch to?

So if I understand correctly [50/50 of true skill level + % bias]:
TvZ is 55%/45%
PvZ is 53%/47%
TvP is 52%/48%

and the true skill level is static.

1 Like

No, the same distribution of true skill. I picked a mean of 0 and a standard deviation of 500 (measured in Elo ranking). The skill can vary greatly from player to player but on average each race has the same odds of generating a player with a certain skill level as any other race.

It is selected at random, as long as it is not the same race they were playing.

The player’s true skill is combined with the racial performance bias to produce their performance level. Their performance level determines how likely they are to win games vs an opponent (the difference in performance ranking determines the win-rate between these players, according to the Elo algorithm).

So if a player’s “true” skill is 300 and their race is terran, their performance rating will be 300+30=330. So against an opponent with 300 performance rating, this terran would have a 54% win-rate. When a player race-switches, their true skill rating carries over WITHOUT the racial bias, and a new racial bias is added for the new race.

Ex:

WinrateOfPlayerA = 1 / (1 + 10 ^ ((RatingOfPlayerB - RatingOfPlayerA) / 400))

WinrateOfPlayerA = 1 / (1 + 10 ^ ((300 - 330) / 400))

WinrateOfPlayerA = 1 / (1 + 10 ^ (-30 / 400))

WinrateOfPlayerA = 1 / (1 + 0.84139514164519509115274189380048)

WinrateOfPlayerA = 1 / (1 + 10 ^ -0.075)

WinrateOfPlayerA = 1 / 1.8413951416451950911527418938005

WinrateOfPlayerA = 0.543

Take the topic seriously, if you want others to listen to you.

So when you are done, do not forget to provide us with graphs of simulation when all races are perfectly equal, and when they are equal but have size proportions from real data.

I am awaiting your results.

not true terran and zerg are almost even.

PeekaChi
That’s what I mentioned to him in my first post here (what made me called a troll account, funny).

His assumption was Zerg is weakest and Terran with Protoss are strong.
Based on the assumption, the result is pretty easy to predict even without simulation. - Terran and Protoss dominate Grandmaster.

That is why he should use colors (race Red, Yellow, Blue, or whatever else suits him), and then translate simulation into game languange, to avoid misunderstandings like one presented by you. I suggest you reading his 1st post once again with a larger understanding.

1 Like

Not in the Monte Cassino simulation, if you want to have T and Z even you must use the Monaco simulation.

1 Like

If your standard deviation(_Normal distribution - Wikipedia) means is 0 then your X is a Real number but As per the definition of skill(_Skill - Wikipedia) indicate, skill can’t be negative. So how do you resolve the problem of negative skill?

Also Ranked(_https://www.rankedftw.com/stats/leagues/1v1/#v=2&r=-2&sx=a) shows that Normal distribution can only be used if we are taking gold to GM.

Ok I can live with that.

Translation Yes.

1 Like

There is no such thing as “negative skill”. There is such a thing as “negative measure of skill”. If you set the mean of the SC2 ladder to 8k mmr, every player in SC2 has a negative measure of skill. It doesn’t change anything, because a ranking is relative, so someone with -800 rank will have the same win-rate vs -700 as someone with 800 does vs a 700 opponent.

I am not inclined to oblige since it’s highly likely you are Anesthetic on yet another troll account.

I am not the one running around the forum as saying something is OP and something should be buffed because it’s useless. My main focus is on asking for reasons. A few people managed to provide me with answers, but most of people who claim Terran weak Protoss OP I talked to, could not maintain a discussion.

If you find asking for control group trolling, then it ends the thread, atleast for me.

A normal person would say, “Oh my goodness who is Anesthetic and I am sorry if I gave you the impression I am him!”. Anesthetic would deflect with an attack. Here we are, with you deflecting with an attack.

Terran is at 31% in GML. Zerg is at 24%. It’s simply a fact that GML is Protoss/Terran dominated. This simulation shows that many of the observed behaviors of the ladder (GML, low league representation, ladder-wide representation) can be explained with 5 simple parameters (a performance bias for each race, a small chance to quit the game and a small chance to switch races).

Of the 5 parameters, only 3 of them are asymmetrical. In other words, the performance bias for each race can explain the current ladder situation quite well. Zerg is least in GM because they are least favored by balance, and they are least in lower leagues because they are at higher risk of quitting the game or switching races after a string of losses which is also a product of being unfavored by balance.

yes and zerg is the least popular race overall at 26% and terran most popular at 34% so the math seems to check out. the only race that is over preforming in gm is protoss
rankedftw com/stats/races/1v1/#v=2&r=-2&l=-2

2 Likes

Yes it does seem that way. Although the parameters work out best if Terran is advantaged vs Zerg, and Protoss is advantaged vs Zerg but even more vs Terran. The key to this is the lower leagues. If Protoss is OP vs both Zerg/Terran, then Zergs and Terrans will be more likely to place in lower leagues, causing them to dominate the lower leagues. But, it’s terran that dominates the lower leagues.

So, to get Protoss>Terran>Zerg in GM and Terran>Protoss>Zerg in lower leagues Terran must have a slight balance advantage over zerg. It has to be less than the PvT advantage, or Terran would dominate GM. With an advantage, Terrans are less likely to hit the “floor” of the ladder where they quit or race switch, causing them to dominate lower leagues.

Protoss doesn’t dominate lower leagues because their performance advantage reduces their numbers in lower leagues. Thus we are able to achieve T>P>Z in the lower leagues while preserving the relationship in Grandmaster/masters.

Replicating the higher/lower leagues is very easy. It’s tougher to get the middle leagues because the ladder is in a state of transition rather than an end-state, which means you have to not only find what parameters to the simulation are correct, but what time-slice the current scenario occurs at. In other words, to get the middle leagues correct another parameter has to be added to the simulation, which is the duration of the simulation.

These parameters match the real world quite well, since on rankedftw you can see Zerg/Terran representation going down in higher leagues, and Protoss representation going up proportionally:

https://www.rankedftw.com/stats/races/1v1/#v=2&r=-2&l=5