Hello all,

I have a very naive question about advisors and the way to implement
them. I have a propagator which is very costly and if some condition
holds then I don't need to execute it. I am trying to implement this
by using advisors: the advisor detects if the condition holds and then
returns ES_FIX to avoid propagation. After trying to implement that
with not success, I end up by writing a propagator with an advisor
that actually prevents the propagator to be executed. This is, a
propagator that does nothing because its advisor always return ES_FIX.

The code is attached to this mail but I cannot get the intended
behavior, instead, the propagator is executed at every computation
space during the search and not only once as I expected. Obviously I
am doing something wrong or simply is a misunderstood on what an
advisor can do. Any help is very welcome.


Thanks in advance,
Gustavo

Attachment: queens.cpp
Description: Binary data

_______________________________________________
Gecode users mailing list
us...@gecode.org
https://www.gecode.org/mailman/listinfo/gecode-users

Reply via email to