Modular lazy search for Constraint Satisfaction Problems

2001 ◽  
Vol 11 (5) ◽  
pp. 557-587 ◽  
Author(s):  
THOMAS NORDIN ◽  
ANDREW TOLMACH

We describe a unified, lazy, declarative framework for solving constraint satisfaction problems, an important subclass of combinatorial search problems. These problems are both practically significant and computationally hard. Finding solutions involves combining good general-purpose search algorithms with problem-specific heuristics. Conventional imperative algorithms are usually implemented and presented monolithically, which makes them hard to understand and reuse, even though new algorithms often are combinations of simpler ones. Lazy functional languages, such as Haskell, encourage modular structuring of search algorithms by separating the generation and testing of potential solutions into distinct functions communicating through an explicit, lazy intermediate data structure. But only relatively simple search algorithms have been treated this way in the past. Our framework uses a generic generation and pruning algorithm parameterized by a labeling function that annotates search trees with conflict sets. We show that many advanced imperative search algorithms, including conflict-directed backjumping, backmarking, minimal forward checking, and fail-first dynamic variable ordering, can be obtained by suitable instantiation of the labeling function. More importantly, arbitrary combinations of these algorithms can be built by simply composing their labeling functions. Our modular algorithms are as efficient as the monolithic imperative algorithms in the sense that they make the same number of consistency checks, and most of our algorithms are within a constant factor of their imperative counterparts in runtime and space usage. We believe our framework is especially well-suited for experimenting to find good combinations of algorithms for specific problems.

2018 ◽  
Vol 2018 ◽  
pp. 1-14
Author(s):  
José Carlos Ortiz-Bayliss ◽  
Ivan Amaya ◽  
Santiago Enrique Conant-Pablos ◽  
Hugo Terashima-Marín

When solving constraint satisfaction problems (CSPs), it is a common practice to rely on heuristics to decide which variable should be instantiated at each stage of the search. But, this ordering influences the search cost. Even so, and to the best of our knowledge, no earlier work has dealt with how first variable orderings affect the overall cost. In this paper, we explore the cost of finding high-quality orderings of variables within constraint satisfaction problems. We also study differences among the orderings produced by some commonly used heuristics and the way bad first decisions affect the search cost. One of the most important findings of this work confirms the paramount importance of first decisions. Another one is the evidence that many of the existing variable ordering heuristics fail to appropriately select the first variable to instantiate. Another one is the evidence that many of the existing variable ordering heuristics fail to appropriately select the first variable to instantiate. We propose a simple method to improve early decisions of heuristics. By using it, performance of heuristics increases.


2015 ◽  
Vol 22 (2) ◽  
pp. 125-145 ◽  
Author(s):  
Hongbo Li ◽  
Yanchun Liang ◽  
Ning Zhang ◽  
Jinsong Guo ◽  
Dong Xu ◽  
...  

Author(s):  
Takuto Yanagida ◽  
◽  
Masahito Kurihara ◽  
Hidetoshi Nonaka

This paper presents a software tool to intuitively comprehend and analyze fuzzy constraint satisfaction problems (FCSPs) through effective visualization with animation. FCSPs are an extension of constraint satisfaction problems (CSPs), which are used for formulating problems in real-world information systems. Once we formulate a problem as an FCSP, it can be solved (in principle) by any existing general-purpose FCSP solvers developed so far. However, the formulation is sometimes difficult because it requires high abstraction of real-world problems and affects the performance of the solvers. The authors believe that the tool will improve this situation by increasing the visibility of the behavior of the solvers.


2020 ◽  
Vol 174 (3-4) ◽  
pp. 311-344
Author(s):  
Richard J. Wallace

Algorithms based on singleton arc consistency (SAC) show considerable promise for improving backtrack search algorithms for constraint satisfaction problems (CSPs). The drawback is that even the most efficient of them is still comparatively expensive. Even when limited to preprocessing, they give overall improvement only when problems are quite difficult to solve with more typical procedures such as maintained arc consistency (MAC). The present work examines a form of partial SAC and neighbourhood SAC (NSAC) in which a subset of the variables in a CSP are chosen to be made SAC-consistent or neighbourhood-SAC-consistent. Such consistencies, despite their partial character, are still well-characterized in that algorithms have unique fixpoints. Heuristic strategies for choosing an effective subset of variables are described and tested, the best being choice by highest degree and a more complex strategy of choosing by constraint weight after random probing. Experimental results justify the claim that these methods can be nearly as effective as the corresponding full version of the algorithm in terms of values discarded or problems proven unsatisfiable, while significantly reducing the effort required to achieve this.


Sign in / Sign up

Export Citation Format

Share Document