The OP has not responded to the arguments of known community ladder analysts and statisticians like Excalibur_Z, Vanick or Shadowed and blindly continues to expound his theory in the face of facts that prove him wrong. This thread is closed in the interest of containing misinformation. Please continue discussion in the original ladder analysis thread.
SC2 Ladder Analysis - Hidden Ratings.
Huge Edit
Apparently one of the fundamental assumptions I made was wrong. It seems that leagues fluctuate constantly and that the threshold for a league is not a static number. Therefore it is impossible to determine the size and scope of a league.
On November 02 2010 06:08 Excalibur_Z wrote:
From Bashiok via email.
From Bashiok via email.
Without being able to assume that leagues are static it is very difficult to tell the point differential within a league.
The only thing that I am left with then is to say that it is still likely that MMR of top platinums is near the MMR of low diamonds and that the phenomena of the 1000-1600 rule is probably scaled based on the league. This means that it probably is something more like
1000silver = 1000 mmr
1600 silver = 1400 mmr
1000gold = 1400 mmr
1600 gold = 2200 mmr
Normally i could figure out the scale if you could create a game between a 1000 player and a 1500 player, however, the matchmaking system is too clever and will never match players with that much of a mmr difference.
Blizzard is a lot cleverer than i thought.
I will be taking down sc2stars.com as it now is meaningless.
Edit:
I made a website real quick so you can estimate your MMR based on the formula mentioned.
http://sc2stars.com
It's not fancy, i just made it in 15 minutes.
Blizzard, in order to encourage players to play the game, start all players with 0 rating and increase over time. As you gain leagues you will sometimes lose points and this varies. Also it is impossible to rate yourself against anyone else other than by comparing points and divisions.
Tonight i present the unlocking of the mystery of MMR and a formula which i believe is very accurate at determining your MMR.
First off let me say that MMR contains two components, your mean and your deviation. In most systems your displays rating is mean - 2 * deviation since 2 deviations is about 95% correct. Over time, your deviation will increase. Initially you might be 1500 mean with 150 deviation so your rating will be about 1200. If you play 200 games and maintain the same mean, your deviation will drop to something like 25 so now your rating will be about 1450. Unfortunately it is impossible to determine the deviation without more information, however, it is possible to determine the MMR.
Background
First off we know that blizzard is using an ELO type of system. It is highly likely that it is either trueskill (made by microsoft) or glicko-2. Let us assume that they are using trueskill (it doesn't make that much of a difference).
Also, the numbers I am using are the numbers I came up with based on the data. It is very likely that these are not the "actual" numbers, however I believe they are very close. Also, these numbers do not work out perfectly for people with less than 50 games or so, therefore i have added a modifier to adjust it.
First off, please read the following thread.
http://www.teamliquid.net/forum/viewmessage.php?topic_id=142211
From this we know that it is highly likely that the leagues represent certain skill levels.
Also the bonus pool is used as a means to encourage players to play.
Now please read
http://us.battle.net/sc2/en/forum/topic/628075819
The important pieces we get from here are.
Q: How do I increase my bonus pool? Do I have to not play?
A: Your bonus pool increases at the same rate regardless of whether or not you're playing. The rate of gain is about 1 point per 2 hours.
From http://us.battle.net/sc2/en/forum/topic/540694801
Q. What is the Bonus Pool and how are bonus points acquired?
A. The Bonus Pool is an accumulation of points that every player receives whether they're online and playing or not. They're essentially used as a means to help give a player a catch-up boost if they haven't played in a while. The pool does have a cap, but it increases slowly until the end of a season.
These two combined mean that there is a cap on bonus points and that everyone gets the same bonus points.
Q: Is the bonus pool considered in any calculations? How can that be accurate if it constantly inflates ratings?
A: It has been confirmed that the bonus pool is not factored into any MMR or displayed rating calculations.
Bonus pool is used for something else.
Q: I'm in Bronze with 0 rating and a poor win ratio. I'm only getting 2 or 4 or 6 points -- including bonus pool -- for a win, but losing 22 points for a loss! Why is this happening, and how will I possibly get above 0 rating as long as this is happening to me?
A: This one was tough to figure out because it doesn't make a whole lot of sense on the surface. Point gains and losses that are that extreme can only mean that you're Favored in every single match, but how is that possible if you're already in Bronze with 0 rating? The answer is that your MMR can go below Bronze 0. Because your rating -- which is zero -- is higher than your MMR which is somewhere far below zero, you will constantly be Favored. Because of the way MMR gains work, however, as long as you maintain a positive win ratio, you will eventually find matches where you are Slightly Favored and ultimately Teams Even and beyond. At that point, you will start to gain more points than you lose.
Speculation: This may be a remnant from Beta, either from when Copper league was removed or when players started at 0 rating when they used to start at 1000 rating. It could be that Bronze 0 is equal to Beta's 1000 rating (and therefore Bronze 0 = 1000 MMR).
More info: Allowing MMR to dip below the minimum point value is one way to help ensure that inflation beyond the bonus pool does not occur. The player who loses will have his MMR dip below Bronze Zero, which will cause him to be Favored in every matchup and therefore, because points drift toward MMR, he will remain at zero. This means that any points that are gained are quickly taken away by any losses, thus vacuuming up any points that would have been not really "earned" by the points floor until his MMR rises above the equivalence of Bronze Zero. This stops the production of extra points from the floor of 0.
What we can take away from this is very very important. It means that the system gives you points not based on your rating vs your opponents rating, but on on your rating and opponents points. Why do they do this?
More broadly, your points drift towards your MMR. Because of this mechanism any inflation that occurs will be counteracted by the game outcomes. That is, if point inflation in fact existed, then your points would eventually outpace your MMR and you would then start gaining less points on a win and losing more points on a loss, thereby negating any "inflation" that might occur. Note that this assumes that MMR does not inflate.
Eventually your points will be the same as MMR. but does that mean a 1000 brozne is the same as a 1000 diamond? Absolutely not. It just means that you have 1000 rating in the bronze division.
Now after getting all of this information I was curious about the divisions. Is it possible that your current points can be used to determine your MMR? (or at least MMR-2*sigma)
My conclusion is yes. The following is the formula i came up with.
Formula to determine MMR
division [bronze = 0, silver = 1, gold = 2, platinum = 3, diamond = 4]
(division - 1) * 500 + (points) + (bonus pool remaining) + (1500 - total bonus pool)
For example i am a 358 platinum player with 1004 bonus points remaining. Currently all players have received 1322 bonus pool
so my MMR is (3 - 1 ) * 500 + 358 + 1004 + 178 = 2540.
How I came up with this formula.
First off, I need to clarify that this is only possible if it is true that your points will converge to your actual rating over time.
Thanks to sc2ranks.com I noticed the following patterns.
In all leagues except bronze, there was few or no players under 1000 points as long as they had used up their entire bonus pool.
In all leagues except diamond, there were few or no players over 1500 points as long as they had used up their entire bonus pool.
First off I will assume that a 0 bronze is actually -500 rating. (There are reasons for this, I will explain later on)
So a 0 bronze = -500 rating.
1500 bronze = 1000 rating.
Ok now let's assume that silver starts at 1000. Notice above that people in silver that have no bonus pool remaining should have between 1000-1500 points so
1000 silver = 1000 rating
1500 silver = 1500 rating.
And so forth
1000 gold = 1500 rating
1500 gold = 2000 rating
1000 platinum = 2000 rating
1500 platinum = 2500 rating
1000 diamond = 2500 rating
1500 diamond = 3000 rating.
Now, for those who still have a bonus pool left, simply add their bonus pool to their score.
For me at 2540 it means i am very close to getting promoted to diamond, however, probably won't be promoted unless i maintain that rating for a certain number of games or period of time.
After examining a number of different people with different ratings, bonus pools, divisions I came to the conclusion that this was absolutely right. There is some overlap between divisions (a 2600 player might be in platinum and a 2400 might be in diamond), however, it was easy to tell that the overlap was very small.
What i am proposing.
That the points you gain are not simply based on your points compared to your opponents MMR, but is based on your points + (division - 1)*500 compared to your opponents MMR. This is the way to ensure that your rating will always converge towards your actual rating.
Things to note:
These groupings could be wrong. I had a hard time deciding whether it was 500 points a group or 600, but i noticed that people who were rated near the 1600 mark had been winning a lot of games recently and were likely to get promoted.
In my calculations I also noticed that bronze must be a very very wide group.
That the distirbution of points in the different divisions never changes, it is always 1000-1500 in silver through platinum. This means that rather than the rating cap changing constantly, that the number of people in each division changes drastically.
The reason i started bronze at -500 is because of how the chess ELO system works. In chess the average player ELO is 1500, however, it is important to note in chess that people who have ratings are people that take it seriously. In starcraft 2 it seems that blizzard did not take this into account as there seem to be a significant number of people with a rating of 0. Based on information from sc2ranks.com The average player MMR would be about 1200 which makes sense considering that a lot of players don't play seriously.
Also it seems that blizzard believed, based most likely on the results from the beta, that the groups should have been distributed about 20% each, however, pros have gotten signficantly better, while noobs are still noobs. This is the reason for players like Huk to have a 4200 rating according to my formula.
If this is true, then it also means that blizzard underestimated just how much of a gap between a noob and a pro would be. Ratings are simply mean to be a way of comparing players. You can estimate the chances of beating a player based on this.
In chess, ratings are not nearly as exaggerated because of 2 reasons. 1: The only people that play are those that are serious. 2: The skill gap between a grandmaster and an amateur is pretty small.
My thoughts on the future:
Blizzard will likely change the groups to reflect their desired distribution. Current distribution is like 42/18/18/14/8. My guess is that it will be 30/20/20/20/10 in the future so they will adjust the boundries accordingly.
Blizzard will likely lower the rating for 0 bronze, by proably another 500 points.
Blizzard has said that it will only take 1 placement match for the next season. This is probably because MMR will remain between seasons.
Final Notes:
I am willing to accept my theory is wrong, but please provide evidence.
TLDR;
My conclusion is yes you can determine your approximate MMR. The following is the formula i came up with.
division [bronze = 0, silver = 1, gold = 2, platinum = 3, diamond = 4]
Rating = (division - 1) * 500 + (points) + (bonus pool remaining) + (1500 - total bonus pool)
For example i am a 358 platinum player with 1004 bonus points remaining. Currently all players have received 1322 bonus pool
so my MMR is (3 - 1 ) * 500 + 358 + 1004 + 178 = 2540.
EDIT; After doing some testing I have added the following to my formula.
Rating = (division - 1) * 500 + (points) + (bonus pool remaining) - (2 * 150 * (1-games played/50) #if you have played under 50 games.)
The reasoning being that i noticed that players will a really small number of games will have artifically inflated ratings. By punishing players who have played fewer games i noticed that you can even the distribution significantly to the point where it's an even distribution across the whole division. 150 is a standard for chess as well (ironic) and 50 games is based on an article i read about trueskill which is near the point where your deviation starts to flatten signficantly. These numbers seemed to work well in all divisions, but seemed to work more significantly in the lower divisions (which i'm guessing is because noobs improve more significantly over time than pros do. A noob might go from 0 rating to 1000 rating in a few weeks. A pro might go from 3000-3200 in a few months)
This actually leads me to believe that ratings blizzard is using actually adds 2 sigmas to your score when calculating your rating rather than subtracting them as normal.
EDIT2; Please note that i didn't come up with these numbers on my own. I used information from sc2 ranks, applied the formula to 1000 random people from each division and checked the distribution to make sure it looked correct. I will present the excel file with the information when i clean it up a bit and make it look better.