Image Processing Reference
6.3.4 Optimisation of fuzzy rules base
While the basic fuzzy rule based system provides a reliable and accurate classifier, it suffers
- as do many other approaches - from the curse of dimensionality. In the case of our
fuzzy classifier, the number of generated rules increases exponentially with the number
of attributes involved and with the number of partitions used for each attribute. The
resulting complexity of the generated rule base is very resource demanding, both in terms of
computational complexity and in required memory allocation. We are therefore interested
in arriving at a more compact classifier that affords the same classification performance
while not suffering from the problems.
One possibility is to apply a rule splitting step to deal with the problem of dimensionality
as suggested in (Schaefer, Nakashima, Zavisek, Yokota, Drastich, and Ishibuchi, 2007). By
limiting the number of attributes in each rule to 2, a much smaller rule base was developed.
In this section, we take a different approach to arrive at an even more compact rule base
by developing a hybrid fuzzy classification system through the application of a genetic
algorithm (GA). The fuzzy If-Then rules used do not change and are still of the same form
as the one given in Eq. (6.7), i.e. they contain a number of fuzzy attributes and a consequent
class together with a grade of certainty. Our approach of using GAs to generate a fuzzy rule-
based classification system is a Michigan style algorithm (Ishibuchi and Nakashima, 1999a)
which represents each rule by a string and handles it as an individual in the population of
the GA. A population consists of a pre-specified number of rules. Because the consequent
class and the rule weight of each rule can be easily specified from the given training patterns
they are not used in the coding of each fuzzy rule (i.e., they are not included in a string).
Each rule is represented by a string using its antecedent fuzzy sets.
First, the algorithm randomly generates a pre-specified number N rule of rules as an initial
population. Next, the fitness value of each fuzzy rule in the current population is evaluated.
Let S be the set of rules in the current population. The evaluation of each rule is performed
by classifying all the given training patterns by the rule set S using the single winner-based
method. The winning rule receives a unit reward when it correctly classifies a training
pattern. After all the given training patterns are classified by the rule set S, the fitness
value f itness(R q ) of each rule R q in S is calculated as
f itness(R q ) = NCP(R q ),
where NCP(R q ) is the number of correctly classified training patterns by R q . It should be
noted that the following relation holds between the classification performance NCP(R q ) of
each rule R q and the classification performance NCP(S) of the rule set S used in the fitness
NCP(S) = X
R q ∈S
NCP(R q ).
The algorithm is implemented so that only a single copy is selected as a winner rule
when multiple copies of the same rule are included in the rule set S. In GA optimisation
problems, multiple copies of the same string usually have the same fitness value. This often
leads to undesired early convergence of the current population to a single solution. In our
algorithm, only a single copy can have a positive fitness value and the other copies have
zero fitness which prevents the current population from being dominated by many copies
of a single or few rules.
Then, new rules are generated from the rules in the current population using genetic op-
erations. As parent strings, two fuzzy If-Then rules are selected from the current population
and binary tournament selection with replacement is applied. That is, two rules are ran-
domly selected from the current population and the better rule with the higher fitness value