In contrast to what I thought, there is no real need for an iterator that
returns the whole tuple <TS, Distances, HR>, because in nearly all cases, the
index is required, hence an iterator over the "active" (i.e. non-merged) indices
of the FTS is sufficient. This also means that the interface of shrink
strategies still takes an FTS and an index.
I changed the shrinking interface as you suggested, Alvaro. I also tested a
composite shrink strategies that simply sequentially applies several shrink
strategies. I don't know if this should be added to the default, however,
without any use case from the literature, because this seems somewhat specific
(no intelligent way of combining those strategies, simply running all of them to
achieve the same goal). What do you guys think?
In case you vote for adding such a composite shrink strategy, I'll attach the
two files.
For the rest of the changes, see here:
https://bitbucket.org/SilvanS/fd-dev/pull-requests/18/issue666/diff
|