Go to Post Wait, robot? We've been working on building a team. - ATannahill [more]
Home
Go Back   Chief Delphi > Technical > IT / Communications
CD-Media   CD-Spy  
portal register members calendar search Today's Posts Mark Forums Read FAQ rules

 
Reply
Thread Tools Rate Thread Display Modes
  #1   Spotlight this post!  
Unread 11-15-2017, 12:02 PM
em59377 em59377 is offline
Registered User
VRC #4776
 
Join Date: Nov 2017
Location: Howell
Posts: 3
em59377 is an unknown quantity at this point
App to Analyze Statistics for Scouting

Hey guys! I'm our scouting captain for team 4776 out of Howell, MI. We typically use an app that we develop each year for scouting but I had an idea and I want to know if it's at all possible and if it is, how. Is there a way to create an app where each team number is like a "folder", so that each team's information is separate, and contains the information for each match. So when you scout, your whatever you are using connects to the folder and uploads the information, then each "activity" (like climbing or shooting fuel) would be weighted for a certain amount of points. You could then use the information provided and punch in which teams are on each alliance and find out the statistical chance of winning based on each teams past points. I'm not very good with computers at all so if anyone could just point me in the right direction I would greatly appreciate it, thank you!
Reply With Quote
  #2   Spotlight this post!  
Unread 11-15-2017, 12:26 PM
SenorZ's Avatar
SenorZ SenorZ is offline
Physics Teacher
AKA: Tom Zook
FRC #4276 (Surf City Vikings)
Team Role: Teacher
 
Join Date: Jan 2011
Rookie Year: 2011
Location: Huntington Beach, California
Posts: 1,309
SenorZ has a reputation beyond reputeSenorZ has a reputation beyond reputeSenorZ has a reputation beyond reputeSenorZ has a reputation beyond reputeSenorZ has a reputation beyond reputeSenorZ has a reputation beyond reputeSenorZ has a reputation beyond reputeSenorZ has a reputation beyond reputeSenorZ has a reputation beyond reputeSenorZ has a reputation beyond reputeSenorZ has a reputation beyond repute
Re: App to Analyze Statistics for Scouting

What you're describing is a very advanced scouting platform.

My team used AppSheet last year. It provides an app interface on the phone that sends data to spreadsheet in Google Docs. From there you can do all sorts of math and functions. You can even have it display graphs of data that has been collected.

It also lets students load photos of robots and saves them in a folder.

...And AppSheet costs to use. I think it was $10/app per month for unlimited users.
__________________
2013-present: FRC Team 4276, Surf City Vikings
2011-2012: FRC Team 3677, The Don Bots

Last edited by SenorZ : 11-15-2017 at 12:32 PM.
Reply With Quote
  #3   Spotlight this post!  
Unread 11-15-2017, 01:11 PM
Brian Maher's Avatar
Brian Maher Brian Maher is online now
Parking Lot Endgame
FRC #2791 (Shaker Robotics)
Team Role: College Student
 
Join Date: Apr 2014
Rookie Year: 2012
Location: Troy, NY; NJ
Posts: 968
Brian Maher has a reputation beyond reputeBrian Maher has a reputation beyond reputeBrian Maher has a reputation beyond reputeBrian Maher has a reputation beyond reputeBrian Maher has a reputation beyond reputeBrian Maher has a reputation beyond reputeBrian Maher has a reputation beyond reputeBrian Maher has a reputation beyond reputeBrian Maher has a reputation beyond reputeBrian Maher has a reputation beyond reputeBrian Maher has a reputation beyond repute
Re: App to Analyze Statistics for Scouting

The approach with the lowest barrier to entry is probably a paper sheet to Excel/Google Sheets scouting system. We accomplish all of that functionality in Microsoft Excel. The results of each paper scouting sheet are manually entered into the spreadsheet and then we calculate various analytics on the raw match data.

If anyone is interested in seeing our scouting spreadsheet, feel free to say here/PM me and I'll send it your way.
__________________
2016-present, Mentor, FRC 2791 - Shaker Robotics
2018: Central New York Winner (2791, 340, 5030, 7081) and Ind. Design, Tech Valley Finalist (2791, 20, 3624, 5123) and GP
2017: Tech Valley Winner (333, 2791, 5952) and Ind. Design, NYC SF (2791, 2383, 1880) and Ind. Design, Curie Division QF (2481, 2791, 203, 1807), IRI Invite, Robot Rumble Winner (2791, 5881, 1880)
2016: Tech Valley SF (5236, 2791, 3624) and Quality, Finger Lakes SF (5254, 2791, 2383), Battlecry Winner (195, 2791, 501), Robot Rumble Winner (2791, 195, 6463)

2012-2015, Student, FRC 1257 - Parallel Universe
2015: Mount Olive QF (1257, 1923, 1811) and Safety Award, North Brunswick Finalist (11, 193, 1257) and Team Spirit and Safety Awards
2014: Clifton Winner (1626, 869, 1257), MAR CMP QF (1257, 293, 303)
2013: TCNJ Safety Award
2012: Mount Olive QF (204, 303, 1257)

FF - Questionable Decisionmakers: 2017 SLFF Regular Season Champions (Elgin Clock Award), SLFF Championship Winners, and Fantasy FIM Finalists
Reply With Quote
  #4   Spotlight this post!  
Unread 11-15-2017, 01:31 PM
Doug Frisk's Avatar
Doug Frisk Doug Frisk is offline
Keeping Score
AKA: Doug Frisk
FRC #2512
Team Role: Mentor
 
Join Date: Mar 2014
Rookie Year: 2011
Location: Behind the FMS
Posts: 535
Doug Frisk has a reputation beyond reputeDoug Frisk has a reputation beyond reputeDoug Frisk has a reputation beyond reputeDoug Frisk has a reputation beyond reputeDoug Frisk has a reputation beyond reputeDoug Frisk has a reputation beyond reputeDoug Frisk has a reputation beyond reputeDoug Frisk has a reputation beyond reputeDoug Frisk has a reputation beyond reputeDoug Frisk has a reputation beyond reputeDoug Frisk has a reputation beyond repute
Re: App to Analyze Statistics for Scouting

Next up from Excel is going to be Tableau (they've given FRC teams licenses the past few years) or (what I'm currently playing with) Power BI.

But there's a leap from "taking data" to creating data usable for predictive models and then another leap to actually creating those models. It's fine to create pretty charts and graphs, but if they can't provide actionable insights into your next match it's a waste of time.
__________________
To Do list: Detroit Champs, Minnesota Champs, Gitchi Gummi Get Together
Reply With Quote
  #5   Spotlight this post!  
Unread 11-15-2017, 01:40 PM
Ben Martin's Avatar
Ben Martin Ben Martin is offline
Moving to Illinois Next Year!
FRC #0225 (TechFire), FRC #3504 (Girls of Steel)
Team Role: Mentor
 
Join Date: Jan 2006
Rookie Year: 2005
Location: Pittsburgh, PA
Posts: 513
Ben Martin has a reputation beyond reputeBen Martin has a reputation beyond reputeBen Martin has a reputation beyond reputeBen Martin has a reputation beyond reputeBen Martin has a reputation beyond reputeBen Martin has a reputation beyond reputeBen Martin has a reputation beyond reputeBen Martin has a reputation beyond reputeBen Martin has a reputation beyond reputeBen Martin has a reputation beyond reputeBen Martin has a reputation beyond repute
Re: App to Analyze Statistics for Scouting

I did the basic functionality for what you're describing with Excel & macros back in 2009 (at least a win prediction if not a win percentage prediction)

These days, the easiest way to pull it off is probably some sort of system using google sheets/forms.
__________________
TechFire 225, Girls of Steel 3504
Carnegie Mellon MBA '18
Past teams: 234, 1747, 7274
Reply With Quote
  #6   Spotlight this post!  
Unread 11-16-2017, 01:30 PM
Giantwalker Giantwalker is offline
Registered User
AKA: James O'Connor
FRC #6705 (WildCat 5e)
Team Role: Tactician
 
Join Date: Oct 2013
Rookie Year: 2014
Location: Georgia
Posts: 85
Giantwalker will become famous soon enoughGiantwalker will become famous soon enough
Re: App to Analyze Statistics for Scouting

This is definitely possible and it has been something that on 2067 we have been doing since about 2015. A quick warning a match predictor can be way less useful in defense intensive games. If you want to see an implementation of this tool I would definitely recommend looking at 238/2067's PiScout project seen in this thread:
https://www.chiefdelphi.com/forums/s...hreadid=160087
If you look at the github in gamespecific.py and server.py you can see implementations of match prediction and some further uses of match prediction that I would highly recommend (we often used match prediction to get a rough analysis of final rankings).
__________________
2014-2017: Team 2067 Apple Pi
2017-Present: Team 6705 WildCat 5e
Reply With Quote
  #7   Spotlight this post!  
Unread 11-16-2017, 06:11 PM
Citrus Dad's Avatar
Citrus Dad Citrus Dad is offline
Business and Scouting Mentor
AKA: Richard McCann
FRC #1678 (Citrus Circuits)
Team Role: Mentor
 
Join Date: May 2012
Rookie Year: 2012
Location: Davis
Posts: 1,229
Citrus Dad has a reputation beyond reputeCitrus Dad has a reputation beyond reputeCitrus Dad has a reputation beyond reputeCitrus Dad has a reputation beyond reputeCitrus Dad has a reputation beyond reputeCitrus Dad has a reputation beyond reputeCitrus Dad has a reputation beyond reputeCitrus Dad has a reputation beyond reputeCitrus Dad has a reputation beyond reputeCitrus Dad has a reputation beyond reputeCitrus Dad has a reputation beyond repute
Re: App to Analyze Statistics for Scouting

1678 has had a match prediction function in its Scout Viewer for 2016 and 2017, but this year's functionality was disrupted by the weight and randomness of climbing. It was quite accurate in 2016.
__________________
Reply With Quote
  #8   Spotlight this post!  
Unread 01-23-2018, 03:04 PM
Skyehawk's Avatar
Skyehawk Skyehawk is offline
Nuts N' Bolts
AKA: Skye Leake
FRC #0876 (Thunder Robotics)
Team Role: Mentor
 
Join Date: Nov 2012
Rookie Year: 2011
Location: Northwood, ND
Posts: 592
Skyehawk has a reputation beyond reputeSkyehawk has a reputation beyond reputeSkyehawk has a reputation beyond reputeSkyehawk has a reputation beyond reputeSkyehawk has a reputation beyond reputeSkyehawk has a reputation beyond reputeSkyehawk has a reputation beyond reputeSkyehawk has a reputation beyond reputeSkyehawk has a reputation beyond reputeSkyehawk has a reputation beyond reputeSkyehawk has a reputation beyond repute
Re: App to Analyze Statistics for Scouting

Quote:
Originally Posted by em59377 View Post
<clip> Is there a way to create an app where each team number is like a "folder", so that each team's information is separate, and contains the information for each match. So when you scout, your whatever you are using connects to the folder and uploads the information, then each "activity" (like climbing or shooting fuel) would be weighted for a certain amount of points. </clip>
There is nothing particularly difficult about what you are describing here in terms of framework. It is simply an object oriented structure. How you choose to implement a system such as this is up to you. Most databases support such a relationship, or you could take a stab at it on your own in Java, Python, C#, etc.

Let's use 254 as an example.
In the most simple implementation I can think of, you would create:
  • "MatchAppearance" objects - contain a variety of variables related to the number to times a team completed specific tasks & related info. Also includes data such as match number alliance color & driver station, other teams on the field, event code, & year.
  • Input script to take in info during a match (or transcribed from paper sheets) constructs a new MatchApperance object adds data as it is entered, checks to see if there if a folder for team 254 in the parent directory (just checks if the path exists) if not it creates the directory & dumps the MatchAppearance object into the folder as a serialized object.
  • A parser to go through team folders on command and calculate descriptive statistics for desired categories. Contains an accumulator function for reconstructing the serialized MatchAppearance objects & pulling the data from them. Once that has been done you can deconstruct all the MatchAppearance objects that you created form 254's folder and run your statistics functions on the data you extracted & save the output.

*note you will need a way to sync multiple directory trees, Wildrank V1's framework handled things similarly as described above, instead it had match folders and put a team instance in the form of a .json in the match that team played in.

Quote:
Originally Posted by em59377 View Post
<clip> You could then use the information provided and punch in which teams are on each alliance and find out the statistical chance of winning based on each teams past points. I'm not very good with computers at all so if anyone could just point me in the right direction I would greatly appreciate it, thank you! </clip>
This has been touched on by others already, so I won't go too in depth. Basically there are so many other variables at play that other than a few select years (such as 2015) it is difficult to calculate individual robot scores. Even when you do implement it you will often find that an alliance of robots that perform match actions worth 130, 70, & 100 respectively will not see a match score of 300. It will probably be something between 200 & 250. The same thing happens when you add all of an alliance's OPR scores. There just isn't a magic model to handle all the variable inherit in a FRC game. you are better off using community standard statistics that are ordinal in nature, such as CCWM & OPR and using them as just that: ordinal data**.

**I am sure someone will try to make an argument that CCWM & OPR are ratio & not ordinal. Show me a perfect model that predicts FRC scores with complete, 100%, accuracy given a training set of <12 matches. I will change my tune then.

*** Furthermore the bracketed scoring of last year was a PITA.
__________________
My time in FIRST has made me a better person, frankly I don't know where I'd be without it.


2011 Lake Superior Regional Champs (Thanks 2512 & 3747)
2015 Central Illinois Regional Engineering Inspiration Award Recipients
2016 Central Illinois Regional Champs (Thanks 2481 & 2220)
2017 Northern Lights Regional Chairmans Award Recipients

Last edited by Skyehawk : 01-23-2018 at 03:08 PM.
Reply With Quote
  #9   Spotlight this post!  
Unread 01-23-2018, 03:18 PM
Boltman Boltman is offline
Strategy/Rules/Scouting/Volunteer
AKA: Tom Byrne
FRC #5137 (Iron Kodiaks)
Team Role: Mentor
 
Join Date: Apr 2014
Rookie Year: 2014
Location: San Diego
Posts: 1,355
Boltman has a brilliant futureBoltman has a brilliant futureBoltman has a brilliant futureBoltman has a brilliant futureBoltman has a brilliant futureBoltman has a brilliant futureBoltman has a brilliant futureBoltman has a brilliant futureBoltman has a brilliant futureBoltman has a brilliant futureBoltman has a brilliant future
Re: App to Analyze Statistics for Scouting

We only worry about our partners and the other alliance members (foes) upcoming and take detailed scouting notes until we play with them that sometimes means we watch them 9 times before they are on the field with us. Any other "performers" to watch later are noted each match.

This cuts the "noise" down to actionable game by game insights. By the end of day one we have a list of about 20 performers we noted and agreed upon day 1 as a consensus set day 1. Then we verify with the published day 1 stats that night to make sure our list correlates and look for any number outliers we missed usually add 0 -2 more teams . Then verify the next morning to build a list 28 deep by selection time that our lead scout manages.

The main goal of our scouting is to have deep insights to who we play with day 1 and day 2, to hopefully enhance our alliance gameplay abilities as to rank high enough. Then build a list of those performant teams that are who we are looking as a potential partner in eliminations whether we actually ranked high enough or not . Does not matter, its about knowing who you play well with at all times. In case you need that at some point day 2. Risers are also added day 2 after verifying why they rised.

Another day 2 task is to do the same deep individualized scouting on all alliance captain possibilities (Top 16 or so) , looking for tendencies and stategies to slow them down with what they like to do. By watching the matches we usually know what teams can do by the end and what the score is likely to be. 40-60 (10 games) is not a good sample size ...that is why we prefer notes on whatever metrics we track that year. Tying to limit what a scout needs to evaluate in game tends to generate better data of what we want to see. Each scout builds their top 20 list day 1..then we all hash it out to get ready for day 2. Excel ,notepads, pens and highlighters.
__________________


Iron Kodiaks Team #5137 San Marcos, CA
2018 Orange County Elimination Alliance (5477.5209) QF
2017 Ventura Captain 3 (8, 3882) QF
2016 Central Valley Captain 2 (973, 2135) SF
2015 Ventura Elimination Alliances (696, 1836) SF
2014 San Diego Rookie All-Star Galileo Division
San Diego (Home regional/practice days) : Not chosen '18 Elimination Alliances:'17 (399, 968) SF ,'16 (1159, 812) SF , '15 (3021, 1772) QF

Volunteer @ Orange County 2016, 2017, 2018 Ventura 2018

Last edited by Boltman : 01-23-2018 at 03:47 PM.
Reply With Quote
Reply


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 On
HTML code is Off
Forum Jump


All times are GMT -5. The time now is 01:47 PM.

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


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