Why does "restrict rank" allow ? players?

I checked as i thought i have read my assumption somewhere before but no seems you are damn right and me wrong. My bad and sorry for this misinformation @Kalietha

1 Like

Everyone makes mistakes :slight_smile:
And thank you for the additional information, @Conrad_Melville ! Though I don’t know if I’ll go back and report those who did that earlier, seems kinda petty when for all I know they just weren’t online for a few days…

2 Likes

It has been stated (by those studying the maths) that glicko ranks have to start in the midpoint otherwise the rank-pool drifts.

I talk about cosmetic change.
When new person arrives at Go club, they say their hypothetical rank, so people can decide who will play with new person.
But there is no way on OGS to say that, this is stupid. Changing username is not nice way.
In chat… game will be canceled before that : )

(automatch will work same)

1 Like

Ah - lightglobe. We can use a nominal rank while the glicko rank settles.

That has legs…

2 Likes

I was surprised to learn just now by reading this thread that you can’t avoid getting matched with provisional players. Not that I mind, but I mostly play in tournaments, and they are almost always configured to do just that. It’s the default option (and the one used by all the automatic sitewide tournaments):

So I kind of got the impression that OGS was encouraging us to stay away from the [?] people. Seems like some mixed messages.

4 Likes

On the "i can understand that " side, it’s tournament and one may prefer established rating for the competitive aspect.

2 Likes

Who said that? :face_with_monocle: I don’t believe it :face_with_raised_eyebrow: Where is the evidence? :man_shrugging: I’m not saying it can’t be true :slightly_smiling_face: but that’s quite a big claim to make and with potentially serious consequences for the rating system so I’m putting on my scientist hat :lab_coat: and remaining skeptical until I see the evidence :nerd_face:

3 Likes

Are you willing to actually look at the maths?

Or are you just forcing me to go digging into historical threads to see if I care enough to do that?

This “fact” has been stated repeatedly over the months and years since Glicko came in.

I personally recall it quite clearly because I was in the camp of “this midpoint starting rank is damaging us”, and part of the discussion that led to humble rank as a solution.

1 Like

Glicko is asymmetric in how the ratings change. There is no protection against a rating drift.

Assume a game of a new and an established player, both with a glicko rating of 1500, but with different deviation.
If the new players now looses this game, his rating will go down and the others raises, but the rating of the new player will drop further down than as the established’s raises, since the deviation of the new player is much higher. The average pool rating is now a little lower than it was before.

I’m not sure what the detailed impact of varying the entry-level on the rating pool is. My feeling is the drift would be slightly higher if the entry ranks are biased in one direction, but without running some numbers it’s hard to say how big the impact would be.

6 Likes

This is as far back as I have been able to trace this assertion (still looking).

2 Likes

Right, but if we assume even distribution of newcomers, then the opposite will happen when the newcomer wins, won’t it?

Of course, actually there isn’t an even distribution, far more beginners arrive. I don’t know what you can or need to do about that.

1 Like

I little bit further down in that thread we have…

… and I found why I thought it was true:

5 Likes

I have already looked at the maths :wink: Here’s the evidence that I have:

Thank you @GreenAsJade for offering those links as evidence :slightly_smiling_face: However, these are not evidence that Glicko-2 must start at the midpoint to avoid drift. Rather, they are just evidence that this is an opinion held by a number of forum posters. Just look at these quotes (emphasis added):

Not evidence that Glicko needs it, just that @BHydden believes it.

Not evidence that an initial value of 1500 leads to statistically more accurate ratings, just that @mekriff has heard that from someone else.

Not evidence that it is the mathematically best way of placing folks quickly, just that @anoek believes it.

There is actually an important point in what mekriff was saying though. Note the use of the words “when setting it up”…

When there is a rating system update, the new system is applied retroactively to the entire game history. Therefore, all accounts need a starting value. Of course, we cannot know the historic true strength of each account at the time when they signed up. If fact, it is impossibleto know because our system doesn’t exist yet so there is no way to relate our rating scale to other systems.

But I’m not arguing to change that. That should remain as 1500 for all. This is necessary just to initialise the whole system, work out the current ratings of our current population and use anchor points (like people’s declared AGA / EGF rank) to relate our rating scale to ranks in other systems, e.g. 1500 = 6 kyu.

But now that we have an established system, what if new players join OGS? Glicko-2 says:

But if a player is new to OGS but already has an AGA / EGF / KGS / DGS / whatever rank, then are they really “unrated”? No, they are not. We can assume their OGS rank will be close to their whatever rank, work out the corresponding rating and start them from there. Deviation and volatility would still take the default values as we don’t have any better information for that. To be clear, this would only apply to accounts created after the declared rank system is implemented and released.

And what about new accounts who don’t know their rank but can at least declare their general skill level at sign up? Are they “unrated”? Not really. If they declare they are a complete beginner, it is safe to assume their true rank is somewhere around 30 kyu. Better to start them from there, that 6 kyu, which is obviously completely wrong.

As for whether the maths says that new players that join after the system is established have to start on 1500… It does not. Actually, examination of the equations shows that it’s worse to start such players from 1500 because it is wrong in most cases, often way wrong, so alters their opponents’ ratings due to an “unexpected” result that actually could have easily been expected with declared initial rank. Although the high initial deviation reduces the impact of these incorrect initial values on other players’ ranks, having a more correct initial rating (even just right ballpark) would remove this impact completely and would be a much nicer experience for new accounts and their opponents in terms of automatically matching opponents of similar true strength.

9 Likes

All good stuff. I trust that you were able to note that I have consistently said that I personally don’t know whether or not it is mathematically required, but only that it has been stated that it is so, continuously, as far back as I can trace it… including anoek.

Therefore, since I personally am not equipped to work out if it is true I have accept that it is until someone else to proves that it is not and establish a new concensus.

If I didn’t consistently say that, this was probably only because it would have been overly repetitive to keep saying so :wink:

(And this was also the position of Eugene in the thread that I pointed to).

4 Likes

I also looked at the math once, and at that time could not discover any reason why starting at a different rating would have impact on the overall system. However, I was not completely sure, and expected that drift may be a factor, therefore I thought to test it experimentally. I simulated 5 players in the system, assign each an initial strength (1 to 5), and let the chance of player A winning from player B equal 0.5 + arctan( strengthA - strengthB ) / π (the wider the gap in strength, the more likely the stronger player is to win).

I made sure that the random generator is deterministic, so that we can compare the effect of changing the variables without changing the games. There’s a constant tau, which affects how quickly volatility is changed, for which a value between 0.3 and 1.2 is recommended. I set it to 0.6.

I don’t think I understand how or why volatility works. It seems to steadily increase for the strongest and weakest players, and to steadily decrease for players who are closer to average in strength.

The effect of letting everyone start at a rank of their choice in the long run

It turns out that the initial rank distribution has little effect on the overall difference between the ranks, assuming the same players keep playing for a long time and no new players join.

Here’s 5000 games where each player started at 1500 rating, with an initial deviation of 350 and volatility of 0.06:

Here’s the same 5000 games where each player started with 500 rating instead:

There are no differences, except for the vertical scale of the first graph. This is mathematically expected, since the whole rating scale is relative: only (a linear transposition of) the difference in rating is used in the computation, thus the number 1500 itself is arbitrary, probably chosen to have some intuitive feel compared with Elo rating.

Next, let’s allow the players to choose their own starting rank: the strongest player chooses 2000, the weakest 1000 and the rest in between

Or, let’s have sandbaggers and airbaggers, where the weakest player chooses 2000 and the strongest 1000:

It seems clear to me that this has little to no effect after the first 30 or so matches.

We can even let one player start at a ridiculous 50000 rating:

Overall, this only affects the other ratings in the sense that the whole average is raised a bit, but it has barely any effect on the other players, and even this fixes itself over time without problems.

New accounts that misjudge their rank

Now let’s look at the effect of having a constant stream of new players, who on average choose the wrong rank. If the average new player has a tendency to sandbag, this will have the effect of pushing the rank down, and if the average new player has a tendency to airbag, this will have the effect of pushing the overall rank up.

To simulate this, let’s have new accounts consistently sandbag, for example, here I reset the rating of the strongest player each 50 games and choose a low rating of 1000:

Here it seems as though there is a clear drift in the rating: the initial idea that 1000 rating would be weak turns out to be false after 5000 games, since 1000 rating it has become about the strongest on the server. However, as we see later, this drift will eventually settle down and disappear.

What we could do (as an example of a bad decision), is make the initial rank selection based on the average rating on the server: if the average is 1500, then initial beginner rank could be 1000, and if the average is 500, the initial beginner rank could be 0:

Here the drift is naturally even stronger than before and what’s more problematic, it won’t settle down.

Apart from allowing people to choose rank, if everyone has to start at 1500, drift will still occur initially. In both cases it will be eventually solved. For example, let’s have the sandbagger scenario again, but the start at 1500 every 50 games:

It appears as though the rest of the users are drifting down because of this, which is true. But, if we increase the number of games (to 50000 for example), we see that in the end the drift is only an initial problem:

In conclusion

I don’t think that (in the long run) it matters if we allow users to choose an initial rank, as long as the ranks that they can choose stays fixed. The only snag, is that If on average new users choose too high a rank or too low a rank, then the scale of initially chosen ranks must necessarily be different from the actual ranks on the server, where the necessity is to prevent drift.

For example, in the sandbagger scenario above, the result of an abundance of sandbaggers is that the initially chosen ranks are “too strong” compared to where the user will eventually settle. Reversely, if there are on average more airbaggers, then the result will be that the initially chosen rank are “too weak” compared to where the user will eventually settle.

17 Likes

As an addendum to the above, this shows that assuming that we will receive the same kind of new players on average over time and assuming that nobody improves, then there will be no drift in the rating system in the long run, although it may shake things up initially after introducing rank selection upon account creation.

There will be other factors that have more impact on drift, such as players improving over time, more access to AI, stronger AI itself, sudden increases of interest in Go leading to larger numbers of weak players, etc.

It’s hard to measure the effect of such things, but I’m quite convinced after playing around with Glicko, that the effect of choosing your own starting rank will be negligible compared to the other factors.

9 Likes

Oh! @Vsotvep :star_struck: This is so good! I’ve spent the last few days dreaming about seeing the results of such an analysis… and here it is! Excellent work! You should publish it in Applied Statistics or something :grin:

So there we have it! There is no inherent reason within Glicko why we can’t have declared rank for new accounts joining. There is no reason not to (other than the time and effort to implement). And the huge benefit of doing so is that new accounts, whether beginners, intermediate or advanced, can get fair match-ups straight away. And existing players can play against provisional players with confidence that they will be fair match-ups (apart from air / sandbaggers, darn trolls :rage:). So, let’s do it!

Plus, there is actually an added benefit of the drift scenario. Assuming the majority of new accounts declare rank honestly (i.e. genuine beginner = 30 kyu, or known rank from another server / association declares that rank), then any slight drift over time due to those players will actually drift us towards those anchor points so that 1 Dan OGS ~ 1 Dan AGA ~ 1 Dan EGF (which was one aim of the 2021 rating system update) remains the case indefinitely, not just at the moment of that update.

So, improved rating stability, maintaining of correlation to other systems, and, most importantly, a better game match-up experience for new and existing accounts alike = triple win! :sunglasses: It’s a no brainer :grin:

4 Likes

Actually, there is even another advantage - protection against alt sandbaggers / airbaggers! If declared rank is displayed as [30k?] or similar until the deviation drops below the usual provisional threshold, then it will be harder for trolls to hide their trolling behind the [?] rank.

To illustrate…

With the current system, if you play a [?] opponent in an auto-match (so the rating behind the [?] is similar to yours) and get crushed, you might be annoyed, you might report it to a mod, but you may instead just dismiss it as “oh well, even strong players need to start their account at 6 kyu” and take it on the chin.

But if there was declared rank and you play a [6k?] opponent in an auto-match (let’s say you are also 6 kyu) and you get crushed - I don’t just mean that they win, but you play well and they are running rings around you - then likely you will be annoyed, thinking “they can’t be 6 kyu! Clearly Dan level” and hopefully report to a mod. Thus, alt sandbaggers / airbaggers will find it harder to get away with it :sunglasses:

I’m sure the @moderators (and former mods such as @Conrad_Melville) will appreciate this :grin:

6 Likes

I’d have to write an improvement to Glicko-2 to have something publishable. (To be honest, it doesn’t seem that far-fetched to improve Glicko-2, I think there is something unnatural about volatility: it doesn’t seem to change enough to matter)


If there’s any specific things you’d like to test, I’m happy to run some more simulations or share the code (but it’s even more ugly than my usual coding, this was very much a “why-am-I-awake-at-5am” rush job)

6 Likes