Abstract: This paper revisits the classical cardinality operator introducing new propagation rules that operate on variables that occur in more than one constraint. It also introduces a restricted case of the cardinality operator which is characterized by a structure of sliding constraints on consecutive variables. We call it cardinality-path and take advantage of these restrictions in order to come up with more efficient propagation algorithms. From an application point of view the cardinality-path constraint allows to express a host of regulation constraints occurring in personnel planning problems. We have used the metaprogramming services of Prolog in order to implement the cardinality-path constraint within SICStus Prolog.
Loading