         home | index | egf ratings | aga ratings   Go, an addictive game Copyright © 1994-2022 GoBase        studying go | go articles | introduction to the elo rating system    A Short Introduction   The ELO rating system as developed by Prof. Arpad Elo is simple, tested (by the international Chess Federation the FIDE) and easily adoptable to Go tournaments. The structure of the ELO system is mathematically very simple; it uses a table and a formula:

ELO difference Expected score
0 0.50
20 0.53
40 0.58
60 0.62
80 0.66
100 0.69
120 0.73
140 0.76
160 0.79
180 0.82
200 0.84
300 0.93
400 0.97
... ...
Table 1: Expected score

Based on the difference in ELO rating between two players

Basically, the table shows the Normal Probability Function which is used to estimate the player's strength distribution.

The formula to calculate a player's new rating based on his/her previous one is:

``` Rn = Ro + C * (S - Se)      (1) ```
where:

`Rn` = new rating
`Ro` = old rating
`S ` = score
`Se` = expected score
`C ` = constant

So, if we assume a rating difference of 100 ELO points between dan grades, scale a 1d at 1900 and use 30 for the constant C then we can calculate some examples:

Example 1: 3d beats 3d
```	Ro = 2100
Se = 0.50
S  = 1.00
Rn = 2100 + 30 * (.50) = 2100 + 15 = 2115
```
Example 2: 3d beats 2d
```	Ro = 2100
Se = 0.69
S  = 1.00
Rn = 2100 + 30 * (.31) = 2100 + 9 = 2109
```
Example 3: 1d beats 3d
```	Ro = 1900
Se = 0.16
S  = 1.00
Rn = 1900 + 30 * (.84) = 1900 + 25 = 1925
```
Notes
1. When a player goes up D the opponent goes up -D. So in example 3 the 3d player drops 25 ELO points.
2. The maximum drop/raise in rating per game is C.

The ELO system has two parameters which affect the dynamics of the system: the constant `C` in formula (1) and the variance of the player's strength distribution in table (1).

The parameters in Chess
For Chess, the variance of the Normal Probability Function is set at 200 ELO points and the constant C depends on the rating of the players involved. Below 2000 and above 2400 it is a constant, in between it varies proportionally with the rating while creating a continuous function:
Rating C
< 200030
2000 - 2400130-R/20
2400 <10
Table 2: Variance affecting C

Higher `C` values for lower ELO ratings allows faster changes of the rating for weaker players

Proposal for the parameter values in Go
Now what would be a reasonable value for `C` when applying the ELO system to the game of Go? If we set a European 4 dan amateur at 2200, a 1p professional at 2500 (which would equal to a 7 dan amateur and would give a 9p an ELO rating of about 2700) I would like to propose the following table for Go ratings:

Rating Rank C
< 2200 30 kyu, ..., 4 dan 30
2200 - 2500 4 dan, ..., 7 dan (2200-R)/15 + 30
2500 < 7 dan/1p, ..., 9p 10
Table 3: Proposal for C in Go

Low confidence in amateur ratings, high confidence in pro ratings          home > studying go > articles > introduction to the elo system Feedback: editor@gobase.org 