Abstract
School timetabling is a complex problem in combinatorial optimization, requiring the best possible assignment of course sections to teachers, timeslots, and classrooms. There exist standard techniques for generating a school timetable, especially in cohort-based programs where students take the same set of required courses, along with several electives. However, in small interdisciplinary institutions where there are only one or two sections of each course, and there is much diversity in course preferences among individual students, it is very difficult to create an optimal timetable that enables each student to take their desired set of courses while satisfying all of the required constraints.
In this paper, we present a two-part school timetabling algorithm that was applied to generate the optimal Master Timetable for a Canadian all-girls high school, enrolling students in 100% of their core courses and 94% of their most desired electives. We conclude the paper by explaining how this algorithm, combining graph coloring with integer linear programming, can benefit other institutions that need to consider student course preferences in their timetabling.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Brélaz, D.: New methods to color the vertices of a graph. Commun. ACM 22(4), 251–6 (1979)
Burke, E.K., Marec̆ek, J., Parkes, A., Rudová, H.: A supernodal formulation of vertex colouring with applications in course timetabling. Ann. Oper. Res. 179(1), 105–130 (2010). https://doi.org/10.1007/s10479-010-0716-z
Cambazard, H., Hébrard, E., O’Sullivan, B., Papadopoulos, A.: Local search and constraint programming for the post enrolment-based course timetabling problem. Ann. Oper. Res. 194(1), 111–135 (2012). https://doi.org/10.1007/s10479-010-0737-7
Carter, M.W.: A comprehensive course timetabling and student scheduling system at the University of Waterloo. In: Burke, E., Erben, W. (eds.) PATAT 2000. LNCS, vol. 2079, pp. 64–82. Springer, Heidelberg (2001). https://doi.org/10.1007/3-540-44629-X_5
Chiarandini, M., Fawcett, C., Hoos, H.H.: A modular multiphase heuristic solver for post enrolment course timetabling. In: PATAT (2008)
Demirović, E., Stuckey, P.J.: Constraint programming for high school timetabling: a scheduling-based model with hot starts. In: van Hoeve, W.-J. (ed.) CPAIOR 2018. LNCS, vol. 10848, pp. 135–152. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-93031-2_10
Even, A.S.S., Itai, A., Shamir, A.: On the complexity of timetable and multicommodity flow problems. SIAM J. Comput. 5(4), 691–703 (1976)
Fonseca, G.H., Santos, H.G., Carrano, E.G., Stidsen, T.J.: Modelling and solving university course timetabling problems through XHSTT. In: PATAT, vol. 16, pp. 127–138 (2016)
Google OR-Tools: Fast and portable software for combinatorial optimization. https://developers.google.com/optimization. Accessed 17 Feb 2020
Gotlieb, C.C.: The construction of class-teacher timetables. In: IFIP Congress, Amsterdam, vol. 62, pp. 73–77 (1963)
GrinPy: A NetworkX extension for calculating graph invariants. https://pypi.org/project/grinpy/. Accessed 17 Feb 2020
Hébrard, E., Katsirelos, G.: A hybrid approach for exact coloring of massive graphs. In: Rousseau, L.-M., Stergiou, K. (eds.) CPAIOR 2019. LNCS, vol. 11494, pp. 374–390. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-19212-9_25
Karp, R.M.: Reducibility among combinatorial problems. In: Miller, R.E., Thatcher, J.W., Bohlinger, J.D. (eds.) Complexity of Computer Computations. IRSS, pp. 85–103. Springer, Boston (1972). https://doi.org/10.1007/978-1-4684-2001-2_9
Kristiansen, S., Sørensen, M., Stidsen, T.R.: Integer programming for the generalized high school timetabling problem. J. Sched. 18(4), 377–392 (2014). https://doi.org/10.1007/s10951-014-0405-x
Kristiansen, S., Stidsen, T.R.: Elective course student sectioning at Danish high schools. Ann. Oper. Res. 239(1), 99–117 (2014). https://doi.org/10.1007/s10479-014-1593-7
Lach, G., Lübbecke, M.E.: Optimal university course timetables and the partial transversal polytope. In: McGeoch, C.C. (ed.) WEA 2008. LNCS, vol. 5038, pp. 235–248. Springer, Heidelberg (2008). https://doi.org/10.1007/978-3-540-68552-4_18
Lewis, R., Paechter, R., McCollum, B.: Post enrolment based course timetabling: a description of the problem model used for track two of the second international timetabling competition (2007)
Liu, Y., Zhang, D., Leung, S.C.: A simulated annealing algorithm with a new neighborhood structure for the timetabling problem. In: Proceedings of the First ACM/SIGEVO Summit on Genetic and Evolutionary Computation, pp. 381–386 (2009)
Méndez-DÃaz, I., Zabala, P., Miranda-Bront, J.J.: An ILP based heuristic for a generalization of the post-enrollment course timetabling problem. Comput. Oper. Res. 76, 195–207 (2016)
Minh, K.N.T.T., Thanh, N.D.T., Trang, K.T., Hue, N.T.T.: Using Tabu search for solving a high school timetabling problem. In: Nguyen, N.T., Katarzyniak, R., Chen, S.M. (eds.) Advances in Intelligent Information and Database Systems. SCI, vol. 283, pp. 305–313. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-12090-9_26
NetworkX: Software for complex networks. https://networkx.github.io/. Accessed 17 Feb 2020
Nothegger, C., Mayer, A., Chwatal, A., Raidl, G.R.: Solving the post enrolment course timetabling problem by ant colony optimization. Ann. Oper. Res. 194(1), 325–339 (2012). https://doi.org/10.1007/s10479-012-1078-5
Pillay, N.: A survey of school timetabling research. Ann. Oper. Res. 218(1), 261–293 (2014). https://doi.org/10.1007/s10479-013-1321-8
Post, G., et al.: An XML format for benchmarks in high school timetabling. Ann. Oper. Res. 194(1), 385–397 (2012). https://doi.org/10.1007/s10479-010-0699-9
Post, G., et al.: XHSTT: an XML archive for high school timetabling problems in different countries. Ann. Oper. Res. 218(1), 295–301 (2011). https://doi.org/10.1007/s10479-011-1012-2
Raghavjee, R., Pillay, N.: An application of genetic algorithms to the school timetabling problem. In: Proceedings of the 2008 Annual Research Conference of the South African Institute of Computer Scientists and Information Technologists on IT Research in Developing Countries: Riding the Wave of Technology, pp. 193–199 (2008)
Sørensen, M., Dahms, F.H.W.: A two-stage decomposition of high school timetabling applied to cases in Denmark. Comput. Oper. Res. 1(43), 36–49 (2014)
St. Margaret’s Boarding School Viewbook. https://www.stmarg.ca/wp-content/uploads/SMS-Boarding-Viewbook.pdf. Accessed 17 Feb 2020
Van Den Broek, J., Hurkens, C., Woeginger, G.: Timetabling problems at the TU Eindhoven. Eur. J. Oper. Res. 196(3), 877–885 (2009)
Acknowledgments
The authors thank the reviewers for their insightful comments that significantly improved the final version of this paper. We are grateful to Darlene DeMerchant and Megan Hedderick at St. Margaret’s School for making this collaboration possible. Finally, we acknowledge that the student author’s research was sponsored by a Student Project Grant awarded by the Research and Scholarly Works Committee at Quest University Canada.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2020 Springer Nature Switzerland AG
About this paper
Cite this paper
Hoshino, R., Fabris, I. (2020). Optimizing Student Course Preferences in School Timetabling. In: Hebrard, E., Musliu, N. (eds) Integration of Constraint Programming, Artificial Intelligence, and Operations Research. CPAIOR 2020. Lecture Notes in Computer Science(), vol 12296. Springer, Cham. https://doi.org/10.1007/978-3-030-58942-4_19
Download citation
DOI: https://doi.org/10.1007/978-3-030-58942-4_19
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-58941-7
Online ISBN: 978-3-030-58942-4
eBook Packages: Computer ScienceComputer Science (R0)