beyond-all-reason / teiserver

Middleware server for online gaming
https://www.beyondallreason.info/
MIT License
50 stars 47 forks source link

[Feature]: Allow the ability to prevent uncertainty increase #359

Closed jauggy closed 2 weeks ago

jauggy commented 1 month ago

Describe the Feature

Currently due to tau, it's possible for uncertainty to increase after rating a match. Allow the admin to set a flag (true/false) to prevent uncertainty increase.

Expected Behavior

Admin should have a setting they can set to prevent uncertainty aka sigma increase. When enabled it will pass an additional parameter to openskill library.

Screenshots

No response

Additional context

Inside the elixir openskill library we already have this:

  def rate(rating_groups, options \\ []) do
    defaults = [
      weights: Util.default_weights(rating_groups),
      ranks: Util.default_ranks(rating_groups),
      model: Openskill.PlackettLuce,
      tau: @env.tau,
      prevent_sigma_increase: @env.prevent_sigma_increase
    ]

    options = Keyword.merge(defaults, options) |> Enum.into(%{})

This means we can pass in prevent_sigma_increase: true as an option

StanczakDominik commented 1 month ago

Seems to me to be a duplicate of #319 :) I'd count those as one of the relevant parameters that should be possible to set, but it's good to have it spelled out explicitly.

L-e-x-o-n commented 2 weeks ago

Closing as duplicate of #319.