Round Robin Tournament Scheduling

Even Teams with Two Byes

Jeff · 4 · 6716

Jeff

  • Newbie
  • *
    • Posts: 9
on: May 04, 2006, 11:15:13 AM
I need to set-up a league with an even number of teams (N) going for (N) weeks with two Byes each week.  Problem - 18 Teams competing for 18 weeks with two Byes each week.  Every Team will have two byes over the course of the league, however not every team will compete against every other team.  There will be some "holes" and I can't seem to figure out the best process to accomplish this.


Ian Wakeling

  • Forum Moderator
  • God Member
  • *****
    • Posts: 1140
Reply #1 on: May 04, 2006, 02:12:51 PM
Hi Jeff,

This is a good example of a problem that can be solved using a cyclic construction.  The key to it is representing the teams by the numbers 0 to N-1 in modulo N arithmetic.  This is a cyclic number system where adding one to N-1 takes us back to zero.  Now consider the numerical differences between pairs of teams that are matched together.  With 18 teams there are 153 possible pairings.  18 of these pairs will have a difference of 1, below I have placed all of these as Match 1.  Starting with the first pair of (0 1) all the other 17 pairs with a difference of 1 can be found by adding 1 mod 18 to the pair in the previous round.  Match 2 contains all the pairings that differ by 2, Match 3 the differences of 3, and so on.  The only tricky point here is realising that for example (2 17) represents a difference of 3 mod 18, this can be seen by adding 3 to 17, by the definition above 17+1=0, so 17+2=1 and 17+3=2.


    Match 1  Match 2  Match 3  Match 4  Match 5  Match 6  Match 7  Match 8    Byes
 R1 ( 0  1)  ( 7  9)  ( 2 17)  ( 8 12)  (10 15)  ( 4 16)  ( 6 13)  ( 3 11)  [ 5 14]
 R2 ( 1  2)  ( 8 10)  ( 3  0)  ( 9 13)  (11 16)  ( 5 17)  ( 7 14)  ( 4 12)  [ 6 15]
 R3 ( 2  3)  ( 9 11)  ( 4  1)  (10 14)  (12 17)  ( 6  0)  ( 8 15)  ( 5 13)  [ 7 16]
 R4 ( 3  4)  (10 12)  ( 5  2)  (11 15)  (13  0)  ( 7  1)  ( 9 16)  ( 6 14)  [ 8 17]
 R5 ( 4  5)  (11 13)  ( 6  3)  (12 16)  (14  1)  ( 8  2)  (10 17)  ( 7 15)  [ 9  0]
 R6 ( 5  6)  (12 14)  ( 7  4)  (13 17)  (15  2)  ( 9  3)  (11  0)  ( 8 16)  [10  1]
 R7 ( 6  7)  (13 15)  ( 8  5)  (14  0)  (16  3)  (10  4)  (12  1)  ( 9 17)  [11  2]
 R8 ( 7  8)  (14 16)  ( 9  6)  (15  1)  (17  4)  (11  5)  (13  2)  (10  0)  [12  3]
 R9 ( 8  9)  (15 17)  (10  7)  (16  2)  ( 0  5)  (12  6)  (14  3)  (11  1)  [13  4]
R10 ( 9 10)  (16  0)  (11  8)  (17  3)  ( 1  6)  (13  7)  (15  4)  (12  2)  [14  5]
R11 (10 11)  (17  1)  (12  9)  ( 0  4)  ( 2  7)  (14  8)  (16  5)  (13  3)  [15  6]
R12 (11 12)  ( 0  2)  (13 10)  ( 1  5)  ( 3  8)  (15  9)  (17  6)  (14  4)  [16  7]
R13 (12 13)  ( 1  3)  (14 11)  ( 2  6)  ( 4  9)  (16 10)  ( 0  7)  (15  5)  [17  8]
R14 (13 14)  ( 2  4)  (15 12)  ( 3  7)  ( 5 10)  (17 11)  ( 1  8)  (16  6)  [ 0  9]
R15 (14 15)  ( 3  5)  (16 13)  ( 4  8)  ( 6 11)  ( 0 12)  ( 2  9)  (17  7)  [ 1 10]
R16 (15 16)  ( 4  6)  (17 14)  ( 5  9)  ( 7 12)  ( 1 13)  ( 3 10)  ( 0  8)  [ 2 11]
R17 (16 17)  ( 5  7)  ( 0 15)  ( 6 10)  ( 8 13)  ( 2 14)  ( 4 11)  ( 1  9)  [ 3 12]
R18 (17  0)  ( 6  8)  ( 1 16)  ( 7 11)  ( 9 14)  ( 3 15)  ( 5 12)  ( 2 10)  [ 4 13]


With 8 matches per round above there are 8*18=144 out of the 153 possible pairings.  The remaining 9 pairings are the differences of 9, in fact these are the pairs of byes from the first 9 rounds (or the last nine rounds) and if you wanted could be played in a final round (without byes) to complete the all-play-all round-robin.

Note that the problem of finding the schedule can now be reduced to finding just one round of 8 matches covering the differences 1 to 8 mod 18, such that the 18 teams in the round are all different.

Hope that's clear,

Ian.


Jeff

  • Newbie
  • *
    • Posts: 9
Reply #2 on: May 04, 2006, 02:22:20 PM
Great but there is one more additional point - The pairing that has the first Bye must compete against each other in the second round.  Ideally, all bye parings should then also compete but I am not sure that is really necessary.  Also, is there an easy way of listing the pairings that are not used?


Ian Wakeling

  • Forum Moderator
  • God Member
  • *****
    • Posts: 1140
Reply #3 on: May 05, 2006, 03:24:57 AM
Jeff,

The byes above are all the pairs with a difference of 9 twice.  So you can rearrange things so that the first pair of byes play together in the second round.  Reorder things so that rounds 1 and 10 above are played at the start of the tournament.  Now swap the second (14 5) for any of the 8 matches in round 2.  You could then do the same thing for rounds 2 and 11, 3 and 12 etc, so you would end up with half of the bye pairing competing - would this be OK?  To get all bye pairings to compete would take a total rethink, as the cyclic approach would no longer be of any help.

Ian.