LearnersGuild / game-prototype

Lightweight, minimal implementation of game mechanics for rapid experimentation and prototyping.
0 stars 0 forks source link

More responsive, fairer ELO #130

Closed tannerwelsh closed 7 years ago

tannerwelsh commented 8 years ago

Benefits

Description

Remove time-dependent K-factor; change K-factor to 20 for all projects/cycles

Cycles are long, and now that we have pairing instead of group projects, different cohorts experience of elo responsiveness will vary dramatically. For example, July cohort saw their K-factor drop within 4 to 6 weeks, for September cohort it will take 14 weeks, for November cohort 20 weeks.

Add "Stretch" factor to elo results

Being twice as effective as another player should count as a full "win". So, we want to stretch a 0.6666 result to 1, and a 0.3333 results to 0.

To do this, take the existing game result, and apply a "stretch" formula to it:

STRETCH_FACTOR = 3

new_result = ((old_result - 0.5) * STRETCH_FACTOR) + 0.5 new_result = 1 if new_result > 1 new_result = 0 if new_result < 0

shereefb commented 8 years ago

ready for review @LearnersGuild/software

bundacia commented 8 years ago

I feel a little nervous about this, but mainly because I don't feel I understand how the stretch factor will affect things. Seems like a pretty dramatic change. Since I don't have any specific tensions about it I'm going to say "Safe enough to try" and trust the folks who understand ELO better than I do.

shereefb commented 8 years ago

@jeffreywescott RFI

jeffreywescott commented 8 years ago

Sorry -- one last question, @shereefb. Are we meant to go back and retroactively recompute Elo from the beginning using the new methodology?

shereefb commented 7 years ago

yes please.

jeffreywescott commented 7 years ago

Issue moved to LearnersGuild/game #679 via ZenHub