[gecode-users] exact behaviour of different IntValBranch
Guido Tack
tack at gecode.org
Fri Jul 30 21:57:00 CEST 2010
Christian Schulte wrote:
> Let's take INT_VAL_MED as an example with x as selected variable and n the
> median. Then you create a choice (x <= n) v (x > n).
That's not quite correct, INT_VAL_MED creates (x==n) v (x != n) just like INT_VAL_{MIN,MAX}. And the median is computed again for each new node.
The splitting cases are INT_SPLIT_MIN, which does (x <= n) v (x > n) for n = (x.min()+x.max())/2, or INT_SPLIT_MAX where the two choices are swapped. That's why the documentation talks about values (plural) here: The branching does not assign a single value to the variable, but splits the domain (of course, when the domain had size 2, the result of the split is a single value).
A good way to find out what the branchings do exactly is to have a look at the search tree in Gist.
Cheers,
Guido
--
Guido Tack, http://people.cs.kuleuven.be/~guido.tack/
More information about the users
mailing list