Exploiting Constraint Weights for Revision Ordering in Arc Consistency Algorithms

Coarse grained arc consistency algorithms, like AC-3, operate by maintaining a list of arcs (or variables) that records the revisions that are still to be performed. It is well known that the performance of such algorithms is affected by the order in which revisions are carried out. As a result, several heuristics for ordering the elements of the revision list have been proposed. These heuristics exploit information about the original and the current state of the problem, such as domain sizes, variable degrees, and allowed combinations of values, to reduce the number of constraint checks and list operations aiming at speeding up arc consistency computation. Recently, Boussemart et al. proposed novel variable ordering heuristics that exploit information about failures gathered throughout search and recorded in the form of constraint weights. Such heuristics are now considered as the most efficient general purpose variable ordering heuristic for CSPs. In this paper we show how information about constraint weights can be exploited to efficiently order the revision list when AC is applied during search. We propose a number of simple revision ordering heuristics based on constraint weights for arc, variable, and constraint oriented implementations of coarse grained arc consistency algorithms, and compare them to the most efficient existing revision ordering heuristic. Importantly, the new heuristics can not only reduce the numbers of constraints checks and list operations, but also cut down the size of the explored search tree. Results from various structured and random problems demonstrate that some of the proposed heuristics can offer significant speed-ups.

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

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

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

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

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

[6]  Lakhdar Sais,et al.  Boosting Systematic Search by Weighting Constraints , 2004, ECAI.

[7]  Marc R. C. van Dongen,et al.  AC-3d an Efficient Arc-Consistency Algorithm with a Low Space-Complexity , 2002, CP.

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

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

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

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

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

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

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

[15]  Eugene C. Freuder,et al.  Ordering Heuristics for Arc Consistency Algorithms , 1992 .