Hi, To give you an idea, take the following, rather small, examples (they are included in Gecode).
- Alpha, 21 propagators, 26 variables: 123 919 propagator executions - Golomb rulers 10, 55 variables, 46 propagators: 3 482 588 propagator executions - Magic squares 7, 49 variables, 19 propagators: 9 596 013 propagator executions So that's quite something. And most of the propagator executions are not really interesting. While debugging is difficult, and there is little known how to do it, the level of abstraction of looking at a single propagator is not really feasible. Typically there is a pretty close mapping between a constraint and the propagator implementing the constraint. But not always and typically not after some propagations (propagators typically rewrite themselves). Gecode 2.0 comes with a reflection layer that in principle allows you to get to know everything about a space, but I do not know whether this will be available in Gecode/J. Also, I would doubt that the amount of information is useful. But what helps a lot is using Gist as said. It will at least tell you the results of propagation before branching. Just printing before and after propagation is also not too bad. Sorry that I cannot be more helpful than that. Christian -- Christian Schulte, http://www.imit.kth.se/~schulte/ -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Malcolm Ryan Sent: Friday, November 16, 2007 12:54 AM To: gecode list Subject: Re: [gecode-users] Diagnosing failures On 13/11/2007, at 5:00 PM, Malcolm Ryan wrote: > On 13/11/2007, at 7:25 AM, Christian Schulte wrote: > >> That's not quite an option: well known, there are too many propagator >> invocations (really, absolutely incomprehensible). > > Really? I wouldn't have thought that there were so many. But then > I've never written an engine. I've been thinking about this some more and I'd really like to look into the debugging problem more deeply. I have some ideas I'd like to play with. When you say "too many propagator invocations", exactly how many are we talking about? Is there a simple mapping from a propagator to the constraint that created it? Is there any way I can access this data? Malcolm -- "An inconvenience is only an adventure wrongly considered; an adventure is an inconvenience rightly considered." - G.K.Chesterton, On Running After Ones Hat _______________________________________________ Gecode users mailing list [EMAIL PROTECTED] https://www.gecode.org/mailman/listinfo/gecode-users _______________________________________________ Gecode users mailing list [EMAIL PROTECTED] https://www.gecode.org/mailman/listinfo/gecode-users
