CP '01 Proceedings of the 7th International Conference on Principles and Practice of Constraint Programming
LICS '05 Proceedings of the 20th Annual IEEE Symposium on Logic in Computer Science
Automating branch-and-bound for dynamic programs
PEPM '08 Proceedings of the 2008 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
Minimum Cardinality Matrix Decomposition into Consecutive-Ones Matrices: CP and IP Approaches
CPAIOR '07 Proceedings of the 4th international conference on Integration of AI and OR Techniques in Constraint Programming for Combinatorial Optimization Problems
Dynamic Programming to Minimize the Maximum Number of Open Stacks
INFORMS Journal on Computing
Propagation via lazy clause generation
Constraints
Bin completion algorithms for multicontainer packing, knapsack, and covering problems
Journal of Artificial Intelligence Research
IJCAI'07 Proceedings of the 20th international joint conference on Artifical intelligence
AND/OR branch-and-bound for graphical models
IJCAI'05 Proceedings of the 19th international joint conference on Artificial intelligence
MiniZinc: towards a standard CP modelling language
CP'07 Proceedings of the 13th international conference on Principles and practice of constraint programming
Minimizing the maximum number of open stacks by customer search
CP'09 Proceedings of the 15th international conference on Principles and practice of constraint programming
Generalized arc consistency for global cardinality constraint
AAAI'96 Proceedings of the thirteenth national conference on Artificial intelligence - Volume 1
Improving combinatorial optimization: extended abstract
IJCAI'13 Proceedings of the Twenty-Third international joint conference on Artificial Intelligence
Hi-index | 0.02 |
Many search problems contain large amounts of redundancy in the search. In this paper we examine how to automatically exploit subproblem dominance, which arises when different partial assignments lead to subproblems that dominate (or are dominated by) other subproblems. Subproblem dominance is exploited by caching subproblems that have already been explored by the search, using keys that characterise the subproblems, and failing the search when the current subproblem is dominated by a subproblem already in the cache. In this paper we show how we can automatically and efficiently define keys for arbitrary constraint problems using constraint projection. We show how, for search problems where subproblem dominance arises, a constraint programming solver with this capability can solve these problems orders of magnitude faster than solvers without caching. The system is fully automatic, i.e., subproblem dominance is detected and exploited without any effort from the problem modeller.