[gecode-users] Implementing No-goods
Kish Shen
kisshen at cisco.com
Wed Sep 25 21:11:42 CEST 2013
On 13/09/2013 12:20, Christian Schulte wrote:
> In your idea of doing several searches after each other I assume that you
> use the next() function to get a space and then continue search. As the
> no-goods are posted in the master space they will be contained in the space
> returned by next() as well (unless they already have been found out to be
> useless).
Hi Christian,
I thought I better separate the two issues into different posts....
Thinking about the restart search more, I think my question may arise
from a (mis)understanding of what the master space is. Please let me
know if the following is correct:
master(.., const Space* s, NoGoods& ng)
I had assumed that each time master is called, there is a fresh copy of
the space s, i.e. a clone of the space before search was started. In
this case, then you need to remember NoGoods for all the previous
restarts in ng.
However, thinking about it more, it seems to make more sense that you
use the same master space (s) in all the restarts of a search; in this
case ng would only need to be the NoGoods in the single "pass" since the
last restart, because all the previous NoGoods would already be posted
to s by previous calls to master().
If a different search is done after this, as I suggested previously,
then you have a different master space s from the previous search.
Cheers,
Kish
More information about the users
mailing list