A Star Studded Rating System

3 min read

This is in a series of gifts that we are bringing in to give you as a part of our Birthday treat. After the new goodies, we are super excited to give you a brand new system to calculate the ratings on CodeChef, along with the new rating bands! We are also introducing the combined CodeChef Rating, which takes into account all the rated contests on our platform. Which also implies that we are bringing in more Rated Contests! Read on.

It was more than a year ago, that our then intern and now chef, Vishal Sharma teamed up with our beloved user and intern Surya Kiran to formulate the math behind the system. We took up the task of revamping the rating system because with time the present one started developing issues. Inflation of ratings was a major concern and this resulted in a wide difference in the ratings of users specially at the top, e.g., between rank 1 player and the rank 2 player. Fixing a rating band to reflect the skill of a player was also something that we wanted to incorporate.

The new rating system is a modification of the ELO, tailored for group contests. A very basic idea of how the ELO system works is this: Whenever you participate in a contest, you compete in a duel with all other participating users. Based on your existing rating and the other participating users’ rating, your probability of winning against each of them is calculated. Your actual performance is compared against this expected performance, and correspondingly, you gain or lose some points. The nitty-gritties of the system for the more mathematically inclined can be viewed here.

Some salient features of our new system are mentioned below:

  1. The new combined CodeChef Rating: A major shift in our new rating system is the introduction of the combined CodeChef Rating, so as to have one single rating for the entire platform. This is in addition to the ratings calculated independently for the Long Challenge, the Cook-Off and the LunchTime contests. This combined rating is arrived at, by using the same algorithm for each contest that the user has participated in, in chronological order of participation without discriminating based on contest type. It is important to note that it is not computed by summing up the independently calculated ratings of the Long Challenge, the Cook-Off and the LunchTime contests. Doing this has the advantage that missing out on any one type of contests won’t affect your combined CodeChef Rating. You just end up losing the opportunity to increase your rating in the contests that you miss.

  2. The new rating bands – Time and again, we kept receiving feedback for introducing rating bands. We took this opportunity to introduce this most wanted and a long awaited feature. We brainstormed on how best to represent this, and we zeroed in on two main, but opposing, factors: The coders should be comfortable with the representation, and this meant having colours as in most other platforms; and the other factor being accessibility to outsiders. We would love to see the sport of competitive programming gain traction, not just among participants, but also as a sport suitable for public following. We wanted outsiders to immediately understand how good a person was, and having only colours wouldn’t achieve that. We settled on introducing Stars, as they are universally recognized representations of skill. It also opens the doors for you to brag about your stars.

  3. We present to you our various rating bands and their corresponding stars and colours:

        <= 1399 : 1 Star   1 ★
    
    1400 - 1599 : 2 Stars  2 ★
    
    1600 - 1799 : 3 Stars  3 ★
    
    1800 - 1999 : 4 Stars  4 ★
    
    2000 - 2199 : 5 Stars  5 ★
    
    2200 - 2499 : 6 Stars  6 ★
    
        >= 2500 : 7 Stars  7 ★
  4. External Rated Contests: Currently, we have numerous contests organized by various colleges and organizations, and hosted on CodeChef. We will curate these contests, and the contests which we find to be good enough will count towards the CodeChef Rating. So, if you are conducting a programming contest for your college fest, this gives you an incentive to make it even better. You get the chance to get the best coders of the world to participate in your contest, as there will be CodeChef Rating points up for grabs! Get in touch with us if you want your contest to be rated.

  5. A new combined Junior CodeChef Rating: For students of middle and high school, we have introduced a new combined Junior Rating system which will calculate the rating of all rated contests considering only the middle and high school students.

  6. A brand new User Profile: We have revamped the existing user profile page to show your performance with swanky new graphs. Play around and we are sure you will love spending hours on it.

  7. Important links: Head over to these pages to get an idea about the new ratings and rankings –

    1. CodeChef Ranks (ALL)

    2. Long Challenge Ranks(ALL)

    3. Cook-Off Ranks (ALL)

    4. LunchTime Ranks (ALL)

    5. CodeChef Ranks (JUNIOR)

    6. Long Challenge Ranks (JUNIOR)

    7. Cook-Off Ranks (JUNIOR)

    8. LunchTime Ranks (JUNIOR)

  8. The distribution graph for the new CodeChef Ratings:

  9. CodeChef Rating Distribution

    * Above is the current state of rating distribution as of 9th March 2017. Visit your profile to check your ratings.

  10. Some Trivia:

    1. Highest current rating: 2951, gennady.korotkevich

    2. Highest ever rating: 3488, acrush

    3. Highest jump (capped at 275): eg. petr, in November 2011 Cook-Off

  11. The old ratings: We will keep the old ratings at the below given new URLs to refer your performance in the old system, in case you may have used that anywhere.

    1. Old Long Challenge Ranks

    2. Old Cook-Off Ranks

    3. Old LunchTime Ranks

  12. Penalties on Plagiarism: Users found cheating will be penalized heavily. The first time they are caught, their ratings will fall by 500 points. The second time, it will fall by 1000, and they will be banned on the third instance. This will be done from now on.

We are so very excited to bring this to you. We have worked very hard to do so. Since the change is big and spread over the entire website, there may be mistakes. We would like you tell us any issues that you find and do send us your feedback.

Want some quick advice? Try defeating higher rated coders for better raise :p

Regards
Anup Kalbalia

A new home for CodeChef!

CodeChef was started in 2009 by Bhavin and team as part of Directi, to be a platform to help programmers enhance their skills, and...
anup
1 min read

Scaling up – new cloud-based checkers

tl;dr: We are experimenting with new cloud-based checkers for the April Cook-Off to cope with the heavy traffic. There should not be much noticeable...
admin
2 min read

Join us in celebrating the Women in Competitive Programming

As Michelle Obama rightly said, ‘There is no limit to what we, as women, can accomplish’ They inspire us all! Every year, we dedicate...
smruti_444
3 min read

17 Replies to “A Star Studded Rating System”

  1. can you please explain how my rating “https://www.codechef.com/users/lashavi” is less than his “https://www.codechef.com/users/satyamanand_11”. I am unable to understand this.

  2. It’s good to see that codechef has worked upon its user interface as well .It seriously needed to be done since other sites like codeforces had it already!! keep it up codechef and keep coding:)

Leave a Reply to Adhish Cancel reply