Abstract
An important property of strategies used to solve goals in functional logic programming (FLP) languages is the complete exploration of the solution space. Integrating constraints into FLP proved to be useful in many cases, as the resulting constraint functional logic programming (CFLP) offers more facilities and more efficient operational semantics. CFLP can be achieved by means of conditional rewrite systems with a narrowing-based operational semantics. A common idea to improve the efficiency of such operational semantics is to use specific algorithms from operations research as constraint solvers. If the algorithm does not return a complete set of solutions, the property of completeness might be lost. We present a real world timetabling problem illustrating this approach. We propose an algorithm, obtained as an integration of three known optimization algorithms for the linear assignment problem (LAP), enumerating solutions to the LAP in order of increasing weight, such that resolution of goals is complete again. We show, how the narrowing process can be tailored to use this algorithm and provide an efficient way to solve the timetable generation problem.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Abdennadher, S., Schlenker, H.: Nurse scheduling using constraint logic programming. In: McKay, B., Yao, X., Newton, C.S., Kim, J.-H., Furuhashi, T. (eds.) Proceedings of the Sixteenth National Conference on Artificial Intelligence and the Eleventh Innovative Applications of Artificial Intelligence Conference, IAAI 1999, Orlando, Florida, July 1999, pp. 838–843. AAAI Press/MIT Press (1999)
Aickelin, U., Dowsland, K.A.: An indirect genetic algorithm for a nurse scheduling problem. Computers and Operations Research 31, 761–778 (2004)
Antoy, S., Echahed, R., Hanus, M.: A needed narrowing strategy. Journal of the ACM 47(4), 776–822 (2000)
Brauner, N., Echahed, R., Finke, G., Gregor, H., Prost, F.: A complete assignment algorithm and its application in constraint declarative languages. Technical Report 111, Cahier du Laboratoire Leibniz (September 2004), http://www-leibniz.imag.fr/NEWLEIBNIZ/LesCahiers/
Brauner, N., Echahed, R., Finke, G., Prost, F., Serwe, W.: Intégration des méthodes de réécriture et de recherche opérationnelle pour la modélisation et la résolution de contraintes: application à la planification de personnel médical. In: GISEH 2003, Lyon (January 2003)
Burke, E.K., Causmaecker, P.D., Berghe, G.V.: A hybrid tabu search algorithm for the nurse rostering problem. In: McKay, B., Yao, X., Newton, C.S., Kim, J.-H., Furuhashi, T. (eds.) SEAL 1998. LNCS (LNAI), vol. 1585, pp. 93–105. Springer, Heidelberg (1999)
Caprara, A., Focacci, F., Lamma, E., Mello, P., Milano, M., Toth, P., Vigo, D.: Integrating constraint logic programming and operations research techniques for the crew rostering problem. Software Practice and Experience 28, 49–76 (1998)
Chegireddy, C.R., Hamacher, H.W.: Algorithms for finding k-best perfect matchings. Discrete Applied Mathematics 18, 155–165 (1987)
Echahed, R., Serwe, W.: Combining mobile processes and declarative programming. In: Palamidessi, C., Moniz Pereira, L., Lloyd, J.W., Dahl, V., Furbach, U., Kerber, M., Lau, K.-K., Sagiv, Y., Stuckey, P.J. (eds.) CL 2000. LNCS (LNAI), vol. 1861, pp. 300–314. Springer, Heidelberg (2000)
Eiter, T., Faber, W., Koch, C., Leone, N., Pfeifer, G.: Dlv – a system for declarative problem solving. In: Baral, C., Truszczynski, M. (eds.) Proceedings of the 8th International Workshop on Non-Monotonic Reasoning (NMR 2000), Breckenridge, Colorado, USA (April 2000)
Faber, W., Leone, N., Pfeifer, G.: Optimizing the computation of heuristics for answer set programming systems. In: Eiter, T., Faber, W., Truszczyński, M. (eds.) LPNMR 2001. LNCS (LNAI), vol. 2173, p. 295. Springer, Heidelberg (2001)
Hanus, M.: The integration of functions into logic programming: From theory to practice. Journal of Logic Programming 19, 20, 583–628 (1994)
Holland, A., O’Sullivan, B.: Efficient vickrey-pricing for grid service providers. In: Joint Annual Workshop of the ERCIM Working Group on Constraints and the CoLogNET area on Constraint and Logic Programming (July 2003)
Jaffar, J., Lassez, J.-L.: Constraint logic programming. In: Proc. Fourteenth Annual ACM Symp. on Principles of Programming Languages, POPL 1987, pp. 111–119 (1987)
Kragelund, L., Mayoh, B.: Nurse scheduling generalised (1999), citeseer.nj.nec.com/kragelund99nurse.html
Kuhn, H.W.: The hungarian method for the assignment problem. Naval Research Logistics Quarterly 2, 83–97 (1955)
Lawler, E.L.: A procedure for computing the k-best solutions to discrete optimization problems and its application to the shortest path problem. Management Science 7(18), 401–405 (1972)
Legierski, W.: Search strategy for constraint-based class–teacher timetabling. In: Burke, E.K., De Causmaecker, P. (eds.) PATAT 2002. LNCS, vol. 2740, pp. 247–261. Springer, Heidelberg (2003)
López-Fraguas, F.-J.: A general scheme for constraint functional logic programming. In: Kirchner, H., Levi, G. (eds.) ALP 1992. LNCS, vol. 632, pp. 213–227. Springer, Heidelberg (1992)
Meisels, A., Gudes, E., Solotorevsky, G.: Employee timetabling, constraint networks and knowledge-based rules: A mixed approach. In: Burke, E.K., Ross, P. (eds.) PATAT 1995. LNCS, vol. 1153, pp. 93–105. Springer, Heidelberg (1996)
Moyaux, T., Chaib-draa, B., D’Amours, S.: Satisfaction distribuée de constraints et son application à la génération d’un emploi du temps d’employés. In: Actes du 5e Congrès International de Génie Industriel, Québec, QC, Canada, Octobre 26-29 (2003)
Murty, K.G.: An algorithm for ranking all the assignments in order of increasing cost. Operations Research 16, 682–687 (1968)
Uno, T.: Algorithms for enumerating all perfect, maximum and maximal matchings in bipartite graphs. In: Leong, H.-V., Jain, S., Imai, H. (eds.) ISAAC 1997. LNCS, vol. 1350, pp. 92–101. Springer, Heidelberg (1997)
White, C.A., White, G.M.: Scheduling doctors for clinical training unit rounds using tabu optimization. In: Burke, E.K., De Causmaecker, P. (eds.) PATAT 2002. LNCS, vol. 2740, pp. 120–128. Springer, Heidelberg (2003)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2005 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Brauner, N., Echahed, R., Finke, G., Gregor, H., Prost, F. (2005). Specializing Narrowing for Timetable Generation: A Case Study. In: Hermenegildo, M.V., Cabeza, D. (eds) Practical Aspects of Declarative Languages. PADL 2005. Lecture Notes in Computer Science, vol 3350. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-30557-6_4
Download citation
DOI: https://doi.org/10.1007/978-3-540-30557-6_4
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-24362-5
Online ISBN: 978-3-540-30557-6
eBook Packages: Computer ScienceComputer Science (R0)