GithubHelp home page GithubHelp logo

h4ckl4bm3 / ctf-glicko2 Goto Github PK

View Code? Open in Web Editor NEW

This project forked from niklasb/ctf-glicko2

0.0 2.0 0.0 377 KB

Source code for Glicko-2 rating app for CTF teams 2016.

Home Page: https://kitctf.de/glicko2/

HTML 86.33% Python 13.60% Shell 0.07%

ctf-glicko2's Introduction

Experiments with Glicko-2 to Rate CTF Teams

Author: niklasb

Example Glicko-2 CTF Rating 2016

If you want to play around with your own parameters and see the results, you can use my web app.

What is this?

This is an application of the Glicko-2 rating system to the CTFTime data from 2016, using the multiplayer implementation by Matt Sewall. I scraped the scoreboards from all 2016 CTFs and applied the ranking to it.

To counter the fact that some teams play with vastly different numbers of players on different events, I applied some modification to the original scheme:

  • Only the top max_top teams are considered for each event. The assumption is that these teams obviously tried to achieve a good result, so it's useful to compare their result against other top teams.
  • Optionally, we can exclude teams that achieved less than score_percentile percent of the score achieved by the winning team
  • To counter some of the massive rating loss that some teams would experience by just a few bad events, we add a damping factor that only applies to negative rating deltas. I.e. if a team would normally lose X rating points, we multiply that by the damping factor before appying the delta. This leads to some rating inflation of course, depending on the value.

My own experiments and intuition show that these values might be a good starting point for experimentation:

  • max_top = 20
  • score_percentile = 0 (because max_top is small enough)
  • negative_damping = 0.7 (negative deltas are only counted 70%)
  • (initrat, initrd, initvol) = (1500, 100, 0.1) (these are the standard Glicko-2 parameters)

TODO + Known Limitations

  • Currently we don't order events by date, but by ID

ctf-glicko2's People

Contributors

niklasb avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.