首页 | 本学科首页   官方微博 | 高级检索  
     


On matrices, automata, and double counting in constraint programming
Authors:Nicolas Beldiceanu  Mats Carlsson  Pierre Flener  Justin Pearson
Affiliation:1. TASC Team (CNRS/INRIA), Mines de Nantes, 44307, Nantes, France
2. SICS, P.O. Box 1263, 164 29, Kista, Sweden
3. Department of Information Technology, Uppsala University, Box 337, 751 05, Uppsala, Sweden
Abstract:Matrix models are ubiquitous for constraint problems. Many such problems have a matrix of variables $mathcal{M}$ , with the same constraint C defined by a finite-state automaton $mathcal{A}$ on each row of $mathcal{M}$ and a global cardinality constraint $mathit{gcc}$ on each column of $mathcal{M}$ . We give two methods for deriving, by double counting, necessary conditions on the cardinality variables of the $mathit{gcc}$ constraints from the automaton $mathcal{A}$ . The first method yields linear necessary conditions and simple arithmetic constraints. The second method introduces the cardinality automaton, which abstracts the overall behaviour of all the row automata and can be encoded by a set of linear constraints. We also provide a domain consistency filtering algorithm for the conjunction of lexicographic ordering constraints between adjacent rows of $mathcal{M}$ and (possibly different) automaton constraints on the rows. We evaluate the impact of our methods in terms of runtime and search effort on a large set of nurse rostering problem instances.
Keywords:
本文献已被 SpringerLink 等数据库收录!
设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号