Proceedings of the AAAI Conference on Artificial Intelligence
Freuder and Elfe (1996) introduced Neighborhood Inverse Consistency (NIC) as a strong local consi... more Freuder and Elfe (1996) introduced Neighborhood Inverse Consistency (NIC) as a strong local consistency property for binary CSPs. While enforcing NIC can significantly filter the variables domains, the proposed algorithm is too costly to be used on dense graphs or for lookahead during search. In this paper, we introduce and characterize Relational Neighborhood Inverse Consistency (RNIC) as a local consistency property that operates on the dual graph of a non-binary CSP. We describe and characterize a practical algorithm for enforcing it. We argue that defining RNIC on the dual graph unveils unsuspected opportunities to reduce the computational cost of our algorithm and increase its filtering effectiveness. We show how to achieve those effects by modifying the topology of the dual graph, yielding new variations the RNIC property. We also introduce an adaptive strategy to automatically select the appropriate property to enforce given the connectivity of the dual graph. We integrate th...
Proceedings of the AAAI Conference on Artificial Intelligence
Consistency properties and algorithms for achieving them are at the heart of the success of Const... more Consistency properties and algorithms for achieving them are at the heart of the success of Constraint Programming. In this paper, we study the relational consistency property R(*,m)C, which is equivalent to m-wise consistency proposed in relational databases. We also define wR(*,m)C, a weaker variant of this property. We propose an algorithm for enforcing these properties on a Constraint Satisfaction Problem by tightening the existing relations and without introducing new ones. We empirically show that wR(*,m)C solves in a backtrack-free manner all the instances of some CSP benchmark classes, thus hinting at the tractability of those classes.
Contributions 1.The property Relational Neighborhood Inverse Consistency (RNIC) 2.Characterizatio... more Contributions 1.The property Relational Neighborhood Inverse Consistency (RNIC) 2.Characterization of RNIC in relation to previously known properties3.An efficient algorithm for enforcing RNIC, bounded by degree of the dual graph 4.Three reformulations of the dual graph to address topological limitations of the dual graph 5.An adaptive, automatic selection policy for choosing the appropriate dual graph 6.Empirical evidence on difficult CSP benchmarks Definition A Constraint Satisfaction Problem (CSP) is a combinatorial decision problem defined by a set of variables {A,B,C,…}, a set of domain values for these variables, and a set of constraints {R1,R2,R3,…} restricting the allowable combinations of values for variables. The task is to find a solution (i.e., an assignment of a value to each variable satisfying all constraints), or to find all such solutions. Local Consistency Local consistency is at the heart of Constraint Processing. It guarantees that all values (or tuples) particip...
Proceedings of the Twenty-Seventh International Joint Conference on Artificial Intelligence, 2018
We describe an online, interactive system with a graphical interface to illustrate the power and ... more We describe an online, interactive system with a graphical interface to illustrate the power and operation of consistency algorithms in a friendly and popular context, namely, solving Sudoku puzzles. Our tool implements algorithms for enforcing five (domain-based) consistency properties on binary and non-binary constraint models. Our tool is useful for research, education, and outreach. From a scientific standpoint, we propose a new consistency property that can solve the hardest known 9×9 Sudoku instances without search, but leave open the question of the lowest level of consistency needed to solve every 9×9 Sudoku puzzle. We have used the current tool and its predecessor in the classroom to introduce students to modeling problems with constraints, explain consistency properties, and illustrate the operations of constraint propagation and lookahead. Finally, we have also used this tool during outreach activities to demystify AI to children and the general public and show them how c...
Local consistency properties and algorithms for enforcing them are central to the success of Cons... more Local consistency properties and algorithms for enforcing them are central to the success of Constraint Processing. In this paper, we explore how to exploit the structure of the problem on the performance of the algorithm for enforcing consistency. We propose various strategies for managing the propagation queue of an algorithm for enforcing consistency, and empirically compare their effectiveness for solving CSPs with backtrack search and full lookahead. We focus our investigations on consistency algorithms that operate on the dual graph of a CSP and demonstrate the importance of exploiting a tree decomposition of the dual graph. Further, we note that exploiting structure is particularly striking on unsatisfiable instances. We conjecture that the approach for queue-management strategies benefits virtually all other propagation algorithms.
Relational consistency algorithms are instrumental for solving difficult instances of Constraint ... more Relational consistency algorithms are instrumental for solving difficult instances of Constraint Satisfaction Problems (CSPs), often allowing backtrack-free search. In this paper, we improve an algorithm for enforcing relational consistency by exploiting the property that the constraints of the dual encoding of a CSP are piecewise functional. This property allows us to partition a CSP relation into blocks of equivalent tuples at varying levels of granularity. Our new algorithm dynamically exploits those partitions. Our experiments show a significant improvement of the processing time for enforcing relational consistency.
In this chapter, I briefly present constraint reasoning. Constraint reasoning has been a subfield... more In this chapter, I briefly present constraint reasoning. Constraint reasoning has been a subfield of artificial intelligence (AI) that is nowadays more well-known as constraint programming (CP). The change of name occurred more or less when CP has started to be widely used for solving combinatorial problems in industrial applications. This also corresponds to the moment where CP was enriched by the contributions from logic programming for the aspects related to languages and from operation research for the propagation of complex constraints. Considering the topic of this book, I will stay on a AI-oriented presentation of CP.
The r e i s n o n eed to s h ow t he importance of the l tering t echniques to solve constraint s... more The r e i s n o n eed to s h ow t he importance of the l tering t echniques to solve constraint s a tisfaction problems i.e. to n d v alues for problem variables subject to constraints that specify which c o m binations of values are consistent. They can be used during a preprocessing s t ep to remove once and for all some local inconsistencies, or during t he s e a r c h to e c i e n tly prune t he search tree. Recently, in 5], a comparison of the most practicable ltering t echniques concludes that restricted path c o nsistency (RPC) is a promising local consistency that requires little additional cpu time compared to arc consistency while removing most of the p a th i n verse inconsistent v alues. However, the RPC algorithm used for this comparison (presented in 1] and called RPC1 in the following) has a non optimal worst case time complexity a n d bad average time a n d space complexities. Therefore, we propose RPC2, a new RPC algorithm with O(end 2) w orst case time complexity a n d requiring less space than RPC1 in practice. The second aim of this paper is to extend RPC to n ew local consistencies, k-RPC and Max-RPC, and t o compare their pruning e ciency with t he o t her practicable local consistencies. Furthermore, we propose and s t udy a Max-RPC algorithm based on AC-6 that w e used for this comparison.
Constraint propagation is widely recognized as a fundamental reasoning component in constraint pr... more Constraint propagation is widely recognized as a fundamental reasoning component in constraint programming. In the last decade, the concept of "global constraint" has attracted significant attention, since it is critical to achieve reasonable pruning, and efficiency, in many applications. However, even if the name "global constraint" carries a strong intuition in itself, there is no formal definition of this important concept. This paper proposes various notions of globality in order to understand this concept more thoroughly.
Proceedings of the AAAI Conference on Artificial Intelligence
We propose to exploit cycles in the constraint network of a Constraint Satisfaction Problem (CSP)... more We propose to exploit cycles in the constraint network of a Constraint Satisfaction Problem (CSP) to vehicle constraint propagation and improve the effectiveness of local consistency algorithms. We focus our attention on the consistency property Partition-One Arc-Consistency (POAC), which is a stronger variant of Singleton Arc-Consistency (SAC). We modify the algorithm for enforcing POAC to operate on a minimum cycle basis (MCB) of the incidence graph of the CSP. We empirically show that our approach improves the performance of problem solving and constitutes a novel and effective localization of consistency algorithms. Although this paper focuses on POAC, we believe that exploiting cycles, such as MCBs, is applicable to other consistency algorithms and that our study opens a new direction in the design of consistency algorithms. This research is documented in a technical report (Woordward, Choueiry, and Bessiere 2016). http://consystlab.unl.edu/our_work/StudentReports/TR-UNL-CSE-20...
Proceedings of the Twenty-Seventh International Joint Conference on Artificial Intelligence, 2018
Constraint propagation during backtrack search significantly improves the performance of solving ... more Constraint propagation during backtrack search significantly improves the performance of solving a Constraint Satisfaction Problem. While Generalized Arc Consistency (GAC) is the most popular level of propagation, higher-level consistencies (HLC) are needed to solve difficult instances. Deciding to enforce an HLC instead of GAC remains the topic of active research. We propose a simple and effective strategy that reactively triggers an HLC by monitoring search performance: When search starts thrashing, we trigger an HLC, then conservatively revert to GAC. We detect thrashing by counting the number of backtracks at each level of the search tree and geometrically adjust the frequency of triggering an HLC based on its filtering effectiveness. We validate our approach on benchmark problems using Partition-One Arc-Consistency as an HLC. However, our strategy is generic and can be used with other higher-level consistency algorithms.
Enforcing local consistencies is one of the main features of constraint reasoning. Which level of... more Enforcing local consistencies is one of the main features of constraint reasoning. Which level of local consistency should be used when searching for solutions in a constraint network is a basic question. Arc consistency and partial forms of arc consistency have been widely studied, and have been known for sometime through the forward checking or the MAC search algorithms. Until recently, stronger forms of local consistency remained limited to those that change the structure of the constraint graph, and thus, could not be used in practice, especially on large networks. This paper focuses on the local consistencies that are stronger than arc consistency, without changing the structure of the network, i.e., only removing inconsistent values from the domains. In the last five years, several such local consistencies have been proposed by us or by others. We make an overview of all of them, and highlight some relations between them. We compare them both theoretically and experimentally, ...
Constraint propagation is widely recognized as a fundamental reasoning component in constraint pr... more Constraint propagation is widely recognized as a fundamental reasoning component in constraint programming. In the last decade, the concept of "global constraint" has attracted significant attention, since it is critical to achieve reasonable pruning, and efficiency, in many applications. However, even if the name "global constraint" carries a strong intuition in itself, there is no formal definition of this important concept. This paper proposes various notions of globality in order to understand this concept more thoroughly. [1] contains a long version of this short paper.
The notion of buffered resource is useful in many problems. A buffer contains a finite set of ite... more The notion of buffered resource is useful in many problems. A buffer contains a finite set of items required by some activities, and changing the content of the buffer is costly. For instance, in instruction scheduling, the registers are a buffered resource and any switch of registers has a significant impact on the total runtime of the compiled code. We first show that sequencing activities to minimize the number of switches in the buffer is NP-hard. We then introduce an algorithm which, given a set of already sequenced activities, computes a buffer assignment which minimizes the number of switches in linear time, i.e., O(nd) where n is the length of the sequence and d the number of buffered items. Next, we introduce an algorithm to achieve bound consistency on the constraint Switch, that bounds the number of changes in the buffer, in O(n 2 d + n 1.5 d 1.5) time. Finally, we report the results of experimental evaluations that demonstrate the efficiency of this propagator.
Filtering t echniques are essential in order to efciently solve constraint s a tisfaction problem... more Filtering t echniques are essential in order to efciently solve constraint s a tisfaction problems (CSPs). A blind s e a r c h o f t en leads to a combinatorial explosion, the algorithm repeatedly nding t he s a m e local inconsistencies. Maintaining a local consistency can strongly reduce the search e ort especially on hard and large problems. A good illustration are the goodtime performances on such problems of maintaining arc consistency during search compared to forward checking w h i c h m aintains a lower level of local consistency. O n t he o n e h and, arc consistency (2-consistency) is the m o s t u s e d l tering technique because it cheaply removes some v alues that cannot belong t o a n y solution. On the other hand, other k-consistencies (k 3) have important space and t ime requirements because they can change the set of constraints. They can only be used on very small CSPs. Thus, in this paper, we s t udy and compare the l tering techniques that are more pruningful than arc consistency while leaving u nchanged the set of constraints. As arc consistency, t hey only remove inconsistent v alues in the d o m ains, and so, can deal with large CSPs.
Proceedings of the AAAI Conference on Artificial Intelligence
Freuder and Elfe (1996) introduced Neighborhood Inverse Consistency (NIC) as a strong local consi... more Freuder and Elfe (1996) introduced Neighborhood Inverse Consistency (NIC) as a strong local consistency property for binary CSPs. While enforcing NIC can significantly filter the variables domains, the proposed algorithm is too costly to be used on dense graphs or for lookahead during search. In this paper, we introduce and characterize Relational Neighborhood Inverse Consistency (RNIC) as a local consistency property that operates on the dual graph of a non-binary CSP. We describe and characterize a practical algorithm for enforcing it. We argue that defining RNIC on the dual graph unveils unsuspected opportunities to reduce the computational cost of our algorithm and increase its filtering effectiveness. We show how to achieve those effects by modifying the topology of the dual graph, yielding new variations the RNIC property. We also introduce an adaptive strategy to automatically select the appropriate property to enforce given the connectivity of the dual graph. We integrate th...
Proceedings of the AAAI Conference on Artificial Intelligence
Consistency properties and algorithms for achieving them are at the heart of the success of Const... more Consistency properties and algorithms for achieving them are at the heart of the success of Constraint Programming. In this paper, we study the relational consistency property R(*,m)C, which is equivalent to m-wise consistency proposed in relational databases. We also define wR(*,m)C, a weaker variant of this property. We propose an algorithm for enforcing these properties on a Constraint Satisfaction Problem by tightening the existing relations and without introducing new ones. We empirically show that wR(*,m)C solves in a backtrack-free manner all the instances of some CSP benchmark classes, thus hinting at the tractability of those classes.
Contributions 1.The property Relational Neighborhood Inverse Consistency (RNIC) 2.Characterizatio... more Contributions 1.The property Relational Neighborhood Inverse Consistency (RNIC) 2.Characterization of RNIC in relation to previously known properties3.An efficient algorithm for enforcing RNIC, bounded by degree of the dual graph 4.Three reformulations of the dual graph to address topological limitations of the dual graph 5.An adaptive, automatic selection policy for choosing the appropriate dual graph 6.Empirical evidence on difficult CSP benchmarks Definition A Constraint Satisfaction Problem (CSP) is a combinatorial decision problem defined by a set of variables {A,B,C,…}, a set of domain values for these variables, and a set of constraints {R1,R2,R3,…} restricting the allowable combinations of values for variables. The task is to find a solution (i.e., an assignment of a value to each variable satisfying all constraints), or to find all such solutions. Local Consistency Local consistency is at the heart of Constraint Processing. It guarantees that all values (or tuples) particip...
Proceedings of the Twenty-Seventh International Joint Conference on Artificial Intelligence, 2018
We describe an online, interactive system with a graphical interface to illustrate the power and ... more We describe an online, interactive system with a graphical interface to illustrate the power and operation of consistency algorithms in a friendly and popular context, namely, solving Sudoku puzzles. Our tool implements algorithms for enforcing five (domain-based) consistency properties on binary and non-binary constraint models. Our tool is useful for research, education, and outreach. From a scientific standpoint, we propose a new consistency property that can solve the hardest known 9×9 Sudoku instances without search, but leave open the question of the lowest level of consistency needed to solve every 9×9 Sudoku puzzle. We have used the current tool and its predecessor in the classroom to introduce students to modeling problems with constraints, explain consistency properties, and illustrate the operations of constraint propagation and lookahead. Finally, we have also used this tool during outreach activities to demystify AI to children and the general public and show them how c...
Local consistency properties and algorithms for enforcing them are central to the success of Cons... more Local consistency properties and algorithms for enforcing them are central to the success of Constraint Processing. In this paper, we explore how to exploit the structure of the problem on the performance of the algorithm for enforcing consistency. We propose various strategies for managing the propagation queue of an algorithm for enforcing consistency, and empirically compare their effectiveness for solving CSPs with backtrack search and full lookahead. We focus our investigations on consistency algorithms that operate on the dual graph of a CSP and demonstrate the importance of exploiting a tree decomposition of the dual graph. Further, we note that exploiting structure is particularly striking on unsatisfiable instances. We conjecture that the approach for queue-management strategies benefits virtually all other propagation algorithms.
Relational consistency algorithms are instrumental for solving difficult instances of Constraint ... more Relational consistency algorithms are instrumental for solving difficult instances of Constraint Satisfaction Problems (CSPs), often allowing backtrack-free search. In this paper, we improve an algorithm for enforcing relational consistency by exploiting the property that the constraints of the dual encoding of a CSP are piecewise functional. This property allows us to partition a CSP relation into blocks of equivalent tuples at varying levels of granularity. Our new algorithm dynamically exploits those partitions. Our experiments show a significant improvement of the processing time for enforcing relational consistency.
In this chapter, I briefly present constraint reasoning. Constraint reasoning has been a subfield... more In this chapter, I briefly present constraint reasoning. Constraint reasoning has been a subfield of artificial intelligence (AI) that is nowadays more well-known as constraint programming (CP). The change of name occurred more or less when CP has started to be widely used for solving combinatorial problems in industrial applications. This also corresponds to the moment where CP was enriched by the contributions from logic programming for the aspects related to languages and from operation research for the propagation of complex constraints. Considering the topic of this book, I will stay on a AI-oriented presentation of CP.
The r e i s n o n eed to s h ow t he importance of the l tering t echniques to solve constraint s... more The r e i s n o n eed to s h ow t he importance of the l tering t echniques to solve constraint s a tisfaction problems i.e. to n d v alues for problem variables subject to constraints that specify which c o m binations of values are consistent. They can be used during a preprocessing s t ep to remove once and for all some local inconsistencies, or during t he s e a r c h to e c i e n tly prune t he search tree. Recently, in 5], a comparison of the most practicable ltering t echniques concludes that restricted path c o nsistency (RPC) is a promising local consistency that requires little additional cpu time compared to arc consistency while removing most of the p a th i n verse inconsistent v alues. However, the RPC algorithm used for this comparison (presented in 1] and called RPC1 in the following) has a non optimal worst case time complexity a n d bad average time a n d space complexities. Therefore, we propose RPC2, a new RPC algorithm with O(end 2) w orst case time complexity a n d requiring less space than RPC1 in practice. The second aim of this paper is to extend RPC to n ew local consistencies, k-RPC and Max-RPC, and t o compare their pruning e ciency with t he o t her practicable local consistencies. Furthermore, we propose and s t udy a Max-RPC algorithm based on AC-6 that w e used for this comparison.
Constraint propagation is widely recognized as a fundamental reasoning component in constraint pr... more Constraint propagation is widely recognized as a fundamental reasoning component in constraint programming. In the last decade, the concept of "global constraint" has attracted significant attention, since it is critical to achieve reasonable pruning, and efficiency, in many applications. However, even if the name "global constraint" carries a strong intuition in itself, there is no formal definition of this important concept. This paper proposes various notions of globality in order to understand this concept more thoroughly.
Proceedings of the AAAI Conference on Artificial Intelligence
We propose to exploit cycles in the constraint network of a Constraint Satisfaction Problem (CSP)... more We propose to exploit cycles in the constraint network of a Constraint Satisfaction Problem (CSP) to vehicle constraint propagation and improve the effectiveness of local consistency algorithms. We focus our attention on the consistency property Partition-One Arc-Consistency (POAC), which is a stronger variant of Singleton Arc-Consistency (SAC). We modify the algorithm for enforcing POAC to operate on a minimum cycle basis (MCB) of the incidence graph of the CSP. We empirically show that our approach improves the performance of problem solving and constitutes a novel and effective localization of consistency algorithms. Although this paper focuses on POAC, we believe that exploiting cycles, such as MCBs, is applicable to other consistency algorithms and that our study opens a new direction in the design of consistency algorithms. This research is documented in a technical report (Woordward, Choueiry, and Bessiere 2016). http://consystlab.unl.edu/our_work/StudentReports/TR-UNL-CSE-20...
Proceedings of the Twenty-Seventh International Joint Conference on Artificial Intelligence, 2018
Constraint propagation during backtrack search significantly improves the performance of solving ... more Constraint propagation during backtrack search significantly improves the performance of solving a Constraint Satisfaction Problem. While Generalized Arc Consistency (GAC) is the most popular level of propagation, higher-level consistencies (HLC) are needed to solve difficult instances. Deciding to enforce an HLC instead of GAC remains the topic of active research. We propose a simple and effective strategy that reactively triggers an HLC by monitoring search performance: When search starts thrashing, we trigger an HLC, then conservatively revert to GAC. We detect thrashing by counting the number of backtracks at each level of the search tree and geometrically adjust the frequency of triggering an HLC based on its filtering effectiveness. We validate our approach on benchmark problems using Partition-One Arc-Consistency as an HLC. However, our strategy is generic and can be used with other higher-level consistency algorithms.
Enforcing local consistencies is one of the main features of constraint reasoning. Which level of... more Enforcing local consistencies is one of the main features of constraint reasoning. Which level of local consistency should be used when searching for solutions in a constraint network is a basic question. Arc consistency and partial forms of arc consistency have been widely studied, and have been known for sometime through the forward checking or the MAC search algorithms. Until recently, stronger forms of local consistency remained limited to those that change the structure of the constraint graph, and thus, could not be used in practice, especially on large networks. This paper focuses on the local consistencies that are stronger than arc consistency, without changing the structure of the network, i.e., only removing inconsistent values from the domains. In the last five years, several such local consistencies have been proposed by us or by others. We make an overview of all of them, and highlight some relations between them. We compare them both theoretically and experimentally, ...
Constraint propagation is widely recognized as a fundamental reasoning component in constraint pr... more Constraint propagation is widely recognized as a fundamental reasoning component in constraint programming. In the last decade, the concept of "global constraint" has attracted significant attention, since it is critical to achieve reasonable pruning, and efficiency, in many applications. However, even if the name "global constraint" carries a strong intuition in itself, there is no formal definition of this important concept. This paper proposes various notions of globality in order to understand this concept more thoroughly. [1] contains a long version of this short paper.
The notion of buffered resource is useful in many problems. A buffer contains a finite set of ite... more The notion of buffered resource is useful in many problems. A buffer contains a finite set of items required by some activities, and changing the content of the buffer is costly. For instance, in instruction scheduling, the registers are a buffered resource and any switch of registers has a significant impact on the total runtime of the compiled code. We first show that sequencing activities to minimize the number of switches in the buffer is NP-hard. We then introduce an algorithm which, given a set of already sequenced activities, computes a buffer assignment which minimizes the number of switches in linear time, i.e., O(nd) where n is the length of the sequence and d the number of buffered items. Next, we introduce an algorithm to achieve bound consistency on the constraint Switch, that bounds the number of changes in the buffer, in O(n 2 d + n 1.5 d 1.5) time. Finally, we report the results of experimental evaluations that demonstrate the efficiency of this propagator.
Filtering t echniques are essential in order to efciently solve constraint s a tisfaction problem... more Filtering t echniques are essential in order to efciently solve constraint s a tisfaction problems (CSPs). A blind s e a r c h o f t en leads to a combinatorial explosion, the algorithm repeatedly nding t he s a m e local inconsistencies. Maintaining a local consistency can strongly reduce the search e ort especially on hard and large problems. A good illustration are the goodtime performances on such problems of maintaining arc consistency during search compared to forward checking w h i c h m aintains a lower level of local consistency. O n t he o n e h and, arc consistency (2-consistency) is the m o s t u s e d l tering technique because it cheaply removes some v alues that cannot belong t o a n y solution. On the other hand, other k-consistencies (k 3) have important space and t ime requirements because they can change the set of constraints. They can only be used on very small CSPs. Thus, in this paper, we s t udy and compare the l tering techniques that are more pruningful than arc consistency while leaving u nchanged the set of constraints. As arc consistency, t hey only remove inconsistent v alues in the d o m ains, and so, can deal with large CSPs.
Uploads
Papers by Christian Bessiere