Hi,

we have no plans to introduce tracing of the propagation at the moment, and 
there is no officially supported way to find out which propagator reported 
failure.  You'll have to have a look at the main propagation loop in the Gecode 
kernel and put in some debugging code there.  It's quite easy: look at 
Space::status in core.cpp, and add some output when the call to p->propagate() 
returns ES_FAILED.

The problem is that usually it is a conjunction of several constraints that, 
only together, cause the inconsistency, so just reporting one of them (the one 
that happened to report the inconsistency) is not very useful in general.  
Furthermore, propagators in Gecode don't carry identifiers, so it is not so 
easy to map them back to the user-level model constraints.

Cheers,
Guido

On 10 Feb 2012, at 12:42, Alexis Cothenet wrote:

> Hi all,
> 
> Correct me i'm wrong but it seems that at the moment there is no way to trace 
> propagations events in Gecode...
> Could you say me if it is planned for a next release or not ?
> If no, could you indicate me how you do for knowing which constraint is 
> responsible for failure ?
> 
> Thanks a lot.
> Best regards,
> Alexis
> _______________________________________________
> Gecode users mailing list
> [email protected]
> https://www.gecode.org/mailman/listinfo/gecode-users

-- 
Guido Tack,
http://www.csse.monash.edu/~guidot/



_______________________________________________
Gecode users mailing list
[email protected]
https://www.gecode.org/mailman/listinfo/gecode-users

Reply via email to