[gecode-users] Skipping branching alternatives?
Martin Mann
qyu at gmx.de
Mon Jul 10 14:27:00 CEST 2006
Hi Luis,
the idea with the propagator is nice, but not possible in my situation i
think. i dont want a "static" alternative-skipping.. that's easy to do
with propagators, you are right. but i want to do a "dynamic" one. i am
not interested in all solutions of the search tree and i dont have a
real deterministic branch and bound strategy at hand. that's why i want
to do a dynamic skipping of branches during the search.
e.g. the situation is like that: i find a special "interesting" solution
in this branch and and i dont want to have a look in the remaining
branches that belong to my specialised branching description (i mix them
with normal ViewValBranchingDescr during the branching). so i would like
to cut some subtrees of the the search tree that belong to my branching
descriptor.
i tried the first idea i mentioned (just return ES_FAILED from the
commit(..) function) to skip the alternatives, but this results in
abnormal behavior. dont know why at the moment and didnt had a closer
look until now.
so my question again, is there another possibility? or do i ve got to do
it bruteforce via clearing one domain to let the propagators do the
work for me?
anyway i m still interested in skipping the remaing more directly but
without reimplementing DFS myself.. ;)
thanks a lot, i hope i made it a bit clearer
martin
Luis Quesada wrote:
> I don't understand why you need to do this... To me, eliminating
> branching alternatives is the very purpose of propagators. Why don't you
> implement a propagator that removes the alternatives you want to skip?
> As you build the branches at each branching step based on the current
> domains of the variables, you wont try the alternatives that you want to
> skip.
>
> Luis
>
> Martin Mann wrote:
>
>> Hi again,
>>
>> I ve got a question about Branching..
>>
>> I implemented my own Branching inclusive a branching descriptor that
>> supports more than 2 alternatives.
>>
>> During my branching sometimes I would like to skip the remaining
>> alternatives.
>> So my question:
>>
>> 1) is it ok just to return ES_FAIL from MyBranching::commit(..) to
>> skip the corresponding branch? or will it lead to some strange behavior?
>>
>> 2) is there a possibility for directly skipping the remaining
>> alternatives without implementing the whole search engine? I would
>> like to use DFS as it is.. ;)
>>
>> thanks lot and have a nice weekend
>>
>> Martin
>>
>>
>> _______________________________________________
>> Gecode users mailing list
>> users at gecode.org
>> https://www.gecode.org/mailman/listinfo/gecode-users
>
>
>
More information about the gecode-users
mailing list