Go to Post SWARF is evil! - Al Skierkiewicz [more]
Home
Go Back   Chief Delphi > Other > FIRST Tech Challenge
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 12-05-2014, 16:20
amarts amarts is offline
Registered User
AKA: Andy Marts
FRC #0016 (FRC16 Baxter Bomb Squad / FTC92 Junior Bomb Squad)
Team Role: Mentor
 
Join Date: Apr 2008
Rookie Year: 1996
Location: Arkansas
Posts: 4
amarts is an unknown quantity at this point
[FTC]: Championship OPR?

Has anyone done the OPR stats for FTC world championships?
Reply With Quote
  #2   Spotlight this post!  
Unread 12-05-2014, 19:04
MattRain MattRain is offline
AZ FTC AF, FTC #2844 and FTC #8640
FRC #1492 (Team Caution)
Team Role: RoboCoach
 
Join Date: Sep 2012
Rookie Year: 2008
Location: Chandler, Arizona
Posts: 317
MattRain has a brilliant futureMattRain has a brilliant futureMattRain has a brilliant futureMattRain has a brilliant futureMattRain has a brilliant futureMattRain has a brilliant futureMattRain has a brilliant futureMattRain has a brilliant futureMattRain has a brilliant futureMattRain has a brilliant futureMattRain has a brilliant future
Re: [FTC]: Championship OPR?

OPR?

maybe theyellowalliance.net
__________________

2015 FTC WORLD CHAMPIONS
www.valleyx2844.com
Twitters: Valley X & Trojan Robotics & Team Caution
(World Championship Counter: 5)
*All my posts reflect my opinion, not my teams.*
"I WANT CHEETOS!" - Bad Lip Reading 2016 <-- ME
Reply With Quote
  #3   Spotlight this post!  
Unread 15-05-2014, 21:10
Ether's Avatar
Ether Ether is offline
systems engineer (retired)
no team
 
Join Date: Nov 2009
Rookie Year: 1969
Location: US
Posts: 8,072
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: [FTC]: Championship OPR?

Quote:
Originally Posted by davidaustin View Post
Here are the OPRs I computed...
Just curious, what factoring algorithm are you using for the computation?


Reply With Quote
  #4   Spotlight this post!  
Unread 15-05-2014, 23:41
Nemo's Avatar
Nemo Nemo is offline
Team 967 Mentor
AKA: Dan Niemitalo
FRC #0967 (Iron Lions)
Team Role: Coach
 
Join Date: Nov 2009
Rookie Year: 2009
Location: Iowa
Posts: 803
Nemo has a reputation beyond reputeNemo has a reputation beyond reputeNemo has a reputation beyond reputeNemo has a reputation beyond reputeNemo has a reputation beyond reputeNemo has a reputation beyond reputeNemo has a reputation beyond reputeNemo has a reputation beyond reputeNemo has a reputation beyond reputeNemo has a reputation beyond reputeNemo has a reputation beyond repute
Re: [FTC]: Championship OPR?

The average alliance score in the Edison division was about 240, so the average OPR should be 120, right? The average of the Edison OPR's listed above is about 60.
Reply With Quote
  #5   Spotlight this post!  
Unread 16-05-2014, 08:15
davidaustin davidaustin is offline
Registered User
FRC #4003 (FRC 4003 TriSonics / FTC 7023 HexaSonics)
Team Role: Mentor
 
Join Date: Apr 2012
Rookie Year: 2008
Location: Allendale, Michigan
Posts: 20
davidaustin is an unknown quantity at this point
Re: [FTC]: Championship OPR?

I used the Cholesky factorization in python's scipy module following the algorithm given elsewhere on CD.

I'm not aware that the avearge OPR should agree with the average match score. Is that a property?
Reply With Quote
  #6   Spotlight this post!  
Unread 16-05-2014, 09:54
Ether's Avatar
Ether Ether is offline
systems engineer (retired)
no team
 
Join Date: Nov 2009
Rookie Year: 1969
Location: US
Posts: 8,072
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: [FTC]: Championship OPR?

Quote:
Originally Posted by davidaustin View Post
I'm not aware that the avearge OPR should agree with the average match score. Is that a property?
As Nemo said, average OPR should be equal1 to average alliance score divided by number of teams on an alliance (i.e. 2).

What process did you use to form the normal matrix from the raw scoring data?


1When using min L2 norm of residuals, i.e. least squares, to compute OPR.


Reply With Quote
  #7   Spotlight this post!  
Unread 16-05-2014, 10:01
Scott_4140 Scott_4140 is offline
Registered User
FTC #4140 (Fish in the Boat)
Team Role: Coach
 
Join Date: May 2011
Rookie Year: 2005
Location: Lakeville, MN
Posts: 85
Scott_4140 is just really niceScott_4140 is just really niceScott_4140 is just really niceScott_4140 is just really nice
Re: [FTC]: Championship OPR?

Using an Algorithm put together by FTC 3409 - Astromechs, I get very different numbers.

Details on their algorithm can be found at http://www.ftc3409.org/powerscore

Edison 1 185.9 4251 Cougar Robotics
Edison 2 185.2 2753 Team Overdrive
Edison 3 174.6 5069 Robogamers
Edison 4 173.6 4347 Nanogurus
Edison 5 162.7 5939 Team AFOOFA
Edison 6 161.8 7023 HexaSonics
Edison 7 160.5 6433 Neutrinos
Edison 8 159.5 724 RedNeck Robotics Wun
Edison 9 151.7 6337 Metal Marauders
Edison 10 150.3 6424 Oly Cow
Edison 11 147.2 8347 The BOLTS
Edison 12 146.3 4029 2 Bits and a Byte
Edison 13 144.2 5035 WIRED
Edison 14 143.3 3486 Techno Warriors Advanced
Edison 15 142.1 92 Junior Bomb Squad
Edison 16 140.3 577 Wreckers Robotics
Edison 17 135.4 3708 Iron Eagles Optimus
Edison 18 134.6 4318 Green Machine
Edison 19 132.7 5501 USS Enterprise
Edison 20 132.1 3846 Maelstrom
Edison 21 131.3 3550 Beta
Edison 22 130.0 4140 Fish in the Boat
Edison 23 128.6 5140 WACO Aerobotics
Edison 24 127.9 4278 De.Evolution
Edison 25 127.2 4535 RedNek Robotics Too
Edison 26 126.4 5220 Robo Knights
Edison 27 126.1 5414 Techie Tornados
Edison 28 125.0 5421 RM‐ed and Dangerous
Edison 29 124.0 6272 Iron Eagles Prime
Edison 30 123.9 4847 CHROME
Edison 31 120.0 1369 Minotaur
Edison 32 118.4 5114 The Knights Who Say C
Edison 33 117.9 5931 Cru‐Botics
Edison 34 117.7 4112 Warriors
Edison 35 116.9 3785 Beastie Bots
Edison 36 116.2 3162 HHS Gearheads
Edison 37 115.5 7440 Wingus and Dingus
Edison 38 112.0 4982 Café Bot
Edison 39 111.6 7712 H&M Robotics Club
Edison 40 110.7 4220 Landroids
Edison 41 109.3 4965 Animatores Romani
Edison 42 105.2 6109 Punabots
Edison 43 104.0 4150 Dark Matter
Edison 44 103.3 6024 The Enterprisers
Edison 45 100.7 6002 Basilisks
Edison 46 99.0 7591 Voltage of Imagination
Edison 47 98.6 327 Gamma Factor
Edison 48 98.6 5609 Ciberbots
Edison 49 97.8 5977 Cyberswat FTC
Edison 50 97.4 4625 Kings and Queens
Edison 51 93.3 8360 Rawabi
Edison 52 93.1 6100 Chariots of Fire - Black
Edison 53 91.5 3595 Schrödinger's Hat
Edison 54 86.9 365 MOE
Edison 55 81.7 8359 French Toast Mafia
Edison 56 77.9 8336 Mars Gypth
Edison 57 77.9 4092 Nanites
Edison 58 77.7 8357 Desert Matrix
Edison 59 76.4 8356 LET
Edison 60 72.6 8352 Prime Numbers (5850)
Edison 61 71.2 8207 CanaBot
Edison 62 63.2 8349 I love super big white cat
Edison 63 60.4 4134 Wrench in the Works
Edison 64 52.0 8337 BaCoNeers


Franklin 1 185.9 7013 Hot Wired
Franklin 2 175.8 5257 Eagles Robotics Xperience
Franklin 3 168.4 8221 Cubix
Franklin 4 158.4 6253 Avalanche
Franklin 5 158.4 4250 LIGHTSABERS
Franklin 6 157.4 5026 Tesla Coils
Franklin 7 157.3 3409 Astromechs
Franklin 8 156.2 4507 Robo Chargers
Franklin 9 155.7 7907 Stark Industries
Franklin 10 151.1 4997 Masquerade
Franklin 11 149.4 7398 BLUE CREW
Franklin 12 149.4 4240 Techno Clovers
Franklin 13 149.0 7149 Enforcers
Franklin 14 146.4 4855 Batteries in Black
Franklin 15 144.5 5309 Plan B
Franklin 16 143.9 5555 Option 16
Franklin 17 142.5 6299 ViperBots QuadX
Franklin 18 141.3 4106 Supposable Thumbs
Franklin 19 140.0 5096 Monkey Madness
Franklin 20 138.4 6508 Radioactive Raiders
Franklin 21 137.9 6081 I2R Robotics
Franklin 22 133.6 5279 Positrons
Franklin 23 132.8 4530 Infinite Resistance
Franklin 24 131.6 2888 Oddly Charged Particles
Franklin 25 131.5 4211 The Bombers
Franklin 26 131.0 4443 Sock Monkeys
Franklin 27 130.3 2844 Valley X
Franklin 28 128.8 5661 SHPE Wolves
Franklin 29 126.8 5169 Watts Up?
Franklin 30 126.4 5452 Robots to the Knee
Franklin 31 124.7 6051 Quantum Mechnaics
Franklin 32 122.5 4999 Imagine It
Franklin 33 122.2 248 Fatal Error
Franklin 34 121.7 5815 Disgruntled Robots
Franklin 35 121.2 8338 Shatterdom
Franklin 36 119.2 5972 Patronum Bots
Franklin 37 115.3 7129 Robo Raiders
Franklin 38 112.9 6451 Tarpon Robotics
Franklin 39 109.7 8231 Skyhawks
Franklin 40 109.4 5843 AutoVortex
Franklin 41 109.3 8348 Crazy Shooter
Franklin 42 106.5 7817 TaterBotz
Franklin 43 106.4 4961 Robo Raptors
Franklin 44 105.7 5009 NET ZERO
Franklin 45 105.0 8350 Don't Throw Block
Franklin 46 104.4 38 The PAKBOTS
Franklin 47 103.8 3781 Pi-Rho Maniacs
Franklin 48 103.7 3141 Bears
Franklin 49 103.1 8361 Garrins Metal-lics
Franklin 50 101.1 5604 Thunderbots
Franklin 51 100.5 6055 GearTicks
Franklin 52 100.1 4924 Tuxedo Pandas
Franklin 53 94.3 8339 Galaxy Robo Techs
Franklin 54 94.1 5875 GENIUS Girls Exploring New Ideas Using Science
Franklin 55 93.3 4475 Purple Reign
Franklin 56 89.7 4745 Orozco's Army
Franklin 57 87.9 8351 Siberian Beast
Franklin 58 87.2 101 The Indivisibles
Franklin 59 86.5 6935 Paradox
Franklin 60 84.6 6221 Panther Bots Alpha
Franklin 61 81.5 4287 Red Meteors
Franklin 62 72.5 3954 Watt's Up
Franklin 63 62.1 4107 Mohon Bots
Franklin 64 59.5 4183 ICEBREAKERS
Reply With Quote
  #8   Spotlight this post!  
Unread 16-05-2014, 12:41
davidaustin davidaustin is offline
Registered User
FRC #4003 (FRC 4003 TriSonics / FTC 7023 HexaSonics)
Team Role: Mentor
 
Join Date: Apr 2012
Rookie Year: 2008
Location: Allendale, Michigan
Posts: 20
davidaustin is an unknown quantity at this point
Re: [FTC]: Championship OPR?

OK, thanks for helping me to understand this. I apologize for reporting those earlier results, which I have removed from this thread.

Here's what I am doing: N is the number of teams, and M is the number of matches.

--Form the 2MxN matrix A whose entries are zero except where A[2m+c][j] = 1 if team j played on the c (=0 for red and 1 for blue) alliance in match m.

--Form the 2M-dimensional vector S where S[2m+c] is the score of the c alliance in match m.

--We want to solve the overdetermined system Ax = S so we multiply by A^T to get

A^T A x = A^T S

--Write A^T A as L L^T using the Cholesky factorization so that we have

L L^T x = A^T S.

--We solve L y = A^T S and then L^T x = y to find x, which holds the OPRs.

Does this look correct? I'm not seeing the error in my code. Thanks again!
Reply With Quote
  #9   Spotlight this post!  
Unread 16-05-2014, 13:19
Ether's Avatar
Ether Ether is offline
systems engineer (retired)
no team
 
Join Date: Nov 2009
Rookie Year: 1969
Location: US
Posts: 8,072
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: [FTC]: Championship OPR?

Quote:
Originally Posted by davidaustin View Post
OK, thanks for helping me to understand this. I apologize for reporting those earlier results, which I have removed from this thread.

Here's what I am doing: N is the number of teams, and M is the number of matches.

--Form the 2MxN matrix A whose entries are zero except where A[2m+c][j] = 1 if team j played on the c (=0 for red and 1 for blue) alliance in match m.

--Form the 2M-dimensional vector S where S[2m+c] is the score of the c alliance in match m.

--We want to solve the overdetermined system Ax = S so we multiply by A^T to get

A^T A x = A^T S

--Write A^T A as L L^T using the Cholesky factorization so that we have

L L^T x = A^T S.

--We solve L y = A^T S and then L^T x = y to find x, which holds the OPRs.

Does this look correct? I'm not seeing the error in my code. Thanks again!
What you posted above looks correct, but the devil is in the details.

Post your A matrix and your S vector here and let me crunch the OPR. If I get the same result you did, then the problem lies in your processing of the raw data into A and S. If I get different result, the problem lies in your Cholesky processing.

By the way, if you are using Python, you can get the min L2 norm of residuals (least squares) solution directly from your A and S using np.linalg.lstsq(A,S), without forming and factoring the normal matrix A'A.


Reply With Quote
  #10   Spotlight this post!  
Unread 16-05-2014, 14:16
davidaustin davidaustin is offline
Registered User
FRC #4003 (FRC 4003 TriSonics / FTC 7023 HexaSonics)
Team Role: Mentor
 
Join Date: Apr 2012
Rookie Year: 2008
Location: Allendale, Michigan
Posts: 20
davidaustin is an unknown quantity at this point
Re: [FTC]: Championship OPR?

I found a mistake in my code and generated some new results. My average OPR is now the average alliance score. However, my results don't agree with those posted above.

I've attached my A and S matrices along with the ordered list of team numbers.

Thanks for your help with this. I'd really like to understand this better. I'll also look at numpy's least square result.
Attached Files
File Type: txt A.txt (36.3 KB, 12 views)
File Type: txt S.txt (1.1 KB, 8 views)
File Type: txt teams.txt (314 Bytes, 15 views)
Reply With Quote
  #11   Spotlight this post!  
Unread 16-05-2014, 14:32
Scott_4140 Scott_4140 is offline
Registered User
FTC #4140 (Fish in the Boat)
Team Role: Coach
 
Join Date: May 2011
Rookie Year: 2005
Location: Lakeville, MN
Posts: 85
Scott_4140 is just really niceScott_4140 is just really niceScott_4140 is just really niceScott_4140 is just really nice
Re: [FTC]: Championship OPR?

The power scores I posted are not based on the same FRC style OPR calculation you're trying to implement. I would not expect them to be the same. I am curious to see how they compare.
Reply With Quote
  #12   Spotlight this post!  
Unread 16-05-2014, 14:41
Scott_4140 Scott_4140 is offline
Registered User
FTC #4140 (Fish in the Boat)
Team Role: Coach
 
Join Date: May 2011
Rookie Year: 2005
Location: Lakeville, MN
Posts: 85
Scott_4140 is just really niceScott_4140 is just really niceScott_4140 is just really niceScott_4140 is just really nice
Re: [FTC]: Championship OPR?

Based on the data you have in Matrix S, it appears you are using the scores that include penalties. If you want, I have a breakdown of the scores by Autonomous, TeleOp, End Game and Penalties. I can deduce a further refinement of End Game scores to identify which Alliances received credit for a Balanced Pendulum, Flag Raised to Low or High level, and Single vs. Double Hangs.
Reply With Quote
  #13   Spotlight this post!  
Unread 16-05-2014, 16:18
davidaustin davidaustin is offline
Registered User
FRC #4003 (FRC 4003 TriSonics / FTC 7023 HexaSonics)
Team Role: Mentor
 
Join Date: Apr 2012
Rookie Year: 2008
Location: Allendale, Michigan
Posts: 20
davidaustin is an unknown quantity at this point
Re: [FTC]: Championship OPR?

Quote:
Originally Posted by Scott_4140 View Post
Based on the data you have in Matrix S, it appears you are using the scores that include penalties. If you want, I have a breakdown of the scores by Autonomous, TeleOp, End Game and Penalties. I can deduce a further refinement of End Game scores to identify which Alliances received credit for a Balanced Pendulum, Flag Raised to Low or High level, and Single vs. Double Hangs.
Can you send me the breakdown of the scores? That would give a better comparison of our results.
Reply With Quote
  #14   Spotlight this post!  
Unread 16-05-2014, 16:57
Scott_4140 Scott_4140 is offline
Registered User
FTC #4140 (Fish in the Boat)
Team Role: Coach
 
Join Date: May 2011
Rookie Year: 2005
Location: Lakeville, MN
Posts: 85
Scott_4140 is just really niceScott_4140 is just really niceScott_4140 is just really niceScott_4140 is just really nice
Re: [FTC]: Championship OPR?

They are from the Yellow Alliance Live. Not sure if they are still available.

Here's a .txt of the detailed match scores.
Attached Files
File Type: txt Detailed Matches.txt (22.6 KB, 8 views)
Reply With Quote
  #15   Spotlight this post!  
Unread 16-05-2014, 17:33
Ether's Avatar
Ether Ether is offline
systems engineer (retired)
no team
 
Join Date: Nov 2009
Rookie Year: 1969
Location: US
Posts: 8,072
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: [FTC]: Championship OPR?

Quote:
Originally Posted by davidaustin View Post
I've attached my A and S matrices along with the ordered list of team numbers.
OK, I crunched those numbers with Octave.

Here's the Octave script I used:
format long
A = load('A.txt');
S = load('S.txt');
T = load('teams.txt');
x = A\S;
Tx = [T,x];
save Tx.txt Tx;
Attached is the output list of Team OPR's generated by the above script using your data.

Quote:
Thanks for your help with this. I'd really like to understand this better. I'll also look at numpy's least square result.
Glad to help. From what I can see, I think you understand it pretty well so far.

When you have a set of overdetermined linear equations:

[A][x]≈[b] (notice the approx equal sign "≈" because there is no exact solution since the system is overdetermined)

...if you multiply both sides by [A]T, you get:

[A]T[A][x]=[A]T[b] => [N][x]=[d]

...which is a set of n equations in n unknowns, where "n" in this case is the number of columns in [A] (the number of teams).

Notice the "≈" sign has changed to "=" since the system now has an exact solution. The above are called the normal equations (of the overdetermined linear system), and solving these normal equations for [x] gives the least-squares solution to the original [A][x]≈[b] problem.

But if you're using a language with a linear algebra library, you can solve the overdetermined [A][x]≈[b] for the least squares solution directly. In Octave the syntax is called "left division" (x = A\b). In Python you use np.linalg.lstsq(A,b).

Be aware that "least squares" (min L2 norm of residuals) is only one of many possible "best fit" solutions to the overdetermined system [A][x]≈[b].

For example, there's the "Least Absolute Deviations (LAD)" solution (min L1 norm of residuals). And there are other "robust regression" methods.



Attached Files
File Type: txt Tx.txt (1.7 KB, 18 views)
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 18:14.

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