Top bots of Week 1 2019 [Component OPRs]

Edit: Uploaded new document for Satuday night. Latest stats in last post

With the first set of data coming in from the FMS, I have put together a spreadsheet using TheBlueAlliance API and Linear Least Squares regression to calculate the following component OPRs:

  • Cargoship Hatch (side)
  • Cargoship Hatch (front)
  • Cargoship cargo (side)
  • Cargoship cargo (front)
  • Rocket Hatch (top)
  • Rocket Hatch (mid)
  • Rocket Hatch (low)
  • Rocket Cargo (top)
  • Rocket Cargo (mid)
  • Rocket Cargo (low)
  • Starting position (not actually OPR but an average because FMS tracks which robots start where)
  • Climbing bonus (also an average because FMS tracks this on a robot basis as well)

Attached is my spreadsheet which has the stats combined for week 1, as well as by regional/district

I also created an ‘OPR’ column which is the sum of the component OPRs and the 2 averages mentioned above. This ‘OPR’ column does not match traditional OPR as it omits penalties and has more accurate numbers involved for starting position and climbing.

Let me know if y’all have any thoughts! Tried to get this out as soon as possible so teams could use it for their scouting if they wanted. I will re-run the script tomorrow night for end-of-week 1 data as well.

week1.xlsm (246.7 KB)

4 Likes

Overall top 25 teams:

Rank Team OPR
1 973 33.617
2 330 31.229
3 3538 30.038
4 4020 28.661
5 1519 27.901
6 33 27.185
7 3542 25.447
8 5436 25.083
9 4451 24.785
10 5687 24.589
11 548 23.775
12 4481 23.727
13 3604 22.257
14 1718 21.755
15 88 21.494
16 6528 21.222
17 7491 20.917
18 4930 20.567
19 7152 20.126
20 3986 20.01
21 27 19.796
22 3309 19.563
23 1902 19.34
24 1369 18.984
25 379 18.837

Top 10 climbers:

Team Climbing Avg
4020 12
1519 12
33 12
330 10.714
4930 10.714
3538 10.5
27 10.5
4451 10
3604 10
973 9.75

Top 10 cargoship specialists:

Team Cargoship Cargo+Hatch
3542 3.569
5531 3.47
7491 3.413
7196 3.381
3538 3.303
1250 3.279
3536 3.235
6528 3.223
5802 3.161
88 3.006

Top 10 rocket specialists:

Team Rocket High Cargo+Hatch
1718 3.047
548 1.768
6570 1.753
4481 1.708
3986 1.591
86 1.51
6329 1.22
4005 1.208
3489 1.177
263 1.173

Note: Just selected a few columns from my spreadsheet and looked at the top 10 from each selected stat. Plenty more in the sheet!

1 Like

I don’t know where you found your number, but the opr and stats for mtl is inaccurate. 4947 and 4930 should have lower opr and overall stats, and the rest of the top 10 should have higher opr. Or the opr is just not viable to rank robot at QCMO :stuck_out_tongue: But it’s nice to have those stats thx !

OP says he used a different overall OPR formula.

2 things that hurt OPR right now:

  • Sample size is small right now
  • Week 1 means each team is trying to figure out how to drive and score with their robot. Variations are high which means that the LLSR calculation has a high error. Later weeks or later in the tournament will yield lower errors and higher accuracy.

What algorithm are you using to do the least squares regression?

I am using the node library mathjs to do all of the matrix algebra.

I am planning on getting a site up for live data and then open sourcing the code afterwards if you are interested.

As of Saturday night:

Perfect level 3 climb bots: 346, 5885, 2539
Best cargo bay cargo scorer: 6377
Best cargo bay hatch scorer: 2910
Best top rocket scorer (cargo+hatch): 4414

Top 25 teams:

Team Rank OPR
2200 1 36.091
973 2 35.455
330 3 34.271
2910 4 34.065
346 5 33.818
118 6 33.811
3538 7 31.458
4020 8 30.544
1519 9 30.526
5885 10 30.426
33 11 29.736
6377 12 29.52
1718 13 28.921
2386 14 28.898
2468 15 28.419
3986 16 28.347
27 17 27.912
2576 18 27.78
3604 19 27.308
2930 20 26.976
3647 21 26.839
1023 22 26.804
7491 23 26.673
5436 24 26.617
86 25 26.078
5 Likes

Awesome data!

interesting that these OPRs don’t match up with TBA’s calculated OPRs.

27 has a 30.42 OPR according to TBA

EDIT: NVM, can’t read

Going through some more week one data top OPR as of Sunday Night for week 1 looks like this

330 43.14
346 38.64
973 37.33
2910 35.8
118 34.04
3538 34.01
614 32.59
2200 32.16
33 30.87
1519 30.83
27 30.42
2930 29.8
88 29.71
6377 29.56
359 29.15
610 29.02
2576 28.99
5436 28.67
4414 28.55
3604 27.31
4020 27.3
1807 27.27
379 27.26
3655 27.2
5687 27
4451 26.99
4 Likes

Note that StratGuy’s list uses TBA’s algorithm, not OP’s.

2 Likes

How strong of a metric is OPR this year?

Because this year’s score total is (mostly) a linear combination of individual robot scoring actions, OPR should work well, as it operates under the assumption that there are no synergistic effects between teams (i.e. there are no interaction terms in the model)

2 Likes

With no statistical evidence to back up my claim, I think it will be very strong. With all the scoring actions being completed by one team and having constant point value. I’ll be surprised if it’s not one of the best year’s for OPR.

Edit: sniped

1 Like

The exception is level 3 climbs, as 2 robots on the same alliance that can both do it won’t be both able to do it.

1 Like

Actually, now that I think about it, defence could also have an uneven effect on teams that are going for the rocket RP, but I think that would have a minimal effect on their OPR.

I was waiting for Israel/Turkey events to post final week 1 component OPR stats. I will do that tonight!

As for:

I actually added a column in my most recent sheet (not posted yet) that omitted climbing for that exact reason. I wanted the ability to isolate game element scoring, then add and select a climber separately.

Penalties can have a significant effect on OPR through a tournament. One big penalty match can really do some wacky things.

It boosts the teams that were awarded the penalty points roughly by (penalty)/3/(number of matches per team).
It also penalizes all of their partners for the rest of the tournament roughly by (times partnered)* (penalty)/3/square(number of matches per team)

The best example is Ketterling qual match 20 had 42 penalties. So the three robots receiving the 42 points (1506, 6086, 4994) got an OPR boost on TBA. Anyone who was with those teams got their OPR hit. 7491 was with 1506 and 4994 in other matches. That’s part of the reason they show up at 26.673 on mray190’s list and 25.24 on TBA.

330 had 3 matches at Orange County where their alliance got double digit penalty points (qual 41, 56, 64). That’s a big reason mray190 has them at 34.271 and TBA has them at 43.14.

2 Likes

Watching ISR#1 right now I am nearly certain the best bot is 1690. They solo’d three rockets in their first three matches.

1 Like