Hello,
I've been working on a project that focuses heavily on statistics within FRC. One thing I wanted to do was include an
Elo or
TrueSkill rating system for FRC.
Since TrueSkill can handle team games and Elo is not inherently designed for teams, I decided on TrueSkill for the first iteration. I created this model using
TheBlueAlliance API for the data and a
Python implementation of TrueSkill, with default values for all TrueSkill variables. These can be adjusted if I need them to be, and I may fiddle with them in the future to see if the model can be improved in some way. Currently, the only matches analyzed are from
official, non-offseason events that are not the Week 0 event.
I modeled the ratings twice - once
unscaled and once
scaled. Unscaled means that the ratings you see are ratings that TrueSkill uses for calculations. The starting value is 25.0. Scaled means I multiplied all ratings by 60, since most Elo systems have a starting value of 1500.0 (and 25 * 60 = 1500). The scaled version may be easier to relate to if you have seen other Elo systems, such as the classic chess, or online games like LoL or WoW.
The links to the ratings are quite large in size- opening on a mobile device may take a little while (3130 rows of a tsv file).
----
I know someone will say "These rankings don't mean anything!" - it always happens with Elo based systems. These aren't meant to be a solid ranking system - just a ballpark figure. I'm not saying Team A is strictly better than Team B because they have a higher rating. Just enjoy the numbers.