Abstract
Constraint Functional Logic Programming (CFLP) integrates lazy narrowing with constraint solving. It provides a high modeling abstraction, but its solving performance can be penalized by lazy narrowing and solver interface surcharges. As for real-world problems most of the solving time is carried out by solver computations, the system performance can be improved by interfacing state-of-the-art external solvers with proven performance. In this work we depart from the CFLP system \(\mathcal{TOY(FD})\), implemented in SICStus Prolog and supporting Finite Domain (\(\mathcal{FD}\)) constraints by using its underlying Prolog \(\mathcal{FD}\) solver. We present a scheme describing how to interface an external CP(\(\mathcal{FD}\)) solver to \(\mathcal{TOY(FD})\), and easily adaptable to other Prolog CLP or CFLP systems. We prove the scheme to be generic enough by interfacing Gecode and ILOG solvers, and we analyze the new performance achieved.
This work has been partially supported by the Spanish projects TIN2008-06622-C03-01, UCM-BSCH-GR58/08-910502, and S2009TIC-1465.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Curry: a truly integrated functional logic language, http://www-ps.informatik.uni-kiel.de/currywiki
Gecode 3.6.0: generic constraint development environment, http://www.gecode.org
Amdahl, G.M.: Validity of the single processor approach to achieving large scale computing capabilities. In: AFIPS 1967, pp. 483–485. ACM (1967)
Castiñeiras, I., Sáenz-Pérez, F.: Integrating ILOG CP Technology into \(\mathcal{TOY}\). In: Escobar, S. (ed.) WFLP 2009. LNCS, vol. 5979, pp. 27–43. Springer, Heidelberg (2010)
Castiñeiras, I., Sáenz-Pérez, F.: A CFLP Approach for Modeling and Solving a Real Life Employee Timetabling Problem. In: COPLAS 2011, pp. 63–70 (2011)
CSPLib: a problem library for constraints, http://www.csplib.org
García de la Banda, M., Jeffery, D., Marriott, K., Nethercote, N., Stuckey, P.J., Holzbaur, C.: Building Constraint Solvers with HAL. In: Codognet, P. (ed.) ICLP 2001. LNCS, vol. 2237, pp. 90–104. Springer, Heidelberg (2001)
Dechter, R.: Constraint processing. Morgan Kaufmann (2003)
Fernández, A.J., Hortalá-González, T., Sáenz-Pérez, F., del Vado-Vírseda, R.: Constraint Functional Logic Programming over Finite Domains. TPLP 7(5), 537–582 (2007)
Hanus, M.: Multi-paradigm Declarative Languages. In: Dahl, V., Niemelä, I. (eds.) ICLP 2007. LNCS, vol. 4670, pp. 45–75. Springer, Heidelberg (2007)
Hentenryck, P.V.: Constraint Satisfaction in Logic Programming. MIT Press (1989)
IBM ILOG CP 1.6, http://www-947.ibm.com/support/entry/portal/Overview/Software/WebSphere/IBM_ILOG_CP
Jaffar, J., Maher, M.: Constraint logic programming: a survey. The Journal of Logic Programming 19-20, 503–581 (1994)
López-Fraguas, F., Rodríguez-Artalejo, M., Vado-Vírseda, R.: A lazy narrowing calculus for declarative constraint programming. In: PPDP 2004, pp. 43–54. ACM (2004)
Marriot, K., Stuckey, P.J.: Programming with constraints. MIT Press (1998)
Marte, M.: Towards constraint-based school timetabling. Annals OR 155(1), 207–225 (2007)
MiniZinc 1.4.2, http://www.g12.cs.mu.oz.au/minizinc
Peyton-Jones, S.: Haskell 98 language and libraries: the revised report. Technical report (2002), http://www.haskell.org/onlinereport
Pinedo, M.: Planning and Scheduling in Manufacturing and Services. Springer Series in Operations Research (2004)
Reischuk, R.M., Schulte, C., Stuckey, P.J., Tack, G.: Maintaining State in Propagation Solvers. In: Gent, I.P. (ed.) CP 2009. LNCS, vol. 5732, pp. 692–706. Springer, Heidelberg (2009)
SICStus Prolog, http://www.sics.se/isl/sicstuswww/site/index.html
Van Roy, P., Brand, P., Duchier, D., Haridi, S., Henz, M., Schulte, C.: Logic programming in the context of multiparadigm programming: the Oz experience. TPLP 3(6), 717–763 (2003)
Wallace, M., Schimpf, J., Shen, K., Harvey, W.: On benchmarking constraint logic programming platforms. Response to fernandez and hill’s “a comparative study of eight constraint programming languages over the boolean and finite domains”. Constraints 9(1), 5–34 (2004)
Wuille, P., Schrijvers, T.: Parameterized Models for On-Line and Off-Line Use. In: Mariño, J. (ed.) WFLP 2010. LNCS, vol. 6559, pp. 101–118. Springer, Heidelberg (2011)
Yang, M., Cai, L., Song, G.: Constraint satisfaction timetabling research based on course-period-template selection and conflict-vector detection. In: FCST 2010, pp. 582–588 (2010)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2012 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Castiñeiras, I., Sáenz-Pérez, F. (2012). Improving the Performance of FD Constraint Solving in a CFLP System. In: Schrijvers, T., Thiemann, P. (eds) Functional and Logic Programming. FLOPS 2012. Lecture Notes in Computer Science, vol 7294. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-29822-6_10
Download citation
DOI: https://doi.org/10.1007/978-3-642-29822-6_10
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-29821-9
Online ISBN: 978-3-642-29822-6
eBook Packages: Computer ScienceComputer Science (R0)