Abstract
The timetabling problem consists in scheduling a sequence of lectures between teachers and students in a prefixed period of time (typically a week), satisfying a set of constraints of various types. A large number of variants of the timetabling problem have been proposed in the literature, which differ from each other based on the type of institution involved (university or school) and the type of constraints. This problem, that has been traditionally considered in the operational research field, has recently been tackled with techniques belonging also to Artificial Intelligence (e.g., genetic algorithms, tabu search, and constraint satisfaction). In this paper, we survey the various formulations of the problem, and the techniques and algorithms used for its solution.
Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.References
Aarts, E. H.L. & Korst, J. (1989). Simulated Annealing and Boltzmann Machines. New York: John Wiley & Sons.
Abramson, D. (1991). Constructing School Timetables Using Simulated Annealing: Sequential and Parallel Algorithms. Management Science 37(1): 98-113.
Abramson, D. (1992). A Very High Speed Architecture for Simulated Annealing. IEEE Computer May: 27-36.
Akkoyunlu, E. A. (1973). A Linear Algorithm for Computing the Optimum University Timetable. The Computer Journal 16(4): 347-350.
Alvarez-Valdes, R., Martin, G. & Tamarit, J. M. (1996). Constructing Good Solutions for the Spanish School Timetabling Problem. Journal of the Operational Research Society. To appear.
Aubin, J. & Ferland, J. A. (1989). A Large Scale Timetabling Problem. Computers and Operational Research 16(1): 67-77.
Azevedo, F. & Barahona, P. (January 1994). Timetabling in Constraint Logic Programming. In Proceedings of World Congress on Expert Systems '94.
Balakrishnan, N., Lucena, A. & Wong, R. T. (1992). Scheduling Examinations to Reduce Second-Order Conflicts. Computers and Operational Research 19(5): 353-361.
Boufflet, J. P., Benouaghram, R. & Boufflet, G. (1995). An Interactive Computer Aided Design. In Proc. of the 1st Int. Conf. on the Practice and Theory of Automated Timetabling, 324-350.
Brélaz, D. (1979). New Methods to Color Vertices of a Graph. Communications of the ACM 22: 251-256.
Breslaw, J. A. (1976). A Linear Programming Solution to the Faculty Assignment Problem. Socio-Economic Planning Science 10: 227-230.
Burke, E., Elliman, D. & Weare, R. (1993). Extensions to a University Exam Timetabling System. In IJCAI-93 Workshop on Knowledge-Based Production, Planning, Scheduling and Control, 42-48. Chambery, France.
Burke, E., Elliman, D. & Weare, R. (1994). A Genetic Algorithm Based University Timetabling System. In 2nd East-West International Conference on Computer Technologies in Education. Crimea, Ukraine.
Busam, V. A. (1967). An Algorithm for Class Scheduling with Section Preference. Communications of the ACM 10(9): 567-569.
Čangalović, M. & Schreuder, J. A. M. (1991). Exact Coloring Algorithm for Weighted Graph Applied to Timetabling Problems with Lectures of Different Length. Journal of Operational Research 51(2): 248-258.
Carter, M. W. & Tovey, C. A. (1989). When is the Classroom Assignment Problem Hard? Operations Research 40(1S): 28-39.
Carter, M. W., Laporte, G. & Chinneck, J. W. (1994). A General Examination Scheduling System. Interfaces 24(3): 109-120.
Carter, M. W. (1986). A Survey of Practical Applications of Examination Timetabling Algorithms. Operations Research 34(2): 193-202.
Chahal, N. & de Werra, D. (1989). An Interactive System for Constructing Timetables on a PC. European Journal of Operational Research 40: 32-37.
Chams, M., Hertz, A. & de Werra, D. (1987). Some Experiments with Simulated Annealing for Coloring Graphs. European Journal of Operational Research 32: 260-266.
Clementson, A. T. & Elphick, C. H. (1982). Continuous Timetabling Problems. Journal of the Operational Research Society 33: 181-183.
Colorni, A., Dorigo, M. & Maniezzo, V. (1992). A Genetic Algorithm to Solve the Timetable Problem. Technical Report 90-060 revised, Politecnico di Milano, Italy.
Cooper, T. B. & Kingston, J. H. (1993). The Solution of Real Instances of the Timetabling Problem. The Computer Journal 36(7): 645-653.
Corne, D., Fang, H.L. & Mellish, C. (1993). Solving the Modular Exam Scheduling Problem with Genetic Algorithms. Technical Report 622, Department of Artificial Intelligence, University of Edinburgh.
Corne, D., Ross, P. & Fang, H.L. (1994). Evolutionary Timetabling: Practice, Prospects and Work in Progress. In UK Planning and Scheduling SIG Workshop.
Corne, D., Ross, P. & Fang, H.-L. (1994). Fast Practical Evolutionary Timetabling. In AISB Workshop on Evolutionary Computation, number 865 in Lecture Notes in Computer Science, 251-263.
Costa, D. (1994). A Tabu Search Algorithm for Computing an Operational Timetable. European Journal of Operational Research 76: 98-110.
Davis, L. (ed.) (1991). Handbook of Genetic Algorithms. Van Nostrand Reinhold.
de Werra, D. (1985). An Introduction to Timetabling. European Journal of Operational Research 19: 151-162.
Dempster, M. A. H., Lethridge, D. G. & Ulph, A. M. (1973). School Timetabling by Computer — a Technical History. Technical report, Oxford University.
Dhar, V. & Ranganathan, N. (1990). Integer Programming vs. Expert Systems: An Experimental Comparison. Communications of the ACM 33(3): 323-336.
Dinkel, J. J., Mote, J. & Venkataramanan, M. A. (1989). An Efficient Decision Support System for Academic Course Scheduling. Operations Research 37(6): 853-864.
Dowsland, K. A. (1990). A Timetabling Problem in Which Clashes Are Inevitable. Journal of the Operational Research Society 41(10): 907-918.
Dyer, J. & Mulvey, J. M. (1976). The Implementation of an Integrated Optimization/Information System for Academic Departmental Planning. Management Science 22: 1332-1341.
ECRC, Germany (December 1995). ECL iPSe User Manual (Version 3.5.2).
Eglese, R. W. & Rand, G. K. (1987). Conference Seminar Timetabling. Journal of the Operational Research Society 38(7): 591-598.
Eiselt, H. A. & Laporte, G. (1987). Combinatorial Optimization Problems with Soft and Hard Requirements. Journal of the Operational Research Society 38: 785-795.
Even, S., Itai, A. & Shamir, A. (1976). On the Complexity of Timetabling and Multicommodity Flow Problems. SIAM Journal of Computation 5(4): 691-703.
Fahrion, R. & Dollansky. G. (1992). Construction of University Faculty Timetables Using Logic Programming Techniques. Discrete Applied Mathematics 35(3): 221-236.
Feldman, R. & Golumbic, M. C. (1989). Constraint Satisfiability Algorithms for Interactive Student Scheduling. In Proc. of the 11th Int. Joint Conf. on Artificial Intelligence (IJCAI-89), 1010-1016. Morgan Kaufmann.
Ferland, J. A. & Fleurent, C. (1991). Computer Aided Scheduling for a Sport League. INFOR 29: 14-25.
Ferland, J. A. & Roy, S. (1985). Timetabling Problem for University as Assignment of Activity to Resources. Computers and Operational Research 12(2): 207-218.
Ferland, J. A., Roy, S. & Loc, T. G. (1986). The Timetabling Problem. In Coelho, J. D. & Tavares, L. V. (eds.) O.R. Models on Microcomputers, 97-103. North-Holland.
Frangouli, H., Harmandas, V. & Stamatopoulos, P. (1995). UTSE: Construction of Optimum Timetables for University Courses — A CLP Based Approach. In 3rd International Conference on the Practical Applications of Prolog (PAP'95), 225-243.
Garey, M. R. & Johnson, D. S. (1979). Computers and Intractability — A guide to NP-completeness. San Francisco: W.H. Freeman and Company.
Glover, F. & Laguna, M. (1993). Tabu Search. In Reeves, C. R. (ed.) Modern Heuristic Techniques for Combinatorial Problems. Oxford: Scientific Publications.
Glover, F. (1989). Tabu Search. Part I. ORSA Journal of Computing 1: 190-206.
Gotlieb, C. C. (1963). The Construction of Class-Teacher Timetables. In Popplewell, C. M. (ed.) IFIP Congress 62, 73-77. North-Holland.
Gueret, C., Jussien, N., Boizumault, P. & Prins, C. (1995). Building University Timetables Using Constraint Logic Programming. In Proc. of the 1st Int. Conf. on the Practice and Theory of Automated Timetabling, 393-408.
Halldórsson, M. M. (1993). A Still Better Performance Guarantee for Approximate Graph Coloring. Information Processing Letters 45: 19-23.
Harwood, G. B. & Lawless, R. W. (1975). Optimizing Faculty Teaching Schedules. Decision Science 6: 513-524.
Henz, M. & Würtz, J. (1995). Using Oz for College Time Tabling. In Proc. of the 1st Int. Conf. on the Practice and Theory of Automated Timetabling, 283-296.
Hertz, A. & de Werra, D. (1987). Using Tabu Search Techniques for Graph Coloring. Computing 39: 345-351.
Hertz, A. (1991). Tabu Search for Large Scale Timetabling Problems. European Journal of Operational Research 54: 39-47.
Hertz, A. (1992). Finding a Feasible Course Schedule Using Tabu Search. Discrete Applied Mathematics 35(3): 255-270.
Hilton, A. J. W. (1981). School Timetables. Annals of Discrete Mathematics 11: 177-188.
Hopcroft, J. E. & Karp, R. (1973). An n 5/2 Algorithm for Maximum Matching in Bipartite Graphs. SIAM Journal of Computation 2: 225-231.
Ikeda, H., Kitagawa, F. & Nakajima (1995). School Timetabling System: SECTA. In Proc. of the 1st Int. Conf. on the Practice and Theory of Automated Timetabling, 33-44.
Jaffar, J. & Lassez, J.-L. (1987). Constraint Logic Programming. In Proc. of the 14th ACM POPL Symposium, Munich, Germany.
Johnson, D. S., Aragon, C. R., McGeoch, L. A. & Schevon, C. (1991). Optimization by Simulated Annealing: An Experimental Evaluation; Part II, Graph Coloring and Number Partitioning. Operations Research 39(3): 378-406.
Johnson, D. (1990). Timetabling University Examinations. Journal of the Operational Research Society 41(1): 39-47.
Junginger, W. (1986). Timetabling in Germany — a Survey. Interfaces 16: 66-74.
Kang, L. & White, G. M. (1992). A Logic Approach to the Resolution of Constraints in Timetabling. European Journal of Operational Research 61: 306-317.
Kiaer, L. & Yellen, J. (1992). Weighted Graphs and University Course Timetabling. Computers and Operational Research 19(1): 59-67.
Kirkpatrick, S., Gelatt Jr, C. D. & Vecchi, M. P. (1983). Optimization by Simulated Annealing. Science 220: 671-680.
Klein, D. (1983). The Application of Computerized Solution Techniques to the Problem of Timetabling in High Schools and Universities. Master's thesis, Concordia University.
Klingen, L. H. (1981). Stundenplan-erstellung mit dem computer. Log In 1(4): 31-33.
Laporte, G. & Desroches, S. (1984). Examination Timetabling by Computer. Computers and Operational Research 11(4): 351-360.
Laporte, G. & Desroches, S. (1986). The Problem of Assigning Students to Course Sections in a Large Engineering School. Computers and Operational Research 13: 387-394.
Leighton, F. T. (1979). A Graph Coloring Algorithm for Large Scheduling Problems. J. Res. Natl. Bur. Standards 84: 489-506.
Ling, S.E. (1992). Integrating Genetic Algorithms with Prolog Assignment Problem as a hybrid Solution for the Politechnic Timetable Problem. In Manner, R. & Manderick, B. (eds.) Parallel Problem Solving from Nature 2, 321-329.
Mathaisel, D. F. X. & Comm, C. L. (1991). Course and Classroom Scheduling — an Interactive Computer-Graphics Approach. Journal of Systems and Software 15(2): 149-157.
McClure, R. H. & Wells, C. E. (1984). A Mathematical Programming Model for Faculty Course Assignment. Decision Science 15: 409-420.
Mehta. M. K. (1981). The Application of a Graph Coloring Method to an Examination Scheduling Problem. Interfaces 11(5): 57-64.
Meisels, A., Gudes, E. & Kuflik, T. (1991). Limited-Resource Time-Tabling by a Generalized Expert System. Knowledge-Based Systems 4: 215-224.
Michalewicz, Z. (1994). Genetic Algorithms + Data Structures = Evolution Programs. Springer-Verlag. Second, extended edition.
Minton, S., Johnston, M. D., Philips, A. B. & Laird, P. (1992). Minimizing Conflicts: A Heuristic Repair Method for Constraint Satisfaction and Scheduling Problems. Artificial Intelligence 58: 161-205.
Monfroglio, A. (1986). School Time Table Scheduling in Prolog. SIGART Newsletter 96: 20-22.
Monfroglio, A. (1988). Time-Tabling Through a Deductive Database: A Case Study. Data and Knowledge Engineering 3: 1-27.
Mulvey, J.M. (1982). A Classroom/Time Assignment Model. European Journal of Operational Research 9: 64-70.
Neufeld, G. A. & Tartar, J. (1974). Graph Coloring Conditions for the Existence of Solutions to the Timetable Problem. Communications of the ACM 17(8): 450-453.
Odijk, Michiel A. (1994). Construction of Periodic Timetables; Part I: A Cutting Plane Algorithm. Technical Report DUT-TWI-94-61, Delft University of Technology, Department of Technical Mathematics and Informatics, Delft, The Netherlands, 1994.
Ostermann, R. & de Werra, D. (1983). Some Experiments with a Timetabling System. OR Spektrum 3: 199-204.
Paechter, B., Luchian, H., Cumming, A. & Petruic, M. (1994). Two Solutions to the General Timetable Problem Using Evolutionary Methods. In IEEE Conference on Evolutionary Computation.
Paechter, B. (1994). Optimising a Presentation Timetable Using Evolutionary Algorithms. In AISB Workshop on Evolutionary Computation, number 865 in Lecture Notes in Computer Science, 264-276.
Papadimitriou, C. H. & Steiglitz, K. (1982). Combinatorial Optimization: Algorithms and Complexity. Englewood Cliffs, New Jersey: Prentice-Hall.
Papoulias, D. B. (1980). The Assignment-to-Days Problem in a School Time-Table, a Heuristic Approach. European Journal of Operational Research 4: 31-41.
Pearl, J. (1984). Heuristics: Intelligent Search Strategies for Computer Problem Solving. Reading, MA: Addison-Wesley.
Petrie, C., Causey, R., Steiner, D. & Dhar, V. (1989). A Planning Problem: Revisable Academic Course Scheduling. Technical Report ACT-AI-020, Microelectronics and Computer Technology Corporation.
Sabin, G. C. W. & Winter, G. K. (1986). The Impact of Automated Timetabling on Universities — a Case Study. Journal of the Operational Research Society 37: 689-693.
Schaerf, A. (1996). Scheduling Sport Tournaments Using Constraint Logic Programming. In Proc. of the 12th European Conf. on Artificial Intelligence (ECAI-96), 634-639. Budapest, Hungary: John Wiley & Sons.
Schaerf, A. (1996). Tabu Search Techniques for Large High-School Timetabling Problems. In Proc. of the 13th Nat. Conf. on Artificial Intelligence (AAAI-96), 363-368. Portland, USA: AAAI Press/MIT Press.
Schmidt, G. & Strohlein, T. (1979). Timetable Construction — an Annotated Bibliography. The Computer Journal 23(4): 307-316.
Schreuder, J. A. M. (1992). Combinatorial Aspects of Construction of Competition Dutch Professional Football Leagues. Discrete Applied Mathematics 35: 301-312.
Selim, S. M. (1983). An Algorithm for Producing Course and Lecture Timetables. Computers & Education 7: 101-108.
Selim, S. M. (1988). Split Vertices in Vertex Colouring and Their Application in Developing a Solution to the Faculty Timetable Problem. The Computer Journal 31(1): 76-82.
Selman, B., Levesque, H. & Mitchell, D. (1992). A New Method for Solving Hard Satisfiability Problems. In Proc. of the 10th Nat. Conf. on Artificial Intelligence (AAAI-92), 440-446.
Shin, W. & Sullivan, J. A. (1977). Dynamic Course Scheduling for College Faculty Via Zero-One Programming. Decision Science 8: 711-721.
Shmoys, D. B., Stein, C. & Wein, J. (1991). Improved Approximation Algorithms for Shop Scheduling Problems. In Proc. of the Symposium on Discrete Algorithms.
Smith, G. & Sefton, I. M. (1974). On Lion's Counter-Example for Gotlieb's Method for the Construction of School Timetables. Communications of the ACM 17: 196-197.
Smolka, G. (1995). The Oz Programming Model. In van Leeuwen, J. (ed.) Current Trend in Computer Science, number 1000 in Lecture Notes in Computer Science, 324-343. Springer-Verlag.
Solotorevsky, G., Gudes, E. & Meisels, A. (1994). RAPS: A Rule-Based Language Specifying Resource Allocation and Time-Tabling Problems. IEEE Transactions on Knowledge and Data Engineering 6(5): 681-697.
Tripathy, A. (1984). School Timetabling — a Case in Large Binary Integer Linear Programming. Management Science 30(12): 1473-1489.
Tripathy, A. (1992). Computerised Decision Aid for Timetabling — a Case Analysis. Discrete Applied Mathematics 35(3): 313-323.
Van Hentenryck, P. (1991). The CLP Language CHIP: Constraint Solving and Applications. In COMPCON-91, San Francisco, CA.
van Laarhoven, P. J. M. & Aarts, E. H. L. (1987). Simulated Annealing: Theory and Applications. D. Reidel Publishing Company, Kluwer Academic Publishers Group.
Vincke, P. (1984). Timetabling in Belgium: A Survey. In TIMS XXVI. Copenhagen.
Weare, R. (1995). Unpublished Manuscript. Nottingham University, UK.
Welsh, D. J. A. & Powell, M. B. (1967). An Upper Bound to the Chromatic Number of a Graph and Its Application to Timetabling Problems. The Computer Journal 10: 85-86.
Wong, K. H. & Ng, W. Y. (1990). An Interactive Timetabling Support System. In Int. Conf. in System Management, 307-313, Hong Kong.
Yoshikawa, M., Kaneko, K., Yamanouchi, T. & Watanabe, M. (1996). A Constraint-Based High School Scheduling System. IEEE Expert 11(1): 63-72.
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Schaerf, A. A Survey of Automated Timetabling. Artificial Intelligence Review 13, 87–127 (1999). https://doi.org/10.1023/A:1006576209967
Issue Date:
DOI: https://doi.org/10.1023/A:1006576209967