[gecode-users] order in calls to status and commit...

Christian Schulte cschulte at kth.se
Tue May 29 11:35:04 CEST 2007


Hi,

I am not so sure that creating branchings in the commit function of another
branching actually works. As Guido said, we never anticipated this scenario.
As I have some more time at the end of the week, I'll have a look.

Can you send as a very small program that shows the problem?

Also, which search engine did you use? DFS or BAB?

How did you post the branchings? Via the post function or by using the
constructor? If the constructor, I hope you did not use the constructor
reserved for cloning.

Also, there might be a completely different way how to use multiple
branchings that create each other: have a single "master" branching that
controls the other branchings. But that would require quite some heavy
setup.

Cheers
Christian

--
Christian Schulte, http://www.imit.kth.se/~schulte/ 

-----Original Message-----
From: users-bounces at gecode.org [mailto:users-bounces at gecode.org] On Behalf
Of Sébastien Mouthuy
Sent: Tuesday, May 29, 2007 12:44 AM
To: Guido Tack
Cc: users at gecode.org
Subject: Re: [gecode-users] order in calls to status and commit...



I found a related problem that seems annoying. 

I have one main branching, let's say BrSF. In the commit function of BrSF, I
sometimes post another branching, say BrCl.

I printed id's of these branching and it happens that an instance of BrSF
has the same id as BrCl. I'm not using recomputation: c_d = 1, a_d = 10000.

The problem then is that the search engine calls the commit function of the
BrSF with a description returned by an instance of BrCL. and this is very
annoying :). It is perhaps this same problem that leads to the NoBranching
exception when using recomputation.

any idea ? It would be very useful for me. Thank you.

seb

Le lundi 28 mai 2007 à 20:46 +0200, Guido Tack a écrit :
> Sébastien Mouthuy wrote:
> 
> 
> > Could that be the problem ? Should B1 and B2 be two copies of a 
> > comman instance of the branching ? I know descriptions and 
> > branchings use id's.
> > could it be the problem ?
> 
> 
> Hm, it shouldn't be the problem. If the branchings are always created 
> in the same order, the ids will be the same. Could you verify this? 
> Just print the id in the Branching constructor, and check that it's 
> the same no matter whether you use recomputation or not.
> 
> 
> The one thing we do not support is creating a branching in a 
> propagator. This won't work because propagation order can be different 
> during recomputation, so the creation order of the branchings would be 
> different and the ids would not match.
> 
> 
> Cheers,
> Guido
> 
> --
> Guido Tack
> Programming Systems Lab, Saarland University, Germany
> http://www.ps.uni-sb.de/~tack
> 
> 
> 
> 
> 


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





More information about the gecode-users mailing list