[gecode-users] Reified Distinct Constraint

Malcolm Ryan malcolmr at cse.unsw.edu.au
Mon Mar 2 05:01:08 CET 2009


Well a 'soft distinct' like this could easily be converted to a  
reified distinct:

soft_distinct(args, nViolations);
BoolVar b = post(space, ~(nViolations == 0));

Malcolm

On 17/02/2009, at 8:36 PM, Christian Schulte wrote:

> No, not really. I do not know what this distinct would be good for.  
> A more
> useful one would be a soft distinct where the number of violations is
> counted (there, one actually also could get some propagation). Check  
> for
> example:
> 	http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.3.7071
>
> What do you need a reified distinct for?
>
> Christian
>
> --
> Christian Schulte, www.it.kth.se/~cschulte/
>
>
> -----Original Message-----
> From: Max [mailto:chaosangel at gmx.de]
> Sent: Tuesday, February 17, 2009 10:32 AM
> To: Christian Schulte
> Cc: 'gecode list'
> Subject: Re: [gecode-users] Reified Distinct Constraint
>
> Thank you for the quick answer.
> Is this feature planned for the release of GeCode3.0?
> I just found a mail in the archive of somebody requesting the same  
> feature.
> Currently i do use O(n^2) constraints for this, but i wanted to show
> that i can transform it into a constant number of rules.
> Thats why i would need the reified version.
>
> Max
>
> Christian Schulte wrote:
>> No, there is no reified version. The best you can do at emulating  
>> is use
>> excessive reification: Create O(n^2) reified disequality  
>> constraints for
> all
>> variable-variable pairs, and then the reified control variable is the
>> conjunction of all the control variables from the disequalities. As  
>> said,
>> not very good.
>>
>> Christian
>>
>> --
>> Christian Schulte, www.it.kth.se/~cschulte/
>>
>> -----Original Message-----
>> From: users-bounces at gecode.org [mailto:users-bounces at gecode.org] On  
>> Behalf
>> Of Max Ostrowski
>> Sent: Monday, February 16, 2009 2:21 PM
>> To: gecode list
>> Subject: [gecode-users] Reified Distinct Constraint
>>
>> I just found the distinct constraint, that hopefully makes all  
>> variables
>> distinct. This could greatly reduce the number of constraints, as i  
>> am
>> translating from a logic program.
>> But i would need a reified version of the distinct constraint.
>> I there any or can i at least emulate thie behaviour?
>>
>> Thank you in advance,
>> Max
>>
>
>
>
> _______________________________________________
> Gecode users mailing list
> users at gecode.org
> https://www.gecode.org/mailman/listinfo/gecode-users





More information about the gecode-users mailing list