Go to Post I knew you guys were really smokin' at Championships. I just didn't realize how much! - Mark McLeod [more]
Home
Go Back   Chief Delphi > Competition > Rules/Strategy > Scouting
CD-Media   CD-Spy  
portal register members calendar search Today's Posts Mark Forums Read FAQ rules

 
Closed Thread
Thread Tools Rate Thread Display Modes
  #1   Spotlight this post!  
Unread 18-03-2015, 19:46
Mike Schreiber's Avatar
Mike Schreiber Mike Schreiber is offline
Registered User
FRC #0067 (The HOT Team)
Team Role: Mentor
 
Join Date: Dec 2006
Rookie Year: 2006
Location: Milford, Michigan
Posts: 482
Mike Schreiber has a reputation beyond reputeMike Schreiber has a reputation beyond reputeMike Schreiber has a reputation beyond reputeMike Schreiber has a reputation beyond reputeMike Schreiber has a reputation beyond reputeMike Schreiber has a reputation beyond reputeMike Schreiber has a reputation beyond reputeMike Schreiber has a reputation beyond reputeMike Schreiber has a reputation beyond reputeMike Schreiber has a reputation beyond reputeMike Schreiber has a reputation beyond repute
Tracking Tote/Container/Litter per Match Using API

Not being as familiar with the Events API as many of the data wizards on here I figured this would be a good question to pose to the CD community since I have neither the time nor knowledge to implement such software.

The per match data FIRST posts is not as detailed as they data refs input. Is it possible to calculate the categories FIRST doesn't post (container, tote, litter) on a per match basis using the change from the previous rankings? You would need to ensure the rankings are pulled every match and find the difference in each category for the 6 teams that played.

Thoughts?
__________________
Mike Schreiber

Kettering University ('09-'13) University of Michigan ('14-'18?)
FLL ('01-'02), FRC Team 27 ('06-'09), Team 397 ('10), Team 3450/314 ('11), Team 67 ('14-'??)
  #2   Spotlight this post!  
Unread 18-03-2015, 20:27
Ether's Avatar
Ether Ether is offline
systems engineer (retired)
no team
 
Join Date: Nov 2009
Rookie Year: 1969
Location: US
Posts: 8,098
Ether has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond repute
Re: Tracking Tote/Container/Litter per Match Using API

Quote:
Originally Posted by Mike Schreiber View Post
The per match data FIRST posts is not as detailed as they data refs input...

...categories FIRST doesn't post (container, tote, litter) on a per match basis
This doesn't address your immediate concern, but is related: Do you have a mentor or a teacher or a coach on your team who has the ear of someone at FIRST who might understand the usefulness of this data and have the authority make it available in 2016?



Last edited by Ether : 18-03-2015 at 22:28.
  #3   Spotlight this post!  
Unread 19-03-2015, 04:27
IceStorm IceStorm is offline
Mentor FRC 5046, FTC 8688
AKA: Chad
FRC #5046 (Jacked Up Jackets)
Team Role: Mentor
 
Join Date: Jan 2009
Rookie Year: 2009
Location: Michigan
Posts: 136
IceStorm is a glorious beacon of lightIceStorm is a glorious beacon of lightIceStorm is a glorious beacon of lightIceStorm is a glorious beacon of lightIceStorm is a glorious beacon of light
Send a message via AIM to IceStorm Send a message via Yahoo to IceStorm
Re: Tracking Tote/Container/Litter per Match Using API

Quote:
Originally Posted by Ether View Post
This doesn't address your immediate concern, but is related: Do you have a mentor or a teacher or a coach on your team who has the ear of someone at FIRST who might understand the usefulness of this data and have the authority make it available in 2016?


It would be awesome to have this data. I wonder if we couldn't just get enough people to contribute to this thread and then get FIRST HQ to see all the posts, that alone might be enough to get it added for next year.
  #4   Spotlight this post!  
Unread 19-03-2015, 07:56
Basel A's Avatar
Basel A Basel A is offline
It's pronounced Basl with a soft s
AKA: @BaselThe2nd
FRC #3322 (Eagle Imperium)
Team Role: College Student
 
Join Date: Mar 2009
Rookie Year: 2009
Location: Ann Arbor, Michigan
Posts: 1,934
Basel A has a reputation beyond reputeBasel A has a reputation beyond reputeBasel A has a reputation beyond reputeBasel A has a reputation beyond reputeBasel A has a reputation beyond reputeBasel A has a reputation beyond reputeBasel A has a reputation beyond reputeBasel A has a reputation beyond reputeBasel A has a reputation beyond reputeBasel A has a reputation beyond reputeBasel A has a reputation beyond repute
Re: Tracking Tote/Container/Litter per Match Using API

Quote:
Originally Posted by Mike Schreiber View Post
Not being as familiar with the Events API as many of the data wizards on here I figured this would be a good question to pose to the CD community since I have neither the time nor knowledge to implement such software.

The per match data FIRST posts is not as detailed as they data refs input. Is it possible to calculate the categories FIRST doesn't post (container, tote, litter) on a per match basis using the change from the previous rankings? You would need to ensure the rankings are pulled every match and find the difference in each category for the 6 teams that played.

Thoughts?
I do believe that is possible. There's not a whole lot you can do with that, however. Turning it into a system of equations is the same as combining all of them, which is just OPR.
__________________
Team 2337 | 2009-2012 | Student
Team 3322 | 2014-Present | College Student
“Be excellent in everything you do and the results will just happen.”
-Paul Copioli
  #5   Spotlight this post!  
Unread 19-03-2015, 08:36
Ozuru's Avatar
Ozuru Ozuru is offline
It's always the programmer's fault.
no team
 
Join Date: May 2013
Rookie Year: 2010
Location: Earth
Posts: 268
Ozuru is a splendid one to beholdOzuru is a splendid one to beholdOzuru is a splendid one to beholdOzuru is a splendid one to beholdOzuru is a splendid one to beholdOzuru is a splendid one to beholdOzuru is a splendid one to behold
Re: Tracking Tote/Container/Litter per Match Using API

Quote:
Originally Posted by IceStorm View Post
It would be awesome to have this data. I wonder if we couldn't just get enough people to contribute to this thread and then get FIRST HQ to see all the posts, that alone might be enough to get it added for next year.
I'll +support this too. Having detailed match data would be very nice for many reasons.
  #6   Spotlight this post!  
Unread 19-03-2015, 09:26
Ty Tremblay's Avatar
Ty Tremblay Ty Tremblay is offline
Robotics Engineer
FRC #0319 (Big Bad Bob)
Team Role: Mentor
 
Join Date: Feb 2006
Rookie Year: 2004
Location: Alton NH
Posts: 841
Ty Tremblay has a reputation beyond reputeTy Tremblay has a reputation beyond reputeTy Tremblay has a reputation beyond reputeTy Tremblay has a reputation beyond reputeTy Tremblay has a reputation beyond reputeTy Tremblay has a reputation beyond reputeTy Tremblay has a reputation beyond reputeTy Tremblay has a reputation beyond reputeTy Tremblay has a reputation beyond reputeTy Tremblay has a reputation beyond reputeTy Tremblay has a reputation beyond repute
Re: Tracking Tote/Container/Litter per Match Using API

Quote:
Originally Posted by Mike Schreiber View Post
Not being as familiar with the Events API as many of the data wizards on here I figured this would be a good question to pose to the CD community since I have neither the time nor knowledge to implement such software.

The per match data FIRST posts is not as detailed as they data refs input. Is it possible to calculate the categories FIRST doesn't post (container, tote, litter) on a per match basis using the change from the previous rankings? You would need to ensure the rankings are pulled every match and find the difference in each category for the 6 teams that played.

Thoughts?
You'd end up with an estimate since no individual robot data is recorded. Would knowing the details at match level detail give you more than taking the average based on the team's current tote/container/litter score and number of matches played?

Quote:
Originally Posted by Ether View Post
This doesn't address your immediate concern, but is related: Do you have a mentor or a teacher or a coach on your team who has the ear of someone at FIRST who might understand the usefulness of this data and have the authority make it available in 2016?


I've talked to the designer of the API in person a few times. FRC intends to add additional information to their API in the future, but wanted to focus on getting the API up and running this year before adding additional functionality. Walking before running, if you will.
__________________

Last edited by Ty Tremblay : 19-03-2015 at 09:31.
  #7   Spotlight this post!  
Unread 19-03-2015, 18:40
Mike Schreiber's Avatar
Mike Schreiber Mike Schreiber is offline
Registered User
FRC #0067 (The HOT Team)
Team Role: Mentor
 
Join Date: Dec 2006
Rookie Year: 2006
Location: Milford, Michigan
Posts: 482
Mike Schreiber has a reputation beyond reputeMike Schreiber has a reputation beyond reputeMike Schreiber has a reputation beyond reputeMike Schreiber has a reputation beyond reputeMike Schreiber has a reputation beyond reputeMike Schreiber has a reputation beyond reputeMike Schreiber has a reputation beyond reputeMike Schreiber has a reputation beyond reputeMike Schreiber has a reputation beyond reputeMike Schreiber has a reputation beyond reputeMike Schreiber has a reputation beyond repute
Re: Tracking Tote/Container/Litter per Match Using API

Quote:
Originally Posted by Basel A View Post
I do believe that is possible. There's not a whole lot you can do with that, however. Turning it into a system of equations is the same as combining all of them, which is just OPR.
There's a ton you can do. Validate scouting data, see trends, look for outliers, determine what that robot was doing that match based on what you know of the alliances capability. Averages don't tell you the whole story. The more data we have to make decisions the better. What if a robot gets their 6 high stacker and canner working in the last 3 matches and scores 2 six stacks with cans in each of those but did nothing in their previous 9 matches. According to average they are a middle of the road team still. The more free (no work required to obtain) data we have the easier a pick list is.
__________________
Mike Schreiber

Kettering University ('09-'13) University of Michigan ('14-'18?)
FLL ('01-'02), FRC Team 27 ('06-'09), Team 397 ('10), Team 3450/314 ('11), Team 67 ('14-'??)
  #8   Spotlight this post!  
Unread 29-03-2015, 13:44
Strants Strants is offline
Registered User
AKA: Gavin Stewart
FRC #1977
Team Role: College Student
 
Join Date: Dec 2010
Rookie Year: 2010
Location: Colorado
Posts: 11
Strants is an unknown quantity at this point
Re: Tracking Tote/Container/Litter per Match Using API

Couldn't you find the per-match Tote/Auto/Litter/Coopertition/Containter/Foul from the system of equations

M_i = a_i + t_i + l_i + c_i + r_i + p_i
T_(j,t) = sum t_i P_(j,i)
T_(j,a) = sum a_i P_(j,i)
T_(j,l) = sum l_i P_(j,i)
T_(j,c) = sum c_i P_(j,i)
T_(j,r) = sum r_i P_(j,i)
T_(j,p) = sum p_i P_(j,i)

where

M_i is the score in the ith 'half-match' (since scores are kept for both red and blue alliances, we can treat a single match as two 'half-matches', one per alliance),

t_i is the tote score in the ith 'half-match',

a_i is the autonomous score in the ith 'half-match',

l_i is the litter score in the ith 'half-match',

c_i is the coopertition score in the ith 'half-match',

r_i is the recycle containter score in the ith 'half-match',

p_i is the penalty score in the ith 'half-match' (that is, the number of points lost to penalties: it may differ from -6*(number of penalties) due to the rule that match scores do not go lower than 0),

P_(j,i) is the scoring participation matrix: P_(j,i) = 1 if team j participated as a non-surrogate team in the ith 'half-match' and was not disqualified,

T_(j,*) is the total number of points team j received in all the matches they played in (note: T_(j,p) is not given directly in the rankings, but it can be calculated as (Qualification Average) * (number of matches played - # matches disqualified) - (total score from all other components). For example, the calculation for team 1619 at the Colorado Regional looks like (131.9 * 10) - (240 + 0 + 548 + 396 + 165) = -30: they probably had 5 total fouls occur in the 'half-matches' that they played).


Of course, this system might not have a unique solution (though it will always have a solution). I'd be interested if someone could give an argument that some feature of the way FIRST matches are scheduled forces the solution to be unique, or failing that at least some empirical data about how often the system is uniquely solvable.
  #9   Spotlight this post!  
Unread 29-03-2015, 14:00
Ether's Avatar
Ether Ether is offline
systems engineer (retired)
no team
 
Join Date: Nov 2009
Rookie Year: 1969
Location: US
Posts: 8,098
Ether has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond repute
Re: Tracking Tote/Container/Litter per Match Using API

Quote:
Originally Posted by Strants View Post
t_i is the tote score in the ith 'half-match',

l_i is the litter score in the ith 'half-match',

c_i is the coopertition score in the ith 'half-match',

r_i is the recycle containter score in the ith 'half-match'
Tote, litter, coopertition, and recycle are not provided on a per-match basis.

The per-match data includes only Final Score, Auto Points, and Foul Points.


  #10   Spotlight this post!  
Unread 29-03-2015, 14:09
GeeTwo's Avatar
GeeTwo GeeTwo is offline
Technical Director
AKA: Gus Michel II
FRC #3946 (Tiger Robotics)
Team Role: Mentor
 
Join Date: Jan 2014
Rookie Year: 2013
Location: Slidell, LA
Posts: 3,659
GeeTwo has a reputation beyond reputeGeeTwo has a reputation beyond reputeGeeTwo has a reputation beyond reputeGeeTwo has a reputation beyond reputeGeeTwo has a reputation beyond reputeGeeTwo has a reputation beyond reputeGeeTwo has a reputation beyond reputeGeeTwo has a reputation beyond reputeGeeTwo has a reputation beyond reputeGeeTwo has a reputation beyond reputeGeeTwo has a reputation beyond repute
Re: Tracking Tote/Container/Litter per Match Using API

The information would certainly be useful! With it, you could infer how consistent a team is, or whether that moderate average is due to a few high scores and a bunch of low ones. Some of the high DPRs this year (and not just among those with canburglar mechanisms) make me realize that the whole OPR/DPR construct is not really very useful, at least for this game.
__________________

If you can't find time to do it right, how are you going to find time to do it over?
If you don't pass it on, it never happened.
Robots are great, but inspiration is the reason we're here.
Friends don't let friends use master links.
  #11   Spotlight this post!  
Unread 29-03-2015, 15:47
Strants Strants is offline
Registered User
AKA: Gavin Stewart
FRC #1977
Team Role: College Student
 
Join Date: Dec 2010
Rookie Year: 2010
Location: Colorado
Posts: 11
Strants is an unknown quantity at this point
Re: Tracking Tote/Container/Litter per Match Using API

Quote:
Originally Posted by Ether View Post
Tote, litter, coopertition, and recycle are not provided on a per-match basis.

The per-match data includes only Final Score, Auto Points, and Foul Points.
Yes. However, the right hand side of each of the equations I wrote above is known, so it seems to me that we should be able to solve the system.
  #12   Spotlight this post!  
Unread 29-03-2015, 16:25
Ether's Avatar
Ether Ether is offline
systems engineer (retired)
no team
 
Join Date: Nov 2009
Rookie Year: 1969
Location: US
Posts: 8,098
Ether has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond repute
Re: Tracking Tote/Container/Litter per Match Using API

Quote:
Originally Posted by Strants View Post
Couldn't you find the per-match Tote/Auto/Litter/Coopertition/Containter/Foul from the system of equations
No. You can't find the per-match scores for Coop, Auto, RC, Tote, and Litter from the data FIRST provides.

You can find an estimate for the OPR for each of those scoring components as follows:

If [A] is the 2MxT binary matrix of the alliances (constructed from the match schedule), and [d] is the Tx5 vector of the Team Rankings component scores Coop, Auto, RC, Tote, and Litter, where M is the number of matches and T is the number of teams, then the OPRs for Coop, Auto, RC, Tote, and Litter can be computed by solving the system of Normal Equations

[AT][A][OPR] = [d]

... for [OPR]


In fact, that's how it's currently being done this year (with some additional tweaking to account for surrogates and DQ's).




Last edited by Ether : 29-03-2015 at 16:47.
  #13   Spotlight this post!  
Unread 29-03-2015, 16:52
Strants Strants is offline
Registered User
AKA: Gavin Stewart
FRC #1977
Team Role: College Student
 
Join Date: Dec 2010
Rookie Year: 2010
Location: Colorado
Posts: 11
Strants is an unknown quantity at this point
Re: Tracking Tote/Container/Litter per Match Using API

Quote:
Originally Posted by Ether View Post
You can't find the per-match scores for Coop, Auto, RC, Tote, and Litter from the data FIRST provides.
Hmm, it looks like that's correct: the system of equations I provided is (in most circumstances) underdetermined.

However, it looks like in many instances (specifically, when the number of matches is at most twice the number of teams) we should be able to differentiate between coopertition points and points scored through totes, litter, and recycling. We can do so with the following system of equations:

M_(r,i) = a_(r,i) + p_(r,i) + t_(r,i) + c_i
M_(b,i) = a_(b,i) + p_(b,i) + t_(b,i) + c_i
T_(j,c) = sum c_i (P_(r,j,i)+P_(b,j,i))
T_(j,t) = sum (t_(r,i) P_(r,j,i) + t_(b,i)P_(b,j,i))

where M_(r,i) (respectively, M_(b,i)) is final score of the red (respectively, blue) alliance, the a and p represent the autonomous and foul points (each of which is given), t represents the non-coopertition points (Tote, Litter, and Containter), c represents the coopertition points (since these are shared between the red and blue alliance, there is no need to distinguish between c_(r,i) and c_(b,i)), and P(r,j,i) (respectively, P_(b,j,i)) is 1 if team j was a non-surrogate, non-disqualified member of the red (respectively, blue) alliance in the ith match. Altogether, for 2M half-matches, we are estimating 3M parameters (1 t value per half-match, and 1 c value per pair of half-matches) from 2M+2T data points (the score data from M matches, plus 2 pieces of ranking data about the total coop and non-coop points scored by a team), where M is the number of half-matches and T is the number of teams. We have an over- (or exactly) determined system provided 3M <= 2M + 2T, or if M <= 2T.
Closed Thread


Thread Tools
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is Off
HTML code is Off
Forum Jump


All times are GMT -5. The time now is 02:17.

The Chief Delphi Forums are sponsored by Innovation First International, Inc.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi