A study of university timetabling that blends graph coloring with the satisfaction of various essential and preferential conditions

Constructing a satisfactory conflict-free semester-long timetable of courses and creating a similarly satisfactory conflict-free timetable for end-of-semester final examinations are two closely related and often difficultproblems that colleges and universities face each semester. We discuss the relevance of such timetabling problems as a natural and practical application of graph coloring, and develop a mathematical and computational model for solving university timetabling problems using techniques of graph coloring that incorporates the satisfaction of both “essential” timetabling conditions (i.e., conditions or constraints that must be satisfied in order to produce a legal or feasible timetable) as well as suggested “preferential” timetabling conditions (i.e., additional conditions or constraints that need not necessarily be satisfied to produce a legal or legitimate timetable, but if satisfied may very well produce a more “acceptable” timetable for students and/or faculty members). We discuss in detail the step-by-step process that is taken to implement our timetabling-by-graph-coloring procedure, from the assembling of university course data, to creating a course conflict graph based on the assembled data, to coloring the conflict graph, to transforming this coloring to a conflict-free timetable, to finally assigning courses to classrooms. Once a conflict-free timetable of courses has been constructed, we present ways in which such a course timetable for a particular semester can be used to construct a conflict-free timetable of final examinations. Our model also considers a number of sociological scheduling concerns and preferences addressed by university registrars, faculty, staff, and students. Computational results, obtained by the author using actual data provided by Rice University and the University of St. Thomas, are documented.

[1]  Dennis F. X. Mathaisel,et al.  Course and classroom scheduling: An interactive computer graphics approach , 1991, J. Syst. Softw..

[2]  J. A. Bondy,et al.  Graph Theory with Applications , 1978 .

[3]  Mary Almond An Algorithm for Constructing University Timetables , 1966, Comput. J..

[4]  P. Miliotis,et al.  Integer programming approaches to the travelling salesman problem , 1976, Math. Program..

[5]  Gunther Schmidt,et al.  Timetable Construction - An Annotated Bibliography , 1980, Comput. J..

[6]  Ronald D. Dutton,et al.  A New Graph Colouring Algorithm , 1981, Comput. J..

[7]  Michael R. Williams Heuristic procedures (if they work—leave them alone) , 1974, Softw. Pract. Exp..

[8]  Calvin C. Gotlieb,et al.  The Construction of Class-Teacher Time-Tables , 1962, IFIP Congress.

[9]  David C. Wood,et al.  A technique for colouring a graph applicable to large scale timetabling problems , 1969, Computer/law journal.

[10]  Sara K. Minery,et al.  Optimizing Timetabling Solutions Using Graph Coloring , 1995 .

[11]  Damien Woods,et al.  Simultaneous Satisfaction of Hard and Soft Timetable , 1999 .

[12]  A. Gamst,et al.  Some lower bounds for a class of frequency assignment problems , 1986, IEEE Transactions on Vehicular Technology.

[13]  John Tartar,et al.  Graph coloring conditions for the existence of solutions to the timetable problem , 1974, CACM.

[14]  Edmund K. Burke,et al.  A University Timetabling System Based on Graph Colouring and Constraint Manipulation , 1994 .

[15]  John A. Ellis,et al.  A Las Vegas Graph Colouring Algorithm , 1989, Computer/law journal.

[16]  George M. White,et al.  Towards The Construction Of Optimal Examination Schedules , 1979 .

[17]  Alain Hertz,et al.  Using tabu search techniques for graph coloring , 1987, Computing.

[18]  D. de Werra,et al.  Complexity of some special types of timetabling problems Journal of Scheduling , 2002 .

[19]  Michael J. Maher,et al.  Constraint Logic Programming: A Survey , 1994, J. Log. Program..

[20]  David S. Johnson,et al.  Computers and Intractability: A Guide to the Theory of NP-Completeness , 1978 .

[21]  Ben Paechter,et al.  Timetabling the Classes of an Entire University with an Evolutionary Algorithm , 1998, PPSN.

[22]  Jay Yellen,et al.  Weighted graphs and university course timetabling , 1992, Comput. Oper. Res..

[23]  Wilhelm Erben,et al.  A Genetic Algorithm Solving a Weekly Course-Timetabling Problem , 1995, PATAT.

[24]  Gilbert Laporte,et al.  Horex: A Computer Program For The Construction Of Examination Schedules , 1978 .

[25]  D. J. A. Welsh,et al.  An upper bound for the chromatic number of a graph and its application to timetabling problems , 1967, Comput. J..

[26]  Keith D. Cooper,et al.  How to build an interference graph , 1998 .

[27]  D. West Introduction to Graph Theory , 1995 .

[28]  Keith D. Cooper,et al.  Improvements to graph coloring register allocation , 1994, TOPL.

[29]  Rodolfo Elizondo Solving Very Large Scale School/Student Assignment Problems , 1994 .

[30]  J. R. Brown Chromatic Scheduling and the Chromatic Number Problem , 1972 .

[31]  Jacques A. Ferland,et al.  A large scale timetabling problem , 1989, Comput. Oper. Res..

[32]  D. de Werra Restricted graph coloring: some mathematical programming models , 1999 .

[33]  J. E. L. Peck,et al.  Algorithm 286: Examination scheduling , 1966, CACM.

[34]  Nirbhay K. Mehta The Application of a Graph Coloring Method to an Examination Scheduling Problem , 1981 .

[35]  Keith D. Cooper,et al.  Coloring register pairs , 1992, LOPL.

[36]  Slim Abdennadher,et al.  University timetabling using constraint handling rules , 1998, JFPLC.

[37]  Joxan Jaffar,et al.  Constraint logic programming , 1987, POPL '87.

[38]  Cecilia R. Aragon,et al.  Optimization by Simulated Annealing: An Experimental Evaluation; Part I, Graph Partitioning , 1989, Oper. Res..

[39]  Dominique de Werra,et al.  Restricted coloring models for timetabling , 1997, Discret. Math..

[40]  Ronald L. Rivest,et al.  Introduction to Algorithms, Second Edition , 2001 .

[41]  Daniel Brélaz,et al.  New methods to color the vertices of a graph , 1979, CACM.

[42]  R. K. Shyamasundar,et al.  Introduction to algorithms , 1996 .

[43]  Sol Broder,et al.  Final examination scheduling , 1964, Commun. ACM.

[44]  Tommy R. Jensen,et al.  Graph Coloring Problems , 1994 .

[45]  Geoffrey C. Fox,et al.  A Comparison of Annealing Techniques for Academic Course Scheduling , 1997, PATAT.

[46]  Cecilia R. Aragon,et al.  Optimization by Simulated Annealing: An Experimental Evaluation; Part II, Graph Coloring and Number Partitioning , 1991, Oper. Res..

[47]  Vahid Lotfi,et al.  A graph coloring algorithm for large scale scheduling problems , 1986, Comput. Oper. Res..

[48]  Luís Paulo Reis,et al.  A Language for Specifying Complete Timetabling Problems , 2000, PATAT.

[49]  D. de Werra,et al.  An introduction to timetabling , 1985 .

[50]  Pascal Van Hentenryck Constraint satisfaction in logic programming , 1989, Logic programming.

[51]  Ken Kennedy,et al.  RETROSPECTIVE: Coloring Heuristics for Register Allocation , 2022 .

[52]  Edmund K. Burke,et al.  A Genetic Algorithm Based University Timetabling System , 1994 .

[53]  Frederick S. Hillier,et al.  Introduction of Operations Research , 1967 .

[54]  Anthony Wren,et al.  Scheduling, Timetabling and Rostering - A Special Relationship? , 1995, PATAT.

[55]  Norman L. Lawrie An integer linear programming model of a school timetabling problem , 1969, Comput. J..

[56]  Michael W. Carter,et al.  OR Practice - A Survey of Practical Applications of Examination Timetabling Algorithms , 1986, Oper. Res..