La programmazione logica con vincoli costituisce il connubio vincente tra la lo stile di programmazione dichiarativo (codice semplice, estendibile, riutilizzabile) e l’efficienza delle tecniche più avanzate per la ricerca di soluzioni a problemi combinatorici, un tempo affrontabili unicamente mediante complesse codifiche in programmazione lineare intera o con approcci ad-hoc.
I membri del laboratorio hanno esperienza sia dal profilo fondazionale che applicato nell’area del logic e constraint programming. In particolare le tecniche sono state utilizzate proficuamente per risolvere problemi di diversa natura, quali ad esempio:
- Allocazione ottima delle sirene dell’acqua alta a Venezia (IEEE Computer 37(9) 2004)
- Ricostruzione di immagini 3D (IEEE Computer Society Conference on Computer Vision and Pattern Recognition, 2006)
- Il problema del protein folding su reticolo (BMC Bioinformatics 2004, 5:186)
- Il problema del protein folding fuori reticolo, come composizione di frammenti (Theory and Practice of Logic Programming 10(4-6) 2010)
- Il problema della configurazione di prodotto (Fundamenta Informaticae 105(1-2) 2010)
- Il problema del planning formulato mediante action description languages (Theory and Practice of Logic Programming 10(2), 2010)
ENGLISH VERSION
Constraint Logic Programming is the result of the merging of two declarative programming paradigms that allows to encode problems with simple, reusable, and easy to extend programs and to exploit the efficiency of the most advanced techniques for solving combinatorial and optimization problems.
CLP Lab members have a wide experience either in theoretical foundations of logic and constraint programming or in practical application. For instance, they have widely used these techniques for facing the protein structure prediction problems and other bioinformatics problems; they have modeled and solved the problem of optimal location of the sirens for high tide in Venice; they have developed the inferential engine of industrial configuration systems; and they are involved in several projects, such as the optimization of energy distribution in smart grids.