Generalized arc consistency for global cardinality constraint
Jean-Charles Régin
Abstract
Jean-Charles Régin
Abstract
A global cardinality constraint (gcc) is specified in terms of a set of variables X = fx1 ; :::; xpg which take their values in a subset of V = fv1 ; :::; vdg. It constrains the number of times a value v i 2 V is assigned toavariable in X to be in an interval (l i ;c i ). Cardinality constraints have proved very useful in many real-life problems, suchas scheduling, timetabling, or resource allocation. A gcc is more general than a constraint of difference, which requires each interval to be #0; 1#. In this paper, we present an efficient way of implementing generalized arc consistency for a gcc. The algorithm we propose is based on a new theorem of flow theory. Its space complexity is O(#Xj#jVj) and its time complexity is O(jXj 2 #jVj). We also show how this algorithm can efficiently be combined with other filtering techniques.
OpenAlex reports 316 citations for this work. Citation counts describe recorded attention and do not establish research quality.
A contribution statement is not available in the OpenAlex record.
Method details are not available in the OpenAlex metadata.
Findings are not separately available in the OpenAlex metadata.
Limitations are not available in the OpenAlex metadata.
Application details are not available in the OpenAlex metadata.
A global cardinality constraint (gcc) is specified in terms of a set of variables X = fx1 ; :::; xpg which take their values in a subset of V = fv1 ; :::; vdg. It constrains the number of times a value v i 2 V is assigned toavariable in X to be in an interval (l i ;c i ). Cardinality constraints have proved very useful in many real-life problems, suchas scheduling, timetabling, or resource allocation. A gcc is more general than a constraint of difference, which requires each interval to be #0; 1#. In this paper, we present an efficient way of implementing generalized arc consistency for a gcc. The algorithm we propose is based on a new theorem of flow theory. Its space complexity is O(#Xj#jVj) and its time complexity is O(jXj 2 #jVj). We also show how this algorithm can efficiently be combined with other filtering techniques.
Key concepts: Cardinality (data modeling), Local consistency, Interval (graph theory), Consistency (knowledge bases), Mathematical optimization, Constraint (computer-aided design), Mathematics, Constraint satisfaction problem