SAT-Based Approaches for the General High School Timetabling Problem

High School Timetabling (HSTT) is a well known and widespread problem. The problem consists of coordinating resources (e.g. teachers, rooms), times, and events (e.g. lectures) with respect to various constraints. Unfortunately, HSTT is hard to solve and just finding a feasible solution for simple variants of HSTT have been proven to be NP-complete. In this work, we consider the general HSTT problem, abbreviated as XHSTT. Despite significant research efforts for XHSTT and other timetabling problems, no silver bullet algorithm has been found so far. Many problems have yet to be efficiently and/or optimally solved. The main goal of this thesis is to explore the relation between propositional logic and high school timetabling, as well as related approaches. We model the complex formalism of XHSTT using Boolean variables and basic logical connectives only. We evaluated different cardinality constraint encodings, solvers, and important special cases in order to significantly simplify the modeling in practice. We note that resource assignment constraints have been considered only for special cases, rather than in general. In addition, we investigated a maxSAT-based satisfiability modulo theories (SMT) approach. Another model we studied in this work is based on bitvectors. By using a series of bitvector operations (such as AND, OR, and XOR) on the set of event bitvectors, we were able to model all constraints, with the exception of resource assignment constraints. The bitvector models serves as an efficient data structure for local search algorithms such as hill climbing and simulated annealing. To integrate maxSAT into a hybrid algorithm, we combined local search with a large neighborhood search algorithm that exploits maxSAT. Furthermore, to the best of our knowledge, it is the first time maxSAT is used within a large neighborhood search scheme. We carried out thorough experimentation on important benchmark instances that can be found in the repository of the third international timetabling competition (ITC 2011) and compared with the state-of-the-art algorithms for XHSTT. Detailed experiments were performed in order to determine the most appropriate maxSAT solvers and cardinality constraint encodings, evaluate our SMT approach, and compare with integer programming and the ITC 2011 results. Computational results demonstrate that we outperform the integer programming approach on numerous benchmarks. We are able to obtain even better results by combining several maxSAT solvers. When compared to the leading KHE engine for XHSTT, the bitvector modeling approach provided significant improvements ix for local search algorithms such as hill climbing and simulated annealing. Lastly, our large neighborhood search algorithm excelled in situations when limited computational time is allocated, being able to obtain better results than the state-of-the-art solvers and the pure maxSAT approach in many benchmarks.

[1]  Carlos Ansótegui,et al.  Exploiting the Structure of Unsatisfiable Cores in MaxSAT , 2015, IJCAI.

[2]  George H. G. Fonseca,et al.  Variable Neighborhood Search based algorithms for high school timetabling , 2014, Comput. Oper. Res..

[3]  James B. Orlin,et al.  Very Large-Scale Neighborhood Search Techniques in Timetabling Problems , 2006, PATAT.

[4]  Andrea Schaerf,et al.  A Survey of Automated Timetabling , 1999, Artificial Intelligence Review.

[5]  Marcone J. F. Souza,et al.  GOAL solver: a hybrid local search based solver for high school timetabling , 2016, Ann. Oper. Res..

[6]  E. Burke,et al.  A Late Acceptance Strategy in Hill-Climbing for Exam Timetabling Problems , 2008 .

[7]  Ender Özcan,et al.  HySST: Hyper-heuristic Search Strategies and Timetabling , 2012 .

[8]  Helena Ramalhinho Dias Lourenço,et al.  Iterated Local Search , 2001, Handbook of Metaheuristics.

[9]  Matias Sørensen,et al.  Hybridizing Integer Programming and Metaheuristics for Solving High School Timetabling , 2014 .

[10]  Peter J. Stuckey,et al.  A Bounded Path Propagator on Directed Graphs , 2016, CP.

[11]  Vasco M. Manquinho,et al.  Incremental Cardinality Constraints for MaxSAT , 2014, CP.

[12]  Vittorio Maniezzo,et al.  Matheuristics: Hybridizing Metaheuristics and Mathematical Programming , 2009 .

[13]  Armin Haken,et al.  Counting bottlenecks to show monotone P/spl ne/NP , 1995, Proceedings of IEEE 36th Annual Foundations of Computer Science.

[14]  Ender Özcan,et al.  Solving high school timetabling problems worldwide using selection hyper-heuristics , 2015, Expert Syst. Appl..

[15]  Thomas R. Stidsen,et al.  Integer programming for the generalized high school timetabling problem , 2015, J. Sched..

[16]  Jeffrey H. Kingston Hierarchical Timetable Construction , 2006, PATAT.

[17]  Nysret Musliu,et al.  Modeling high school timetabling with bitvectors , 2016, Annals of Operations Research.

[18]  Vasco M. Manquinho,et al.  Open-WBO: A Modular MaxSAT Solver, , 2014, SAT.

[19]  Toby Walsh,et al.  Handbook of Satisfiability: Volume 185 Frontiers in Artificial Intelligence and Applications , 2009 .

[20]  Scott Kirkpatrick,et al.  Optimization by simulated annealing: Quantitative studies , 1984 .

[21]  N. Musliu,et al.  Modeling High School Timetabling as Partial Weighted maxSAT , 2014 .

[22]  Nysret Musliu,et al.  XHSTT: an XML archive for high school timetabling problems in different countries , 2014, Ann. Oper. Res..

[23]  Niklas Sörensson,et al.  Translating Pseudo-Boolean Constraints into SAT , 2006, J. Satisf. Boolean Model. Comput..

[24]  Pierre Hansen,et al.  Variable Neighborhood Search , 2018, Handbook of Heuristics.

[25]  Eduardo G. Carrano,et al.  Late acceptance hill-climbing for high school timetabling , 2016, J. Sched..

[26]  Ed Keedwell,et al.  A Hidden Markov Model Approach to the Problem of Heuristic Selection in Hyper-Heuristics with a Case Study in High School Timetabling Problems , 2016, Evolutionary Computation.

[27]  Matias Sørensen,et al.  A Two-Stage Decomposition of High School Timetabling applied to cases in Denmark , 2014, Comput. Oper. Res..

[28]  Jeffrey H. Kingston Timetable construction: the algorithms and complexity perspective , 2012, Annals of Operations Research.

[29]  Olivier Bailleux,et al.  Efficient CNF Encoding of Boolean Cardinality Constraints , 2003, CP.

[30]  Alon Itai,et al.  On the complexity of time table and multi-commodity flow problems , 1975, 16th Annual Symposium on Foundations of Computer Science (sfcs 1975).

[31]  Eduardo G. Carrano,et al.  Integrating matheuristics and metaheuristics for timetabling , 2016, Comput. Oper. Res..

[32]  Simon Kristiansen,et al.  International Timetabling Competition 2011: An Adaptive Large Neighborhood Search algorithm , 2012 .

[33]  Jeffrey H. Kingston,et al.  An XML format for benchmarks in High School Timetabling , 2010, Ann. Oper. Res..

[34]  Nelishia Pillay,et al.  A survey of school timetabling research , 2014, Ann. Oper. Res..

[35]  Jeffrey H. Kingston The KHE High School Timetabling Engine , 2010 .

[36]  Barry McCollum,et al.  The Third International Timetabling Competition , 2012, Ann. Oper. Res..

[37]  Luciana S. Buriol,et al.  A fix-and-optimize heuristic for the high school timetabling problem , 2014, Comput. Oper. Res..

[38]  Robert Nieuwenhuis,et al.  Curriculum-based course timetabling with SAT and MaxSAT , 2012, Ann. Oper. Res..

[39]  Nikolaj Bjørner,et al.  Z3: An Efficient SMT Solver , 2008, TACAS.

[40]  Paul Shaw,et al.  Using Constraint Programming and Local Search Methods to Solve Vehicle Routing Problems , 1998, CP.

[41]  Marcone J. F. Souza,et al.  A SA-VNS approach for the High School Timetabling Problem , 2012, Electron. Notes Discret. Math..

[42]  Nysret Musliu,et al.  MaxSAT-based large neighborhood search for high school timetabling , 2017, Comput. Oper. Res..

[43]  Inês Lynce,et al.  Conflict-Driven Clause Learning SAT Solvers , 2009, Handbook of Satisfiability.

[44]  Carsten Sinz,et al.  Towards an Optimal CNF Encoding of Boolean Cardinality Constraints , 2005, CP.