Round Robin Tournament Scheduling

Table balanced schedule

Kaktussoft · 2 · 4322

Kaktussoft

  • Newbie
  • *
    • Posts: 1
on: January 17, 2012, 07:54:13 AM
Hi all,

I gonna organize a billiard tournament. Number of players is even and maybe 20, 22, 24 .. 30. So max is 30. It is a round robin tournament so:

* Every playday all players play once. Two players meet each other on a table.
* Each player meets all other players twice (so 30 players gives 29*2=58 rounds).
* It should be round robin where halfway each player has met all other players once.

Above is a really must!

This all is easy to make .... but I only have 4 tables!. And I want to balance tables as well! So:
* All players play on table 1 next playday table 2 next playday table 3 etc. So sequence 1,2,3,4. or 1,3,2,4 or 1,4,3,2 etc. As balanced as possible.
* If 30 players: each player plays 58 matches. 14 on table 1, 14 on table 2, 14 on table 3, 14 on table 4 (total 56 matches). Other 2 matches can be any table (not the same table).

How can I balance it as much as possible?

Thanks in advance


Ian Wakeling

  • Forum Moderator
  • God Member
  • *****
    • Posts: 1141
Reply #1 on: January 18, 2012, 04:11:35 AM
The simplest problem is when there are 24 players.  Start with the balanced tournament schedule for 24 players, which for example you can get from my Excel workbook.  Rearrange each of the 23 rounds on 12 courts/tables, so that courts 1 to 4 are the first games scheduled on a playday, courts 5 to 8 are the next 4 games and courts 9 to 12 are the last games.  So each billiards table will now have all the games from three courts played on it, and as the original schedule has court balance, each player will now play either 5 or 6 games of their games at each table.  Furthermore, at any one of the three time slots, all the games from four of the original courts will now be scheduled, so over the 23 playdays there will be best possible balance for time slots, with players playing either 7 or 8 times at each time slot.  

While the rearranged schedule will have table balance, note that players will not rotate around the tables in a pattern as you have described above - indeed I don't see any way to find a similar schedule that has this patterning.

So far only half of the schedule has been built.  The same Excel file can be used to generate another schedule with the same properties (use a different randomisation), however when you match the two halves together, this needs to be done in such a way that there is no overlap between the 6 players who only play 5 times on a table in the first half and the 6 players that only play 5 times on the same table in the second half.  If you can do that, then you will have table balance for the full schedule, where a player has 11 or 12 game on each table, if not, then at worst, you have 10,11 or 12 games on each table.

When the number of players is not a multiple of 8 things start to get much harder.  By necessity some table/time slot combinations will not be required on a playday, and you will need to have a balanced distribution of these unused slots if you want to retain table balance.  I think it will be hard to solve this problem by rearranging the standard schedule and you would probably need to have a algorithm that tries different assignments on games to slots to optimise the balance that you want.