1 research outputs found
Linear-time filtering algorithms for the disjunctive constraint and a quadratic filtering algorithm for the cumulative not-first not-last
We present new filtering algorithms for Disjunctive and Cumulative
constraints, each of which improves the complexity of the state-of-theart
algorithms by a factor of log n. We show how to perform TimeTabling
and Detectable Precedences in linear time on the Disjunctive
constraint. Furthermore, we present a linear-time Overload Checking for
the Disjunctive and Cumulative constraints. Finally, we show how
the rule of Not-first/Not-last can be enforced in quadratic time for the
Cumulative constraint. These algorithms rely on the union find data
structure, from which we take advantage to introduce a new data structure
that we call it time line. This data structure provides constant time
operations that were previously implemented in logarithmic time by the
Θ-tree data structure. Experiments show that these new algorithms are
competitive even for a small number of tasks and outperform existing algorithms
as the number of tasks increases. We also show that the time
line can be used to solve specific scheduling problems