Match / Ranking System
Posted: July 1st, 2009, 5:51 pm
Hi all,
Since last year, I don't remember us having a great ranking system (which was in-fact built on site on the day of), I was thinking about creating a actual program that would pretty much run things how we'd like to. And I do remember that getting the match schedule out took a lot of time as well.
First, the ranking program would be something that'd be easy to use and view. I'm not exactly sure of how it would work, but my idea is that it would have a display program and a control program. The display program would show the current ranks and possibly the next queuing team (just to easy the queue). The control program would obviously have the ability to add/edit scores in the match listing. I don't really think we need a score display for matches as the microphone works well enough (even though it'd be really neat to control that from a iPhone or iPod Touch on the field for the refs).
Well, as for solving the match schedule problem, the company that does it for FIRST has kind of released a little program that a match generator from a list of teams. Like, look at this output for 20 teams with a alliance of 3.
That's pretty good so I think that'd be excellent to use to generate our match list.
-Tanner
Since last year, I don't remember us having a great ranking system (which was in-fact built on site on the day of), I was thinking about creating a actual program that would pretty much run things how we'd like to. And I do remember that getting the match schedule out took a lot of time as well.
First, the ranking program would be something that'd be easy to use and view. I'm not exactly sure of how it would work, but my idea is that it would have a display program and a control program. The display program would show the current ranks and possibly the next queuing team (just to easy the queue). The control program would obviously have the ability to add/edit scores in the match listing. I don't really think we need a score display for matches as the microphone works well enough (even though it'd be really neat to control that from a iPhone or iPod Touch on the field for the refs).
Well, as for solving the match schedule problem, the company that does it for FIRST has kind of released a little program that a match generator from a list of teams. Like, look at this output for 20 teams with a alliance of 3.
Code: Select all
0:02 100.00% complete (58 updates), operation complete
Results for 20 teams playing 10 rounds in 34 matches
with a minimum match separation of 1.
Match Schedule
--------------
1: 14 5 12 11 19 20
2: 9 2 10 7 15 4
3: 17 13 6 18 1 3
4: 16 20 7 8 2 13
5: 10 18 9 5 16 6
6: 12 4 17 15 1 19
7: 14 8 15 3 11 10
8: 3 6 1 7 14 18
9: 16 2 19 11 8 17
10: 9 20 4 5 12 13
11: 20 3 15 6 4 2
12: 9 14 13 1 10 12
13: 8 5 11 18 17 7
14: 19 5 3 16 1 14
15: 20 13 4 8 9 17
16: 10 15 6 2 12 11
17: 7 19 10 16 18 13
18: 1 9 11 3 20 8
19: 12 2 6 18 15 16
20: 14 17 19 5 4 7
21: 14 6 16 2 5 17
22: 18 8 19 1 15 9
23: 3 12 4 11 10 13
24: 7 2 3 20 12 19
25: 9 13 7 6 14 11
26: 18 1 15 8 16 4
27: 5 17 15 20 10 19
28: 3 16 17 7 12 9
29: 4 11 18 2 20 14
30: 1 13 8 10 6 5
31: 5 18 2 9 14 3
32: 16 8 12 19 13 4
33: 15 11 7 1 20 17
34: 10 17* 16* 6 19* 9*
Schedule Statistics
-------------------
#: number of matches played, a '+' after the number
indicates one additional round as a surrogate
d: minimum delta between matches (e.g. '1' means back-to-back)
part: number of distinct partners followed by most frequent repeat count
opp: number of distinct opponents followed by most frequent repeat count
both: number of distinct teams seen as partner or opponent
followed by most frequent combined repeat count
r/b: balance between red and blue alliance appearances
eg, 3b means team appeared as blue 3 times more than as red
4+ repeats: any teams seen four or more times as partners or opponents
team # d part opp both r/b 4+ repeats
---- -- -- ----- ----- ----- --- ------------
1: 10 2 | 15 3 | 18 3 | 18 4 | 2b | 3 8 15 18
2: 10 2 | 17 2 | 16 4 | 18 4 | 0 | 6 15 16 20
3: 10 1 | 18 2 | 19 3 | 19 4 | 2r | 1 14
4: 10 1 | 16 2 | 17 3 | 19 4 | 0 | 12 13 15 20
5: 10 1 | 16 2 | 16 4 | 19 5 | 0 | 14 17 19
6: 10 2 | 15 2 | 17 4 | 19 4 | 0 | 2 10 16 18
7: 10 1 | 16 2 | 17 3 | 19 4 | 0 | 17
8: 10 2 | 16 2 | 17 3 | 19 4 | 0 | 1 11 13 16
9: 10+ 2 | 15 2 | 19 3 | 19 4 | 2r | 13
10: 10 1 | 16 2 | 18 3 | 19 4 | 0 | 6 9 13 15
11: 10 2 | 18 2 | 19 3 | 19 4 | 2b | 8 14 20
12: 10 1 | 17 2 | 17 3 | 19 4 | 0 | 4 13 19
13: 10 1 | 17 2 | 17 3 | 18 4 | 0 | 4 8 9 10 12
14: 10 1 | 17 2 | 16 4 | 19 5 | 0 | 3 5 11
15: 10 1 | 16 3 | 15 4 | 18 4 | 2r | 1 2 4 10
16: 10+ 1 | 16 2 | 17 3 | 19 4 | 0 | 2 8 18 19
17: 10+ 1 | 18 2 | 19 3 | 19 4 | 0 | 5 7 19
18: 10 2 | 16 2 | 19 4 | 19 4 | 0 | 1 6 16
19: 10+ 2 | 17 3 | 16 3 | 18 4 | 0 | 5 12 16 17
20: 10 1 | 16 3 | 16 3 | 19 4 | 2b | 2 4 11
-------------------------------------
best: 10 2 | 18 2 | 19 3 | 19 4 | 0
worst: 11 1 | 15 3 | 15 4 | 18 5 | 2 (6)
elapsed time: 2.64 secondsThat's pretty good so I think that'd be excellent to use to generate our match list.
-Tanner