Abstract
This paper summarizes the work done to solve a complex course timetabling problem at a large university and provides new insights into the overall timetabling process. The first step in the successful solution of this problem was to define a course structure model that allowed application of classical course timetabling methods. Several methods were necessary to solve the complete problem. First, support procedures were needed to detect and correct an infeasible problem where hard constraints were being violated. The resulting timetabling problem was then solved via a search for a complete assignment of times and rooms to classes, taking all hard and soft constraints into account. Methods were also developed for modifying a computed solution in response to changes introduced at a later time while having a minimal impact on existing assignments.
These problems are described formally using a weighted constraint satisfaction model of the timetabling problem and solutions are proposed through two types of the algorithms: (1) generic iterative forward search with conflict-based statistics, and (2) branch and bound. Experimental results from the course timetabling system developed for Purdue University are provided. These include solutions computed by university schedulers using the system for two separate terms along with extensive experiments solving two central and six departmental problems, individually, and as a combined problem with almost 2,500 classes. The system described is currently used on all of the many varied course timetabling problems encountered each term at Purdue University.
Similar content being viewed by others
References
Abdennadher, S., & Marte, M. (2000). University course timetabling using constraint handling rules. Journal of Applied Artificial Intelligence, 14(4), 311–326.
Aubin, J., & Ferland, J. A. (1989). A large scale timetabling problem. Computers & Operations Research, 16(1), 67–77.
Avella, P., & Vasil’ev, I. (2005). A computational study of a cutting plane algorithm for university course timetabling. Journal of Scheduling, 8, 497–514.
Banks, D., van Beek, P., & Meisels, A. (1998). A heuristic incremental modeling approach to course timetabling. In LNCS : Vol. 1418. Proceedings of the 12th biennial conference of the Canadian society for computational studies of intelligence on advances in artificial intelligence (pp. 16–29). Berlin: Springer.
Baptiste, P., & Le Pape, C. (1995). A theoretical and experimental comparison of constraint propagation techniques for disjunctive scheduling. In C. S. Mellish (Ed.), Proceedings of the fourteenth international joint conference on artificial intelligence (pp. 600–606). San Mateo: Morgan Kaufmann.
Barták, R., Müller, T., & Rudová, H. (2004). A new approach to modeling and solving minimal perturbation problems. In LNAI : Vol. 3010. Recent advances in constraints (pp. 233–249). Berlin: Springer.
Bessiere, C. (2006). Constraint propagation. In F. Rossi et al. (Eds.), Handbook of constraint programming (pp. 29–83). Amsterdam: Elsevier.
Beyrouthy, C., Burke, E. K., McCollum, B., Landa-Silva, D., McMullan, P., & Parkes, A. J. (2007). The teaching space allocation problem with splitting. In E. Burke & H. Rudová (Eds.), LNCS : Vol. 3867. Practice and theory of automated timetabling VI (pp. 228–247). Berlin: Springer.
Beyrouthy, C., Burke, E. K., Landa-Silva, D., McCollum, B., McMullan, P., & Parkes, A. J. (2009). Towards improving the utilisation of university teaching space. Journal of the Operational Research Society, 60, 130–143.
Bistarelli, S., Montanari, U., & Rossi, F. (1997). Semiring-based constraint solving and optimization. Journal of the ACM, 44(2), 201–236.
Brown, K. N., & Miguel, I. (2006). Uncertainty and change. In F. Rossi et al. (Eds.), Handbook of constraint programming (pp. 731–760). Amsterdam: Elsevier.
Brucker, P., & Knust, S. (2001). Resource-constrained project scheduling and timetabling. In E. Burke & W. Erben (Eds.), LNCS : Vol. 2079. Practice and theory of automated timetabling III (pp. 277–293). Berlin: Springer.
Burke, E., & Carter M. (Eds.) (1998). LNCS : Vol. 1408. Practice and theory of automated timetabling II. Berlin: Springer.
Burke, E., & De Causmaecker, P. (Eds.) (2003). LNCS : Vol. 2740. Practice and theory of automated timetabling IV. Berlin: Springer.
Burke, E., & Erben, W. (Eds.) (2001). LNCS : Vol. 2079. Practice and theory of automated timetabling III. Berlin: Springer.
Burke, E., & Gendreau, M. (Eds.) (2008). 7th international conference on the practice and theory of automated timetabling. Montréal: Université de Montréal.
Burke, E., & Ross, P. (Eds.) (1996). LNCS : Vol. 1153. Practice and theory of automated timetabling. Berlin: Springer.
Burke, E., & Rudová, H. (Eds.) (2007). LNCS : Vol. 3867. Practice and theory of automated timetabling VI. Berlin: Springer.
Burke, E., & Trick, M. (Eds.) (2005). LNCS : Vol. 3616. Practice and theory of automated timetabling V. Berlin: Springer.
Burke, E. K., & Petrovic, S. (2002). Recent research directions in automated timetabling. European Journal of Operational Research, 140, 266–280.
Cambazard, H., Demazeau, F., Jussien, N., & David, P. (2005). Interactively solving school timetabling problems using extensions of constraint programming. In E. Burke & M. Trick (Eds.), LNCS : Vol. 3616. Practice and theory of automated timetabling V (pp. 190–207). Montréal: Université de Montréal.
Cambazard, H., Hebrard, E., O’Sullivan, B., & Papadopoulos, A. (2008). Local search and constraint programming for the post-enrolment-based course timetabling problem. In E. Burke & M. Gendreau (Eds.), 7th international conference on the practice and theory of automated timetabling. Berlin: Springer.
Carter, M. W. (2001). A comprehensive course timetabling and student scheduling system at the University of Waterloo. In E. Burke & W. Erben (Eds.), LNCS : Vol. 2079. Practice and theory of automated timetabling III (pp. 64–82). Berlin: Springer.
Carter, M. W., & Laporte, G. (1998). Recent developments in practical course timetabling. In E. Burke & M. Carter (Eds.), LNCS : Vol. 1408. Practice and theory of automated timetabling II (pp. 3–19). Berlin: Springer.
Caseau, Y., & Laburthe, F. (1996). Cumulative scheduling with task intervals. In M. Maher (Ed.), Proceedings of the 1996 joint international conference and symposium on logic programming (pp. 363–377). Cambridge: MIT Press.
De Causmaecker, P., Demeester, P., & Vanden Berghe, G. (2009). A decomposed metaheuristic approach for a real-world university timetabling problem. European Journal of Operational Research, 195(1), 307–318.
Cheadle, A. M., Harvey, W., Sadler, A. J., Schimpf, J., Shen, K., & Wallace, M. G. (2003). ECL i PS e : A tutorial introduction (Technical Report IC-Parc-03-1). IC-Parc, Imperial College London.
Chiarandini, M., Birattari, M., Socha, K., & Rossi-Doria, O. (2006). An effective hybrid algorithm for university course timetabling. Journal of Scheduling, 9(6), 403–432.
Chiarandini, M., Fawcett, C., & Hoos, H. H. (2008). A modular multiphase heuristic solver for post enrolment course timetabling. In E. Burke & M. Gendreau (Eds.), 7th international conference on the practice and theory of automated timetabling. Montréal: Université de Montréal.
Debruyne, R., & Bessière, C. (2001). Domain filtering consistencies. Journal of Artificial Intelligence Research, 14, 205–230.
Dechter, R. (2003). Constraint processing. San Mateo: Morgan Kaufmann.
Dechter, R., & Frost, D. (2002). Backjump-based backtracking for constraint satisfaction problems. Artificial Intelligence, 136(2), 147–188.
Di Gaspero, L., & Schaerf, A. (2006). Neighborhood portfolio approach for local search applied to timetabling problems. Journal of Mathematical Modeling and Algorithms, 5(1), 65–89.
Di Gaspero, L., McCollum, B., & Schaerf, A. (2007). The second international timetabling competition (ITC-2007): Curriculum-based course timetabling (track 3) (Technical Report QUB/IEEE/Tech/ITC2007/CurriculumCTT/v1.0). University, Belfast, United Kingdom.
El Sakkout, H., & Wallace, M. (2000). Probe backtrack search for minimal perturbation in dynamic scheduling. Constraints, 4(5), 359–388.
El Sakkout, H., Richards, T., & Wallace, M. (1998). Minimal perturbation in dynamic scheduling. In H. Prade (Ed.), Proceedings of the 13th European conference on artificial intelligence (ECAI-98) (pp. 504–508). New York: Wiley.
Elkhyari, A., Guéret, C., & Jussien, N. (2003). Solving dynamic timetabling problems as dynamic resource constrained project scheduling problems using new constraint programming tools. In E. Burke & P. De Causmaecker (Eds.), LNCS : Vol. 2740. Practice and theory of automated timetabling IV (pp. 39–59). Berlin: Springer.
Freuder, E. C., & Wallace, R. J. (1992). Partial constraint satisfaction. Artificial Intelligence, 58, 21–70.
Ginsberg, M. L. (1993). Dynamic backtracking. Journal of Artificial Intelligence Research, 1, 23–46.
Guéret, C., Jussien, N., Boizumault, P., & Prins, C. (1996). Building university timetables using constraint logic programming. In E. Burke & P. Ross (Eds.), LNCS : Vol. 1153. Practice and theory of automated timetabling (pp. 130–145). Berlin: Springer.
Henz, M., & Würtz, J. (1996). Using Oz for college timetabling. In E. Burke & P. Ross (Eds.), LNCS : Vol. 1153. Practice and theory of automated timetabling (pp. 162–177). Berlin: Springer.
Hertz, A. (1991). Tabu search for large scale timetabling problems. European Journal of Operational Research, 54(1), 39–47.
Jussien, N., & Lhomme, O. (2002). Local search with constraint propagation and conflict-based heuristics. Artificial Intelligence, 139(1), 21–45.
Kostuch, P. (2005). The university course timetabling problem with a 3-phase approach. In E. Burke & M. Trick (Eds.), LNCS : Vol. 3616. Practice and theory of automated timetabling V (pp. 109–125). Berlin: Springer.
Lajos, G. (1996). Complete university modular timetabling using constraint logic programming. In E. Burke & P. Ross (Eds.), LNCS : Vol. 1153. Practice and theory of automated timetabling (pp. 146–161). Berlin: Springer.
Larrosa, J., & Schiex, T. (2004). Solving weighted CSP by maintaining arc consistency. Artificial Intelligence, 159(1–2), 1–26.
Lewis, R. (2008a). A time-dependent metaheuristic algorithm for Track-2 of the second international timetabling competition. In E. Burke & M. Gendreau (Eds.), 7th international conference on the practice and theory of automated timetabling. Montréal: Université de Montréal.
Lewis, R. (2008b). A survey of metaheuristic-based techniques for university timetabling problems. OR Spectrum, 30(1), 167–190.
Lewis, R., Paechter, B., & McCollum, B. (2007). Post enrolment based course timetabling: A description of the problem model used for track two of the second international timetabling competition (Cardiff Working Papers in Accounting and Finance A2007-3). Cardiff Business School, Cardiff University.
Mackworth, A. K. (1977). Consistency in networks of relations. Artificial Intelligence, 8(1), 99–118.
Mayer, A., Nothegger, C., Chwatal, A., & Raidl, G. R. (2008). Solving the post enrolment course timetabling problem by ant colony optimization. In Burke, E. & Gendreau, M. (Eds.), 7th international conference on the practice and theory of automated timetabling. Montréal: Université de Montréal.
McCollum, B. (2007). A perspective on bridging the gap between theory and practice in university timetabling. In E. Burke & H. Rudová (Eds.), LNCS : Vol. 3867. Practice and theory of automated timetabling VI (pp. 3–23). Berlin: Springer.
McCollum, B., Schaerf, A., Paechter, B., McMullan, P., Lewis, R., Parkes, A. J., Di Gaspero, L., Qu, R., & Burke, E. K. (2010). Setting the research agenda in automated timetabling: The second international timetabling competition. INFORMS Journal on Computing, 22, 120–130.
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.
Müller, T. (2005). Constraint-based timetabling. PhD thesis, Charles University in Prague, Faculty of Mathematics and Physics.
Müller, T. (2009). ITC2007 solver description: A hybrid approach. Annals of Operations Research, 172(1), 429–446.
Müller, T., & Barták, R. (2002). Interactive timetabling: Concepts, techniques, and practical results. In E. Burke & P. De Causmaecker (Eds.), PATAT 2002—Proceedings of the 4th international conference on the practice and theory of automated timetabling (pp. 58–72).
Müller, T., & Murray, K. (2008). Comprehensive approach to student sectioning. In E. Burke & M. Gendreau (Eds.), 7th international conference on the practice and theory of automated timetabling. Montréal: Université de Montréal.
Müller, T., Barták, R., & Rudová, H. (2004). Conflict-based statistics. In J. Gottlieb, D. Landa-Silva, N. Musliu, & E. Soubeiga (Eds.), EU/ME workshop on design and evaluation of advanced hybrid meta-heuristics. University of Nottingham.
Müller, T., Barták, R., & Rudová, H. (2005). Minimal perturbation problem in course timetabling. In E. Burke & M. Trick (Eds.), LNCS : Vol. 3616. Practice and theory of automated timetabling V (pp. 126–146). Berlin: Springer.
Murray, K., Müller, T., & Rudová, H. (2007). Modeling and solution of a complex university course timetabling problem. In E. Burke & H. Rudová (Eds.), LNCS : Vol. 3867. Practice and theory of automated timetabling VI (pp. 189–209). Berlin: Springer.
Ouelhadj, D., Petrovic, S., & Qu, R. (2009). A survey of dynamic scheduling in manufacturing systems. Journal of Scheduling, 12(4), 417–431.
Petrovic, S., & Burke, E. K. (2004). University timetabling. In J. Y.-T. Leung (Ed.), The handbook of scheduling: algorithms, models, and performance analysis. New York: CRC Press, Chap. 45.
Piechowiak, S., Ma, J., & Mandiau, R. (2005). An open interactive timetabling tool. In E. Burke & M. Trick (Eds.), LNCS : Vol. 3616. Practice and theory of automated timetabling V (pp. 34–50). Berlin: Springer.
Régin, J.-C. (1994). A filtering algorithm for constraints of difference in CSPs. In Proceedings of the eleventh national conference on artificial intelligence and the eighth innovative applications of artificial intelligence conference (pp. 362–367). Cambridge: AAAI Press/MIT Press.
Robert, V., & Hertz, A. (1996). How to decompose constrained course scheduling problems into easier assignment type subproblems. In E. Burke & P. Ross (Eds.), LNCS : Vol. 1153. Practice and theory of automated timetabling (pp. 364–373). Berlin: Springer.
Rossi, F., van Beek, P., & Walsh, T. (Eds.) (2006). Handbook of constraint programming. Amsterdam: Elsevier.
Rudová, H., & Murray, K. (2003). University course timetabling with soft constraints. In E. Burke & P. De Causmaecker (Eds.), LNCS : Vol. 2740. Practice and theory of automated timetabling IV (pp. 310–328). Berlin: Springer.
Sampson, S. E., Freeland, J. R., & Weiss, E. N. (1995). Class scheduling to maximize participant satisfaction. Interfaces, 25(3), 30–41.
Schaerf, A. (1999). A survey of automated timetabling. Articifial Intelligence Review, 13(2), 87–127.
Schiex, T., Fargier, H., & Verfaillie, G. (1995). Valued constraint satisfaction problems: Hard and easy problems. In C. S. Mellish (Ed.), Proceedings of the fourteenth international joint conference on artificial intelligence (pp. 631–639). San Mateo: Morgan Kaufmann.
Schimmelpfeng, K., & Helberg, S. (2007). Application of a real-world university-course timetabling model solved by integer programming. OR Spectrum, 29(4), 783–803.
Schrimpf, G., Schneider, J., Stamm-Wilbrandt, H., & Dueck, G. (2000). Record breaking optimization results using the ruin and recreate principle. Journal of Computational Physics, 159(2), 139–171.
Shapiro, L. G., & Haralick, R. M. (1981). Structural descriptions and inexact matching. IEEE Transactions on Pattern Analysis and Machine Intelligence, 3, 504–519.
van Beek, P. (2006). Backtracking search algorithms. In F. Rossi et al. (Eds.), Handbook of constraint programming (pp. 85–134). Amsterdam: Elsevier.
Verfaillie, G., & Jussien, N. (2005). Constraint solving in uncertain and dynamic environments—a survey. Constraints, 10(3), 253–281.
Voudouris, C., & Tsang, E. (2003). Guided local search. In F. Glover & G. A. Kochenberger (Eds.), Handbook of metaheuristics. Dordrecht: Kluwer Academic, Chap. 7.
White, G. M., & Zhang, J. (1998). Generating complete university timetables by combining tabu search with constraint logic. In E. Burke & M. Carter (Eds.), LNCS : Vol. 1408. Practice and theory of automated timetabling II (pp. 187–198). Berlin: Springer.
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Rudová, H., Müller, T. & Murray, K. Complex university course timetabling. J Sched 14, 187–207 (2011). https://doi.org/10.1007/s10951-010-0171-3
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10951-010-0171-3