![]() |
Adambots Automated Scouting Kit
Howdy, everyone!
Several of us on Team 245 have been developing a nifty scouting application for FRC, hosted on the Adambots website, that does OPR calculations and other event analysis on the fly. It's cross-browser compatible, and it works on most Javascript-enabled mobile devices. Here's the link: Adambots Automated Scouting Kit We've also made the source code available here. AASK will begin displaying results for the Michigan State Championship as soon as the match schedule is posted. We hope to integrate global OPR calculations by Friday morning, which will be used in predicting matches and displaying information about specific teams. As of this post, those features have not yet been published. I hope you all find it useful as the World Championship approaches! Please respond to this thread with any bug reports, suggestions, or comments you may have! Below is a description of the tool, copied mostly from the website. About This Tool Below is a description of each of the calculations provided by AASK: Rank: The team's rank at the event, in terms of Qualification Points, as reported by FIRST. Autonomous Rating: An estimate of the number of points a team scores, on average, during the autonomous period. Teleoperated Rating: An estimate of the number of points a team scores, on average, during the teleoperated period. Climb Rating: An estimate of the number of points a team earns, on average, by climbing. OPR: Offensive Power Rating. An estimate of the number of points the team scores overall, on average. This number represents the offensive utility of a team. Comparable to the OPR reported by other teams. DPR: Defensive Power Rating. An estimate of the defensive utility of a team. May be interpreted as the number of points that a team takes away from its opposing alliance, on average. CCWM: Calculated Contribution to Winning Margin. An estimate of the number of points a team contributes to the winning margin of its alliance. Should My Team Still Scout? Yes! AASK is meant only as a secondary source of information, either as a basis for comparison or to replace missing or faulty information. We do not guarantee that the results of our estimates will accurately reflect the capabilities of each team. How Does This Work? For each point category, our system solves a system of linear equations for the "average contribution" of each team per match. Each equation corresponds to a single team and expresses the total accumulated points earned by that team as a linear combination of that team's average contribution and the average contributions of every other team that has competed on an alliance with that team. Naturally, we represent the system of equations with a single matrix equation of the form Ax=b
Because of the special properties of our matrix, we can easily find an exact solution when the matrix is nonsingular using LU Factorization (without pivoting!) followed by forward- and back-substitution. When the matrix is singular, we approximate the solution iteratively with the Gauss-Seidel method and display a warning to the user. The Defensive Power Rating (DPR) for a team is calculated by iterating through the list of completed matches and using the calculated OPR values to predict the outcome of each match. For each match, for both alliances, the difference between this expected outcome and the true outcome of the match is credited to the defensive utility of the opposing alliance. For each team, we sum up these differences and solve a linear system similar to the one above using this new tabulated data. The Calculated Contribution to the Winning Margin (CCWM) for each team is calculated by summing up the alliance score difference for each team for each match and solving our favorite system of linear equations for the x vector with these margins in our b vector. AASK is dependent on the match schedule and rankings reported by www.USFIRST.org. Occasionally, the FIRST website will experience an outage, rendering our tool temporarily incapacitated. We have implemented a simple caching system, designed to reduce the frequency of such failures, but ultimately the status of the FIRST website controls the functionality of this tool. |
Re: Adambots Automated Scouting Kit
Holy crap! That is actually extremely impressive. Thank you so much for making such an awesome tool.
|
Re: Adambots Automated Scouting Kit
wow, very impressive, thanks a lot for putting this together.
|
Re: Adambots Automated Scouting Kit
Just a thought, is it possible for you to make a page that combines all teams together? I wanted to do some predictions of crazy matches (IRI type stuff), but there's no regional with enough of those teams to do something like that.
|
Re: Adambots Automated Scouting Kit
Quote:
Luckily, my partner in this project came up with a better way to fetch and store so much information, and he began work on it this afternoon. We'll begin writing code tomorrow for global rating calculations and a corresponding match prediction tool, which we'll hopefully publish before the end of the day. (Last minute coding in the stands, as always!) |
Re: Adambots Automated Scouting Kit
So cool
|
Re: Adambots Automated Scouting Kit
It's interesting to see the teams with a DPR of -24. It makes me wonder if that's a failure in the data or in the team.
|
Re: Adambots Automated Scouting Kit
Quote:
'DPR' might actually be another measure of schedule strength! |
Re: Adambots Automated Scouting Kit
Will this be updated to include IRI?
Would it be possible to incorporate support for offline and unofficial events? The user uploads a table of match results and you calc off that? Thanks |
Re: Adambots Automated Scouting Kit
Awesome job 245! I will make sure that my team's scouting and strategy teams see this link. This is very impressive, keep up the great work! Thanks again for a great run at the Palmetto Regional!
|
Re: Adambots Automated Scouting Kit
Any idea why so many of the OPR values differ so much from Ed Law's and FRC Tracker's numbers?
|
Re: Adambots Automated Scouting Kit
Quote:
This is fantastic, Adambots! Thanks. |
Re: Adambots Automated Scouting Kit
Ed Law's Championship V4, Archimedes tab (and FRC Tracker, Archimedes data) has 987's OPR listed as 106.9 while Adambots lists OPR as only 85 and change for the division. Several other teams are listed lower as well same and other divisions.
|
Re: Adambots Automated Scouting Kit
Quote:
Currently, OPR is calculated using all matches and scores. Even surrogate matches for teams are included in the calculations. However when we calculate OPR for autonomous, teleop and climb, the total points used in vector b of Ax=b does not include surrogate matches, but the matrix A contains all the matches. This makes your team's auto, teleop and climb OPR smaller because you played 9 matches but only have scores for 8 matches. It is like you get zero for everything for one match. Hence 106.9 for overall OPR is correct. 85.4 came from adding the auto, teleop and climb OPR and it is wrong. This is one of my summer project to do. I have a few different ideas how to compensate for it, but I want to pick one that is most mathematically sound. |
Re: Adambots Automated Scouting Kit
Thanks for the clarification, Ed! And please know that all of your effort is deeply appreciated.:)
|
| All times are GMT -5. The time now is 12:57. |
Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi