Hi Christian, Le samedi 24 janvier 2009 11:11:44 Christian Schulte, vous avez écrit : > Nope, if the advisor returns ES_FIX the propagator is _not_ scheduled!
Sorry, I made a confusion because of the new propagation condition that I created. So the propagators are scheduled because of this propagation condition and not because of my advisor. > > Unscheduling a propagator is actually possible (check how it's done in > status in core.cpp, you have to unlink it and put it back in the idle > queue) but doing that is really risky: are you really really sure that the > propagator does not have to be run? And then, why bother? Just let it do a > noop. > OK. > Advisors are designed to be minimal, so you are not allowed to propagate > within them or kill off your propagator. What you do when you want to > subsume a propagator: leave a mark in the propagator's state, schedule it > (by returning ES_NOFIX in the advisor) and let the propagator then do the > subsumption. > I'll do that. Thank you very much for your help. I really appreciated your advises. Cheers, Vincent _______________________________________________ Gecode users mailing list [email protected] https://www.gecode.org/mailman/listinfo/gecode-users
