Chavalit Likitvivatanavong - Profile on Academia.edu (original) (raw)
Papers by Chavalit Likitvivatanavong
Deriving Explanations and Implications for Constraint Satisfaction Problems
We explore the problem of deriving explanations and implications for constraint satisfaction prob... more We explore the problem of deriving explanations and implications for constraint satisfaction problems (CSPs). We show that consistency methods can be used to generate inferences that support both functions. Explanations take the form of trees that showthe basis for assignments and deletions in terms of previous selections. These ideas are illustrated by dynamic, interactive testbeds.
Generalized arc consistency (GAC) is one of the most fundamental properties for reducing the sear... more Generalized arc consistency (GAC) is one of the most fundamental properties for reducing the search space when solving constraint satisfaction problems (CSPs). Consistencies stronger than GAC have also been shown useful, but the challenge is to develop efficient and simple filtering algorithms. Several CSP transformations are proposed recently so that the GAC algorithms can be applied on the transformed CSP to enforce stronger consistencies. Among them, the factor encoding (FE) is shown to be promising with respect to recent higher-order consistency algorithms. Nonetheless, one potential drawback of the FE is the fact that it enlarges the table relations as it increases constraint arity. We propose a variation of the FE that aims at reducing redundant columns in the constraints of the FE while still preserving full pairwise consistency. Experiments show that the new approach is competitive over a variety of random and structured benchmarks.
Explanations and Optimization in
In this extended abstract we consider con guration problems with preferences rather than just har... more In this extended abstract we consider con guration problems with preferences rather than just hard constraints, and we analyze and discuss the features that such con gurators should have. In particular, these con gurators should provide explanations for the current state, implications of a future choice, and also information about the quality of future solutions, all with the aim of guiding the user in the process of making the right choices to obtain a good solution.
Lecture Notes in Computer Science, 2014
Filtering constraint networks to reduce search space is one of the main cornerstones of Constrain... more Filtering constraint networks to reduce search space is one of the main cornerstones of Constraint Programming and among them (Generalized) Arc Consistency has been the most fundamental. While stronger consistencies are also the subject of considerable attention, none matches GAC's and for this reason it continues to advance at a steady pace and has become the popular choice of consistency for filtering algorithms. In this paper, we build on the success of GAC by proposing a way to transform a constraint network into another such that enforcing GAC on the latter is equivalent to enforcing a stronger consistency on the former. The key idea is to factor out commonly shared variables from constraints' scopes, form new variables, then re-attach them back to the constraints where they come from. Experiments show that this method is inexpensive and outperforms specialized algorithms and other techniques when it comes to full pair-wise consistency (FPWC).
Deriving Explanations and Implications for Constraint Satisfaction Problems
Lecture Notes in Computer Science, 2001
ABSTRACT We explore the problem of deriving explanations and implications for constraint satisfac... more ABSTRACT We explore the problem of deriving explanations and implications for constraint satisfaction problems (CSPs). We show that consistency methods can be used to generate inferences that support both functions. Explanations take the form of trees that showthe basis for assignments and deletions in terms of previous selections. These ideas are illustrated by dynamic, interactive testbeds.
ACM SIGAPP Applied Computing Review, 2013
Onto-substitutability has been shown to be intrinsic to how a domain value is considered redundan... more Onto-substitutability has been shown to be intrinsic to how a domain value is considered redundant in Constraint Satisfaction Problems (CSPs). A value is onto-substitutable if any solution involving that value remains a solution when that value is replaced by some other value. We redefine onto-substitutability to accommodate binary relationships and study its implication. Joint interchangeability, an extension of onto-substitutability to its interchangeability counterpart, emerges as one of the results. We propose a new way of removing interchangeable values by constructing a new value as an intermediate step, as well as introduce virtual interchangeability, a local reasoning that leads to joint interchangeability and allows values to be merged together. Algorithms for removing onto-substitutable values are also proposed. 1
Lecture Notes in Computer Science, 2007
We present algorithms that perform the extraction of partial assignments from binary Constraint S... more We present algorithms that perform the extraction of partial assignments from binary Constraint Satisfaction Problems without introducing new constraints. They are based on a new perspective on domain values: we view a value not as a single, indivisible unit, but as a combination of value fragments. Applications include removing nogoods while maintaining constraint arity, learning nogoods in the constraint network, enforcing on neighborhood inverse consistency and removal of unsolvable sub-problems from the constraint network.
Lecture Notes in Computer Science, 2008
The concept of Interchangeability was developed to deal with redundancy of values in the same dom... more The concept of Interchangeability was developed to deal with redundancy of values in the same domain. Conventional algorithms for detecting Neighborhood Interchangeability work by gradually establishing relationships between values from scratch. We propose the opposite strategy: start by assuming everything is interchangeable and disprove certain relations as more information arises. Our refutation-based algorithms have much better lower bounds whereas the lower bound and the upper bound of the traditional algorithms are asymptotically identical.
Constraints, 2014
Simple Tabular Reduction (STR) is a state-of-the-art filtering technique for enforcing Generalize... more Simple Tabular Reduction (STR) is a state-of-the-art filtering technique for enforcing Generalized Arc Consistency (GAC) on positive table constraints. Despite its good performance in practice, the STR2 algorithm suffers from a mandatory lower bound equal to the number of domain values in the current state of the problem, because the presence of each value must be justified every time STR2 is called. We overcome this fixed cost by redesigning STR2 and incorporating watched tuples. Experiments show that the revised algorithm is better at coping with problems that involve a large number of small changes during search and it can be more than twice as fast on certain structured problems.
STR3: A path-optimal filtering algorithm for table constraints
Artificial Intelligence, 2015
ABSTRACT Constraint propagation is a key to the success of Constraint Programming (CP). The princ... more ABSTRACT Constraint propagation is a key to the success of Constraint Programming (CP). The principle is that filtering algorithms associated with constraints are executed in sequence until quiescence is reached. Many such algorithms have been proposed over the years to enforce the property called Generalized Arc Consistency (GAC) on many types of constraints, including table constraints that are defined extensionally. Recent advances in GAC algorithms for extensional constraints rely on directly manipulating tables during search. This is the case with a simple approach called Simple Tabular Reduction (STR), which systematically maintains tables of constraints to their relevant lists of tuples. In particular, STR2, a refined STR variant is among the most efficient GAC algorithms for positive table constraints. In this paper, we revisit this approach by proposing a new GAC algorithm called STR3 that is specifically designed to enforce GAC during backtrack search. By indexing tables and reasoning from deleted values, we show that STR3 can avoid systematically iterating over the full set of current tuples, contrary to STR2. An important property of STR3 is that it can completely avoid unnecessary traversal of tables, making it optimal along any path of the search tree. We also study a variant of STR3, based on an optimal circular way for traversing tables, and discuss the relationship of STR3 with two other optimal GAC algorithms introduced in the literature, namely, GAC4 and AC5TC-Tr. Finally, we demonstrate experimentally how STR3 is competitive with the state-of-the-art. In particular, our extensive experiments show that STR3 is generally faster than STR2 when the average size of tables is not reduced too drastically during search, making STR3 complementary to STR2.
Computing Explanations and Implications in Preference-Based Configurators
Lecture Notes in Computer Science, 2003
We consider configuration problems with preferences rather than just hard constraints, and we ana... more We consider configuration problems with preferences rather than just hard constraints, and we analyze and discuss the features that such configurators should have. In particular, these configurators should provide explanations for the current state, implications of a future ...
Onto-substitutability has been shown to be intrinsic to how a domain value is considered redundan... more Onto-substitutability has been shown to be intrinsic to how a domain value is considered redundant. A value is ontosubstitutable if any solution involving that value remains a solution when that value is replaced by some other value. We redefine onto-substitutability to accommodate binary relationships and study its implication. Joint interchangeability, an extension of onto-substitutability to its interchangeability counterpart, emerges as one of the results. We propose a new way of removing interchangeable values by constructing a new value as an intermediate step, as well as introduce virtual interchangeability, a local reasoning that leads to joint interchangeability and allows values to be merged together.
Filtering by Generalized Arc Consistency (GAC) is a fundamental technique in Constraint Programmi... more Filtering by Generalized Arc Consistency (GAC) is a fundamental technique in Constraint Programming. Recent advances in GAC algorithms for extensional constraints rely on direct manipulation of tables during search. Simple Tabular Reduction (STR), which systematically removes invalid tuples from tables, has been shown to be a simple yet efficient approach. STR2, a refinement of STR, is considered to be among the best filtering algorithms for positive table constraints. In this paper, we introduce a new GAC algorithm called STR3 that is specifically designed to enforce GAC during search. STR3 can completely avoid unnecessary traversal of tables, making it optimal along any path of the search tree. Our experiments show that STR3 is much faster than STR2 when the average size of the tables is not reduced drastically during search.
Maintaining arc consistency using adaptive domain ordering
Explanations and optimization in preference-based configurators
Abstract: In this extended abstract we consider conguration problems with preferencesrather than ... more Abstract: In this extended abstract we consider conguration problems with preferencesrather than just hard constraints, and we analyze and discuss thefeatures that such congurators should have. In particular, these conguratorsshould provide explanations for the current state, implications of afuture choice, and also information about the quality of future solutions,all with the aim of guiding the user in the process of
We investigate interchangeability of values in CSPs, based on an approach where a single value in... more We investigate interchangeability of values in CSPs, based on an approach where a single value in the domain of a variable can be treated as a combination of "sub-values". An algorithm for removing overlapping sub-values is presented. The resulting CSPs take less time to find all solutions and yield a more compactly-representable, but equivalent, solution set. Experimental results show that, especially in loose problems with large numbers of solutions, dramatic savings in search cost are achieved.
If-then rules are the core knowledge representation technology in currently deployed expert syste... more If-then rules are the core knowledge representation technology in currently deployed expert systems. However, if we replace rules by constraints, we can greatly extend both the expressive and reasoning functionality of such systems. An open issue, however, is how best should constraint-based expert systems decide which questions to ask their users during a consultation -how can an interactive constraint-based expert system extract needed data from its users while imposing the smallest possible burden on those users. In this paper we consider three types of approach to the task.
We study local interchangeability of values in constraint networks based on a new approach where ... more We study local interchangeability of values in constraint networks based on a new approach where a single value in the domain of a variable can be treated as a combination of "subvalues". We present an algorithm for breaking up values and combining identical fragments. Experimental results show that the transformed problems take less time to solve for all solutions and yield more compactly-representable, but equivalent, solution sets. We obtain new theoretical results on context dependent interchangeability and full interchangeability, and suggest some other applications.
Enforcing arc consistency (AC) during search has proven to be a very effective method in solving ... more Enforcing arc consistency (AC) during search has proven to be a very effective method in solving Constraint Satisfaction Problems and it has been widely-used in many Constraint Programming systems. Although much effort has been made to design efficient standalone AC algorithms, there is no systematic study on how to efficiently enforce AC during search, as far as we know. The significance of the latter is clear given the fact that AC will be enforced millions of times in solving hard problems. In this paper, we propose a framework for enforcing AC during search (ACS) and complexity measurements of ACS algorithms. Based on this framework, several ACS algorithms are designed to take advantage of the residual data left in the data structures by the previous invocation(s) of ACS. The algorithms vary in the worst-case time and space complexity and other complexity measurements. Empirical study shows that some of the new ACS algorithms perform better than the conventional implementation of AC algorithms in a search procedure.
In this work we explore the problem of generating explanations for configuration problems using o... more In this work we explore the problem of generating explanations for configuration problems using on the constraint satisfaction (CSP) framework. In addition, we are concerned with deriving implications from user choices in order to guide selection of later choices. We show that the consistency methods used in connection with constraint processing can be used to generate inferences that support both functions. In this work we use the ¡ -queens problem as a testbed. The system we have developed is interactive and allows the user to make selections and perform arc consistency on the current problem, as well as retracting selections, a typical arrangement with current configurator systems. At the same time it generates explanations for value deletions and current choices as well as implications in terms of the amount of future domain reduction that will follow certain choices and whether these choices will lead to solutions or non-solutions. Explanations take the form of trees which show the basis in terms of previous choices for current choices and deletions. Together, these methods suggest ways in which the process of solving combinatorial problems can be made more perspicuous and more interactive.
Deriving Explanations and Implications for Constraint Satisfaction Problems
We explore the problem of deriving explanations and implications for constraint satisfaction prob... more We explore the problem of deriving explanations and implications for constraint satisfaction problems (CSPs). We show that consistency methods can be used to generate inferences that support both functions. Explanations take the form of trees that showthe basis for assignments and deletions in terms of previous selections. These ideas are illustrated by dynamic, interactive testbeds.
Generalized arc consistency (GAC) is one of the most fundamental properties for reducing the sear... more Generalized arc consistency (GAC) is one of the most fundamental properties for reducing the search space when solving constraint satisfaction problems (CSPs). Consistencies stronger than GAC have also been shown useful, but the challenge is to develop efficient and simple filtering algorithms. Several CSP transformations are proposed recently so that the GAC algorithms can be applied on the transformed CSP to enforce stronger consistencies. Among them, the factor encoding (FE) is shown to be promising with respect to recent higher-order consistency algorithms. Nonetheless, one potential drawback of the FE is the fact that it enlarges the table relations as it increases constraint arity. We propose a variation of the FE that aims at reducing redundant columns in the constraints of the FE while still preserving full pairwise consistency. Experiments show that the new approach is competitive over a variety of random and structured benchmarks.
Explanations and Optimization in
In this extended abstract we consider con guration problems with preferences rather than just har... more In this extended abstract we consider con guration problems with preferences rather than just hard constraints, and we analyze and discuss the features that such con gurators should have. In particular, these con gurators should provide explanations for the current state, implications of a future choice, and also information about the quality of future solutions, all with the aim of guiding the user in the process of making the right choices to obtain a good solution.
Lecture Notes in Computer Science, 2014
Filtering constraint networks to reduce search space is one of the main cornerstones of Constrain... more Filtering constraint networks to reduce search space is one of the main cornerstones of Constraint Programming and among them (Generalized) Arc Consistency has been the most fundamental. While stronger consistencies are also the subject of considerable attention, none matches GAC's and for this reason it continues to advance at a steady pace and has become the popular choice of consistency for filtering algorithms. In this paper, we build on the success of GAC by proposing a way to transform a constraint network into another such that enforcing GAC on the latter is equivalent to enforcing a stronger consistency on the former. The key idea is to factor out commonly shared variables from constraints' scopes, form new variables, then re-attach them back to the constraints where they come from. Experiments show that this method is inexpensive and outperforms specialized algorithms and other techniques when it comes to full pair-wise consistency (FPWC).
Deriving Explanations and Implications for Constraint Satisfaction Problems
Lecture Notes in Computer Science, 2001
ABSTRACT We explore the problem of deriving explanations and implications for constraint satisfac... more ABSTRACT We explore the problem of deriving explanations and implications for constraint satisfaction problems (CSPs). We show that consistency methods can be used to generate inferences that support both functions. Explanations take the form of trees that showthe basis for assignments and deletions in terms of previous selections. These ideas are illustrated by dynamic, interactive testbeds.
ACM SIGAPP Applied Computing Review, 2013
Onto-substitutability has been shown to be intrinsic to how a domain value is considered redundan... more Onto-substitutability has been shown to be intrinsic to how a domain value is considered redundant in Constraint Satisfaction Problems (CSPs). A value is onto-substitutable if any solution involving that value remains a solution when that value is replaced by some other value. We redefine onto-substitutability to accommodate binary relationships and study its implication. Joint interchangeability, an extension of onto-substitutability to its interchangeability counterpart, emerges as one of the results. We propose a new way of removing interchangeable values by constructing a new value as an intermediate step, as well as introduce virtual interchangeability, a local reasoning that leads to joint interchangeability and allows values to be merged together. Algorithms for removing onto-substitutable values are also proposed. 1
Lecture Notes in Computer Science, 2007
We present algorithms that perform the extraction of partial assignments from binary Constraint S... more We present algorithms that perform the extraction of partial assignments from binary Constraint Satisfaction Problems without introducing new constraints. They are based on a new perspective on domain values: we view a value not as a single, indivisible unit, but as a combination of value fragments. Applications include removing nogoods while maintaining constraint arity, learning nogoods in the constraint network, enforcing on neighborhood inverse consistency and removal of unsolvable sub-problems from the constraint network.
Lecture Notes in Computer Science, 2008
The concept of Interchangeability was developed to deal with redundancy of values in the same dom... more The concept of Interchangeability was developed to deal with redundancy of values in the same domain. Conventional algorithms for detecting Neighborhood Interchangeability work by gradually establishing relationships between values from scratch. We propose the opposite strategy: start by assuming everything is interchangeable and disprove certain relations as more information arises. Our refutation-based algorithms have much better lower bounds whereas the lower bound and the upper bound of the traditional algorithms are asymptotically identical.
Constraints, 2014
Simple Tabular Reduction (STR) is a state-of-the-art filtering technique for enforcing Generalize... more Simple Tabular Reduction (STR) is a state-of-the-art filtering technique for enforcing Generalized Arc Consistency (GAC) on positive table constraints. Despite its good performance in practice, the STR2 algorithm suffers from a mandatory lower bound equal to the number of domain values in the current state of the problem, because the presence of each value must be justified every time STR2 is called. We overcome this fixed cost by redesigning STR2 and incorporating watched tuples. Experiments show that the revised algorithm is better at coping with problems that involve a large number of small changes during search and it can be more than twice as fast on certain structured problems.
STR3: A path-optimal filtering algorithm for table constraints
Artificial Intelligence, 2015
ABSTRACT Constraint propagation is a key to the success of Constraint Programming (CP). The princ... more ABSTRACT Constraint propagation is a key to the success of Constraint Programming (CP). The principle is that filtering algorithms associated with constraints are executed in sequence until quiescence is reached. Many such algorithms have been proposed over the years to enforce the property called Generalized Arc Consistency (GAC) on many types of constraints, including table constraints that are defined extensionally. Recent advances in GAC algorithms for extensional constraints rely on directly manipulating tables during search. This is the case with a simple approach called Simple Tabular Reduction (STR), which systematically maintains tables of constraints to their relevant lists of tuples. In particular, STR2, a refined STR variant is among the most efficient GAC algorithms for positive table constraints. In this paper, we revisit this approach by proposing a new GAC algorithm called STR3 that is specifically designed to enforce GAC during backtrack search. By indexing tables and reasoning from deleted values, we show that STR3 can avoid systematically iterating over the full set of current tuples, contrary to STR2. An important property of STR3 is that it can completely avoid unnecessary traversal of tables, making it optimal along any path of the search tree. We also study a variant of STR3, based on an optimal circular way for traversing tables, and discuss the relationship of STR3 with two other optimal GAC algorithms introduced in the literature, namely, GAC4 and AC5TC-Tr. Finally, we demonstrate experimentally how STR3 is competitive with the state-of-the-art. In particular, our extensive experiments show that STR3 is generally faster than STR2 when the average size of tables is not reduced too drastically during search, making STR3 complementary to STR2.
Computing Explanations and Implications in Preference-Based Configurators
Lecture Notes in Computer Science, 2003
We consider configuration problems with preferences rather than just hard constraints, and we ana... more We consider configuration problems with preferences rather than just hard constraints, and we analyze and discuss the features that such configurators should have. In particular, these configurators should provide explanations for the current state, implications of a future ...
Onto-substitutability has been shown to be intrinsic to how a domain value is considered redundan... more Onto-substitutability has been shown to be intrinsic to how a domain value is considered redundant. A value is ontosubstitutable if any solution involving that value remains a solution when that value is replaced by some other value. We redefine onto-substitutability to accommodate binary relationships and study its implication. Joint interchangeability, an extension of onto-substitutability to its interchangeability counterpart, emerges as one of the results. We propose a new way of removing interchangeable values by constructing a new value as an intermediate step, as well as introduce virtual interchangeability, a local reasoning that leads to joint interchangeability and allows values to be merged together.
Filtering by Generalized Arc Consistency (GAC) is a fundamental technique in Constraint Programmi... more Filtering by Generalized Arc Consistency (GAC) is a fundamental technique in Constraint Programming. Recent advances in GAC algorithms for extensional constraints rely on direct manipulation of tables during search. Simple Tabular Reduction (STR), which systematically removes invalid tuples from tables, has been shown to be a simple yet efficient approach. STR2, a refinement of STR, is considered to be among the best filtering algorithms for positive table constraints. In this paper, we introduce a new GAC algorithm called STR3 that is specifically designed to enforce GAC during search. STR3 can completely avoid unnecessary traversal of tables, making it optimal along any path of the search tree. Our experiments show that STR3 is much faster than STR2 when the average size of the tables is not reduced drastically during search.
Maintaining arc consistency using adaptive domain ordering
Explanations and optimization in preference-based configurators
Abstract: In this extended abstract we consider conguration problems with preferencesrather than ... more Abstract: In this extended abstract we consider conguration problems with preferencesrather than just hard constraints, and we analyze and discuss thefeatures that such congurators should have. In particular, these conguratorsshould provide explanations for the current state, implications of afuture choice, and also information about the quality of future solutions,all with the aim of guiding the user in the process of
We investigate interchangeability of values in CSPs, based on an approach where a single value in... more We investigate interchangeability of values in CSPs, based on an approach where a single value in the domain of a variable can be treated as a combination of "sub-values". An algorithm for removing overlapping sub-values is presented. The resulting CSPs take less time to find all solutions and yield a more compactly-representable, but equivalent, solution set. Experimental results show that, especially in loose problems with large numbers of solutions, dramatic savings in search cost are achieved.
If-then rules are the core knowledge representation technology in currently deployed expert syste... more If-then rules are the core knowledge representation technology in currently deployed expert systems. However, if we replace rules by constraints, we can greatly extend both the expressive and reasoning functionality of such systems. An open issue, however, is how best should constraint-based expert systems decide which questions to ask their users during a consultation -how can an interactive constraint-based expert system extract needed data from its users while imposing the smallest possible burden on those users. In this paper we consider three types of approach to the task.
We study local interchangeability of values in constraint networks based on a new approach where ... more We study local interchangeability of values in constraint networks based on a new approach where a single value in the domain of a variable can be treated as a combination of "subvalues". We present an algorithm for breaking up values and combining identical fragments. Experimental results show that the transformed problems take less time to solve for all solutions and yield more compactly-representable, but equivalent, solution sets. We obtain new theoretical results on context dependent interchangeability and full interchangeability, and suggest some other applications.
Enforcing arc consistency (AC) during search has proven to be a very effective method in solving ... more Enforcing arc consistency (AC) during search has proven to be a very effective method in solving Constraint Satisfaction Problems and it has been widely-used in many Constraint Programming systems. Although much effort has been made to design efficient standalone AC algorithms, there is no systematic study on how to efficiently enforce AC during search, as far as we know. The significance of the latter is clear given the fact that AC will be enforced millions of times in solving hard problems. In this paper, we propose a framework for enforcing AC during search (ACS) and complexity measurements of ACS algorithms. Based on this framework, several ACS algorithms are designed to take advantage of the residual data left in the data structures by the previous invocation(s) of ACS. The algorithms vary in the worst-case time and space complexity and other complexity measurements. Empirical study shows that some of the new ACS algorithms perform better than the conventional implementation of AC algorithms in a search procedure.
In this work we explore the problem of generating explanations for configuration problems using o... more In this work we explore the problem of generating explanations for configuration problems using on the constraint satisfaction (CSP) framework. In addition, we are concerned with deriving implications from user choices in order to guide selection of later choices. We show that the consistency methods used in connection with constraint processing can be used to generate inferences that support both functions. In this work we use the ¡ -queens problem as a testbed. The system we have developed is interactive and allows the user to make selections and perform arc consistency on the current problem, as well as retracting selections, a typical arrangement with current configurator systems. At the same time it generates explanations for value deletions and current choices as well as implications in terms of the amount of future domain reduction that will follow certain choices and whether these choices will lead to solutions or non-solutions. Explanations take the form of trees which show the basis in terms of previous choices for current choices and deletions. Together, these methods suggest ways in which the process of solving combinatorial problems can be made more perspicuous and more interactive.