Éléments de flexibilité et d'efficacité en programmation par contraintes

Historiquement, la programmation par contraintes est une discipline situee a la croisee de nombreux domaines comme la recherche operationnelle, l’analyse numerique, le calcul symbolique, la programmation logique et l’intelligence artificielle.Raisonner par « contraintes » c’est s’interroger sur les proprietes intrinseques caracterisant la semantique d’un probleme. Nous entendons par la que cette discipline a pour vocation de s’abstraire autant que possible de tout raisonnement operationnel afin de se concentrer sur une specification conceptuelle de chaque probleme. En cela, la programmation par contraintes est un paradigme declaratif. Aujourd’hui, tout systeme de programmation par contraintes se doit de proposer trois composantes essentielles que sont la propagation, la recherche et la modelisation. Dans ce contexte, parler de flexibilite et d’efficacite c’est s’interroger sur la part qu’occupe chacun des elements de ce triptyque du point de vue d’un utilisateur. L’objet de cette habilitation est donc de synthetiser differents elements et questionnements autour d’aspects lies a la propagation, aux filtrages et a la strategie de recherche dans les systemes de contraintes. Plus precisement, mon interet s’est porte sur l’analyse des strategies de propagation dans les systemes de contraintes, le comportement des algorithmes de filtrages au sein de ces strategies de propagation, mais aussi la prise en compte de besoin metiers de plus en plus pressants autour de strategies de recherche pour les problemes d’optimisation. Le lien entre ces elements a ete porte par une interrogation permanente sur la dichotomie entre une vision tres conceptuelle de la programmation par contraintes, reposant sur la notion de declarativite (l’outil de resolution etant alors entierement cache a l’utilisateur), et une vision tres operationnelle ou l’utilisateur final souhaite maitriser parfaitement son processus de resolution : Quelle strategie de recherche adopter et pour quel probleme ? Quelle contrainte / filtrage utiliser et dans quel contexte ? L’optimalite est-elle un besoin ou la recherche d’une solution de bonne qualite est-elle suffisante ?

[1]  Pascal Van Hentenryck Constraint satisfaction in logic programming , 1989, Logic programming.

[2]  Jean-Charles Régin,et al.  Simpler and Incremental Consistency Checking and Arc Consistency Filtering Algorithms for the Weighted Spanning Tree Constraint , 2008, CPAIOR.

[3]  Giuseppe F. Italiano,et al.  Finding strong bridges and strong articulation points in linear time , 2012, Theor. Comput. Sci..

[4]  Toby Walsh,et al.  Handbook of Constraint Programming (Foundations of Artificial Intelligence) , 2006 .

[5]  Jean-Charles Régin,et al.  A Filtering Algorithm for Constraints of Difference in CSPs , 1994, AAAI.

[6]  A. Karimi,et al.  Master‟s thesis , 2011 .

[7]  Peter J. Stuckey,et al.  MiniZinc: Towards a Standard CP Modelling Language , 2007, CP.

[8]  Ian P. Gent,et al.  Watched Literals for Constraint Propagation in Minion , 2006, CP.

[9]  Toby Walsh,et al.  Filtering Algorithms for the NValue Constraint , 2005, CPAIOR.

[10]  Christophe Lecoutre,et al.  Exploiting Multidirectionality in Coarse-Grained Arc Consistency Algorithms , 2003, CP.

[11]  Ian P. Gent,et al.  Lazy Explanations for Constraint Propagators , 2010, PADL.

[12]  François Pachet,et al.  Automatic Generation of Music Programs , 1999, CP.

[13]  Jean-Guillaume Fages,et al.  Revisiting the tree Constraint , 2011, CP.

[14]  Jean-Charles Régin,et al.  Generalized Arc Consistency for Global Cardinality Constraint , 1996, AAAI/IAAI, Vol. 1.

[15]  Roland H. C. Yap,et al.  An optimal coarse-grained arc consistency algorithm , 2005, Artif. Intell..

[16]  Alain Colmerauer,et al.  An introduction to Prolog III , 1989, CACM.

[17]  Xavier Lorca,et al.  When is it worthwhile to propagate a constraint? A probabilistic analysis of AllDifferent , 2013, ANALCO.

[18]  Lia Purpura On Tools , 2012 .

[19]  Gilles Pesant,et al.  A Regular Language Membership Constraint for Finite Sequences of Variables , 2004, CP.

[20]  Alessandro Zanarini,et al.  Counting-Based Search: Branching Heuristics for Constraint Satisfaction Problems , 2012, J. Artif. Intell. Res..

[21]  Christine Solnon,et al.  A Global Constraint for Graph Isomorphism Problems , 2004, CPAIOR.

[22]  Philippe Jégou,et al.  Efficient Path-Consistency Propagation , 1998, Int. J. Artif. Intell. Tools.

[23]  Eugene C. Freuder,et al.  The Complexity of Some Polynomial Network Consistency Algorithms for Constraint Satisfaction Problems , 1985, Artif. Intell..

[24]  Ian P. Gent,et al.  Generalised arc consistency for the AllDifferent constraint: An empirical survey , 2008, Artif. Intell..

[25]  Xavier Lorca,et al.  The Increasing Nvalue Constraint , 2010, CPAIOR.

[26]  Patrice Boizumault,et al.  Maintaining Arc-Consistency within Dynamic Backtracking , 2000, CP.

[27]  Sophie Demassey,et al.  Sequencing and Counting with the multicost-regular Constraint , 2009, CPAIOR.

[28]  Robert M. Haralick,et al.  Increasing Tree Search Efficiency for Constraint Satisfaction Problems , 1979, Artif. Intell..

[29]  Gilles Pesant,et al.  A Cost-Regular Based Hybrid Column Generation Approach , 2006, Constraints.

[30]  Christian Bessiere,et al.  Adaptive Parameterized Consistency , 2013, CP.

[31]  Narendra Jussien,et al.  Local search with constraint propagation and conflict-based heuristics , 2000, Artif. Intell..

[32]  C. Berge Graphes et hypergraphes , 1970 .

[33]  Jean-Charles Régin,et al.  Robust and Parallel Solving of a Network Design Problem , 2002, CP.

[34]  David Pisinger,et al.  Large Neighborhood Search , 2018, Handbook of Metaheuristics.

[35]  Arie van Deursen,et al.  Domain-specific languages: an annotated bibliography , 2000, SIGP.

[36]  Hadrien Cambazard,et al.  Identifying and Exploiting Problem Structures Using Explanation-Based Constraint Programming , 2005, CPAIOR.

[37]  Xavier Lorca,et al.  Propagation engine prototyping with a domain specific language , 2013, Constraints.

[38]  Peter J. Stuckey,et al.  Search combinators , 2012, Constraints.

[39]  Narendra Jussien,et al.  The PaLM system: explanation-based constraint programming , 2000 .

[40]  Peter J. Stuckey,et al.  Propagation via lazy clause generation , 2009, Constraints.

[41]  Thomas C. Henderson,et al.  Arc and Path Consistency Revisited , 1986, Artif. Intell..

[42]  Thom W. Frühwirth,et al.  Constraints in Procedural and Concurrent Languages , 2006, Handbook of Constraint Programming.

[43]  Christian Bessiere,et al.  Using Constraint Metaknowledge to Reduce Arc Consistency Computation , 1999, Artif. Intell..

[44]  Jean-François Puget,et al.  A Fast Algorithm for the Bound Consistency of alldiff Constraints , 1998, AAAI/IAAI.

[45]  Paul Shaw,et al.  Using Constraint Programming and Local Search Methods to Solve Vehicle Routing Problems , 1998, CP.

[46]  Toby Walsh Depth-bounded Discrepancy Search , 1997, IJCAI.

[47]  Gérard Verfaillie,et al.  Constraint Solving in Uncertain and Dynamic Environments: A Survey , 2005, Constraints.

[48]  Peter J. Stuckey,et al.  Efficient constraint propagation engines , 2006, TOPL.

[49]  Ugo Montanari,et al.  Networks of constraints: Fundamental properties and applications to picture processing , 1974, Inf. Sci..

[50]  Jean-Louis Laurière,et al.  A Language and a Program for Stating and Solving Combinatorial Problems , 1978, Artif. Intell..

[51]  Pascal Van Hentenryck,et al.  A Generic Arc-Consistency Algorithm and its Specializations , 1992, Artif. Intell..

[52]  Xavier Lorca,et al.  Entropy: a consolidation manager for clusters , 2009, VEE '09.

[53]  J. Christopher Beck,et al.  Discrepancy-Bounded Depth First Search , 2000 .

[54]  Philippe Refalo,et al.  Impact-Based Search Strategies for Constraint Programming , 2004, CP.

[55]  Xavier Lorca,et al.  Bin Repacking Scheduling in Virtualized Datacenters , 2011, CP.

[56]  Christophe Lecoutre,et al.  Contrôle statistique du processus de propagation de contraintes , 2011 .

[57]  Toby Walsh,et al.  Constraint Acquisition via Partial Queries , 2013, IJCAI.

[58]  Alan K. Mackworth Consistency in Networks of Relations , 1977, Artif. Intell..

[59]  R. Lathe Phd by thesis , 1988, Nature.

[60]  Gilles Pesant,et al.  A Filtering Algorithm for the Stretch Constraint , 2001, CP.

[61]  Louis-Martin Rousseau,et al.  Improved filtering for weighted circuit constraints , 2012, Constraints.

[62]  Nicolas Beldiceanu Pruning for the Minimum Constraint Family and for the Number of Distinct Values Constraint Family , 2001, CP.

[63]  Mikkel Thorup,et al.  Dominators in Linear Time , 1999, SIAM J. Comput..

[64]  Christian Schulte,et al.  Advisors for Incremental Propagation , 2007, CP.

[65]  Yves Deville,et al.  Filtering for Subgraph Isomorphism , 2007, CP.

[66]  Barbara M. Smith,et al.  Trying Harder to Fail First , 1998, ECAI.

[67]  Christian Bessiere,et al.  Constraint Propagation , 2006, Handbook of Constraint Programming.

[68]  Meinolf Sellmann,et al.  Cost-Based Filtering for Shorter Path Constraints , 2003, CP.

[69]  Helmut Simonis,et al.  A Model Seeker: Extracting Global Constraint Models from Positive Examples , 2012, CP.

[70]  Toby Walsh,et al.  The Complexity of Global Constraints , 2004, AAAI.

[71]  Yves Deville,et al.  CP(Graph): Introducing a Graph Computation Domain in Constraint Programming , 2005, CP.

[72]  Narendra Jussien,et al.  Dynamic Domain Splitting for Numeric CSPs , 1998, ECAI.

[73]  J. J. McGregor Relational consistency algorithms and their application in finding subgraph and graph isomorphisms , 1979, Inf. Sci..

[74]  Toby Walsh,et al.  SLIDE: A Useful Special Case of the CARDPATH Constraint , 2008, ECAI.

[75]  Pascal Van Hentenryck,et al.  Activity-Based Search for Black-Box Constraint Programming Solvers , 2011, CPAIOR.

[76]  Christian Bessiere,et al.  MAC and Combined Heuristics: Two Reasons to Forsake FC (and CBJ?) on Hard Problems , 1996, CP.

[77]  Toby Walsh,et al.  The SeqBin Constraint Revisited , 2012, CP.

[78]  Irit Katriel,et al.  Expected-Case Analysis for Delayed Filtering , 2006, CPAIOR.

[79]  Toby Walsh,et al.  Domain filtering consistencies for non-binary constraints , 2008, Artif. Intell..

[80]  Xavier Lorca,et al.  The tree Constraint , 2005, CPAIOR.

[81]  Jean-Guillaume Fages,et al.  Self-decomposable Global Constraints , 2014, ECAI.

[82]  Christian Bessiere,et al.  Using Inference to Reduce Arc Consistency Computation , 1995, IJCAI.

[83]  Willem Jan van Hoeve,et al.  The alldifferent Constraint: A Survey , 2001, ArXiv.

[84]  Xavier Lorca,et al.  A Generalized Arc-Consistency Algorithm for a Class of Counting Constraints , 2011, IJCAI.

[85]  Christian Bessiere,et al.  Arc-Consistency and Arc-Consistency Again , 1993, Artif. Intell..

[86]  Pascal Van Hentenryck,et al.  To Be or Not to Be ... a Global Constraint , 2003, CP.

[87]  Xavier Lorca,et al.  Explanation-based large neighborhood search , 2014, Constraints.

[88]  Xavier Lorca Tree-based Graph Partitioning Constraint , 2011 .

[89]  Laurent Perron,et al.  Propagation Guided Large Neighborhood Search , 2004, CP.

[90]  Nicolas Beldiceanu,et al.  Global Constraint Catalog , 2005 .

[91]  Jean-Guillaume Fages,et al.  The salesman and the tree: the importance of search in CP , 2016, Constraints.

[92]  Christian Bessiere,et al.  Domain Filtering Consistencies , 2011, J. Artif. Intell. Res..