Abstract
The students of the Industrial Design department at the TU Eindhoven are allowed to design part of their curriculum by selecting courses from a huge course pool. They do this by handing in ordered preference lists with their favorite courses for the forthcoming time period. Based on this information (and on many other constraints), the department then assigns courses to students. Until recently, the assignment was computed by human schedulers who used a quite straightforward greedy approach. In 2005, however, the number of students increased substantially, and as a consequence the greedy approach no longer yielded acceptable results.
This paper discusses the solution of this real-world timetabling problem. We present a complete mathematical formulation of it, and we explain all the constraints resulting from the situation in Eindhoven. We solve the problem using lexicographical optimization with four subproblems. For all four subproblems, an elegant integer linear programming model is given which easily can be put into CPLEX. Finally, we report on our computational experiments and results around the Eindhoven real-world data.
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Ahuja, R.K., Magnanti, T.L., Orlin, J.B.: Network Flows: Theory, Algorithms and Applications. Prentice-Hall, Englewood Cliffs, NJ (1993)
Avella, P., Vasilev, I.: A computational study of a cutting plane algorithm for university course timetabling. Journal of Scheduling 8, 497–514 (2005)
Burke, E.K., Kingston, J., Jackson, K., Weare, R.: Automated university timetabling: the state of the art. The Computer Journal 40, 565–571 (1997)
Burke, E.K., McCollum, B., McMullan, J.P., Qu, R.: Examination timetabling: A new formulation. In: Proceedings of the 6th International Conference on the Practice and Theory of Automated Timetabling, Brno, pp. 373–375 (August 2006)
Burke, E.K., Petrovic, S.: Recent research directions in automated timetabling. European Journal of Operations Research 140, 266–280 (2002)
Busam, V.A.: An algorithm for class scheduling with section preference. Communications of the ACM 10, 567–569 (1967)
Carter, M.W., Laporte, G.: Recent developments in practical examination timetabling. In: Burke, E.K., Ross, P. (eds.) Practice and Theory of Automated Timetabling. LNCS, vol. 1153, pp. 3–21. Springer, Heidelberg (1996)
Carter, M.W., Laporte, G.: Recent developments in practical course timetabling. In: Burke, E.K., Carter, M. (eds.) PATAT 1997. LNCS, vol. 1408, pp. 3–19. Springer, Heidelberg (1998)
Cheng, E., Kruk, S., Lipman, M.: Flow formulations for the student scheduling problem. In: Burke, E.K., De Causmaecker, P. (eds.) PATAT 2002. LNCS, vol. 2740, pp. 299–309. Springer, Heidelberg (2003)
Daskalaki, S., Birbas, T.: Efficient solutions for a university timetabling problem through integer programming. European Journal of Operations Research 160, 106–120 (2005)
de Werra, D.: An introduction to timetabling. European Journal of Operations Research 19, 151–162 (1985)
Dimopoulou, M., Miliotis, P.: Implementation of a university course and examination timetabling system. European Journal of Operations Research 130, 202–213 (2001)
Even, S., Itai, A., Shamir, A.: On the complexity of timetable and multicommodity flow problems. SIAM Journal of Computing 5, 691–703 (1976)
Feldman, R., Golumbic, M.C.: Constraint satisfiability algorithms for interactive student scheduling. In: IJCAI 1989. Proceedings of the 11th International Joint Conference on Artificial Intelligence, pp. 1010–1016 (1989)
Garey, M.R., Johnson, D.S.: Computers and Intractability – a Guide to NP-Completeness. Freeman, San Francisco (1979)
Laporte, G., Desrochers, S.: The problem of assigning students to course sections in a large engineering school. Computational Operations Research 13, 387–394 (1986)
McCollum, B.: A perspective on bridging the gap in university timetabling. In: Burke, E.K., Rudová, H. (eds.) PATAT 2006. LNCS, vol. 3867, pp. 3–23. Springer, Heidelberg (2007)
Miyaji, I., Ohno, K., Mine, H.: Solution method for partitioning students into groups. European Journal of Operations Research 33, 82–90 (1981)
Petrovic, S., Burke, E.K.: University timetabling. In: Handbook of Scheduling: Algorithms, Models, and Performance Analysis, ch. 45, CRC Press, Boca Raton, FL (2004)
Sabin, G.C.W., Winter, G.K.: The impact of automated timetabling on universities – a case study. Journal of Operations Research Society 37, 689–693 (1986)
Schaerf, A.: A survey of automated timetabling. Artificial Intelligence Review 13, 87–127 (1999)
Schmidt, G., Ströhlein, T.: Timetable construction – an annotated bibliography. The Computer Journal 23, 307–316 (1980)
Tripathy, A.: Computerised decision aid for timetabling – a case analysis. Discrete Applied Mathematics 35, 313–323 (1992)
Zampieri, A., Schaerf, A.: Modelling and solving the Italian examination timetabling problem using tabu search. In: Proceedings of the 6th International Conference on the Practice and Theory of Automated Timetabling, Brno, pp. 487–491 (August 2006)
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 2007 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
van den Broek, J., Hurkens, C., Woeginger, G. (2007). Timetabling Problems at the TU Eindhoven. In: Burke, E.K., Rudová, H. (eds) Practice and Theory of Automated Timetabling VI. PATAT 2006. Lecture Notes in Computer Science, vol 3867. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-77345-0_14
Download citation
DOI: https://doi.org/10.1007/978-3-540-77345-0_14
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-77344-3
Online ISBN: 978-3-540-77345-0
eBook Packages: Computer ScienceComputer Science (R0)
