Chief Delphi

Chief Delphi (http://www.chiefdelphi.com/forums/index.php)
-   General Forum (http://www.chiefdelphi.com/forums/forumdisplay.php?f=16)
-   -   Offensive Power Rankings for 2008 (http://www.chiefdelphi.com/forums/showthread.php?t=66388)

Guy Davidson 31-03-2008 12:28

Re: Offensive Power Rankings for 2008
 
Could you help me make sure I understand the linear algebra involved?

I understand that p is what we're looking to find, or the average number of points a team contributes per match. s and M we can calculate from the results coming from each regional. Since Mp = s, we can conclude that p = (M-1)s (where M-1 denotes M inverse). It seems to me from thinking about it that M is symmetric, and as such M = M-1. Is that actually the case?

I'll probably try to write a program to take a csv dump and spit out rankings if I understand the math.

Bongle 31-03-2008 14:01

Re: Offensive Power Rankings for 2008
 
Quote:

Originally Posted by sumadin (Post 727725)
I understand that p is what we're looking to find, or the average number of points a team contributes per match. s and M we can calculate from the results coming from each regional. Since Mp = s, we can conclude that p = (M-1)s (where M-1 denotes M inverse). It seems to me from thinking about it that M is symmetric, and as such M = M-1. Is that actually the case?

M is indeed symmetric. M[i][j] indicates how many matches team i played with team j. Therefore, it makes sense that M[i][j] = M[j][i].

I don't think the inverse of a symmetric matrix is necessarily symmetric. The transpose of a symmetric matrix M would be equal to its non-transpose, but I don't think that carries for symmetry. To prove that M-1 is not necessarily equal to M for a symmetric matrix, just think of the symmetric matrix 2I, where I is the identity matrix.

If (M)-1 = (M) for symmetric matrices like you are proposing, and we know MM-1 = I for any matrix and its inverse, then (2I)(2I) must equal I, but this is not the case.

I didn't have to write the matrix solver myself, I used a library I found online. If there are any tricks it used, I'm not aware of them.

Guy Davidson 31-03-2008 14:44

Re: Offensive Power Rankings for 2008
 
You're right. For some reason, I was thinking of the transpose rather than the inverse. I'll see how I handle the inversion of the matrix when I get there. In the meantime, I'm working through the easy stuff: reading the csv and making and populating s and M.

Mr. Lim 31-03-2008 15:05

Re: Offensive Power Rankings for 2008
 
Quote:

Originally Posted by sumadin (Post 727725)
It seems to me from thinking about it that M is symmetric, and as such M = M-1. Is that actually the case?

M is symmetric, but that doesn't mean M = M inverse.

Symmetry means that M = M transpose (flipped along the identity axis), which is different than M inverse.

It's easy to confuse the two (I remember doing that plenty of times, thank Ms. Martin).

Here's an example where M = M inverse, and you quickly see that M is definitely not symmetric:

Code:

|  9  5 | |  9  5 | - |  1  0 |
| -16  -9 | | -16  -9 | - |  0  1 |


MCarron 31-03-2008 16:50

Re: Offensive Power Rankings for 2008
 
Just an FYI...all of the match data is NOT included from the Peachtree regional. The scoring system failed so all of the elimination matches and many of the qualifying matches from Saturday are not included. As an example...team 343 finished 12-4 at that regional. We are still shown as 5-3 on the Blue Alliance. That means there are eight matches not accounted for on us alone. That would/could be the same for many of the other teams who attended Peachtree.

Is there anybody that has that manual data? Can it be manually entered into the Blue Alliance?

Thanks,
Mike Carron
Team 343

Joe Ross 31-03-2008 17:00

Re: Offensive Power Rankings for 2008
 
Quote:

Originally Posted by MCarron (Post 727921)
Is there anybody that has that manual data?

See here: http://www.chiefdelphi.com/media/papers/2102

cziggy343 31-03-2008 17:33

Re: Offensive Power Rankings for 2008
 
Quote:

Originally Posted by Joe Ross (Post 727924)

but...was anyone planning on putting this manuel score on tba... b/c i have no way to do it...

Eugene Fang 31-03-2008 22:23

Re: Offensive Power Rankings for 2008
 
if there was a normally very high scoring team that happened to malfunction in a match where they were in your alliance, or was defended a lot in your particular round, wouldn't your score be highly skewed?

Kyler 31-03-2008 23:04

Re: Offensive Power Rankings for 2008
 
Okay, I have created a basic program to make the n X n matrix as defined in the post that sort of explains the rankings but what do I do from there? I am only in trig and we have definitely not learned that stuff with matrices. Can somebody give me an example of "M(k1)p(1)+M(k2)p(2)+...+M(kn)p(n) should equal s(k)" or clarify that please? Thanks!

fuzzy1718 31-03-2008 23:18

Re: Offensive Power Rankings for 2008
 
We were hevily defended all through GLR hurdling only 2-3 times a match where we usualy hurdle 4-6 times and at Detroit we were broken 3 of the matches, but we are still high on the list:ahh: . That shouldn't effect it much.

Guy Davidson 31-03-2008 23:18

Re: Offensive Power Rankings for 2008
 
Quote:

Originally Posted by Kyler (Post 728216)
Okay, I have created a basic program to make the n X n matrix as defined in the post that sort of explains the rankings but what do I do from there? I am only in trig and we have definitely not learned that stuff with matrices. Can somebody give me an example of "M(k1)p(1)+M(k2)p(2)+...+M(kn)p(n) should equal s(k)" or clarify that please? Thanks!

From there you need to invert M and multiply it by s. The are libraries doing the first all over the internet - however, I do not know the algorithm they use. I know how to do it manually, but that would take way too much time for anything this scale.

Then you need to multiply M inverse by s. What you're looking to get out is another column vector, or list of numbers, similar to the one you have in s, although with different numbers. To do that, simply multiply each element in a column of M inverse (with a fixed row) by each element in the corresponding row in s (which has only one column). For example, to find the 10th element of p, or the average number of points contributed by the team in the 10th row, add up M(10,1)*s(1) + M(10,2)*s(2) + M(10,3)*s(3) + ...

Doing that for each row in M will get you p, the vector you're looking for.

If this didn't make much sense, look at http://mathdemos.gcsu.edu/mathdemos/matvec/matvec.html or http://en.wikipedia.org/wiki/Matrix_multiplication

Greg Marra 01-04-2008 00:46

Re: Offensive Power Rankings for 2008
 
I added Peachtree missing matches to the database. I'll do another database dump after the NYC regional is finished. Thanks for pointing me to the data!

BornaE 01-04-2008 03:11

Re: Offensive Power Rankings for 2008
 
Looks like the system is working well, but I think if we add a little to it it would work much better.

Right now it is set up to calculate the average points contributed to an alliance by one team. This method does not take care of the defence.

you guys who did the calculations, can you add defence to it as well.

so example:
Red Score = RedA_O + RedB_O + RedC_O - BlueA_D - BlueB_D - BlueC_D
then solve for Team_O which is the average points added to their alliance, and Team_D which is the average points one team take away from their Opponent's alliance.

Kyler 01-04-2008 07:58

Re: Offensive Power Rankings for 2008
 
Just a few questions left but the post above helped a bunch. Do i want M inverse or transverse? Also, do I want it to equal s and multiply by p or the other way around? Lastly, M(10,1)*s(1) + M(10,2)*s(2) + M(10,3)*s(3) Means to take whatever value is in the matrix at (10,1) and multiple by s and by 1 right? thanks!

neshera 01-04-2008 11:52

Re: Offensive Power Rankings for 2008
 
Hey Kyler:
Do you want me to send a slide rule with Nathan tomorrow to help you out?
Nesher


All times are GMT -5. The time now is 20:28.

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