Il s'agit d'une introduction à la programmation par contraintes que j'ai enseigné à partir de 2012-13 en collaboration avec David Savourey (Lix à l'époque maintenant UTC), qui introduit la programmation par contraintes et les principes essentiels utilisés par les solveurs de contraintes (backtrack, algos d'arc-consistance, méthodes de look-ahead, méthodes de look-back, etc.).
En 2013-2014, Éric Nespoulous (IBM) nous a rejoint. Il présente l'environnement CPLEX Studio IDE et propose un projet aux étudiants.
Pour ma part j'esquissais les grandes lignes de résultats de complexité obtenus sur les problèmes de contraintes avec des variations selon les années. Typiquement j'évoquais à un moment la conjecture de la dichotomie (maintenant un théorème) et le théorème de Shaeffer. J'évoque aussi si possible ce qui fait la force des solveurs Sat modernes. Typiquement, sur les deux dernières années, j'évoquais aussi l'apprentissage de clauses et comment on peut s'en servir pour mettre en oeuvre une recherche non-chronologique.
Pour la version actuelle du cours, voir la page de David Savourey (ici).
Quelques documents pour ma partie du cours (n'hésitez pas à m'envoyer un mail si vous trouver des erreurs):