[gecode-users] task end times in cululative/unary constraints

Guido Tack tack at gecode.org
Wed May 18 20:52:28 CEST 2011


Hi Kish,

the interface for the scheduling constraints is not yet as polished as it should be.  We basically have two versions: one with a fixed and a flexible argument (either of which can be start, end, or processing time), and one with fully flexible arguments.  What's missing is an additional post function that selects the right propagators depending on the arguments.  So you'll have to check yourself: if for all arguments, one of the three parameters is fixed, you pick the fixed-argument versions, otherwise you have to introduce dummy variables and post the end=start+duration constraints.
The reason for this is that in the case that one activity is used in more than one scheduling constraint, you wouldn't want to introduce one end variable plus one end=start+duration constraint per scheduling constraint.  This kind of logic should go into a proper modeling layer, which we don't have yet.

Cheers,
	Guido

On 17 May 2011, at 18:29, Kish Shen wrote:

> Hi,
> 
> In most versions of Gecode's cumulative and unary constraints, you need to provide the start, duration and end times for tasks. For the ECLiPSe cumulative and unary constraints, you only need to provide the start and duration times. I understand that having the end times for task allows for more opportunities for propagation, but are they needed (or more precisely, are the extra constraints end = start + duration needed). if the end times are not used anywhere.



> 
> The reason I am asking is that in the ECLiPSe interface to Gecode, one of the aim is to provide compatibility to existing ECLiPSe code, so this means providing cumulative/unary constraints with flexible durations, but without end times, which is what ECLiPSe has. For these constraints, the user would have no access to the end times, but currently I still post the extra constraints end = start + duration for each task, as the Gecode call requires the end times, and MPG suggest that these constraints should be posted. But when I was looking at the code yesterday, I started to wonder if this makes sense if the user cannot see (and so cannot post constraints that will affect) the end times. So my question is, does it make sense to post these constraints under these conditions?
> 
> Thanks and cheers,
> 
> Kish
> 
> -- 
> This e-mail may contain confidential and privileged material for the
> sole use of the intended recipient. Any review, use, distribution or
> disclosure by others is strictly prohibited. If you are not the intended
> recipient (or authorized to receive for the recipient), please contact
> the sender by reply e-mail and delete all copies of this message.
> Cisco Systems Limited (Company Number: 02558939), is registered in
> England and Wales with its registered office at 1 Callaghan Square,
> Cardiff, South Glamorgan CF10 5BT.
> 
> _______________________________________________
> Gecode users mailing list
> users at gecode.org
> https://www.gecode.org/mailman/listinfo/gecode-users

-- 
Guido Tack, http://people.cs.kuleuven.be/~guido.tack/







More information about the users mailing list