The point is: when you have normal subscriptions the propagator will be scheduled according to the propagation condition. So there is nothing left to fine tune any longer ;-)
Cheers Christian -- Christian Schulte, www.it.kth.se/~cschulte/ -----Original Message----- From: [email protected] [mailto:[email protected]] On Behalf Of Gustavo Gutierrez Sent: Wednesday, April 01, 2009 5:54 PM To: Christian Schulte Cc: gecode list Subject: Re: [gecode-users] Advisor implementation Gustavo Gutierrez On Wed, Apr 1, 2009 at 5:24 PM, Christian Schulte <[email protected]> wrote: > Hi, > > You inherit from UnaryPropagator with propagation condition PC_INT_DOM: that means that the propagator is executed each time its variable changes! That is just the normal behavior of a propagator of this subclass: the propagator subscribes to the variable with the given propagation condition and cancels its subscription when it becomes subsumed. > > To make use of advisors you have to _not_ subscribe so that you can control scheduling by an advisor. That's possible by passing the (phoney) propagation condition PC_INT_NONE instead: no subscriptions are created. > Thank you very much. So in conclusion, you can control the scheduling of a propagator _only_ if you get rid of the propagation conditions (and then the way it is subscribed) and implement it manually inside the advise method. I was thinking that with an advisor you could do some kind of fine tuning of the scheduling for the propagator. That means, the propagator kept their original propagation conditions but after the advisor execution it could be marked to avoid its execution. Regards, Gustavo. _______________________________________________ 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
