Modification of ranking score

You didn’t understand since you think those 14000 points should remain in place. In my system, those will be reset for everyone. It is needed whatever the chosen solution.

Then after the reset, we reattribute points based on the rules explained, including past performance. So that it’ll give a brand new ranking toping still around 14000 points. But most likely it would start with top ranked being around 11000 points at first. The thing is 1000 of those 14000 points are “volatile” depending on current and average performance while 13000 are for solo and best performance attained.

The system ensures that good performer can attain the 13000-14000 range and that the system doesn’t hold the first spots for people who made all the previous challenges including the ones with very few contenders that were more easy to win than actual ones but still grant a meaningless amount of points today.

Your questions :

“if I’m ranking X in this contest, what can I expect for my global ranking?”
=> You can’t expect anything precise in terms of ranking since a ranking is not based on your sole performance, but a combination of everyone’s performance. Thus, you are wrong thinking you should expect anything precise. At least in my system you know what to expect a little : the possibility to raise you max global ranking for this kind of trial, the possibility to raise your max language ranking for this kind of trial, the possibility to raise your average performance for this kind of trail and the certitude to get 0-200 points instead of a plain reset to 0 for the “latest trial score”.

“if I’m ranking better than this person in this contest, can I now be in front of him in the global ranking?”
Of course not, a global ranking, as stated by its name, includes all factors, not just this trial ranking one. You had the answer in your own question.

“These are the kind of questions you probably won’t be able to answer thus it’ll likely kills part of your motivation if you’re interested in global ranking.”
Wrong, the system I offer ensures at fierce and permanent battle for the top since you can’t just sit on your old contests performances (which is clearly the case today, since any newcomer can’t get past 5000 points which means ranked 150 tops).

“Moreover, you can’t free the top ranks with a max loss of 400, knowing the maximum is 14000 (at the moment) because that’s less than 3%. So the leaderboard top could be bloated with people who aren’t participating
anymore in any contest.”
With my system the max loss is 1000 which is plenty enough room to make it a fair battle. Also my system doesn’t take into consideration the number of attended battles (just the average), which is fair in more than one way. First your skills evolve, second it would be unfair to newComers. Also, the points stated in my idead could be adjusted to enhance to 1000 volatile points. But I think it’s enough. Someone being first at a solo and a multi contest who solved all solo games and went 1st in all multi once, but who stop playing could get 13000 out of 14000 points. I think it’s kind of normal at least. Getting him very much lower, wouldn’t be fair performance wise.

“And finally, though people should be able to quickly reach the leaderboard top, you can’t let them do it with only 1
solo contest and 1 multiplayer contest because that’s clearly not enough for a meaningful ranking.”
Again it’s not the case, 1 contest of each (even ranked 1st global) would give 6000 then 5600 points 2 months later if he doesn’t participate in the next challenges. To reach the top he would need to completed all solo games for 5000 more points approx and get ranked 1st in all 6 multi games for 3000 more. If he does he would approach the top. Don’t you it’s pretty normal after such a performance?

Also I guess no one ever ranked first in all multi challenges so the points would be much more distributed.

Doesn’t the system do the intended job?

As a self criticism, I think the live performance points (current IA rankings) should be calculated based on ranks every hour/half-day/day or so because live computations would probably be a little overkill cpu wise.

1 Like

How do you come up with 1000? I’m counting 200 for last solo contest + 200 for last multiplayer contest. So the other 600 are for current multiplayer game ranking? Isn’t it incredibly unlikely that someone who reached 1st place in such a game could be last the next day or even a year later? Thus in the case you’re describing, he’ll most likely keep something closer to 13600 points than to 13000.

Also, taking an average isn’t always more fair, simply because an average based on 1 value is less meaningful than an average based on 10, especially on CodinGame. I mean, you need different knowledges for different contests as some are more based on graph theory, others on optimization or even on image analysis. So if someone attend and win a single contest using algorithms he perflecty knows, does it make him stronger than someone who’s weaker than him on these algorithms but way better in others?
In this case, the first person will keep 2000 + 500 + 300 = 2800 whatever happens. How does the second person is supposed to do to have a better score? There’s almost no room for him…

You shouldn’t consider only the top of the leaderboard. Because in the middle leaderboard, there are also people who wants to improve their rank and maybe they’ll never be able to overtake that guy who did a single contest.

So you’re saying my questions can’t be answered whatever the system used but I’m wrong when I say your system can’t? In a lot of sports, you can actually predict easily your future ranking based on either your absolute or relative performance. With your system, you can’t do easily such a prediction because it’s more like: “I’ll win around that many points, but I’ll lose around that many and maybe around that many others but I’m not sure and so on…” There are too many parameters for even a rough estimation.
And again, you obviously can’t battle for the top on your very first contest. If you’re strong, you should be able to do so rather quickly (that’s something I’ve been saying for a few months), but not as soon as the first or second contest.

Anyway, as I said, a ranking has to be easy to understand, either because the rules defining it are simple or because the results can be roughly estimated easily. I don’t know your background on this kind of subject, but I know mine and I know it’s way more difficult than just a formula which only seems fine for a specific part of the leaderboard.

Hi guys,

I like to read some well formatted posts like yours, but for tomorrow, we chose a formula like the one proposed by trnsnt.

You are still free to discuss about .

Hi @SaiksyApo,

Do you mean by tomorrow the suggested formula by @trnsnt will take over?

Maybe, you have to read the log book to know that. :slight_smile:

Arrrrrgh :smile:

trnsnt formula is for points earned on events, and what about mattrero question?

Are cg team going to change the ranking system anytime in future?

@scrauler I can’t answer because I do not know the CodinGame roadmap. I know they are open minded and if a solution is proposed, easy to implement and valued by the community, they will do everything to make it real.
Atm, I already know that a new feature will add value to Codingamer profile and CG points, so maybe a ‘reevaluation’ will be considered in due time.

“How do you come up with 1000? I’m counting 200 for last solo contest + 200 for last multiplayer contest. So the other 600 are for current multiplayer game ranking? Isn’t it incredibly unlikely that someone who reached 1st place in such a game could be last the next day or even a year later? Thus in the case you’re describing, he’ll most likely keep
something closer to 13600 points than to 13000.”

Wrong, that would only be the case if the top was reached on all single and multi challenges… Who achieved it as of today? No one.

“Also, taking an average isn’t always more fair, simply because an average based on 1 value is less meaningful than an average based on 10, especially on CodinGame. I mean, you need different knowledges for different contests as some are more based on graph theory, others on optimization or even on image analysis. So if someone attend and win a
single contest using algorithms he perflecty knows, does it make him stronger than someone who’s weaker than him on these algorithms but way better in others?
In this case, the first person will keep 2000 + 500 + 300 = 2800 whatever happens. How does the second person is supposed to do to have a better score? There’s almost no room for him…”
Maybe you are right and it would be better to invert 200 and 300 to leave more room : only 200 for average and 300 for latest. The numbers could be tweaked. It’s the system rather than plain numbers I’m talking about. Even the max ranks could be lowered to 1500/500 and spread 500 more points to maybe 500 total for average and 500 for latest.

“You shouldn’t consider only the top of the leaderboard. Because in the middle leaderboard, there are also people who wants to improve their rank and maybe they’ll never be able to overtake that guy who did a single contest.”
Of course they could with this system : you complete solo challenges => you gain points, so do you with ranking an IA in multi, or by competing in any contest. This way, whatever your activity you can gain points. Of course you will gain more through your two first competitions than solo puzzles. But a little less after that.

“So you’re saying my questions can’t be answered whatever the system used but I’m wrong when I say your system can’t? In a lot of sports, you can actually predict easily your future ranking based on either your absolute or relative performance. With your system, you can’t do easily such a prediction because it’s more like: “I’ll win around that many points, but I’ll lose around that many and maybe around that many others but I’m not sure and so on…” There are too
many parameters for even a rough estimation.”
No I say you are right, my system can’t. But since no system can, it’s an irrelevant question.
In my system : you know what you can win in terms of points, what you can lose for your average score if you perform bad, what you will lose if you don’t attend the contest, and the same for your contenders. Then do the math and realize you would have better spend your time actually solving another solo puzzle to gain a few more points.

“And again, you obviously can’t battle for the top on your very first contest. If you’re strong, you should be able to do so rather quickly (that’s something I’ve been saying for a few months), but not as soon as the first or second contest.”
Winning a contest doesn’t make you the top guy. Go solve all the solo puzzles, go do all the best IA in multi and then we’ll talk about you being at the top if you also won the 2 different kind of contests. As you will realise if you do it, it’ll take quite some time.

“Anyway, as I said, a ranking has to be easy to understand, either because the rules defining it are simple or because the results can be roughly estimated easily. I don’t know your background on this kind of subject, but I know mine and I know it’s way more difficult than just a formula which only seems fine for a specific part of the leaderboard.”
I’m like you I don’t know your background. I deeply think my system or something close is the best because it rewards players for all their activity kinds with points, without making the old contenders far ahead and giving all the new ones a way to get into the battle quickly.

Again, the numbers could be tweaked. But something is certain : giving points to old contests that can’t be gained by new players is stupid and unfair.

Ok with that saiksyApo.

I see several problems with actual ranking:

  • If too many people like my forum posts, I will earn CG points by unlocking achievements
    The problem with that is people won’t vote as post as they really like

  • The more contest you play, the more CG points you earn
    The ploblem with that is newcomers never could reach the top of the ranking
    and we can not know if a top-rank player has won any contest or not

Using the new formula, the ranking score for a player ranked 500th from 1000 is:
Score = 1000 ^ (500/1000) = 31.62 points

I sincerely think that it’s not worth the effort for players ranked below.

Maybe the solution could be this variation:

Score = P + N ^ (P / N)

Where P = (N - C + 1)

What do you think of it?

and what about Score = ( P + N ^ (P / N) ) / 2 …
which give the same score as previous for the 1st and the last player?

I don’t agree at all with the OP. There is not more difference between 1st and 2nd than between 201st and 202st just because of their rank.

The real difference is much more complex to compute :smile:

For solo contests : time of completion difference, performance, code length, code elegance, … whatever. Too complex to evaluate.

To be it should rather be proportianal to challenge points : (N - C + 1) / N * ChallengeMaxPoints.

Good idea !

The new algo just benefits the best ranked players since the points gain looks exponential for higher ranks => even more impossible to catch up. Or am I wrong?
/clap

New ranking formula gives more points to someone who solve “Power of Thor” puzzle (very easy puzzle achievement with 40 CG points prize) than someone who defeat 530 players on a multiplayer game with 1000 participants.

Is it fair?

Personal point of view :

I don’t agree with you, with the new system is even easier to climb the leaderboard, since we just have to be first in the contests.

The new formula just gives a momentary advantage to people who done more puzzles than contests.

Moreover, it is senseless to compare people doing puzzles and people doing contests only, knowing that everyone can do the puzzles.
You should also know that the CG Puzzles are older contests.

To take the example of Scrauler:
Coders 1: 40 CGP for Puzzle Thor + 0 CGP for Contest Thor => He did not participate to the contest 40GCP.
Coders 2: 40 CGP for Puzzle Thor + 1 CGP for Contest Thor => He finished 100/100 41GCP.
Coders 3: 40 CGP for Puzzle Thor + 100 CGP for Contest Thor => He finished 1st / 100 140GCP

Good in Contest > Not so good in Contest > No Contest At All

Doesn’t change the fact that if you can’t do previous contests points you can never catchup.
=> fake ranking

That’s the point of that modification. So trnsnt nailed it.

Actually I have to agree with @Enygma on 1 point: if you’re a newcomer, you’ll still probably need a lot of time to catch up with some top leaderboard players who’re top ranking every contest, like Gangrene. Even if you beat them every single time, you’ll still be thousands points behind after 10 or 20 contests.

That new formula is only better for balancing between contests, and that’s already a great improvement.