-
Hi, I am not familiar with scala, but from from browsing through this repository, I found the directory lila/modules/rating and I just don't see, how does it update stats after each game. There still seems to be some sort of rating period (there is a variable for it) and the function calculateNewRating takes as an input an array of results, not only one result. Would someone please explain to me, how does Lichess achieve a new rating and RD after each game with glicko-2? |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment
-
Lichess assumes that a rating period is a fixed time interval. For integer rating periods we want to exactly match the Glicko-2 paper. In particular, from step 6 we get:
Now Lichess just smoothly extends this to fractional rating periods by solving that recurrence relation, resulting in:
This is implemented here: lila/modules/rating/src/main/glicko2/RatingCalculator.scala Lines 205 to 206 in 7e7d7cc |
Beta Was this translation helpful? Give feedback.
Lichess assumes that a rating period is a fixed time interval. For integer rating periods we want to exactly match the Glicko-2 paper. In particular, from step 6 we get:
Now Lichess just smoothly extends this to fractional rating periods by solving that recurrence relation, resulting in:
This is implemented here:
lila/modules/rating/src/main/glicko2/RatingCalculator.scala
Lines 205 to 206 in 7e7d7cc