Leaderboard ranking algorithm issues

I just noticed by chance, that someone I’m following ranks below me on GitC multi but above me during the contest. Since I didn’t modify my contest code yet at all, I did a little investigation:

Of the 312 entries ranking above me during the contest, 223 submitted their code in the multiplayer challenge, and 39 or 17.49% of those actually rank below me in multiplayer (at the time of writing).

I find this very surprising, especially considering, that many people probably improved their multi code by now (hiding the fact, that the discrepancy might be bigger).
I believe that part of this issue has to do with how hard it is to fight up through the leaderboard with a late submit (compared to submitting early and being pushed up further by later submits).

Are there any adjustments planned with regards to how the ranking in the leaderboard works? Maybe some sort of exponential backoff could help with opponent selection?

3 Likes

Part of the issue seems to be that you can get to the next league by timing or luck and bosses don’t accurately reflect the state of the leaderboard and punishes those who try and climb later when the boss has a buffered score from winning a bunch against people stuck in the current league. The overlap between the top % of a current league and the bottom % of the next league keeps growing because there isn’t a way to keep the leaderboard fluid and re-hash the league buckets on each submission.

To make bosses more accurately reflect the boundaries for the leagues, it could make sense to have each submission first play against the bosses starting from the highest boss and then place it into the league level it belongs in and calibrate only among the players of that league. Yes, this means an account could get demoted to a league on a new submission, but it would be just as easy to get promoted and you no longer have to wait for 100% submission completion to know what league you reached; only to know what rank you are within that league. This solves the problem of leagues becoming too big or stagnant and also the frustration of players knowing their bot can beat the boss and yet not being matched ever with it.

Something like this would also allow easily introducing new bosses at any point in time if a game becomes very popular or the meta changes over time and overcrowds legend league.

1 Like

Hello,
I’m new to codingame.
I see this post is old… but I seem to have a problem related to this with the boss on Code Royale. I’ve made a bot which clearly beats the boss and is currently ranked 1 in the lowest league. However, my bot can’t get higher score then the boss, is this because there’s a low amount of people playing, and so the score won’t go any higher?
|Duchess Boss|22.32|
[David-Moreira]|21.43|

Looking at your replays you lose the majority of games when you are the blue player (and never lose as red). I’d recommend clicking “send game parameters to ide” on one of your lost battles and trying to fix it. You can also manually setup a game with these player positions by deleting the boss / your player in the bottom right of the ide and then choosing them in the opposite positions.

1 Like

Ah, got it! It wasn’t clear to me, that on the UI the highlighted player refers to myself and not the battle winner, so I just assumed the last battles replays were all wins.
It seems that you have to manually view the replay to figure out the winner…
Thanks for the help @RoboStac

Edit: It seems like the winner is placed on the left side… :slight_smile: