Abstract
This paper describes our work on applying novel techniques based on propositional satisfiability (SAT) solvers and optimizers to the Curriculum-based Course Timetabling problem.
Out of 32 standard benchmark instances derived from the Second International Timetabling Competition held in 2007, our techniques yield the best known solutions for 21 of them (19 of them being optimal), improving the previously best known solutions for 9.
In addition, we obtain 18 new lower bounds for this benchmark set by applying a new full (Weighted) Partial MaxSAT approach of the Curriculum-based Course Timetabling problem.
Similar content being viewed by others
Notes
Note that, by including here only the rooms with sufficient capacity, the Room Capacity constraint would get subsumed. Here we have not done this because later on the constraint will become soft.
References
Aloul, F. A., Ramani, A., Markov, I. L., & Sakallah, K. A. (2002). Generic ILP versus specialized 0-1 ILP: an update. In L. T. Pileggi & A. Kuehlmann (Eds.), ICCAD (pp. 450–457). New York: ACM.
Alsinet, T., Manyà, F., & Planes, J. (2008). An efficient solver for weighted max-sat. Journal of Global Optimization, 41(1), 61–73.
Ansótegui, C., Bonet, M. L., & Levy, J. (2009). Solving (weighted) partial MaxSAT through satisfiability testing. In Proceedings of the 12th international conference on theory and applications of satisfiability testing, SAT 2009, Swansea, UK, June 30–July 3, 2009 (pp. 427–440).
Asín, R., & Nieuwenhuis, R. (2010). Curriculum-based course timetabling with sat and maxsat. In B. McCollum & G. W. E. Burke (Eds.), Proceedings of the 8th international conference on practice and theory of automated timetabling (PATAT 2010), The University of Belfast, Belfast, Ireland (pp. 42–56).
Asín, R., Nieuwenhuis, R., Oliveras, A., & Rodríguez-Carbonell, E. (2009). Cardinality networks and their applications. In Proceedings of the 12th international conference on theory and applications of satisfiability testing, SAT 2009, Swansea, UK, June 30–July 3, 2009 (pp. 167–180).
Bailleux, O., & Boufkhad, Y. (2003). Efficient CNF encoding of boolean cardinality constraints. In F. Rossi (Ed.), Lecture notes in computer science: Vol. 2833. CP (pp. 108–122). Berlin: Springer.
Biere, A. (2008). PicoSAT essentials. Journal on Satisfiability, Boolean Modeling and Computation 4(2–4), 75–97.
Bryant, R. E. (1986). Graph-based algorithms for boolean function manipulation. IEEE Transactions on Computers, 35(8), 677–691.
Cadoli, M., & Schaerf, A. (2005). Compiling problem specifications into SAT. Artificial Intelligence, 162(1–2), 89–120.
Chin-A-Fat, K. (2004). School timetabling using satisfiability solvers. Master’s thesis, Technical University Delft, The Netherlands.
Davis, M., & Putnam, H. (1960). A computing procedure for quantification theory. Journal of the ACM, 7, 201–215.
Davis, M., Logemann, G., & Loveland, D. (1962). A machine program for theorem-proving. Communications of the ACM, 5(7), 394–397.
Di Gaspero, L., McCollum, B., & Schaerf, A. (2007). The second international timetabling competition (ITC-2007): curriculum-based course timetabling (track 3). Tech. rep., University of Udine.
Een, N., & Sorensson, N. (2003). An extensible sat-solver. In Proceedings of the sixth international conference on theory and applications of satisfiability testing (SAT) (pp. 501–518).
Fu, Z., & Malik, S. (2006). On solving the partial max-sat problem. In Lecture notes in computer science. Theory and applications of satisfiability testing—SAT 2006, Proceedings of 9th international conference, Seattle, WA, USA, August 12–15, 2006 (pp. 252–265). Berlin: Springer.
Goldberg, E., & Novikov, Y. (2002). BerkMin: a fast and robust SAT-solver. In Design, automation, and test in Europe (DATE ’02) (pp. 142–149).
Haken, A. (1985). The intractability of resolution. Theoretical Computer Science, 39, 297–308.
Hartog, J. (2007). Timetabling on Dutch high schools: satisfiability versus GP-untis. Master’s thesis, Technical University Delft, The Netherlands.
Heras, F., Larrosa, J., & Oliveras, A. (2008). Minimaxsat: an efficient weighted max-sat solver. The Journal of Artificial Intelligence Research, 31, 1–32.
Hertel, A., Hertel, P., & Urquhart, A. (2007). Formalizing dangerous SAT encodings. In J. Marques-Silva & K. A. Sakallah (Eds.), Lecture notes in computer science: Vol. 4501. SAT (pp. 159–172). Berlin: Springer.
Kostuch, P. (2004). The university course timetabling problem with a three-phase approach. In E. K. Burke & M. A. Trick (Eds.), Lecture notes in computer science: Vol. 3616. PATAT (pp. 109–125). Berlin: Springer.
Larrosa, J., Nieuwenhuis, R., Oliveras, A., & Rodríguez-Carbonell, E. (2011). A framework for certified boolean branch-and-bound optimization. Journal of Automated Reasoning, 46(1), 81–102.
Lin, H., Su, K., & Li, C. M. (2008). Within-problem learning for efficient lower bound computation in max-SAT solving. In D. Fox & C. P. Gomes (Eds.), Proceedings of the twenty-third AAAI conference on artificial intelligence, AAAI 2008, Chicago, Illinois, USA, July 13–17, 2008 (pp. 351–356). Menlo Park: AAAI Press.
Lü, Z., & Hao, J. K. (2010). Adaptive tabu search for course timetabling. European Journal of Operational Research, 200(1), 235–244.
Manquinho, V. M., Silva, J. P. M., & Planes, J. (2009). Algorithms for weighted boolean optimization. In Proceedings of the 12th international conference on theory and applications of satisfiability testing, SAT 2009, Swansea, UK, June 30–July 3, 2009 (pp. 495–508).
Marić, F. (2008). Timetabling based on sat encoding: a case study. Faculty of Mathematics, University of Belgrade, Serbia.
Marques-Silva, J., & Planes, J. (2008). Algorithms for maximum satisfiability using unsatisfiable cores. In Proceedings of design, automation and test in Europe (DATE 08).
Moskewicz, M. W., Madigan, C. F., Zhao, Y., Zhang, L., & Malik, S. (2001). Chaff: engineering an efficient SAT solver. In Proc. 38th design automation conference (DAC’01).
Müller, T. (2009). Itc2007 solver description: a hybrid approach. Annals of Operations Research, 172, 429–446. http://dx.doi.org/10.1007/s10479-009-0644-y.
Nieuwenhuis, R., Oliveras, A., & Tinelli, C. (2006). Solving SAT and SAT modulo theories: from an abstract Davis-Putnam-Logemann-Loveland procedure to DPLL(T). Journal of the ACM, 53(6), 937–977.
Pipatsrisawat, K., Palyan, A., Chavira, M., Choi, A., & Darwiche, A. (2008). Solving weighted max-SAT problems in a reduced search space: a performance analysis. Journal of Substance Abuse Treatment, 4(2–4), 191–217.
Ryan, L. (2004). Efficient algorithms for clause-learning SAT solvers. Master’s thesis, School of Computing Science, Simon Fraser University.
Zhang, L., & Malik, S. (2003). Validating SAT solvers using an independent resolution-based checker: practical implementations and other applications. In 2003 Design, automation and test in Europe conference (DATE) (pp. 10,880–10,885). Los Alamitos: IEEE Comput. Soc.
Acknowledgements
We want to thank Carlos Ansótegui for his advise and help providing us access to his PM2 and WPM1 solvers.
Partially supported by Spanish Min. of Educ. and Science through the LogicTools-2 project (TIN2007-68093-C02-01).
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Asín Achá, R., Nieuwenhuis, R. Curriculum-based course timetabling with SAT and MaxSAT. Ann Oper Res 218, 71–91 (2014). https://doi.org/10.1007/s10479-012-1081-x
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10479-012-1081-x