Skip to main content
Log in

Model-based problem solving for university timetable validation and improvement

  • Original Article
  • Published:
Formal Aspects of Computing

Abstract

Constraint satisfaction problems can be expressed very elegantly in state-based formal methods such as B. But can such specifications be directly used for solving real-life problems? In other words, can a formal model be more than a design artefact but also be used at runtime for inference and problem solving? We will try and answer this important question in the present paper with regard to the university timetabling problem. We report on an ongoing project to build a curriculum timetable validation tool where we use a formal model as the basis to validate timetables from a student’s perspective and to support incremental modification of timetables. In this article we describe the problem domain, the formalization in B and our approach to execute the formal model in a production system using ProB.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Achá RA, Nieuwenhuis R (2012) Curriculum-based course timetabling with SAT and MaxSAT. Ann Oper Res 218(1): 71–91

    Article  MathSciNet  MATH  Google Scholar 

  2. Abrial J-R (2005) The B-book. Assigning programs to meanings. Cambridge University Press, Cambridge

    MATH  Google Scholar 

  3. Ben-Ari M (2008) Principles of the spin model checker. Springer, Berlin

    MATH  Google Scholar 

  4. Bendisposto J, Clark J, Dobrikov I, Körner P, Krings S, Ladenberger L, Leuschel M, Plagge D (2013) ProB 2.0 tutorial. In: Proceedings of the 4th Rodin user and developer workshop, TUCS lecture notes. TUCS

  5. Banbara M, Soh T, Tamura N, Inoue K, Schaub T (2013) Answer set programming as a modeling language for course timetabling. Theory Pract Log Program 13(4–5): 783–798

    Article  MathSciNet  MATH  Google Scholar 

  6. Czarnecki K, Helsen S, Eisenecker U (2005) Formalizing cardinality-based feature models and their specialization. Softw Process Improv Pract 10(1): 7–29

    Article  Google Scholar 

  7. Cooper TB, Kingston JH (2005) The complexity of timetable construction problems. In: PATAT, LNCS 1153. Springer, Berlin, pp 281–295

  8. ClearSy. Atelier B, User and Reference Manuals. Aix-en-Provence, France, 2009. http://www.atelierb.eu/

  9. Carlsson M, Ottosson G (1997) An open-ended finite domain constraint solver. In: Glaser HG, Hartel PH, Kuchen H (eds) Proceedings PLILP’97, LNCS 1292. Springer, Berlin, pp. 191–206

  10. Corne D, Ross P, Fang H (1995) Evolving timetables. Pract Handb Genet algorithms Appl 1: 219–276

    Google Scholar 

  11. Dutertre B, Mendonça de Moura L (2006) A fast linear-arithmetic solver for DPLL(T). In: Ball T, Jones RB (eds) Proceedings CAV’06, LNCS 4144. Springer, Berlin, pp 81–94

  12. Deharbe D, Fontaine P, Guyot Y, Voisin L (2012) SMT solvers for Rodin. In: Proceedings ABZ’2012, LNCS 7316. Springer, Berlin, pp 194–207

  13. Di Gaspero L, McCollum B, Schaerf A (2007) The second international timetabling competition (ITC-2007): curriculum-based course timetabling (Track 3). In: Proceedings of the 14th RCRA workshop on experimental evaluation of algorithms for solving problems with combinatorial explosion, Rome

  14. de Moura LM, Bjørner N (2008) Z3: an efficient SMT solver. In: Ramakrishnan CR, Rehof J (eds) TACAS, LNCS 4963. Springer, Berlin, pp 337–340

  15. Deris S, Omatu S, Ohta H (2000) Timetable planning using the constraint-based reasoning. Comput Oper Res 27(9): 819–840

    Article  MATH  Google Scholar 

  16. Farahbod R, Gervasi V, Glässer U (2007) CoreASM: an extensible ASM execution engine. Fundam Inform 77(1–2): 71–103

    MathSciNet  MATH  Google Scholar 

  17. Gotlieb CC (1963) The construction of class-teacher timetables. In: Preprint of the proceedings of the IFIP congress 62/Munich, August 27, pp 22–25

  18. Holzmann GJ (2004) The SPIN model checker—primer and reference manual. Addison-Wesley, Boston

    Google Scholar 

  19. Hansen D, Schneider D, Leuschel M (2016) Using B and ProB for data validation projects. In: Proceedings ABZ 2016, LNCS. Springer, Berlin

  20. Jackson D (2002) Alloy: a lightweight object modelling notation. ACM Trans Softw Eng Methodol 11: 256–290

    Article  Google Scholar 

  21. Jackson D (2012) Software abstractions. Logic, language, and analysis. MIT Press, London

    Google Scholar 

  22. Jaffar J, Maher MJ (1994) Constraint logic programming: a survey. J Log Program 19(−20): 503–581

    Article  MathSciNet  MATH  Google Scholar 

  23. Kang KC, Cohen SG, Hess JA, Novak WE, Peterson AS (1990) Feature-oriented domain analysis (FODA) feasibility study. Technical Report CMU/SEI-90-TR-21, Caregie-Mellon University-Software Engineering Insititue, Pittsburgh

  24. Lewis R (2008) A survey of metaheuristic-based techniques for university timetabling problems. OR Spectr 30(1): 167–190

    Article  MathSciNet  MATH  Google Scholar 

  25. Leuschel M, Falampin J, Fritz F, Plagge D (2011) Automated property verification for large scale B models with ProB. Formal Asp Comput 23(6): 683–709

    Article  MathSciNet  Google Scholar 

  26. Lach G, Lübbecke ME (February 2010) Curriculum based course timetabling: new solutions to Udine benchmark instances. Ann Oper Res 194(1):255–272

  27. Leuschel M, Schneider D (2014) Towards B as a high-level constraint modelling language. In: Yamine AA, Klaus-Dieter S (eds) Abstract state machines, alloy, B, TLA, VDM, and Z, volume 8477 of Lecture Notes in computer science. Springer, Berlin

  28. Métayer C (2010) AnimB 0.1.1. http://wiki.event-b.org/index.php/AnimB

  29. Müller T, Rudová H (2012) Real-life curriculum-based Timetabling. PATAT

  30. Müller T, Rudová H (2014) Real-life curriculum-based timetabling with elective courses and course sections. Ann Oper Res 1–18

  31. Müller T (2005) Constraint-based timetabling. Ph.D. thesis, Charles University in Prague

  32. Post G, Di Gaspero L, Kingston JH, McCollum B (2013) The third international timetabling competition. Ann Oper Res 2013: 1–7

    MATH  Google Scholar 

  33. Plagge D, Leuschel M (2012) Validating B, Z and TLA+ using ProB and Kodkod. In: Dimitra G, Dominique M (eds) Proceedings FM’2012, LNCS 7436. Springer, Berlin, pp 372–386

  34. Rudová H, Murray K (2003) University course timetabling with soft constraints. In: Edmund B, De Causmaecker P (eds) PATAT IV, LNCS 2740. Springer, Berlin, pp 310–328

  35. Schimmelpfeng K, Helber S (2006) Application of a real-world university-course timetabling model solved by integer programming. OR Spect 29(4): 783–803

    Article  MATH  Google Scholar 

  36. Shapiro SC (2011) The jobs puzzle: a challenge for logical expressibility and automated reasoning. In: AAAI spring symposium: logical formalizations of commonsense reasoning

  37. Torlak E, Chang FS, Jackson D (2008) Finding minimal unsatisfiable cores of declarative specifications. In: Cuéllar J, Maibaum TSE, Sere K (eds) Proceedings FM’2008, pp 326–341

  38. Torlak E, Jackson D (2007) Kodkod: a relational model finder. In: Grumberg O, Huth M (eds) Proceedings TACAS’07, LNCS 4424. Springer, Berlin, pp 632–647

  39. Vincent SHY (2006) Declarative configuration applied to course scheduling. Master’s thesis, Massachusetts Institute of Technology, Massachusetts Institute Of Technology

  40. Yu Y, Manolios P, Lamport L (1999) Model checking TLA+ specifications. In: Laurence P, Thomas K (eds) Proceedings CHARME’99, LNCS 1703. Springer, pp 54–66

Download references

Acknowledgments

We would like to thank the planning teams at the faculties of Humanities and Economics at Heinrich-Heine University (in particular Frank Meier) as well as Philip Höfges for bringing this project to our attention and all the work that has gone into it. We also thank the anonymous reviewers for their valuable feedback.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Michael Leuschel.

Additional information

Frank de Boer, Nikolaj Bjorner, and Andrew Butterfield

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Schneider, D., Leuschel, M. & Witt, T. Model-based problem solving for university timetable validation and improvement. Form Asp Comp 30, 545–569 (2018). https://doi.org/10.1007/s00165-018-0461-7

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00165-018-0461-7

Keywords

Navigation