Date: Fri, 27 Dec 1996 22:30:16 -0600 (CST)

 
Name:          Byron 
Who is asking: Teacher
Level:         Secondary
Question:
I was asked if there was a mathematical method to work with schedules. The problem is this. There are 24 teams playing weekly on 4 sheets at 3 different times of the day as follows:

First week of play:

Time   Sheet   Team vs Team 
1pm      1       1  -  24
         2       2  -  23
         3       3  -  22
         4       4  -  21

3pm      5       5  -  20
         6       6  -  19
         7       7  -  18
         8       8  -  17

5pm      9       9  -  16
        10      10  -  15
        11      11  -  14
        12      12  -  13
The conditions to satisfy are that teams are to play each other once in such a way that they play an equal number of times on different sheets and an equal number of times at each time slot through rotations during weekly games. The gentleman has been doing this scheduling by 'brute force' but he thinks there must be a mathematical background to this process. I am unable to put my finger on the process and would appreciate any help you could give me so that I may pass it on to him.

Thanks for your thoughts.


Hi Bryon

Scheduling questions such as yours do not always have nice answers. It is not always the case, depending upon the number of teams, number of time slots and number of playing surfaces involved, that we can balance off the schedule so that each team plays everyone else the required number of times, uses the time slots an `equal' number of times and uses the playing surfaces an `equal' number of times. I will give you a fairly general method that will produce a schedule for you in which everyone plays everyone else but I wont guarantee `equality' of the time and surface distribution. (Since you have 24 teams, which would require a fairly large matrix on the web page, I will describe the process for 24 teams and then illustrate the method with 6 teams and 3 time/surface slots).

First, since you have three time slots, H1, H2, H3 and four surfaces S1, S2, S3, & S4 let's identify the 12 possible playing scenarios by the following table S:

SS1S2S3S4
H11234
H25678
H39101112

What you need is a 24 by 24 matrix in which the (i, j)th. entry is an ordered pair (w, s) where w denotes the week in which the teams Ti and Tj play, and s denotes an entry from the scenario table above indicating when and where they play. For example if you see (15,7) in the (4,9) entry of your 24 by 24 matrix this would mean that teams 4 and 9 play in week 15 at hour 2 on surface 3. To generate the first (the w) entries, we place the number 1 at the center of a circle and the numbers 2, 3, ..., 24 equally spaced around the circle. Draw a radius from 1 to 2 and all segments joining two numbers on the circle that are perpendicular to this radius, i.e. 3 to 24, 4 to 23, ..., 13 to 14. This gives us who plays who in week 1. To get who plays who in week 2, simply rotate the circle; repeat until 23 and 1 are joined as the radius. Enter the weeks into your 24 by 24 matrix (which we be symmetrical across the main diagonal. What we must now do is place a second entry chosen from 1, 2, 3, ..., 12 right after the week to indicate the scenario as described above. What you must be careful about is that each week, exactly one of the twelve line segments we've drawn (including the radius) gets a number from 1, 2, ..., 12. We want to do this in such a way as to have each of the numbers 1,2,..., 12 appear as evenly as possible in each row and column of the matrix, and more than that we want the numbers from each row and column of the S table to appear as evenly as possible as well. One way to put in the numbers 1, 2, ..., 12 is to label the segments in week 1 with 1 for the segment 1-2; 2 for 3-24; 3 for 4-23; and so on until we get 12 for 13-14. In week 2, as the circle rotates one way, cycle the labels on the segments in the opposite direction. For example 1 goes on 4-2; 2 on 5-24; 3 on 6-23; and so on until we get 12 on 14-15.

For just 6 teams and a table S:

SS1S2S3
H1123
we get:

123456
1x,x(1,1)(2,3)(3,3)(4,1)(5,3)
2(1,1)x,x(4,3)(2,1)(5,1)(3,1)
3(2,3)(4,3)x,x(5,2)(3,2)(1,2)
4(3,3)(2,1)(5,2)x,x(1,3)(4,2)
5(4,1)(5,1)(3,2)(1,3)x,x(2,2)
6(5,3)(3,1)(1,2)(4,2)(2,2)x,x

Note that this schedule doesn't work too well in that team 2 for example is in scenario 1 too often. Again, this sort of bad outcome tends to even out as the number of teams, number of time slots and number of playing surfaces increases. It is sometimes best to find a method that `works' and then use ad hoc methods to balance things out.

For example, in week 5 we see teams 2 and 5 play each other in scenario #1.

Cheers
Denis


Go to Math Central

To return to the previous page use your browser's back button.