*NEW* Rank/Rating Distribution Statistics Feature in your Profile!

Go players don’t take jokes as well as chess players :sweat_smile:

6 Likes

It only applies to Dans, it’s what they have to give up.

:phew:

:relieved:

2 Likes

I know right! Unfortunately, the script on the backend has to loop through each player rating entry and bin it in one of 30 bins from 100 to 3100, we dont really have the whole frequency table available to calc % or cumsum @ every rating point - rather just a reduced representation with ranges. But ours updates daily vs lichess weekly!

6 Likes

Can you prove that? :face_with_monocle:

Awesome feature, thank you @viczommers!

3 Likes

lol just heuristics rl…
ogs distribution is right-Skewed (mean>median), compared w/Lichess graph

plus opposite of this hypothesis sounds less plausible, smth like: there are group fixed-effects/unobserved self-selection biases among go population, because of which OGS players underperform? their Lichess counterparts, on aggregate (such as lower skill or iq like-for-like, etc). there are some differences in glicko2 algo + bot population, but looking at lichess codebase they dont really have any filters in their hist… there is an anecdote that average of any rating pool should aways be around the starting score (1500)

1 Like

I think you could get a close approximation by interpolating the points you do have

3 Likes

@benjito lol ur so riight!

1 Like

I think in an Elo system without anything special added that’s the case.

Basically a zero sum system where the points lost by one player is the exact gain of another player, the average can’t ever move because the points in the system are fixed. The only change is how they’re being distributed, but the sum is always the same or changing by the same amount per player (if it’s a fixed starting rating like 1500 for every player).

5 Likes

Yes, and a potential drawback of that is that it doesn’t account for improving players. So when one player improves and gains rating points, it is at the expense of the ratings of their opponents (and eventually the rest of the player population), even though in reality their opponents didn’t get any weaker from playing against the improving player.

That’s why the EGF rating system injects a small rating bonus into the system for every game played, to hopefully compensate for rating deflation caused by improving players.

5 Likes

Thank you @square.defender ! I was drawing lots of inspiration from ur threads!

I was was wrong - I assumed that Deviation aging/decay was already implemented into OGS rating, because of expand_deviation_because_no_games_played() func in glicko2.ts - which is defined as behaviour, but looks like it was never invoked…

Assuming 100 Deviation and 0.06 Volatility, the deviation should have exceed the 200 threshold in ~275 periods. Given that aging period was set in seconds in goratings repo config, I assumed (foolishly) that period will equate to 1 day?… (so a player would have been aged-out of distribution after 9 months of inactivity…). Now, im not sure its the case; at least the default RD is 350 & max RD is capped at 500 + our current player population used in hist includes professionals & bots (454,340)

6 Likes

I think that graph should show currently active population. It makes more sense to compare your current rank to this than to old abandoned accounts. They should be excluded.

7 Likes

Absolutely… the elephant in the room is why Rating Deviation aging was not implemented into OGS in the first place! given that its already a default property of every Glicko2Entry object in OGS & it’s a feature of the original paper. If it was implemented, inactive ratings would naturally “age out” out of histogram…

5 Likes

My assumption was because it requires batch processing rather than per-game. This is an issue, not only because of scalability, but also because there is some expectation that ratings go up when you win, and down when you lose.

That said, I would personally prefer to see some system with decay, even with that tradeoff.

7 Likes

It makes me realising how weak I am :sweat_smile:

2 Likes

Comparision is the thief of joy, you aren’t weak compared to youself some time ago :grin:

11 Likes

Well… some of us are :joy::sob:

7 Likes



table
number rank rating
204 25.0k 100
688 25.0k 200
2270 25.0k 300
6132 25.0k 400
11356 25.0k 500
15865 25.0k 600
20052 23.4k 700
26701 20.3k 800
31954 17.6k 900
37134 15.1k 1000
42631 12.9k 1100
42297 10.9k 1200
38058 9.1k 1300
32924 7.3k 1400
29793 5.7k 1500
26808 4.3k 1600
22837 2.8k 1700
20192 1.5k 1800
16466 0.3k 1900
12276 1.9d 2000
8104 3.0d 2100
4725 4.1d 2200
2592 5.1d 2300
1181 6.1d 2400
611 7.1d 2500
293 8.0d 2600
107 8.9d 2700
64 9.0d 2800
19 9.0d 2900
3 9.0d 3000
3 9.0d 3100
5 Likes

I thought it was strange how flat our player distribution across ranks was until I realised it was graphed logarithmically :sweat_smile:

3 Likes

FYI OGS rating distribution is undergoing a transformation at the moment due to the “choose your rank” feature.

Prior to this, we had people joining at a mid-rank and gradually dispersing up and down as they played, and depending on how much they play.

Now they are joining across the rank spectrum, flattening it out.


Edit: interestingly coincidentally we were looking at some data about this just yesterday, so that we can turn off the A/B/C testing of that chooser and get rid of that complication from the testing :slight_smile:

Maybe some actual data will get shared here soon!

4 Likes

Great feature! I’ve been hoping for something like this for a really long time, because that is just the kind of competitive person I am!

Now, if only I could find the time to play as many games as I used to be able to.

1 Like