There are 14 teams in my online soccer manager league. The league tracks what direction a team moved after its previous match result and tracks its current location. I am wondering if, given only this information, I can calculate what the standings were before any team played its games that day. I think that, with the right combinations of matches and results, it is possible, but is it possible given any random matches and results? What about with random matches but non-random results?
I attempted calculating the standings of the league table before any team played a match (the league table is released about 3 hours before the first match and about 8 hours before the final match). My league table had 8 teams move up, 4 teams move down, and 2 teams stay put. 2 teams tied and the rest won/lost.
Here is a table to represent all of the standings and movement:
\begin{array}{|c|c|} \hline Rank & Mov. & Name & Opp. \\ \hline 1 & up & P & N \\ \hline 2 & up & Sk & Fi \\ \hline 3 & up & L & B \\ \hline 4 & down & G & U \\ \hline 5 & up & M & O \\ \hline 6 & down & Su & Fe \\ \hline 7 & up & Sc & V \\ \hline 8 & stay & V & Sc \\ \hline 9 & up & Fe & Su \\ \hline 10 & up & O & M \\ \hline 11 & up & U & G \\ \hline 12 & stay & B & L \\ \hline 13 & down & Fi & Sk \\ \hline 14 & down & N & P \\ \hline \end{array}
Keep in mind the names are just the first (plus 2nd in some cases) letter of the team's names. Given the two teams who stayed in place and the each teams' movements along with their opponents, is there a mathematical way to figure out where each team started from here. With a little guessing and attempting at remembering the starting places (I did take a glance at the starting ranks about an hour before the first match was played) I came up with this:
\begin{array}{|c|c|} \hline Rank & Name \\ \hline 1 & N \\ \hline 2 & P \\ \hline 3 & G \\ \hline 4 & Su \\ \hline 5 & Sk \\ \hline 6 & M \\ \hline 7 & Fi \\ \hline 8 & V \\ \hline 9 & Sc \\ \hline 10 & L \\ \hline 11 & F \\ \hline 12 & B \\ \hline 13 & O \\ \hline 14 & U \\ \hline \end{array}
I used Teams $V$, $B$, and $O$ as references because two did not move and one I seem to remember at #13. The first team I went to solve for was $G$ because of the limited possibilities it had (#1, 2, or 3). Also, I gave myself the rule that there was some sort of convoluted algorithm working out each individual week so that no team would play another more than once. Working out the sum of every pair's rank gave: $3, 3, 15, 15, 19, 19, 17, 17, 17, 17, 15, 15, 19, 19$ and calculating the differences between a team's sum and the sum of the team directly underneath it in the starter table gives the result: $12, 0, 4, 0, -2, 0, 0, 0, -2, 0, 4$. Removing the 0's, we get a clean $12, 4, -2, 0, -2, 4$. Expounding the table to include two more teams (#15 and #16) who play each other add the difference of 12 to the end of what is above.
I hope this is clear enough to read and work with as at points I even confused myself and had to explain myself and reword to clarify something. I also do not know what field of mathematics this would fit under so I couldn't put any tags.
* Just as a note, I am only doing this to attempt to create a more comprehensive league generator / bracket generator with a learning algorithm. This would be one algorithm as a starter for the generator to work from.