Kish Shen wrote:
> I am looking at the unary scheduling constraints, as I have just added them
> to the ECLiPSe gecode interface. ECLiPSe has both unary and cumulative
> constraints, which were added some time ago (more than 10 years ago now, I
> think), and for the unary constraint, there is a version with ordering
> booleans, where each pair of task has a 0/1 domain variable (BoolVar for
> gecode) associated with it, which specify the order of the pair of task (if i
> is before j or j before i for pair i,j).
> This seems to be very useful, because it can used to specify ordering if
> required, or be used in search to try the different orderings.
>
> I guess for gecode, you would need to post extra reified constraints
> specifying the ordering? Does it make sense to move this into the unary
> constraint?
It's the same information that is expressed in an STN (Simple Temporal
Network), and I'm currently implementing that. It won't be part of the unary
constraint, because it's really not tied to any particular resource, but it's
shared between all resources (tasks can be on more than one resource, but
there's only one order among all tasks).
> I was also looking at the global constraint catalog, to see if they have a
> unary constraint with ordering. I found disj, which specify ordering in a
> different way: for each task, there is a set variable that gives/specify the
> tasks that happen earlier, and a variable position that gives the absolute
> order of the task. The description then mention that the algorithm for
> shaving the position attribute is implemented in gecode. Is this in the unary
> constraint? Is it used internally? I can't see any ordering information that
> can be accessed from the outside in the description of the unary constraint,
> or have I missed something?
The information in the global constraint catalog is not correct. Gecode has
disjunctive, but not disj. I'll let them know.
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