The versatility of using explanations within constraint programming

Constraint programming is a research topic benefiting from many other areas: discrete mathematics, numerical analysis, artificial intelligence, operations research, and formal calculus. It has proven its interest and its efficiency in various domains: combinatorial optimization, scheduling, finance, simulation and synthesis, diagnosis, molecular biology, or geometrical problems. However, some limitations and difficulties remain: designing stable and generic algorithms, handling dynamic problems, opening constraint programming to non-specialists, etc. In this document, we advocate the use of explanations within constraint programming. Our aim is two-fold: drawing the big picture about explanations (definition, generation, management and use) and showing that they can help address several issues in constraint programming. We also introduce a new general explanation-based search technique that has been successfully used to design new efficient algorithms. Finally, current open issues and research topics in this field are presented.

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

[2]  Guillaume Rochart,et al.  Explanations for global constraints : instrumenting the stretch constraint , 2003 .

[3]  Eugene C. Freuder,et al.  Inference-Based Constraint Satisfaction Supports Explanation , 1996, AAAI/IAAI, Vol. 1.

[4]  Cristina V. Lopes,et al.  Aspect-oriented programming , 1999, ECOOP Workshops.

[5]  Narendra Jussien E-constraints: Explanation-based constraint programming , 2001 .

[6]  Leon Sterling A Reactive Constraint Logic Programming Scheme , 1995 .

[7]  Pierre Marquis,et al.  Consistency restoration and explanations in dynamic CSPs Application to configuration , 2002, Artif. Intell..

[8]  Hector J. Levesque,et al.  A New Method for Solving Hard Satisfiability Problems , 1992, AAAI.

[9]  Christian Prins,et al.  Competitive genetic algorithms for the open-shop scheduling problem , 2000, Math. Methods Oper. Res..

[10]  Daniele Vigo,et al.  A tabu search algorithm for the Open Shop problem , 1997 .

[11]  Olivier Motelet,et al.  A Formal Definition of Crosscuts , 2001, Reflection.

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

[13]  J. Carlier,et al.  Adjustment of heads and tails for the job-shop problem , 1994 .

[14]  Gérard Ferrand,et al.  Theoretical Foundations of Value Withdrawal Explanations for Domain Reduction , 2002, Electron. Notes Theor. Comput. Sci..

[15]  N. J.L.deSiqueira,et al.  Explanation-Based Generalisation of Failures , 1988, ECAI.

[16]  Gérard Ferrand,et al.  Correctness of Constraint Retraction Algorithms , 2003, FLAIRS.

[17]  Edward P. K. Tsang,et al.  Foundations of constraint satisfaction , 1993, Computation in cognitive science.

[18]  François Laburthe,et al.  Challenging explanations for global constraints , 2003 .

[19]  Ulrich Junker Conflict Detection for Arbitrary Constraint Propagation Algorithms , 2001 .

[20]  Gerald J. Sussman,et al.  Forward Reasoning and Dependency-Directed Backtracking in a System for Computer-Aided Circuit Analysis , 1976, Artif. Intell..

[21]  Patrice Boizumault,et al.  k-relevant Explanations for Constraint Programming , 2003, FLAIRS.

[22]  Patrice Boizumault,et al.  Implementing Constraint Relaxation over Finite Domains using ATMS , 1996 .

[23]  Peter Brucker,et al.  A Branch & Bound Algorithm for the Open-shop Problem , 1997, Discret. Appl. Math..

[24]  Yann-Gaël Guéhéneuc Using explanations for design patterns identification , 2001 .

[25]  François Laburthe,et al.  Cumulative Scheduling with Task Intervals , 1996, JICSLP.

[26]  Francesca Rossi,et al.  Constraint Retraction in CLP(FD): Formal Framework and Performance Results , 1999, Constraints.

[27]  François Laburthe,et al.  Improved CLP Scheduling with Task Intervals , 1994, ICLP.

[28]  C. Reeves Modern heuristic techniques for combinatorial problems , 1993 .

[29]  Eugene C. Freuder,et al.  Contradicting Conventional Wisdom in Constraint Satisfaction , 1994, ECAI.

[30]  Peter Brucker,et al.  A branch and bound algorithm for the resource-constrained project scheduling problem , 1998, Eur. J. Oper. Res..

[31]  Thomas Schiex,et al.  Valued Constraint Satisfaction Problems: Hard and Easy Problems , 1995, IJCAI.

[32]  François Fages,et al.  Experiments in Reactive Constraint Logic Programming , 1998, J. Log. Program..

[33]  Jan Maluszy¿ski,et al.  Best-first search for property maintenance in reactive constraints systems , 1997 .

[34]  Christelle Guéret,et al.  A new lower bound for the open‐shop problem , 1999, Ann. Oper. Res..

[35]  Christian Bliek,et al.  Generalizing Partial Order and Dynamic Backtracking , 1998, AAAI/IAAI.

[36]  Jan Karel Lenstra,et al.  Scheduling subject to resource constraints: classification and complexity , 1983, Discret. Appl. Math..

[37]  Romuald Debruyne,et al.  Arc-consistency in dynamic CSPs is no more prohibitive , 1996, Proceedings Eighth IEEE International Conference on Tools with Artificial Intelligence.

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

[39]  Matthew L. Ginsberg,et al.  GSAT and dynamic backtracking , 1994, KR 1994.

[40]  Krzysztof R. Apt,et al.  The Essence of Constraint Propagation , 1998, Theor. Comput. Sci..

[41]  Alan Borning,et al.  Hierarchical Constraint Logic Programming , 1994, J. Log. Program..

[42]  Matthew L. Ginsberg,et al.  Dynamic Backtracking , 1993, J. Artif. Intell. Res..

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

[44]  Narendra Jussien,et al.  Conflict-Based Repair Techniques for Solving Dynamic Scheduling Problems , 2002, CP.

[45]  Christian Bessiere,et al.  Arc-Consistency in Dynamic Constraint Satisfaction Problems , 1991, AAAI.

[46]  Narendra Jussien,et al.  Unifying search algorithms for CSP , 2002 .

[47]  Bertrand Neveu,et al.  Arc-Consistency for Dynamic Constraint Problems: An RMS-Free Approach , 1994 .

[48]  Narendra Jussien,et al.  Combining constraint programming and local search to design new powerful heuristics , 2003 .

[49]  Rémi Douence,et al.  Non-intrusive constraint solver enhancements , 2002 .

[50]  Narendra Jussien,et al.  Using intelligent backtracking to improve branch-and-bound methods: An application to Open-Shop problems , 1998, Eur. J. Oper. Res..

[51]  Narendra Jussien,et al.  User-friendly explanations for constraint programming , 2001, WLPE.

[52]  Éric D. Taillard,et al.  Benchmarks for basic scheduling problems , 1993 .

[53]  Patrick Prosser,et al.  MAC-CBJ: maintaining arc consistency with conflict-directed backjumping , 1995 .

[54]  Nicolas Beldiceanu,et al.  Extending CHIP in order to solve complex scheduling and placement problems , 1993, JFPL.

[55]  P. M. Wognum,et al.  Diagnosing and Solving Over-Determined Constraint Satisfaction Problems , 1993, IJCAI.

[56]  Patrick Cousot,et al.  Automatic synthesis of optimal invariant assertions: Mathematical foundations , 1977 .

[57]  Olivier Lhomme,et al.  Consistency Techniques for Numeric CSPs , 1993, IJCAI.

[58]  Armin Scholl,et al.  Computing lower bounds by destructive improvement: An application to resource-constrained project scheduling , 1999, Eur. J. Oper. Res..

[59]  William G. Griswold,et al.  An Overview of AspectJ , 2001, ECOOP.

[60]  Jean-Daniel Fekete,et al.  Visualizing explanations to exhibit dynamic structure in constraint problems , 2003 .

[61]  Thomas Schiex,et al.  Nogood Recording for static and dynamic constraint satisfaction problems , 1993, Proceedings of 1993 IEEE Conference on Tools with Al (TAI-93).

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

[63]  Ralph Johnson,et al.  design patterns elements of reusable object oriented software , 2019 .

[64]  Ching-Fang Liaw,et al.  A tabu search algorithm for the open shop scheduling problem , 1999, Comput. Oper. Res..

[65]  Cristina V. Lopes,et al.  Aspect-oriented programming , 1999, ECOOP Workshops.

[66]  Teofilo F. Gonzalez,et al.  Open Shop Scheduling to Minimize Finish Time , 1976, JACM.

[67]  Ernest Davis,et al.  Constraint Propagation with Interval Labels , 1987, Artif. Intell..

[68]  Frédéric Benhamou,et al.  Heterogeneous Constraint Solving , 1996, ALP.

[69]  Daniel P. Miranker,et al.  A Complexity Analysis of Space-Bounded Learning Algorithms for the Constraint Satisfaction Problem , 1996, AAAI/IAAI, Vol. 1.

[70]  Jacques Carlier,et al.  Resource optimization in a TDMA/DSI system - The Eutelsat approach , 1986 .

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

[72]  Michael J. Maher,et al.  Constraint Hierarchies and Logic Programming , 1989, ICLP.

[73]  E. Nowicki,et al.  A block approach for single-machine scheduling with release dates and due dates , 1986 .

[74]  Yann-Gaël Guéhéneuc,et al.  Instantiating and detecting design patterns: putting bits and pieces together , 2001, Proceedings 16th Annual International Conference on Automated Software Engineering (ASE 2001).

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

[76]  Magnus Ågren Tracing and Explaining the Execution of CLP(FD) Programs in SICStus Prolog , 2002 .

[77]  Patrick Prosser,et al.  HYBRID ALGORITHMS FOR THE CONSTRAINT SATISFACTION PROBLEM , 1993, Comput. Intell..

[78]  Christian Prins,et al.  Classical and new heuristics for the open-shop problem: A computational evaluation , 1998, Eur. J. Oper. Res..