Tipping Point Team Rankings - Updated 07-11-2021

Rankings updated at http://vrc-data-analysis.com/

Again, another week with over 1500 matches played, bringing the season total to just under 6000 matches played by over 2200 teams. AWP success rate took a bit of a dip, and is just slightly over 8.25% for the season.

We may be seeing a new threshold for Skills, as teams start approaching 600 points. Congratulations to COSMOS team 29760C for hitting 592 combined!

With all the matches, there is a lot of change in the rankings. Quick highlights:

  • California teams Z-Squared, Mechanical Advantage, and Supernovas Calamity take over the top 3 spots
  • Team F.R.E.D. joins the Top 20 by improving 161 spots
  • Team MO’ Peeps has the highest debut at 82
  • There are now almost 600 matches with videos

Congratulations to all teams, hopefully everyone has analyzed what went well and what can be improved. Next weekend should be busy, with both the Speedway and Battle by the Beach Signature Events.

Best wishes to all competitors!


I have a question about the match predictor. On the right side of the screen, it lists a number (31.45 for 45464Z for example). The match predictor says it uses the true skill ranking, however, these number don’t match the trueskill listed for a team (25.52 for 45464Z). I also noticed that a team with a lower tru skill can have a higher match predictor number.

My question is, what is the metric that the match predictor uses, and can we have a way to search by it?


Fantastic question. TrueSkill is based on the idea that “skill” can be modelled as a “normal distribution” (e.g. a “Bell Curve”). A Normal Distribution is defined by 2 numbers - the “mean” (e.g. the peak) and the standard deviation (e.g. how fat the curve is).

Under “Wide Rankings”, let’s look at 45464Z:

So we see the TrueSkill is 25.52, and “mu” (the mean) is 31.45 and “tsSigma” (the standard deviation) is 1.98. TrueSkill is defined as: mu - 3 * tsSigma so 25.52 = 31.45 - 3 * 1.98

Why choose 3 times the standard deviation? Basically to be able to say with 99% confidence that a team’s TrueSkill is at least this value. 1 Standard Deviation would give you a 68% confidence interval, and 2 Standard Deviations would give you 95%.

The Match Predictor page displays the full Normal Distribution and reports the “mu” number, not the TrueSkill. Perhaps misleading on my part.

I have exposed 2 REST endpoints (replace 45464Z with a valid team code):


Will give the following JSON:

  "ap_per_match": 16.0,
  "awp_per_match": 0.11,
  "ccwm": 51.15,
  "dpr": 45.01,
  "mu": 31.45,
  "opr": 96.16,
  "score_auto_max": 129.0,
  "score_driver_max": 244.0,
  "score_total_max": 349.0,
  "sigma": 1.98,
  "team_name": "Z Squared ",
  "team_number": "45464Z",
  "total_losses": 10,
  "total_ties": 0,
  "total_wins": 40,
  "trueskill": 25.52,
  "trueskill_ranking": 1,
  "wp_per_match": 1.71

And (replace the first 8565A with Red Team 1 and the second with Red Team 2 and then replace the first 99750B with Blue Team 1 and the second with Blue Team 2)


which gives:

  "blue1": "99750B",
  "blue2": "99750B",
  "prediction_msg": "Red has a 50.00 percent chance of winning.",
  "red1": "8565A",
  "red2": "8565A",
  "red_win_probability": 50.0

The predictor basically combines the teams in each alliance’s curves and compares the two to give a probability for which team would win. If one were to run 100 batches of these 4 teams 10 times, we would expect in 95 of those runs for Red to win 5 of the 10 matches (the predictor uses 2 standard deviations)


To answer a potential follow up question: “How does a rating get update?”

Based on match results. Suppose the top 2 teams teamed up to play these middle 2 teams. The match predictor gives Red a nearly 90% chance of winning:

If Red, does in fact win, all 4 teams would have a small ratings change. Both Red teams would have their mean go up slightly and both blue teams would have their mean go down slightly. All 4 teams standard deviations would also get smaller, producing a “thinner” distribution because this was a largely expected result.

If Blue wins, both Blue teams would go up, by more than what they would have done down if they lost (likely about 9 times more, to account for their likely 1 win out of 10 matches). Similar for Red. In this case, all 4 teams’ standard deviations would likely also go up, creating a fatter distribution because of the fairly unlikely result.

If the matchups were more equal (1 of the top teams paired with 1 of the middle teams on each of Red and Blue), leading to a 50-50 prediction, then the winners and losers would all go up or down slightly, and all 4 would have their standard deviations go down.

Edited - Updated the distribution image to highlight in light-blue the area showing Blue’s 10% of winning. Basically showing both Blue teams need to perform significantly better than “normal” and both Red teams performing significantly worse than “normal”