Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

adjust Glicko-2 to account for first move advantage #6818

Open
niklasf opened this issue Jun 15, 2020 · 5 comments
Open

adjust Glicko-2 to account for first move advantage #6818

niklasf opened this issue Jun 15, 2020 · 5 comments
Labels
prospect For long-term consideration

Comments

@niklasf
Copy link
Member

niklasf commented Jun 15, 2020

http://www.glicko.net/glicko/glicko-boost.pdf suggests that this might be a straight-forward extension.

Primarily, this would improve the predictive accuracy of ratings.

cc @ddugovic, @cyanfish


Second, this would allow removing or significantly simplifying the color balacing system, which is complex and may not be mathematically sound (#6783) because chosing black does not (and should not) allow accumulating a balance that can be cashed in for tournaments.

For example, consider the following simplification: Games with chosen colors no longer change the color balance. Colors in games with random colors (including tournament games) use and affect the balance counter, to prevent long streaks.

Currently this could be abused by picking White in rated games, slightly boosting the expected rating.

In a rating system that accounts for colors, doing so is no longer an advantage.

Edit: The same applies for completely removing the color balancing system, but this may be more controversial.

@niklasf niklasf added the prospect For long-term consideration label Jun 15, 2020
@cyanfish
Copy link
Member

I haven't looked at data, but one concern I have is that some people may have different relative ability as black/white, e.g. someone that performs relatively well as black could now game this system by playing only as black to get the rating boost.

I wonder if the color balance system can be simplified? e.g. have a per-tournament color balance so no external factors can affect competitive play. And then the color balance can be used for lobby/pool games without needing special cases for black/ white.

@ddugovic
Copy link
Contributor

I am curious how that concern would play out. Some players could specialize as White, and others as Black; and if enough players specialized (successfully gaining points), the rating system would pair them with each other or against opponents who could defeat them.

@niklasf
Copy link
Member Author

niklasf commented Jun 15, 2020

someone that performs relatively well as black could now game this system

Good point, so this might be a tradeoff, not a pareto optimal improvement. I will try to get some actual data on this. (Intuitively, players performing better with black are rare, and more so at high ratings.)

This is also a flaw of the current color balancing system, which allows banking white games but not black games.

e.g. have a per-tournament color balance so no external factors can affect competitive play

That would be the most robust solution. Otherwise I guess with O(2^n) (?) collaborators you could still bank some color balance n, pretty much no matter what we do.

@niklasf
Copy link
Member Author

niklasf commented Jun 16, 2020

My analysis so far: https://backscattering.de/chess/glicko2-first-move-adv.html. Summary:

  • White scores 0.516 in the sample of 5 million rated standard games. This corresponds to the expected score with an 11 rating point advantage.

  • 11 points advantage also minimizes Glickman's deviance metric (used to score rating systems), when modifying Glicko-2 as suggested.
    image

  • Looking at the maximum regression in average deviance for individual players, this quickly decreases as the number of games increases.

  • Cosmetics: Comparing rating numbers of individual players between the two systems, the greatest change was -22.82. Histogram:
    image

ddugovic added a commit to ddugovic/lishogi that referenced this issue Feb 28, 2021
ornicar added a commit that referenced this issue Mar 2, 2021
Ratings - account for first player advantage #6818
ornicar added a commit that referenced this issue Mar 2, 2021
* master: (24 commits)
  only show inputs of analysable games
  add links to the forum etiquette - closes lichess-org/tavern#41
  show boost inquiry games on the mod games view
  filter mod games view by opponents
  return to team kick form after submit - closes #8294
  add chessground workaround in ui/learn css - closes #8286
  only show patron data to full admins - closes lichess-org/tavern#34
  filter reports a mod can see in the "all" room
  moderator report room access - closes lichess-org/tavern#42
  fix chat timeout message
  automatically renew twitch API token
  remove forum categ sort by pos
  remove forum Categ.pos
  remove onesignal push
  Fix disabled rematch button
  Glicko-2 converges within 1000 iterations or something is wrong
  Ratings - account for first player advantage #6818
  ceval: Avoid large MAXIMUM_MEMORY if it cannot grow anyway
  update stockfish-mv.wasm for atomic king explosion (fixes #8275 again)
  make it scrollable
  ...
ornicar added a commit that referenced this issue Mar 4, 2021
ornicar added a commit that referenced this issue Mar 4, 2021
* master:
  Revert "Ratings - account for first player advantage #6818"
  Revert "REVERT ME - hackfix prod /contact style"
  New Crowdin updates (#8295)
ddugovic added a commit to ddugovic/lishogi that referenced this issue Mar 19, 2021
ddugovic added a commit to ddugovic/lishogi that referenced this issue Mar 22, 2021
ddugovic added a commit to ddugovic/lishogi that referenced this issue Mar 22, 2021
ddugovic added a commit to ddugovic/lishogi that referenced this issue Mar 24, 2021
ddugovic added a commit to ddugovic/lishogi that referenced this issue Mar 26, 2021
ddugovic added a commit to ddugovic/lishogi that referenced this issue Oct 27, 2024
@ddugovic
Copy link
Contributor

ddugovic commented Oct 27, 2024

I created a PR, which I've only tested using sbt test. It does NOT address:

  • Ultrabullet speeds across all variants have many unexpected outcomes (tuning tau seems a reasonable next step, but I'm overwhelmed trying to reason about it)
  • Antichess is solved, and Atomic has a large first-move advantage
  • Chess960 first move advantage differs by start position
  • Horde first move advantage seems to be negative (assume 0.0 advantage)
  • Racing Kings first move advantage is unknown (assume 0.0 advantage)

@niklasf niklasf linked a pull request Oct 29, 2024 that will close this issue
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
prospect For long-term consideration
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants