All existing nodes that can generalize do so. If
the training pair can generalize and if more than one
node causes it to do so, only one generalization is
chosen at random. A newly created generalization is
added only if there does not already exist one that is
equal to or covers it. The basic mechanism for
generalization is the dropping condition rule [14].
The rule is applied whenever two pairs have the same
output value, differ in exactly one asserted input value,
and one has 0 or 1 more asserted input than the other.
The differing input is replaced by the value don't-care
in the pair that has the largest size, as long as it has
more than one asserted input. The condition on
relative sizes maximizes generalization. The
condition on the number of asserted inputs ensures
that no rule is created whose inputs are all don't-care
and that therefore represents all of the input space.
The condition on relative number of asserted inputs
controls the level of generalization. Dropping the
condition is simple, fast, easily accommodated by the
current representation language, and works well with
nominal attributes, but it may lead to overgeneralization.
PDL2's ability to handle exceptions
can rectify such over-generalizations. Other
mechanisms for generalization (and likely changes to
the representation) are the topic of future research.