Journal of Scheduling

, Volume 14, Issue 2, pp 187–207 | Cite as

Complex university course timetabling

Article

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.

Keywords

University course timetabling Search Constraint satisfaction Soft constraints Dynamic problems Heuristic 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Abdennadher, S., & Marte, M. (2000). University course timetabling using constraint handling rules. Journal of Applied Artificial Intelligence, 14(4), 311–326. CrossRefGoogle Scholar
  2. Aubin, J., & Ferland, J. A. (1989). A large scale timetabling problem. Computers & Operations Research, 16(1), 67–77. CrossRefGoogle Scholar
  3. Avella, P., & Vasil’ev, I. (2005). A computational study of a cutting plane algorithm for university course timetabling. Journal of Scheduling, 8, 497–514. CrossRefGoogle Scholar
  4. 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. Google Scholar
  5. 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. Google Scholar
  6. 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. CrossRefGoogle Scholar
  7. Bessiere, C. (2006). Constraint propagation. In F. Rossi et al. (Eds.), Handbook of constraint programming (pp. 29–83). Amsterdam: Elsevier. CrossRefGoogle Scholar
  8. 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. CrossRefGoogle Scholar
  9. 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. CrossRefGoogle Scholar
  10. Bistarelli, S., Montanari, U., & Rossi, F. (1997). Semiring-based constraint solving and optimization. Journal of the ACM, 44(2), 201–236. CrossRefGoogle Scholar
  11. Brown, K. N., & Miguel, I. (2006). Uncertainty and change. In F. Rossi et al. (Eds.), Handbook of constraint programming (pp. 731–760). Amsterdam: Elsevier. CrossRefGoogle Scholar
  12. 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. CrossRefGoogle Scholar
  13. Burke, E., & Carter M. (Eds.) (1998). LNCS : Vol. 1408. Practice and theory of automated timetabling II. Berlin: Springer. Google Scholar
  14. Burke, E., & De Causmaecker, P. (Eds.) (2003). LNCS : Vol. 2740. Practice and theory of automated timetabling IV. Berlin: Springer. Google Scholar
  15. Burke, E., & Erben, W. (Eds.) (2001). LNCS : Vol. 2079. Practice and theory of automated timetabling III. Berlin: Springer. Google Scholar
  16. Burke, E., & Gendreau, M. (Eds.) (2008). 7th international conference on the practice and theory of automated timetabling. Montréal: Université de Montréal. Google Scholar
  17. Burke, E., & Ross, P. (Eds.) (1996). LNCS : Vol. 1153. Practice and theory of automated timetabling. Berlin: Springer. Google Scholar
  18. Burke, E., & Rudová, H. (Eds.) (2007). LNCS : Vol. 3867. Practice and theory of automated timetabling VI. Berlin: Springer. Google Scholar
  19. Burke, E., & Trick, M. (Eds.) (2005). LNCS : Vol. 3616. Practice and theory of automated timetabling V. Berlin: Springer. Google Scholar
  20. Burke, E. K., & Petrovic, S. (2002). Recent research directions in automated timetabling. European Journal of Operational Research, 140, 266–280. CrossRefGoogle Scholar
  21. 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. CrossRefGoogle Scholar
  22. 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. Google Scholar
  23. 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. CrossRefGoogle Scholar
  24. 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. CrossRefGoogle Scholar
  25. 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. Google Scholar
  26. 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. CrossRefGoogle Scholar
  27. 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. Google Scholar
  28. 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. CrossRefGoogle Scholar
  29. 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. Google Scholar
  30. Debruyne, R., & Bessière, C. (2001). Domain filtering consistencies. Journal of Artificial Intelligence Research, 14, 205–230. Google Scholar
  31. Dechter, R. (2003). Constraint processing. San Mateo: Morgan Kaufmann. Google Scholar
  32. Dechter, R., & Frost, D. (2002). Backjump-based backtracking for constraint satisfaction problems. Artificial Intelligence, 136(2), 147–188. CrossRefGoogle Scholar
  33. 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. CrossRefGoogle Scholar
  34. 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. Google Scholar
  35. El Sakkout, H., & Wallace, M. (2000). Probe backtrack search for minimal perturbation in dynamic scheduling. Constraints, 4(5), 359–388. CrossRefGoogle Scholar
  36. 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. Google Scholar
  37. 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. CrossRefGoogle Scholar
  38. Freuder, E. C., & Wallace, R. J. (1992). Partial constraint satisfaction. Artificial Intelligence, 58, 21–70. CrossRefGoogle Scholar
  39. Ginsberg, M. L. (1993). Dynamic backtracking. Journal of Artificial Intelligence Research, 1, 23–46. Google Scholar
  40. 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. Google Scholar
  41. 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. Google Scholar
  42. Hertz, A. (1991). Tabu search for large scale timetabling problems. European Journal of Operational Research, 54(1), 39–47. CrossRefGoogle Scholar
  43. Jussien, N., & Lhomme, O. (2002). Local search with constraint propagation and conflict-based heuristics. Artificial Intelligence, 139(1), 21–45. CrossRefGoogle Scholar
  44. 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. CrossRefGoogle Scholar
  45. 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. Google Scholar
  46. Larrosa, J., & Schiex, T. (2004). Solving weighted CSP by maintaining arc consistency. Artificial Intelligence, 159(1–2), 1–26. CrossRefGoogle Scholar
  47. 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. Google Scholar
  48. Lewis, R. (2008b). A survey of metaheuristic-based techniques for university timetabling problems. OR Spectrum, 30(1), 167–190. CrossRefGoogle Scholar
  49. 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. Google Scholar
  50. Mackworth, A. K. (1977). Consistency in networks of relations. Artificial Intelligence, 8(1), 99–118. CrossRefGoogle Scholar
  51. 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. Google Scholar
  52. 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. CrossRefGoogle Scholar
  53. 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. CrossRefGoogle Scholar
  54. 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. CrossRefGoogle Scholar
  55. Müller, T. (2005). Constraint-based timetabling. PhD thesis, Charles University in Prague, Faculty of Mathematics and Physics. Google Scholar
  56. Müller, T. (2009). ITC2007 solver description: A hybrid approach. Annals of Operations Research, 172(1), 429–446. CrossRefGoogle Scholar
  57. 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). Google Scholar
  58. 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. Google Scholar
  59. 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. Google Scholar
  60. 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. CrossRefGoogle Scholar
  61. 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. CrossRefGoogle Scholar
  62. Ouelhadj, D., Petrovic, S., & Qu, R. (2009). A survey of dynamic scheduling in manufacturing systems. Journal of Scheduling, 12(4), 417–431. CrossRefGoogle Scholar
  63. 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. Google Scholar
  64. 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. CrossRefGoogle Scholar
  65. 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. Google Scholar
  66. 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. Google Scholar
  67. Rossi, F., van Beek, P., & Walsh, T. (Eds.) (2006). Handbook of constraint programming. Amsterdam: Elsevier. Google Scholar
  68. 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. CrossRefGoogle Scholar
  69. Sampson, S. E., Freeland, J. R., & Weiss, E. N. (1995). Class scheduling to maximize participant satisfaction. Interfaces, 25(3), 30–41. CrossRefGoogle Scholar
  70. Schaerf, A. (1999). A survey of automated timetabling. Articifial Intelligence Review, 13(2), 87–127. CrossRefGoogle Scholar
  71. 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. Google Scholar
  72. Schimmelpfeng, K., & Helberg, S. (2007). Application of a real-world university-course timetabling model solved by integer programming. OR Spectrum, 29(4), 783–803. CrossRefGoogle Scholar
  73. 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. CrossRefGoogle Scholar
  74. Shapiro, L. G., & Haralick, R. M. (1981). Structural descriptions and inexact matching. IEEE Transactions on Pattern Analysis and Machine Intelligence, 3, 504–519. CrossRefGoogle Scholar
  75. van Beek, P. (2006). Backtracking search algorithms. In F. Rossi et al. (Eds.), Handbook of constraint programming (pp. 85–134). Amsterdam: Elsevier. Google Scholar
  76. Verfaillie, G., & Jussien, N. (2005). Constraint solving in uncertain and dynamic environments—a survey. Constraints, 10(3), 253–281. CrossRefGoogle Scholar
  77. Voudouris, C., & Tsang, E. (2003). Guided local search. In F. Glover & G. A. Kochenberger (Eds.), Handbook of metaheuristics. Dordrecht: Kluwer Academic, Chap. 7. Google Scholar
  78. 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. CrossRefGoogle Scholar

Copyright information

© Springer Science+Business Media, LLC 2010

Authors and Affiliations

  1. 1.Faculty of InformaticsMasaryk UniversityBrnoCzech Republic
  2. 2.Space Management and Academic SchedulingPurdue UniversityWest LafayetteUSA

Personalised recommendations