Minimal Forward Checking with Backmarking

The idea behind forward checking is to check forward so that a wrong decision can be detected in early stage during search and thus futile search space can be pruned. However constraint propagation in forward checking may be overdone in certain situations. In this paper we suggest a way to delay constraint evaluation in forward checking with backmarking. Conflict-directed backtracking can also be easily fitted in. Despite the new algorithms can be considered as extensions of Dent and Mercer’s minimal forward checking, they employ simpler data structures which have a smaller space complexity. Experiments were conducted to compare them with minimal forward checking and other regular forward checking based algorithms. Like minimal forward checking, our new algorithms always perform no worse than forward checking and their “non-lazy” counterparts in terms of number of compatibility checks and node expanded given the same variable and value orderings. They also outperform minimal forward checking in almost all of our tested cases. Our experimental results show that the minimal width ordering heuristic can be a better choice than the fail-first heuristic for the new lazy algorithms in many occasions, particularly for problems with a sparse constraint graph. Our results also reveal that domain filtering could degrade a lazy forward checking algorithm in a static variable ordering even though it backtracks chronologically. This refutes the conjecture made by Prosser that increased consistency can guarantee a reduction in search effort for chronological backtrackers.

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

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

[3]  Peter van Beek,et al.  A Theoretical Evaluation of Selected Backtracking Algorithms , 1995, IJCAI.

[4]  Fahiem Bacchus,et al.  Dynamic Variable Ordering in CSPs , 1995, CP.

[5]  Barbara M. Smith,et al.  The Phase Transition and the Mushy Region in Constraint Satisfaction Problems , 1994, ECAI.

[6]  Tad Hogg,et al.  Exploiting the Deep Structure of Constraint Problems , 1994, Artif. Intell..

[7]  Eugene C. Freuder A Sufficient Condition for Backtrack-Free Search , 1982, JACM.

[8]  Alvin C. M. Kwan,et al.  Validity of Normality Assumption in CSP Research , 1996, PRICAI.

[9]  Patrick Prosser,et al.  Binary Constraint Satisfaction Problems: Some are Harder than Others , 1994, ECAI.

[10]  Monte Zweben,et al.  Constraint Satisfaction with Delayed Evaluation , 1989, IJCAI.

[11]  Robert E. Mercer,et al.  Minimal forward checking , 1994, Proceedings Sixth International Conference on Tools with Artificial Intelligence. TAI 94.

[12]  Peter C. Cheeseman,et al.  Where the Really Hard Problems Are , 1991, IJCAI.

[13]  John Gaschnig,et al.  A General Backtrack Algorithm That Eliminates Most Redundant Tests , 1977, IJCAI.

[14]  Bernard Nudel,et al.  Consistent-Labeling Problems and Their Algorithms: Expected-Complexities and Theory-Based Heuristics , 1983, Artif. Intell..

[15]  Patrick Prosser,et al.  Domain Filtering can Degrade Intelligent Backtracking Search , 1993, IJCAI.

[16]  Fahiem Bacchus,et al.  On the Forward Checking Algorithm , 1995, CP.

[17]  Patrick Prosser,et al.  Forward Checking with Backmarking , 1995, Constraint Processing, Selected Papers.