Soft Computing

, Volume 21, Issue 17, pp 4873–4882 | Cite as

Optimizing satisfaction in a multi-courses allocation problem combined with a timetabling problem



The resource allocation problem and the timetabling problem are traditional kinds of NP-hard problems. Both problems can be found in universities where students can select courses they would like to attend before or after the timetabling is done. When demand exceeds capacity, the universities may allocate the available seats independently from the timetabling, but students may have then to decide which courses they are going to attend because of clashes in their timetable. To avoid this situation, some universities prepare their timetable considering students selection. In addition to that, students may submit preferences over courses, and the school administration has to assign seats and do the timetable considering both preferences and clashes. In this paper, both problems, seats allocation and timetabling, have been modeled separately and combined as constraint satisfaction optimization problems (CSOP). Two algorithms have been designed and implemented to find a solution to both problems simultaneously maximizing the satisfaction of students using a CSOP solver and an Ant colony optimization algorithm for the timetabling problem. The results of both algorithms are then compared. The allocation and timetabling procedures are based on preferences for courses defined by students, and on the administration’s constraints at Ecole Hôtelière de Lausanne. Three real data sets have been used to carry out a complete experimental analysis. High-quality solutions are obtained in a few minutes with both approaches; those solutions are currently used at Ecole Hôtelière de Lausanne.


Ant colony optimization Constraint satisfaction optimization problem Resource allocation Timetabling 



This work has been supported by following research grants: Comunidad Autonoma de Madrid, under CIBERDINE S2013/ICE-3095 project, and EphemeCH (TIN2014-56494-C4-4-P) project, under Spanish Ministry of Economy and Competitivity, both supported by the European Regional Development Fund FEDER.

Compliance with ethical standards

Conflict of interest

The authors declare that they have no conflict of interest.

Ethical approval

This article does not contain any studies with human participants performed by any of the authors.


  1. Agustín-Blas LE, Salcedo-Sanz S, Ortíz-García EG, Portilla-Figueras A, Pérez-Bellido ÁM (2009) A hybrid grouping genetic algorithm for assigning students to preferred laboratory groups. Expert Syst Appl 36(3):7234–7241. doi: 10.1016/j.eswa.2008.09.020 CrossRefGoogle Scholar
  2. Babaei H, Karimpour J, Hadidi A (2015) A survey of approaches for university course timetabling problem. Comput Ind Eng 86:43–59CrossRefGoogle Scholar
  3. Budish E, Cantillon E (2012) The multi-unit assignment problem: theory and evidence from course allocation at harvard. Am Econ Rev 102(5):2237–2271Google Scholar
  4. Cano JI, Sánchez L, Camacho D, Pulido E, Anguiano E (2009) Allocation of educational resources through happiness maximization. In: Proceedings of the 4th international conference on software and data technologiesGoogle Scholar
  5. Cano JI, Sánchez L, Camacho D, Pulido E, Anguiano E (2009) Using preferences to solve student–class allocation problem. In: Intelligent data engineering and automated learning-IDEAL 2009. Springer, Berlin, pp 626–632Google Scholar
  6. de Werra D (1985) An introduction to timetabling. Eur J Oper Res 19(2):151–162Google Scholar
  7. Di Gaspero L (2015) Integration of metaheuristics and constraint programming. In: Springer handbook of computational intelligence. Springer, Berlin, pp 1225–1237Google Scholar
  8. Di Gaspero L, McCollum B, Schaerf A (2007) The second international timetabling competition (itc-2007): curriculum-based course timetabling (track 3). Tech. rep., Technical Report QUB/IEEE/Tech/ITC2007/CurriculumCTT/v1. 0, Queens University, Belfast, UKGoogle Scholar
  9. Diebold F, Aziz H, Bichler M, Matthes F, Schneider A (2014) Course allocation via stable matching. Bus Inf Syst Eng 6(2):97–110CrossRefGoogle Scholar
  10. Dorigo M, Birattari M (2010) Ant colony optimization. In: Encyclopedia of machine learning. Springer, Berlin, pp 36–39Google Scholar
  11. Kojima F (2013) Efficient resource allocation under multi-unit demand. Games Econ Behav 82:1–14MathSciNetCrossRefMATHGoogle Scholar
  12. Landa-Torres I, Manjarres D, Salcedo-Sanz S, Ser JD, Gil-Lopez S (2013) A multi-objective grouping harmony search algorithm for the optimal distribution of 24-h medical emergency units. Expert Syst Appl 40(6):2343–2349. doi: 10.1016/j.eswa.2012.10.051 CrossRefGoogle Scholar
  13. Lewis R (2008) A survey of metaheuristic-based techniques for university timetabling problems. OR Spectrum 30(1):167–190MathSciNetCrossRefMATHGoogle Scholar
  14. Lewis R, Paechter B, McCollum B et al (2007) Post enrolment based course timetabling: a description of the problem model used for track two of the second international timetabling competition. Cardiff Business SchoolGoogle Scholar
  15. McCollum B, Ireland N (2006) University timetabling: bridging the gap between research and practice. E Burke HR ed: PATAT pp 15–35Google Scholar
  16. Nogareda AM, Camacho D (2014) Integration of ant colony optimization algorithms with gecode. In: Doctoral program proceedings of the 20th international conference on principles and practice of constraint programmingGoogle Scholar
  17. Nogareda AM, Camacho D (2016) Optimizing satisfaction in a multi-courses allocation problem. In: Intelligent distributed computing IX. Springer, Berlin, pp 247–256Google Scholar
  18. Nothegger C, Mayer A, Chwatal A, Raidl GR (2012) Solving the post enrolment course timetabling problem by ant colony optimization. Ann Oper Res 194(1):325–339MathSciNetCrossRefMATHGoogle Scholar
  19. Rossi F, Venable KB, Walsh T (2011) A short introduction to preferences: between artificial intelligence and social choice. Synth Lect Artif Intell Mach Learn 5(4):1–102CrossRefGoogle Scholar
  20. Schulte C, Tack G, Lagerkvist MZ (2010) Modeling and programming with gecode. Accessed 3 Oct 2016
  21. Socha K, Sampels M, Manfrin M (2003) Ant algorithms for the university course timetabling problem with regard to the state-of-the-art. In: Applications of evolutionary computing. Springer, Berlin, pp 334–345Google Scholar
  22. Solnon C (2010) Ant colony optimization and constraint programming. Wiley Online LibraryGoogle Scholar
  23. Solnon C (2002) Ants can solve constraint satisfaction problems. IEEE Trans Evolut Comput 6(4):347–357CrossRefGoogle Scholar
  24. Sönmez T, Ünver MU (2010) Course bidding at business schools*. Int Econ Rev 51(1):99–123MathSciNetCrossRefGoogle Scholar
  25. Stützle T, Hoos HH (2000) Max-min ant system. Future Gener Comput Syst 16(8):889–914CrossRefMATHGoogle Scholar
  26. Tassopoulos IX, Beligiannis GN (2012) Using particle swarm optimization to solve effectively the school timetabling problem. Soft Comput 16(7):1229–1252CrossRefGoogle Scholar
  27. Tsang E (2014) Foundations of constraint satisfaction: the classic text. BoD–Books on DemandGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2016

Authors and Affiliations

  1. 1.Ecole Hôtelière de Lausanne, HES-SOUniversity of Applied Sciences Western SwitzerlandLausanneSwitzerland
  2. 2.Escuela Politécnica SuperiorUniversidad Autonónoma de MadridMadridSpain

Personalised recommendations