Reesearch Paper On TMS
Reesearch Paper On TMS
By Mary Almonds
This paper gives details of a simple heuristic approach to the University timetable problem.
The method is used to construct a timetable for one department and an integrated timetable for
all departments in a Science Faculty.
* Mathematics Department, Queen Mary College, Mile End Road, London, E.\.
331
Timetables
Table 1
timetable: for c : = 1 step 1 until total classes do
for « := 1 step 1 until number of hours do
begin allocate one lecture;
if fail then
begin alter conditions;
copy initial matrices;
goto timetable
end
end;
enter
Is there a lecture F
to allocate ?
T
\ 1
1 st time
F
i
T Is this a 3rd
consecutive lecture p
F I
__J
^ T Is this a F
postgraduate class p
\
Is the time suitable p F T Is this Wed. pm ?
T F
1 }
Is lecturer free F F
Is lecturer free ?
for 2 hours p
T T
I
Is class free F F
Is class free p
for 2 hours ?
T T
r
r \ F
i
exit
Fig. 3
333
Timetables
Table 2
Timetable for the Mathematics Department, Version 1
CLASS Hill PHI PG
Monday
9.30 Thomas Carter King Shaw —
10.30 Fisher Exercises Hughes King Peters
11.30 Shaw Thomas Pratt — Peters
12.30 — — Rose — —
2.30 — — Pratt — Gray
3.30 — —- — — Gray
Wednesday
9.30 Thomas Exercises' Rogers — —
10.30 Andrew Carter Reader Fisher
11.30 — Thomas Green — Fisher
12.30 — —
2.30 — — —
3.30 — — — — —
Thursday
9.30 Shaw Rowland Rose —
10.30 Lewis Andrew Hughes — Grant
11.30 Thomas White Shaw Grant
12.30 — — Fuller
2.30 — — Green
3.30 — — — — —
Friday
9.30 Shaw Rowland King — —
10.30 Andrew Rogers White Shaw Coles
11.30 — Andrew Rogers — Coles
12.30 — — Rose
2.30 — — White
1
3.30 — —
uses the three rectangular faces of this brick for the and may be occupied with lectures in other faculties.
Course Requirements, Lecturer Availability and Time- As before these matrices are copied into Current versions
table matrices. In addition, a 2-dimensional Boolean which can be updated during the allocation.
array known as the Conflicts matrix, lists groups of Groups of courses which should be available for a
courses whose lecture times must not conflict. For student are put into rows of the Conflicts matrix. These
example, in row 1 chemistry, physics, mechanics and their groups may be in two categories, essential and desirable.
associated laboratory classes could all be given the value
true. Output
In keeping with the usual Faculty convention the
Input timetable is printed as a matrix of dimensions (day of
Input data must include information for the Initial week) x (time of day) whose coefficients are lists of the
Course Requirements and the Initial Lecturer Avail- lectures taking place at that hour. To produce this
ability matrices. Again lecturers will have free days timetable, face 3 of the brick in Fig. 4 is stored as a
334
Timetables
Table 3
Timetable for the Mathematics Department, Version 2
(Version 2 uses the same data as Version 1, but the Requirements matrix is scanned in
the opposite direction)
CLASS HI Hill PHI PG
Monday
9.30 Lewis Rogers Reader Shaw —
10.30 Shaw Thomas Rose King Gray
11.30 Thomas Carter Rogers — Gray
12.30 — — Pratt — —
2.30 — Carter King — Fisher
Tuesday
9.30 Andrew Green Fuller Exercises j
10.30 Fisher Exercises Shaw King
11.30 Lewis White King — —
2.30 Hughes
3.30 — — —
Wednesday
9.30 Andrew Exercises Green
10.30 Thomas Green White — Coles
11.30 Fisher Rogers Hughes — Coles
12.30
2.30
3.30
Thursday
9.30 Shaw Andrew Rose
10.30 Andrew Rowland Green Grant
11.30 Thomas White Fuller Grant
12.30 White
2.30
3.30
Friday
9.30 Shaw Andrew Reader
10.30 Rowland Rogers Shaw Peters
11.30 — Shaw Peters
12.30 — Rose
2.30 — King
3.30
Boolean matrix of size (course) x (time). The output consecutive hours. These are allocated first by putting
procedure must scan the columns of this matrix to form them at the head of the list of courses. The number of
the lists of lectures for each hour. lectures allocated at each hour can be limited by the
number of lecture theatres available.
Algorithm The procedure also scans the Conflicts matrix for any
The basic algorithm is unchanged. The previous groups of courses containing the course which is being
ALGOL program- is repeated with courses replacing allocated, and ensures that its lecture hour will not
classes in the outermost cycle. coincide with any of the other courses in any of these
The allocation procedure must satisfy the same con- groups.
ditions as before. In addition some of the courses now The block diagram for procedure allocate is shown in
include laboratory classes which require from 2 to 5 Fig. 5 and the ALGOL version is given in Table 4.
335
Timetables
enter
Is there a lecture
to allocate ?
Has he given 2
Is the lecturer free ? next lab time adjacent lectures ?
exit
Fig. 5
336
Timetables
Table 4
337
Timetables
The alter conditions procedure again tries first a
reordering of the courses. If this fails then the lecturers'
free days can be adjusted, one or two extra lecture
theatres may be used, or finally those groups of courses
which are desirable rather than essential can be neglected.
Results
Typical results are illustrated in Tables 5 and 6. The
program was contained in 40 storage blocks of Atlas,
compilation took about 10 sec, execution for Table 5
12-5 sec and for Table 6 40 sec.
Monday Bl C2 Bllab
Zl M2 Zllab
Z2 Z21ab
M3 M5
M4 M6
Tuesday Bl PI Z31ab
Zl Ml P2 C3 Cllab
Z2 Gl M2 M6 g31ab
gl g2
Wednesday
Z3 PI P2 C3
Cl Ml M3 M7
P3 Gl M5 gl
Thursday
Z3 PI M3 M7 C21ab
Cl Ml M4 gl Gllab
P3 Gl
Friday
C2 P2 M4 M7 Pllab
g3 M2 M6 g4 P31ab
M5
338
Timetables
Table 6
Science Faculty Timetable for Semester 4
Monday B2 B9 B21ab
B7 C4 B71ab
Z4 C16 Z41ab
Z10 P9 ZIOlab
C12 M10 C17 M16 C121ab
Pll M28 P12 M17 Plllab
M8 M36 Mil M31 M33
M14
339
Timetables
Table 7
Some possible combinations of courses
References
GOTUEB, C. C. (1963). "The Construction of Class-Teacher Timetable," Proc. IFIP Congress 62, Munich, North Holland
Pub. Co., Amsterdam.
CSIMA, J., and GOTUEB, C. C. (1963). "A Computer Method for constructing School Timetables," Presented at the Eighteenth
Annual Conference of the Association for Computing Machinery, Denver, Colorado.
SHERMAN, G. R. (1963). "A Combinatorial Problem arising from Scheduling of University Classes," Journal of the Tennessee
Academy of Science, Vol. 38, No. 3, p. 115.
APPLEBY, J. S., BLAKE, D. V., and NEWMAN, E. A. (1961). "Techniques for producing School Timetables on a Computer and
their Application to other Scheduling Problems," The Computer Journal, Vol. 3, p. 237.
BRODER, S. (1964). "Final Examination Scheduling," Communications of the ACM, Vol. 7, No. 8, p. 494.
COLE, A. J. (1964). "The preparation of examination timetables using a small store computer," The Computer Journal, Vol. 7,
No. 2, p. 117.
BOSSERT, W. H., arid HARMON, J. B. (1963). Student sectioning on the IBM 7090, IBM Corp., Cambridge, Mass.