Skip to content
Newer
Older
100644 50 lines (33 sloc) 1.46 KB
d2d3990 @jlouis Initial check-in.
authored
1 # Glicko 2 Ranking code.
2
3 This repository contains code for ranking according to Mark E.
4 Glickmans "Glicko2" ranking system. See
5
6 http://glicko.net/glicko.html
7
640fef2 @jlouis Provide a better README file.
authored
8 # Using the code
9
10 There are are couple of exports, which are the main interface to the
11 code base. Suppose we have
12
13 Rating = 1500,
14 RatingDeviation = 200,
15 Sigma = 0.06
16 Opponents = [{1400, 30, 1},
17 {1550, 100, 0},
18 {1700, 300, 0}].
19
20 Where each opponent is given as a triple `{R, RD, S}` of respectively
21 the rating of the opponent, the rating deviation and the score. A
22 score of `1` means we won and a score of `0` means we lost. A score of
23 `0.5` is a draw, but I am not using that in the code.
24
25 Calling
26
27 glicko2:rate(Rating, RatingDeviation, Sigma, Opponents).
28
29 Returns a triple `{R1, RD1, Sigma1}` of the players new rating, rating
30 deviation and sigma/volatility value.
31
32 Alternatively, you can generate a configuration `configuration(350,
33 0.06, 0.5)` which defines, respectively, the initial rating deviation,
34 the standard volatility base and the value of *tau* in Glicko2. The
35 *tau* value says something about how much volatility means as a
36 factor. I suggest tuning these for optimal values.
37
38 To use your configuration, call:
39
40 Conf = glicko2:configuration(360, 0.06, 0.5),
41 glicko2:rate(R, RD, Sigma, Opponents, Conf).
42
43 Another export is `phi_star/2` which is an internal step in the
44 Glicko2 scheme. This step is useful for tuning, hence it is exported.
45
d2d3990 @jlouis Initial check-in.
authored
46 # License
47
48 MIT
640fef2 @jlouis Provide a better README file.
authored
49
Something went wrong with that request. Please try again.