[gecode-users] Access to the last propagator invoked in case of ES_FAILED

George Katsirelos gkatsi at gmail.com
Thu Mar 27 15:41:13 CET 2008


Hello,

I also needed that information to implement clause learning. All I did
was modify Space::propagate() to keep track of the propagator that
failed. I admit it may not cover all cases (for example it does cover
failure when the propagator was called from Space::step()), but during
search this seems to be the only path that leads to failure.

George

On 28/03/2008, Christian Schulte <cschulte at kth.se> wrote:
> Actually, I have to say that this is not that easy: failure might actually
>  not be due to the propagator run last. It could be due to a variable
>  modified outside a propagator (when posting constraint or using a
>  branching).
>
>  Moreover, the propagator run last is typically not the culprit of things
>  going wrong.
>
>  Cheers
>  Christian
>
>
>  --
>  Christian Schulte, www.ict.kth.se/~cschulte/
>
>
>
>  -----Original Message-----
>  From: users-bounces at gecode.org [mailto:users-bounces at gecode.org] On Behalf
>  Of Mikael Zayenz Lagerkvist
>  Sent: Thursday, March 27, 2008 3:27 PM
>  To: David Rijsman
>  Cc: users at gecode.org
>  Subject: Re: [gecode-users] Access to the last propagator invoked in case of
>  ES_FAILED
>
>  Hi,
>
>  There is no way currently to access this information, and no current
>  plans to introduce it. However, it would not be hard to implement
>  yourself. As a starting-point, see the implementation of the function
>  Space::status in gecode/kernel/core.cc.
>
>  What is it that you want to do with this information? Since
>  propagators do not have any identifier that is stable between copies,
>  the information seems to me to be of little use.
>
>  Cheers,
>  Mikael
>
>  On Thu, Mar 27, 2008 at 3:03 PM, David Rijsman <davidrijsman at gmail.com>
>  wrote:
>  > I would like to know if it is possible to determine the last propator
>  > invoked in case Space::status returns ES_FAILED or if there are any
>  > plans to expose this information. If one can get this information (in
>  > the future) will one also introduce reflection API on the Propagator
>  > level?
>  >
>  > David Rijsman
>  >
>  > _______________________________________________
>  > Gecode users mailing list
>  > users at gecode.org
>  > https://www.gecode.org/mailman/listinfo/gecode-users
>  >
>
>
>
>  --
>  Mikael Zayenz Lagerkvist, http://www.ict.kth.se/~zayenz/
>
>  _______________________________________________
>  Gecode users mailing list
>  users at gecode.org
>  https://www.gecode.org/mailman/listinfo/gecode-users
>
>
>  _______________________________________________
>  Gecode users mailing list
>  users at gecode.org
>  https://www.gecode.org/mailman/listinfo/gecode-users
>




More information about the gecode-users mailing list