Round Robin Tournament Scheduling

12 round, 3 on 3 Round Robin with random teams

johnz1 · 19 · 12013

johnz1

  • Newbie
  • *
    • Posts: 11
on: March 07, 2013, 10:59:12 AM
Hello, I'm running an NHL HITZ 2002 round robin that previously used names in a hat to determine matchups.  I'd like to get a bit more civilized this time, and have it scheduled.  Here's the scenario:

- Teams comprise of 3 random players.  Players are on different teams every round.
- 4 teams play at once, on two TV's (locations).  So 4 teams per round, and every round there are 3 players get a bye
- There will be 15 players, but I also want to plan for a 16th
- A total of 12 rounds     EDIT: I meant to say "A total of 12 games played, per player"

I would like to make everything as even as possible.  Most importantly, the number of games played by each player.

Any help would be MUCH appreciated!  Thank you!
« Last Edit: March 08, 2013, 09:56:35 AM by johnz1 »


Ian Wakeling

  • Forum Moderator
  • God Member
  • *****
    • Posts: 1140
Reply #1 on: March 08, 2013, 02:13:36 AM
If you have 15 players and 3 byes per round, then you would need a mulitple of 5 rounds in order to meet your criterion of the same number of games for each player.  So 10 rounds would be 8 games +2 byes each, and 15 rounds would be 12 games +3 byes each.  Would you consider changing the number of rounds to have this balance?
« Last Edit: March 08, 2013, 02:14:40 AM by Ian »


johnz1

  • Newbie
  • *
    • Posts: 11
Reply #2 on: March 08, 2013, 09:55:45 AM
Yes, I meant "12 games per player", not "12 rounds".  So three byes and 15 rounds is perfect.

Is there any spreadsheet, website, or tool I can use to actually create the matchups for each round?


Ian Wakeling

  • Forum Moderator
  • God Member
  • *****
    • Posts: 1140
Reply #3 on: March 08, 2013, 11:00:31 AM
I don't think you will find any tools to help generate these schedules as the problem is unusual with 3 against 3 and byes.  To get the schedule below I am writing my own program and editing the code to suit the size of the problem.

The schedule below has all pairs of players on the same team either once or twice and all pairs opposing either 2 or 3 times.

( 2 10  8 v 14  1  5)  (15 12  9 v 11  3  7)  (13  6  4)
( 3  6  9 v 15  2  1)  (11 13 10 v 12  4  8)  (14  7  5)
( 4  7 10 v 11  3  2)  (12 14  6 v 13  5  9)  (15  8  1)
( 5  8  6 v 12  4  3)  (13 15  7 v 14  1 10)  (11  9  2)
( 1  9  7 v 13  5  4)  (14 11  8 v 15  2  6)  (12 10  3)
( 7 11  6 v 10  1  5)  ( 4 15  9 v  2 14 12)  ( 3 13  8)
( 8 12  7 v  6  2  1)  ( 5 11 10 v  3 15 13)  ( 4 14  9)
( 9 13  8 v  7  3  2)  ( 1 12  6 v  4 11 14)  ( 5 15 10)
(10 14  9 v  8  4  3)  ( 2 13  7 v  5 12 15)  ( 1 11  6)
( 6 15 10 v  9  5  4)  ( 3 14  8 v  1 13 11)  ( 2 12  7)
( 8 15  1 v 12  9 10)  (13  2 14 v  6  3  5)  (11  4  7)
( 9 11  2 v 13 10  6)  (14  3 15 v  7  4  1)  (12  5  8)
(10 12  3 v 14  6  7)  (15  4 11 v  8  5  2)  (13  1  9)
( 6 13  4 v 15  7  8)  (11  5 12 v  9  1  3)  (14  2 10)
( 7 14  5 v 11  8  9)  (12  1 13 v 10  2  4)  (15  3  6)


I will try to think of something for 16 players at the weekend, but this is actually a harder problem than 15.
« Last Edit: March 19, 2019, 09:04:32 PM by Richard A. DeVenezia »


johnz1

  • Newbie
  • *
    • Posts: 11
Reply #4 on: March 08, 2013, 11:17:29 AM
Thanks so much Ian!  This is really great


Ian Wakeling

  • Forum Moderator
  • God Member
  • *****
    • Posts: 1140
Reply #5 on: March 09, 2013, 02:31:21 AM
It turns out there is a easy cyclic solution for 16 players and 16 rounds where all rounds can be determined from the first.

( 1  6  5 v 16  3  9)  (13 11  8 v 12  2  4)  (10 14  7 15)
( 2  7  6 v  1  4 10)  (14 12  9 v 13  3  5)  (11 15  8 16)
( 3  8  7 v  2  5 11)  (15 13 10 v 14  4  6)  (12 16  9  1)
( 4  9  8 v  3  6 12)  (16 14 11 v 15  5  7)  (13  1 10  2)
( 5 10  9 v  4  7 13)  ( 1 15 12 v 16  6  8)  (14  2 11  3)
( 6 11 10 v  5  8 14)  ( 2 16 13 v  1  7  9)  (15  3 12  4)
( 7 12 11 v  6  9 15)  ( 3  1 14 v  2  8 10)  (16  4 13  5)
( 8 13 12 v  7 10 16)  ( 4  2 15 v  3  9 11)  ( 1  5 14  6)
( 9 14 13 v  8 11  1)  ( 5  3 16 v  4 10 12)  ( 2  6 15  7)
(10 15 14 v  9 12  2)  ( 6  4  1 v  5 11 13)  ( 3  7 16  8)
(11 16 15 v 10 13  3)  ( 7  5  2 v  6 12 14)  ( 4  8  1  9)
(12  1 16 v 11 14  4)  ( 8  6  3 v  7 13 15)  ( 5  9  2 10)
(13  2  1 v 12 15  5)  ( 9  7  4 v  8 14 16)  ( 6 10  3 11)
(14  3  2 v 13 16  6)  (10  8  5 v  9 15  1)  ( 7 11  4 12)
(15  4  3 v 14  1  7)  (11  9  6 v 10 16  2)  ( 8 12  5 13)
(16  5  4 v 15  2  8)  (12 10  7 v 11  1  3)  ( 9 13  6 14)


The properties are very similar to the 15 player one, but this time with 4 byes per player.  There is an issue with each player having 2 byes back-to-back, however I think you can avoid this by numbering the rounds above 1 to 16 and then rearranging the order so that the odd rounds come first, followed by the even rounds, so use the order 1,3,5,7,9,11,13,15,2,4,6,8,10,12,14,16.
« Last Edit: March 09, 2013, 02:35:19 AM by Ian »


johnz1

  • Newbie
  • *
    • Posts: 11
Reply #6 on: March 11, 2013, 04:19:37 PM
That's really great Ian, thank you so much.  In the future, I might run bigger tournaments.  Any chance you'd be willing to share the code that you're using to generate these matchups?  Thanks so much


johnz1

  • Newbie
  • *
    • Posts: 11
Reply #7 on: February 25, 2014, 11:13:53 AM
Thanks again for the help last year, Ian.  Sorry to resurrect a thread that's a year old, but the scenario is the same, aside from the number of games played per person.

We'd like to have each player face off against every player the same number of times.  It seems to me that the number of games played per person should be equal to the number of players minus 1.  The -1 is due to the fact that you cannot face yourself.  e.g. if you have 14 players, you should play 13 games each, which would be 39 total opponents.  There are 13 other players, so you'd play everyone 3 times because 39/3 = 13.

Could someone help me make matchups for 14 players (13 games played per person) and 15 players (14 games played per person)?  Is this easier to do because everyone plays each other the same number of times?

Thank you


EDIT: I see this thread "3v3 for various numbers", but there's only perfect matchups for 12 and 13.  This is what I'm looking for, but for more players.
« Last Edit: February 25, 2014, 01:22:53 PM by johnz1 »


Ian Wakeling

  • Forum Moderator
  • God Member
  • *****
    • Posts: 1140
Reply #8 on: February 26, 2014, 03:06:35 AM
It is best to play 14 rounds with 14 players, as I think giving everyone the same number of games should be the most important priority.  Above you are not considering the byes in your calculation, so with 14 players and 14 rounds, you will get 2 byes each, and only a total of 12 games per player, so the matchups can not be balanced.  In fact 91 rounds of play are necessary, with each player having 78 games and 13 byes, before both aspects can be balanced, then each player could oppose the 13 others 18 times each.

If you use the 14 player schedule that you can find by following the link above, then I think this is the best that can be done - players will meet, either as team-mates or opponents either 4 or 5 times each (once or twice as team-mates, 2 or 3 times as opponents).

It is best to think of the problem in terms of balancing the byes, and 15 players is a good example.  There will be 15 - 2*6 = 3 byes per round, and since 3 divides 15 exactly , it will be possible to have a schedule where everyone gets the same number of games, whenever there is a multiple of 5 rounds. So it makes sense to look for a schedule with 15 rounds, like the one below:

( 3 14  4  v   1  6 15)  (11 10 13  v   8  9  5)  ( 7 12  2)
( 4 15  5  v   2  7 11)  (12  6 14  v   9 10  1)  ( 8 13  3)
( 5 11  1  v   3  8 12)  (13  7 15  v  10  6  2)  ( 9 14  4)
( 1 12  2  v   4  9 13)  (14  8 11  v   6  7  3)  (10 15  5)
( 2 13  3  v   5 10 14)  (15  9 12  v   7  8  4)  ( 6 11  1)
( 9 11  2  v  10  7  3)  ( 6  8 15  v   5 13  1)  (12 14  4)
(10 12  3  v   6  8  4)  ( 7  9 11  v   1 14  2)  (13 15  5)
( 6 13  4  v   7  9  5)  ( 8 10 12  v   2 15  3)  (14 11  1)
( 7 14  5  v   8 10  1)  ( 9  6 13  v   3 11  4)  (15 12  2)
( 8 15  1  v   9  6  2)  (10  7 14  v   4 12  5)  (11 13  3)
(10  4 11  v  13 14 15)  ( 7  2 12  v   6  3  5)  ( 1  9  8)
( 6  5 12  v  14 15 11)  ( 8  3 13  v   7  4  1)  ( 2 10  9)
( 7  1 13  v  15 11 12)  ( 9  4 14  v   8  5  2)  ( 3  6 10)
( 8  2 14  v  11 12 13)  (10  5 15  v   9  1  3)  ( 4  7  6)
( 9  3 15  v  12 13 14)  ( 6  1 11  v  10  2  4)  ( 5  8  7)

Again the properties are the same as the 14 player schedule, with players meeting in the same game either 4 or 5 times.

Hope that helps.
« Last Edit: February 26, 2014, 03:28:01 AM by Ian »


johnz1

  • Newbie
  • *
    • Posts: 11
Reply #9 on: February 26, 2014, 09:59:39 AM
Thanks Ian.
In my posts yesterday, I tried to not mention the number of rounds because I really only care about the number of games played per person, and having "perfect" round robins where every player plays with everyone and against everyone the same number of times.

I believe the way to have perfect round robins is to have the number of games played per person be equal to the number of players minus 1.  Is this true?  If so, do you have schedules for 14 players where each player plays 13 games, and 15 players where each player plays 14 games?


Ian Wakeling

  • Forum Moderator
  • God Member
  • *****
    • Posts: 1140
Reply #10 on: February 27, 2014, 07:32:05 AM
If there are g games per person, the schedule as a whole will have n x g player-slots, but there must be a whole number of games, and where each game involves 6 players, then the number n x g must be divisible by 6.  So this does not work out for 14 players and 13 games per person.  In fact the smallest perfect schedule for 14 players will have 39 games per player to meet the divisibility criterion.

other combinations that work are:

n=15 g=14
n=16 g=15
n=17 g=48

but I don't have any examples of these schedules.
« Last Edit: February 27, 2014, 07:33:13 AM by Ian »


Ian Wakeling

  • Forum Moderator
  • God Member
  • *****
    • Posts: 1140
Reply #11 on: February 27, 2014, 01:57:43 PM
I have just discovered that some of these schedules are known in the mathematical literature (if interested google for the term NBIBD).

Here is an example of the 15 player schedule with a total of 35 games:

(11  1  2 v  8  5 14)
(12  2  3 v  9  1 15)
(13  3  4 v 10  2 11)
(14  4  5 v  6  3 12)
(15  5  1 v  7  4 13)

(15  7 11 v 12 14  1)
(11  8 12 v 13 15  2)
(12  9 13 v 14 11  3)
(13 10 14 v 15 12  4)
(14  6 15 v 11 13  5)

(12 13  1 v  3  7  5)
(13 14  2 v  4  8  1)
(14 15  3 v  5  9  2)
(15 11  4 v  1 10  3)
(11 12  5 v  2  6  4)

( 9 10  2 v  5  1 13)
(10  6  3 v  1  2 14)
( 6  7  4 v  2  3 15)
( 7  8  5 v  3  4 11)
( 8  9  1 v  4  5 12)

( 6 12  9 v  4  1 10)
( 7 13 10 v  5  2  6)
( 8 14  6 v  1  3  7)
( 9 15  7 v  2  4  8)
(10 11  8 v  3  5  9)

( 5 10  6 v 15 12  8)
( 1  6  7 v 11 13  9)
( 2  7  8 v 12 14 10)
( 3  8  9 v 13 15  6)
( 4  9 10 v 14 11  7)

( 7 14  9 v 15  5 10)
( 8 15 10 v 11  1  6)
( 9 11  6 v 12  2  7)
(10 12  7 v 13  3  8)
( 6 13  8 v 14  4  9)


johnz1

  • Newbie
  • *
    • Posts: 11
Reply #12 on: January 28, 2015, 04:01:26 PM
Sorry to resurrect this thread yet again.  Another year, another tournament.  This time, we want to have more rounds.  I'm looking to have 15 players, and every player to play exactly 16 times.  I believe this means that there will be 20 rounds.  I'd also like to have a matchup schedule for 14 players.  I believe this would require 18 games each, with 21 rounds.

Could anyone help me with making matchup schedules for 14 and 15 players?  I'd like them to be as even as possible, so that everyone gets the chance to play with and against everyone.  But the most important thing is that everyone plays the same number of games.

Thanks for any help


johnz1

  • Newbie
  • *
    • Posts: 11
Reply #13 on: January 28, 2015, 04:46:29 PM
I tried to do a cyclic schedule for 15 players.  Are there any problems with this?
 1  6  5  v  15  3  9     13 11  8  v  12  2  4      10 14  7
 2  7  6  v   1  4 10     14 12  9  v  13  3  5      11 15  8
 3  8  7  v   2  5 11     15 13 10  v  14  4  6      12  1  9
 4  9  8  v   3  6 12      1 14 11  v  15  5  7      13  2 10
 5 10  9  v   4  7 13      2 15 12  v   1  6  8      14  3 11
 6 11 10  v   5  8 14      3  1 13  v   2  7  9      15  4 12
 7 12 11  v   6  9 15      4  2 14  v   3  8 10       1  5 13
 8 13 12  v   7 10  1      5  3 15  v   4  9 11       2  6 14
 9 14 13  v   8 11  2      6  4  1  v   5 10 12       3  7 15
10 15 14  v   9 12  3      7  5  2  v   6 11 13       4  8  1
11  1 15  v  10 13  4      8  6  3  v   7 12 14       5  9  2
12  2  1  v  11 14  5      9  7  4  v   8 13 15       6 10  3
13  3  2  v  12 15  6     10  8  5  v   9 14  1       7 11  4
14  4  3  v  13  1  7     11  9  6  v  10 15  2       8 12  5
15  5  4  v  14  2  8     12 10  7  v  11  1  3       9 13  6
 1  6  5  v  15  3  9     13 11  8  v  12  2  4      10 14  7
 2  7  6  v   1  4 10     14 12  9  v  13  3  5      11 15  8
 3  8  7  v   2  5 11     15 13 10  v  14  4  6      12  1  9
 4  9  8  v   3  6 12      1 14 11  v  15  5  7      13  2 10
 5 10  9  v   4  7 13      2 15 12  v   1  6  8      14  3 11


Ian Wakeling

  • Forum Moderator
  • God Member
  • *****
    • Posts: 1140
Reply #14 on: January 28, 2015, 06:22:12 PM
The schedule above is not optimal, for example count the players who play on the same team as player 1, and you should see that 1 & 2 occur together only once, but 1 & 6 occur together 5 times.

It is possible to obtain best possible balance for all partner pairs as well as all opposition pairs.  For example 15 players (partner pairs 2 or 3 times, opposition pairs 3 or 4 times)

  (15 10  6 v  5  9 13) ( 1  3 14 v 11  4  2)   ( 7 12  8)
  (11  6  7 v  1 10 14) ( 2  4 15 v 12  5  3)   ( 8 13  9)
  (12  7  8 v  2  6 15) ( 3  5 11 v 13  1  4)   ( 9 14 10)
  (13  8  9 v  3  7 11) ( 4  1 12 v 14  2  5)   (10 15  6)
  (14  9 10 v  4  8 12) ( 5  2 13 v 15  3  1)   ( 6 11  7)
  ( 7  5 10 v 14  3  6) (15  9  8 v  4 13 11)   (12  2  1)
  ( 8  1  6 v 15  4  7) (11 10  9 v  5 14 12)   (13  3  2)
  ( 9  2  7 v 11  5  8) (12  6 10 v  1 15 13)   (14  4  3)
  (10  3  8 v 12  1  9) (13  7  6 v  2 11 14)   (15  5  4)
  ( 6  4  9 v 13  2 10) (14  8  7 v  3 12 15)   (11  1  5)
  ( 5  2 15 v  8 10 11) ( 7 12 14 v 13  3  9)   ( 4  1  6)
  ( 1  3 11 v  9  6 12) ( 8 13 15 v 14  4 10)   ( 5  2  7)
  ( 2  4 12 v 10  7 13) ( 9 14 11 v 15  5  6)   ( 1  3  8)
  ( 3  5 13 v  6  8 14) (10 15 12 v 11  1  7)   ( 2  4  9)
  ( 4  1 14 v  7  9 15) ( 6 11 13 v 12  2  8)   ( 3  5 10)
  ( 9  4  8 v  1  6  5) ( 2  3 10 v 14 15 11)   (12  7 13)
  (10  5  9 v  2  7  1) ( 3  4  6 v 15 11 12)   (13  8 14)
  ( 6  1 10 v  3  8  2) ( 4  5  7 v 11 12 13)   (14  9 15)
  ( 7  2  6 v  4  9  3) ( 5  1  8 v 12 13 14)   (15 10 11)
  ( 8  3  7 v  5 10  4) ( 1  2  9 v 13 14 15)   (11  6 12)


and 14 players  (partner pairs 2 or 3 times, opposition pairs 4 or 5 times) :

  (10  1 11 v  9 12  4) ( 8 14  2 v  3  7  5)   (13  6)
  (11  2 12 v 10 13  5) ( 9  8  3 v  4  1  6)   (14  7)
  (12  3 13 v 11 14  6) (10  9  4 v  5  2  7)   ( 8  1)
  (13  4 14 v 12  8  7) (11 10  5 v  6  3  1)   ( 9  2)
  (14  5  8 v 13  9  1) (12 11  6 v  7  4  2)   (10  3)
  ( 8  6  9 v 14 10  2) (13 12  7 v  1  5  3)   (11  4)
  ( 9  7 10 v  8 11  3) (14 13  1 v  2  6  4)   (12  5)
  ( 6  3 14 v  4 11  5) (13  1  2 v 10 12  8)   ( 9  7)
  ( 7  4  8 v  5 12  6) (14  2  3 v 11 13  9)   (10  1)
  ( 1  5  9 v  6 13  7) ( 8  3  4 v 12 14 10)   (11  2)
  ( 2  6 10 v  7 14  1) ( 9  4  5 v 13  8 11)   (12  3)
  ( 3  7 11 v  1  8  2) (10  5  6 v 14  9 12)   (13  4)
  ( 4  1 12 v  2  9  3) (11  6  7 v  8 10 13)   (14  5)
  ( 5  2 13 v  3 10  4) (12  7  1 v  9 11 14)   ( 8  6)
  (11 12  2 v 13  6  8) ( 7  4  5 v 14  3 10)   ( 9  1)
  (12 13  3 v 14  7  9) ( 1  5  6 v  8  4 11)   (10  2)
  (13 14  4 v  8  1 10) ( 2  6  7 v  9  5 12)   (11  3)
  (14  8  5 v  9  2 11) ( 3  7  1 v 10  6 13)   (12  4)
  ( 8  9  6 v 10  3 12) ( 4  1  2 v 11  7 14)   (13  5)
  ( 9 10  7 v 11  4 13) ( 5  2  3 v 12  1  8)   (14  6)
  (10 11  1 v 12  5 14) ( 6  3  4 v 13  2  9)   ( 8  7)


Hope that helps.