Results 1  10
of
13
A study of residual supports in arc consistency
 In Proceedings of IJCAI’07
, 2007
"... Abstract. In an Arc Consistency (AC) algorithm, a residual support, or residue, is a support that has been stored during a previous execution of the procedure which determines if a value is supported by a constraint. The point is that a residue is not guaranteed to represent a lower bound of the sma ..."
Abstract

Cited by 31 (16 self)
 Add to MetaCart
(Show Context)
Abstract. In an Arc Consistency (AC) algorithm, a residual support, or residue, is a support that has been stored during a previous execution of the procedure which determines if a value is supported by a constraint. The point is that a residue is not guaranteed to represent a lower bound of the smallest current support of a value. In this paper, we study the theoretical impact of exploiting residues with respect to the basic algorithm AC3. First, we prove that AC3r (AC3 with unidirectional residues) and AC3rm (AC3 with multidirectional residues) are optimal for low and high constraint tightness. Second, we show that when AC has to be maintained during a backtracking search (the wellknown MAC algorithm), MAC2001 presents, with respect to MAC3r and MAC3rm, an overhead in O(µed) per branch of the binary tree built by MAC, where µ denotes the number of refutations of the branch, e the number of constraints and d the greatest domain size of the constraint network. One consequence is that, MAC3r and MAC3rm admit a better worstcase time complexity than MAC2001 for a branch involving µ refutations when either µ> d 2 or µ> d and the tightness of any constraint is either low or high. Our experimental results clearly show that exploiting residues allows enhancing MAC and SAC algorithms. 1
Optimization of simple tabular reduction for table constraints
 In Proceedings of CP’08
, 2008
"... Abstract. Table constraints play an important role within constraint programming. Recently, many schemes or algorithms have been proposed to propagate table constraints or/and to compress their representation. We show that simple tabular reduction (STR), a technique proposed by J. Ullmann to dynamic ..."
Abstract

Cited by 25 (11 self)
 Add to MetaCart
(Show Context)
Abstract. Table constraints play an important role within constraint programming. Recently, many schemes or algorithms have been proposed to propagate table constraints or/and to compress their representation. We show that simple tabular reduction (STR), a technique proposed by J. Ullmann to dynamically maintain the tables of supports, is very often the most efficient practical approach to enforce generalized arc consistency within MAC. We also describe an optimization of STR which allows limiting the number of operations related to validity checking or search of supports. Interestingly enough, this optimization makes STR potentially r times faster where r is the arity of the constraint(s). The results of an extensive experimentation that we have conducted with respect to random and structured instances indicate that the optimized algorithm we propose is usually around twice as fast as the original STR and can be up to one order of magnitude faster than previous stateoftheart algorithms on some series of instances. 1
Maintaining generalized arc consistency on adhoc nary boolean constraints
 IN ECAI06
, 2006
"... ..."
(Show Context)
Enforcing Arc Consistency using Bitwise Operations
 CONSTRAINT PROGRAMMING LETTERS
, 2007
"... In this paper, we propose to exploit bitwise operations to speed up some important computations such as looking for a support of a value in a constraint, or determining if a value is substitutable by another one. Considering a computer equipped with a xbit CPU, one can then expect an increase of th ..."
Abstract

Cited by 9 (5 self)
 Add to MetaCart
(Show Context)
In this paper, we propose to exploit bitwise operations to speed up some important computations such as looking for a support of a value in a constraint, or determining if a value is substitutable by another one. Considering a computer equipped with a xbit CPU, one can then expect an increase of the performance by a coefficient up to x (which may be important, since x is equal to 32 or 64 in many current central units). To show the interest of enforcing arc consistency using bitwise operations, we introduce a new variant of AC3, denoted by AC3 bit, which can be used when constraints are (or can be) represented in extension. This new algorithm when embedded in MAC, is approximately two times more efficient than AC3 rm. Note that AC3 rm is a variant of AC3 which exploits the concept of residual supports and has been shown to be faster than AC2001.
Maintaining Arc Consistency with Multiple Residues
, 2013
"... Exploiting residual supports (or residues) has proved to be one of the most costeffective approaches for Maintaining Arc Consistency during search (MAC). While MAC based on optimal AC algorithm may have better theoretical time complexity in some cases, in practice the overhead for maintaining requi ..."
Abstract

Cited by 4 (1 self)
 Add to MetaCart
(Show Context)
Exploiting residual supports (or residues) has proved to be one of the most costeffective approaches for Maintaining Arc Consistency during search (MAC). While MAC based on optimal AC algorithm may have better theoretical time complexity in some cases, in practice the overhead for maintaining required data structure during search outweighs the benefit, not to mention the more complicated implementation. Implementing MAC with residues, on the other hand, is trivial. In this paper we extend previous work on residues and investigate the use of multiple residues during search. We first give a theoretical analysis of residuebased algorithms that explains their good practical performance. We then propose several heuristics on how to deal with multiple residues. Finally, our empirical study shows that with a proper and limited number of residues, many constraint checks can be saved. When the constraint check is expensive or a problem is hard, the multiple residues approach is competitive in both the number of constraint checks and cpu time.
Handling Heterogeneous Constraints in Revision Ordering Heuristics
"... Abstract. Most constraint solvers use the general AC5 scheme [17] to handle constraint propagation. AC5 generalizes the concept of constraint revision. Each constraint type can thus be shipped with its own revision algorithm, with various complexities and performances. Previous papers showed that ..."
Abstract

Cited by 1 (1 self)
 Add to MetaCart
(Show Context)
Abstract. Most constraint solvers use the general AC5 scheme [17] to handle constraint propagation. AC5 generalizes the concept of constraint revision. Each constraint type can thus be shipped with its own revision algorithm, with various complexities and performances. Previous papers showed that the order in which constraints are revised have a nonnegligible impact on performances of propagation [20,6,1]. However, most of the ideas presented on these papers are based on the use of homogeneous propagators for binary constraints defined in extension. This paper give ideas to handle heterogeneous constraints in a general revision schedule. 1
YIELDS: A Yet Improved Limited Discrepancy Search for CSPs
, 2007
"... In this paper, we introduce a Yet ImprovEd Limited Discrepancy Search (YIELDS), a complete algorithm for solving Constraint Satisfaction Problems. As indicated in its name, YIELDS is an improved version of Limited Discrepancy Search (LDS). It integrates constraint propagation and variable order le ..."
Abstract

Cited by 1 (1 self)
 Add to MetaCart
In this paper, we introduce a Yet ImprovEd Limited Discrepancy Search (YIELDS), a complete algorithm for solving Constraint Satisfaction Problems. As indicated in its name, YIELDS is an improved version of Limited Discrepancy Search (LDS). It integrates constraint propagation and variable order learning. The learning scheme, which is the main contribution of this paper, takes benefit from failures encountered during search in order to enhance the efficiency of variable ordering heuristic. As a result, we obtain a search which needs less discrepancies than LDS to find a solution or to state a problem is intractable. This method is then less redundant than LDS. The efficiency of YIELDS is experimentally validated, comparing it with several solving algorithms: Depthbounded Discrepancy Search, Forward Checking, and Maintaining ArcConsistency. Experiments carried out on randomly generated binary CSPs and real problems clearly indicate that YIELDS often outperforms the algorithms with which it is compared, especially for tractable problems.
A Study of Residual Supports in Arc Consistency
"... In an Arc Consistency (AC) algorithm, a residual support, or residue, is a support that has been stored during a previous execution of the procedure which determines if a value is supported by a constraint. The point is that a residue is not guaranteed to represent a lower bound of the smallest curr ..."
Abstract
 Add to MetaCart
In an Arc Consistency (AC) algorithm, a residual support, or residue, is a support that has been stored during a previous execution of the procedure which determines if a value is supported by a constraint. The point is that a residue is not guaranteed to represent a lower bound of the smallest current support of a value. In this paper, we study the theoretical impact of exploiting residues with respect to the basic algorithm AC3. First, we prove that AC3rm (AC3 with multidirectional residues) is optimal for low and high constraint tightness. Second, we show that when AC has to be maintained during a backtracking search, MAC2001 presents, with respect to MAC3rm, an overhead in O(µed) per branch of the binary tree built by MAC, where µ denotes the number of refutations of the branch, e the number of constraints and d the greatest domain size of the constraint network. One consequence is that MAC3rm admits a better worstcase time complexity than MAC2001 for a branch involving µ refutations when either µ> d 2 or µ> d and the tightness of any constraint is either low or high. Our experimental results clearly show that exploiting residues allows enhancing MAC and SAC algorithms. 1
Maintaining Generalized Arc Consistency on Adhoc nary Boolean Constraints
"... Abstract. Binary decision diagrams (BDDs) can compactly represent adhoc nary Boolean constraints. However, there is no generalized arc consistency (GAC) algorithm which exploit BDDs. For example, the global case constraint by SICStus Prolog for adhoc constraints is designed for nonBoolean domain ..."
Abstract
 Add to MetaCart
(Show Context)
Abstract. Binary decision diagrams (BDDs) can compactly represent adhoc nary Boolean constraints. However, there is no generalized arc consistency (GAC) algorithm which exploit BDDs. For example, the global case constraint by SICStus Prolog for adhoc constraints is designed for nonBoolean domains. In this paper, we introduce a new GAC algorithm, bddc, for BDD constraints. Our empirical results demonstrate the advantages of a new BDDbased global constraint – bddc is more efficient both in terms of memory and time than the case constraint when dealing with adhoc Boolean constraints. This becomes important as the size of the adhoc constraints becomes large. 1
A Study of Residual Supports in Arc Consistency
"... In an Arc Consistency (AC) algorithm, a residual support, or residue, is a support that has been stored during a previous execution of the procedure which determines if a value is supported by a constraint. The point is that a residue is not guaranteed to represent a lower bound of the smallest curr ..."
Abstract
 Add to MetaCart
In an Arc Consistency (AC) algorithm, a residual support, or residue, is a support that has been stored during a previous execution of the procedure which determines if a value is supported by a constraint. The point is that a residue is not guaranteed to represent a lower bound of the smallest current support of a value. In this paper, we study the theoretical impact of exploiting residues with respect to the basic algorithm AC3. First, we prove that AC3rm (AC3 with multidirectional residues) is optimal for low and high constraint tightness. Second, we show that when AC has to be maintained during a backtracking search, MAC2001 presents, with respect to MAC3rm, an overhead in O(μed) per branch of the binary tree built by MAC, where μ denotes the number of refutations of the branch, e the number of constraints and d the greatest domain size of the constraint network. One consequence is that MAC3rm admits a better worstcase time complexity than MAC2001 for a branch involving μ refutations when either μ>d2or μ>dand the tightness of any constraint is either low or high. Our experimental results clearly show that exploiting residues allows enhancing MAC and SAC algorithms. 1