Upload
others
View
7
Download
0
Embed Size (px)
Citation preview
The Elo rating system in chess
Nicholas R. Moloney (with Mariia Koroliuk)
SaclayOctober 3, 2017
1 / 27
Outline
Elo ratings
Remarks on rating/rankings
ELO rating update formula
AR(1) modeling
Stationarity
Intrinsic strength
AR(1) analysis
Autoregressive parameter
Noise amplitude
2 / 27
Outline
Elo ratings
Remarks on rating/rankings
ELO rating update formula
AR(1) modeling
Stationarity
Intrinsic strength
AR(1) analysis
Autoregressive parameter
Noise amplitude
3 / 27
Examples of ratings/rankings
Women’s Volleyball
1. China 330
2. USA 298
3. Serbia 272
4. Brazil 230
5. Russia 206
Chess
1. Carlsen 2827
2. Vachier-Lagrave 2804
3. Kramnik 2803
4. Aronian 2802
5. Caruana 2799
Men’s Tennis
1. Nadal 9465
2. Federer 7505
3. Murray 6790
4. Zverev 4470
5. Cilic 4155
Coding
1. Petr 3676
2. rng_58 3670
3. tourist 3427
4. Um_nik 3274
5. xudyh 3271
4 / 27
Rating update equation
Xn+ℓ = Xn + K(Wa − We)
Xn rating after n games
K scale factor
Wa actual score
We expected score
We(D) =1
1 + 10−D/400
0
0.2
0.4
0.6
0.8
1
-300 -200 -100 0 100 200 300
expe
cted
sco
re W
e
rating difference D
5 / 27
Rating update: example calculation
opponent’s rating result
2515 1⁄2
2472 1
2430 1
2608 0
Xn = 2500
K = 15
Wa = 2.5
We = 1.97
New rating:
Xn+4 = Xn + K(Wa − We)
= 2500 + 7.95
= 2508 (after rounding)
6 / 27
Incorrect formula in The Social Network
7 / 27
Incorrect chessboard in watercolor
8 / 27
Complicated non-stationary dynamics
b b b bb b b b b bb b b b b b b
Elo rating
9 / 27
Complicated non-stationary dynamics
b b b bb b b b b bb b b b b b b
Elo rating
gain
9 / 27
Complicated non-stationary dynamics
b b b bb b b b b bb b b b b b b
Elo rating
gain loss
9 / 27
Complicated non-stationary dynamics
b b b bb b b b b bb b b b b b b
movingb. c.
Elo rating
gain loss
10 / 27
Complicated non-stationary dynamics
b b b bb b b b b bb b b b b b b
movingb.c.
Elo rating
gain loss
deflation b
gain
Elo rating
11 / 27
Complicated non-stationary dynamics
b b b bb b b b b bb b b b b b b
movingb.c.
Elo rating
gain loss
deflation b
gain
Elo rating
b b
loss
11 / 27
Complicated non-stationary dynamics
b b b bb b b b b bb b b b b b b
movingb.c.
Elo rating
gain loss
deflation b
gain
Elo rating
b b
loss
b
gain
Elo ratinginflation
11 / 27
Complicated non-stationary dynamics
b b b bb b b b b bb b b b b b b
movingb.c.
Elo rating
gain loss
deflation b
gain
Elo rating
b b
loss
b
gain
Elo ratinginflation
loss
b
11 / 27
Outline
Elo ratings
Remarks on rating/rankings
ELO rating update formula
AR(1) modeling
Stationarity
Intrinsic strength
AR(1) analysis
Autoregressive parameter
Noise amplitude
12 / 27
Lifetime evolution of a player’s rating
1800
2000
2200
2400
2600
2800
0 10 20 30 40 50 60 70 80
ELO
rat
ing
age
13 / 27
Lifetime evolution of a player’s rating
1800
2000
2200
2400
2600
2800
0 10 20 30 40 50 60 70 80
ELO
rat
ing
age
stationary
14 / 27
AR(1) modelingXn+ℓ = Xn + K(Wa − We)
Key assumptions:
◮ player’s rating fluctuates around an intrinsic value X⋆.
◮ average rating of opponents X is close to X⋆.
As a consequence:
Wa ≈ We(X⋆ − X, ℓ)
≈ ℓWe(0)− ℓXW′
e(0) + W
′
e(0)
ℓ∑
i=1
X⋆i
≈ ℓWe(0)− ℓXW′
e(0) + ℓW ′
e(0)X⋆ +
√ℓW ′
e(0)σZ,
where approximately
Z ∼ N(0, 1).
15 / 27
AR(1) modelingXn+ℓ = Xn + K(Wa − We)
Xn+ℓ = Xn + K[Wa(X⋆ − X, ℓ)− We(Xn − X, ℓ)]
AR(1) modelingXn+ℓ = Xn + K(Wa − We)
Xn+ℓ = Xn + K[Wa(X⋆ − X, ℓ)− We(Xn − X, ℓ)]
≈ [1 − ℓKW′
e(0)]Xn + ℓKW
′
e(0)X⋆ +
√ℓKW
′
e(0)σZn+ℓ
16 / 27
AR(1) modelingXn+ℓ = Xn + K(Wa − We)
Xn+ℓ = Xn + K[Wa(X⋆ − X, ℓ)− We(Xn − X, ℓ)]
≈ [1 − ℓKW′
e(0)]Xn + ℓKW
′
e(0)X⋆ +
√ℓKW
′
e(0)σZn+ℓ
This is an AR(1) process with
φ = 1 − ℓKW′
e(0)
EXn = X⋆.
16 / 27
AR(1) modelingXn+ℓ = Xn + K(Wa − We)
Xn+ℓ = Xn + K[Wa(X⋆ − X, ℓ)− We(Xn − X, ℓ)]
≈ [1 − ℓKW′
e(0)]Xn + ℓKW
′
e(0)X⋆ +
√ℓKW
′
e(0)σZn+ℓ
This is an AR(1) process with
φ = 1 − ℓKW′
e(0)
EXn = X⋆.
Putting in some realistic numbers:
W′
e(0) ≈ 1/700
K ≈ 10
ℓ ≈ 10-20
=⇒ φ ≈ 0.7-0.85
Only X⋆ and σ to fit!
16 / 27
Outline
Elo ratings
Remarks on rating/rankings
ELO rating update formula
AR(1) modeling
Stationarity
Intrinsic strength
AR(1) analysis
Autoregressive parameter
Noise amplitude
17 / 27
AR(1) analysis
2000
2200
2400
2600
2800
0 10 20 30 40 50
ELO
rat
ing
i
18 / 27
AR(1) analysis
2000
2200
2400
2600
2800
0 10 20 30 40 50
ELO
rat
ing
i
19 / 27
AR(1) analysis
2000
2200
2400
2600
2800
0 10 20 30 40 50
ELO
rat
ing
i
20 / 27
AR(1) analysis
2000
2200
2400
2600
2800
0 10 20 30 40 50
ELO
rat
ing
i
21 / 27
AR(1) analysis: autoregressive parameter φYn+ℓ = φYn + σZn+ℓ
0
0.2
0.4
0.6
0.8
1
2300 2400 2500 2600 2700 2800
φ
ELO rating
22 / 27
AR(1) analysis: autoregressive parameter φYn+ℓ = φYn + σZn+ℓ
0
0.2
0.4
0.6
0.8
1
2300 2400 2500 2600 2700 2800
φ
ELO rating
ℓ = 15
23 / 27
AR(1) analysis: autoregressive parameter φYn+ℓ = φYn + σZn+ℓ
0
0.2
0.4
0.6
0.8
1
2300 2400 2500 2600 2700 2800
φ
ELO rating
ℓ = 50
24 / 27
AR(1) analysis: noise amplitude σYn+ℓ = φYn + σZn+ℓ
5
10
15
20
25
30
2300 2400 2500 2600 2700 2800
σ
ELO rating
25 / 27
AR(1) analysis: noise amplitude σYn+ℓ = φYn + σZn+ℓ
26 / 27
Summary
◮ ELO ratings are intended to be predictive.
◮ AR(1) approximates stationary rating trajectories.
◮ Computers may provide ‘objective’ ratings in future.
27 / 27
Summary
◮ ELO ratings are intended to be predictive.
◮ AR(1) approximates stationary rating trajectories.
◮ Computers may provide ‘objective’ ratings in future.
27 / 27