[Aptitude-devel] Resolver status.
Daniel Burrows
dburrows at debian.org
Mon Apr 20 15:19:10 UTC 2009
On Mon, Apr 20, 2009 at 08:09:32AM -0700, Daniel Burrows <dburrows at debian.org> was heard to say:
> This change can be seen as an *empirical* way of finding out
> which promotions are most generic. If A implies B, then B is
> more general than A (since it might be true even when A is
> false), and this is reflected by the fact that B's hit count
> will be no lower than A's. Or you could just look at it as a
> smart caching strategy. Either way, I think it'll help. :-)
Following up on that thought, I might actually explicitly treat these
metrics as an empirical estimate of the "A implies B"-ness of an (A,B)
pair. That is: if 99% of the times that A triggered, B also triggered,
it might be better to eject A from the promotion set -- even if it
occasionally disagrees with B, it's more useful to store a promotion
that represents unique information. If A and B have different effects,
I'm not sure what to do in this case: I thought about attaching A to
B (i.e.: when B fires, test A and apply its effect too if it matches),
but that seems like it might go down the explosion-of-useless-promotions
path I was trying to avoid in the first place.
Since there are O(n^2) "A implies B" pairs, I'll need to think a bit
about how to do this tracking. It would be ideal if there was a way to
only track the largest few. OTOH, it might be sufficient to only track
ones that are actually observed, and maybe to occasionally throw out
implications that haven't been observed "recently"; I suspect that the
space of of these pairs is going to be fairly sparse. (i.e., most
counts in the matrix would be zero)
Daniel
More information about the Aptitude-devel
mailing list