Alberto Delgado wrote:
I'm implementing a propagator and it works OK when i search for a solution with Search but when it comes to Gist an exception is thrown:
Space::clone: Attempt to invoke operation on failed space.

This is what i do to modify the domain of the variable and check whether the modification is valid:

  ModEvent me =  x1.gq(home,constantValue);
  if (me_failed(me)){
   return ES_FAILED;
   }
  return ES_FIX;

I can assure that the propagator returns ES_FAILED (a std::cout before the return ES_FAILED line) when it has to and doing some extra tests i found out that if instead of modifying the domain of x1 i just check whether the variable's domain is empty the exception disappears.

Are you sure that your propagator computes a fixed point? If not, try returning ES_NOFIX and see if the problem goes away.

Cheers,
        Guido

_______________________________________________
Gecode users mailing list
[EMAIL PROTECTED]
https://www.gecode.org/mailman/listinfo/gecode-users

Reply via email to