Abstract
This paper describes the UniCorT tool designed to solve university course timetabling problems specifically tailored for the 2019 International Timetabling Competition (ITC 2019). The proposed approach includes pre-processing, the use of a maximum satisfiability (MaxSAT) solver and a local search procedure. UniCorT is assessed with the benchmark instances from the ITC 2019. The impact of a handful of techniques in the quality of the solution and the execution time is evaluated. We take into account different pre-processing techniques and conjunctive normal form (CNF) encodings, as well as the combination with a local search procedure. The success of our tool is attested by having been ranked among the five finalists of the ITC 2019 competition.
Similar content being viewed by others
Notes
One of these encodings has already been successfully applied to solve the minimal perturbation problem in a university course timetabling setting (Lemos et al. 2020c).
The code is available at https://github.com/itc2019/edon-gashi.
The code is available at https://github.com/itc2019/tomas-muller.
https://www.itc2019.org/validator, accessed in August 2020.
RAPIDXML is available at http://rapidxml.sourceforge.net/, accessed in February 2019.
TT-Open-WBO-Inc won both the Weighted Incomplete tracks at MaxSAT Evaluation 2019. The results are available at https://maxsat-evaluations.github.io/2019/.
We converted all the weights for the same measurement unit. For this reason, we computed the worst possible cost for each instance and used this value to compute a value between 0 and 1.
UniCorT in its best configuration.
Obtained from https://www.itc2019.org/, accessed in August 2020.
References
Ansótegui, C., & Manyà, F. (2004). Mapping problems with finite-domain variables into problems with boolean variables. Proceedings of the Seventh International Conference on Theory and Applications of Satisfiability Testing (SAT),3542, 1–15.
Asín Achá, R. J., & Nieuwenhuis, R. (2014). Curriculum-based course timetabling with SAT and MaxSAT. Annals of Operations Research, 218(1), 71–91.
Atsuta M, Nonobe K, Ibaraki T (2008) ITC-2007 track 2: an approach using a general CSP solver. In: 7th International Conference on the Practice and Theory of Automated Timetabling (PATAT), pp 19–22
Banbara, M., Inoue, K., Kaufmann, B., Okimoto, T., Schaub, T., Soh, T., et al. (2019). \(teaspoo{n:}\) Solving the curriculum-based course timetabling problems with answer set programming. Annals of Operations Research, 275(1), 3–37.
Bayardo, R. J. & Schrag, R. (1997) Using CSP look-back techniques to solve real-world SAT instances. In: Kuipers B, Webber BL (eds) Proceedings of the Fourteenth National Conference on Artificial Intelligence (AAAI) and Ninth Innovative Applications of Artificial Intelligence Conference (IAAI), AAAI Press / The MIT Press, pp 203–208.
Biere, A., Heule, M., & van Maaren, H. (2009). Handbook of Satisfiability. Amsterdam: IOS press.
Bittner PM, Thum T, Schaefer I (2019) SAT encodings of the at-most-k constraint - A case study on configuring university courses. In: Proceedings of the Software Engineering and Formal Methods (SEFM), pp 127–144.
Carter, M. W. (2000) A comprehensive course timetabling and student scheduling system at the University of Waterloo. In: 3rd International Conference on the Practice and Theory of Automated Timetabling (PATAT), pp 64–84.
Davis, M., & Putnam, H. (1960). A computing procedure for quantification theory. J ACM, 7(3), 201–215.
Eén, N., & Sörensson, N. (2006). Translating pseudo-boolean constraints into SAT. Journal on Satisfiability, Boolean Modeling and Computation, 2(1–4), 1–26.
Er-rhaimini K (2020) Forest growth optimization for solving timetabling problems. In: Proceedings of the International Timetabling Competition 2019.
Gashi E, Sylejmani K (2020) Simulated annealing with penalization for university course timetabling. In: Proceedings of the International Timetabling Competition 2019.
Gülcü, A., & Akkan, C. (2020). Robust university course timetabling problem subject to single and multiple disruptions. European Journal of Operational Research, 283(2), 630–646.
Herres, B., & Schmitz, H. (2021). Decomposition of university course timetabling. Annals of Operations Research, 302, 405–423. https://doi.org/10.1007/s10479-019-03382-0
Holm, D.S., Mikkelsen, RØ, Sørensen, M., Stidsen TR (2020b) A mip based approach for international timetabling competation 2019. In: Proceedings of the International Timetabling Competition 2019.
Holm, D., Mikkelsen, R., Sørensen, M., Stidsen, T. (2020a) A mip formulation of the international timetabling competition 2019 problem. Technical Report.
Hoshino, R., Fabris, I. (2020) Optimizing student course preferences in school timetabling. In: Proceedings of 17th International Conference on Integration of Constraint Programming, Artificial Intelligence, and Operations Research (CPAIOR), Springer, pp 283–299.
Joshi, S., Kumar, P., Martins, R., & Rao, S. (2018). Approximation strategies for incomplete MaxSAT. In J. Hooker (Eds.), Principles and practice of constraint programming. CP 2018. Lecture Notes in Computer Science, Vol. 11008. Cham: Springer. https://doi.org/10.1007/978-3-319-98334-9_15
Lemos, A., Melo, F. S., Monteiro, P. T., & Lynce, I. (2019). Room usage optimization in timetabling: A case study at Universidade de Lisboa. Operations Research Perspectives,6, 100092.
Lemos, A., Monteiro, P.T., Lynce I (2020c) Minimal perturbation in university timetabling with maximum satisfiability. In: Proceedings of 17th International Conference on Integration of Constraint Programming, Artificial Intelligence, and Operations Research (CPAIOR), Springer, pp 317–333.
Lemos, A., Monteiro, P. T., Lynce, I. (2020b) Itc 2019: University course timetabling with maxsat. In: Proceedings of the 13th International Conference on the Practice and Theory of Automated Timetabling (PATAT) Volume 1, pp 105 – 128.
Lemos, A., Monteiro, P. T., & Lynce, I. (2020a). Disruptions in timetables: A case study at Universidade de Lisboa. Journal of Scheduling,. https://doi.org/10.1007/s10951-020-00666-3.
Lindahl, M., Stidsen, T., & Sørensen, M. (2019). Quality recovering of university timetables. European Journal of Operational Research, 276(2), 422–435.
Lovelace, A. L. (2010) On the complexity of scheduling university courses. Master’s thesis, California Polytechnic State University, San Luis Obispo.
Marques-Silva, J., Argelich, J., Graça, A., & Lynce, I. (2011). Boolean lexicographic optimization: algorithms & applications. Annals of Mathematics and Artificial Intelligence, 62(3–4), 317–343.
Martins, R., Manquinho, V. M., Lynce, I. (2014) Open-WBO: A modular MaxSAT solver,. In: Theory and Applications of Satisfiability Testing (SAT) - 17th, pp 438–445.
McCollum, B. (2006) University timetabling: Bridging the gap between research and practice. In: 5th International Conference on the Practice and Theory of Automated Timetabling (PATAT), Springer, pp 15–35.
Müller, T., (2020) Itc 2019: Preliminary results using the unitime solver. In: Proceedings of the 13th International Conference on the Practice and Theory of Automated Timetabling (PATAT) Volume 1.
Müller, T., Rudová, H., Müllerová, Z., (2018) University course timetabling and International Timetabling Competition 2019. In: Burke EK, Di Gaspero L, McCollum B, Musliu N, Özcan E (eds) Proceedings of the 12th International Conference on the Practice and Theory of Automated Timetabling (PATAT-2018), pp 5–31.
Müller, T. (2009). ITC-2007 solver description: A hybrid approach. Annals of Operations Research, 172(1), 429.
Nadel, A., (2019a) Anytime weighted MaxSAT with improved polarity selection and bit-vector optimization. In: Proceedings of the 19th Conference on Formal Methods in Computer Aided Design (FMCAD).
Nadel, A., (2019b) TT-Open-WBO-Inc: Tuning polarity and variable selection for anytime SAT-based optimization. In: Proceedings of the MaxSAT Evaluations.
Phillips, A. E., Walker, C. G., Ehrgott, M., & Ryan, D. M. (2017). Integer programming for minimal perturbation problems in university course timetabling. Annals of Operations Research, 252(2), 283–304.
Rappos, E., Thiémard, E., Robert, S., Hêche, J.F., (2020) International timetabling competition 2019: A mixed integer programming approach for solving university timetabling problems. In: Proceedings of the International Timetabling Competition 2019.
Rudová, H., Müller, T., & Murray, K. S. (2011). Complex university course timetabling. J Sched, 14(2), 187–207.
Schindl, D. (2019). Optimal student sectioning on mandatory courses with various sections numbers. Annals of Operations Research, 275(1), 209–221.
Silva, J. P. M., Sakallah, K. A., (1996) GRASP - a new search algorithm for satisfiability. In: Rutenbar, R. A., Otten RHJM (eds) Proceedings of the International Conference on Computer-Aided Design (ICCAD), IEEE Computer Society / ACM, pp 220–227.
van Laarhoven, P. J. M., & Aarts, E. H. L. (1987). Simulated Annealing: Theory and Applications, Mathematics and Its Applications (Vol. 37). New york: Springer.
Vrielink, R. A. O., Jansen, E. A., Hans, E. W., & van Hillegersberg, J. (2019). Practices in timetabling in higher education institutions: A systematic review. Annals of Operations Research, 275(1), 145–160.
Warners, J. P. (1998). A linear-time transformation of linear inequalities into conjunctive normal form. Information Processing Letters, 68(2), 63–69.
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
This is a substantially extended and revised version of (Lemos et al. 2020b).
The authors would like to thank the reviewers for their helpful comments and suggestions that contributed to an improved manuscript. This work was supported by national funds through Fundação para a Ciência e a Tecnologia (FCT) with references SFRH/BD/143212/2019 (PhD grant), DSAIPA/AI/0033/2019 (project LAIfeBlood), DSAIPA/AI/0044/2018 (project Data2help) and UIDB/50021/2020 (INESC-ID multi-annual funding)
Rights and permissions
About this article
Cite this article
Lemos, A., Monteiro, P.T. & Lynce, I. Introducing UniCorT: an iterative university course timetabling tool with MaxSAT. J Sched 25, 371–390 (2022). https://doi.org/10.1007/s10951-021-00695-6
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10951-021-00695-6