David Rijsman wrote:
> Hi,
>
> First of all compliments for another very nice version. I am looking at the
> new scheduling constraints introduced in version 4.3.0, and I trying to
> understand why you have decided the following for some of the new cumulative
> and unary constraints:
>
> "The propagator does not enforce s = p + e, this constraint has to be posted
> in addition to ensure consistency of the task bounds."
>
> I can not figure out what a use case would be where you do not want s = p + e
> enforced. If there are use cases why is it enforced in some of the
> constraints?
The reason is that you can have the same task on several resources at once,
which would cause an overhead if each resource constraint in addition
propagated s=p+e. Currently, the interface is a bit inconsistent, as the
cumulatives constraint does propagate s=p+e.
We plan to add modeling support for scheduling constraints in the future (I'm
working on it), where you would declare task variables that encapsulate the
s=p+e propagation. In fact, there would be one propagator for all the simple
temporal constraints (such as task A is before task B, which translates to e(A)
<= s(B) ), which gives strictly stronger propagation than the individual
constraints.
The resource constraints can then be posted in terms of these task variables.
Cheers,
Guido
--
Guido Tack, http://people.cs.kuleuven.be/~guido.tack/
_______________________________________________
Gecode users mailing list
[email protected]
https://www.gecode.org/mailman/listinfo/gecode-users