You are on page 1of 10

JOURNAL OF COMPUTING, VOLUME 3, ISSUE 11, NOVEMBER 2011, ISSN 2151-9617 HTTPS://SITES.GOOGLE.COM/SITE/JOURNALOFCOMPUTING WWW.JOURNALOFCOMPUTING.

ORG

81

The fuzzy cooperative genetic algorithm (FCoGA): The optimisation of a fuzzy model through incorporation of a cooperative coevolutionary method
Arfian M. Ismail, Hishammuddin Asmuni, and Razib M. Othman
Abstract Genetic Algorithms (GA) have been widely used to represent parameters in a fuzzy system. However, when a fuzzy system is applied to a complex problem, GA tends to lose their effectiveness because of the representation complexity of the solution. In this paper, an improved method of fuzzy modelling called as Fuzzy Cooperative Genetic Algorithm (FCoGA) is introduced. Cooperative Coevolution (CC) is applied to the GA by subdividing the chromosome into three sub-chromosomes known as species, and thus reducing the representation complexity of the solution. Furthermore, two-level evaluations in the FCoGA, at the species level and cooperative chromosome level, are introduced to improve the performance. To measure the performance of FCoGA, two benchmark datasets namely Wisconsin Breast Cancer Diagnosis (WBCD) and Pima Indian Diabetes (PID) datasets have been used. The experimental results show that FCoGA slightly improves the accuracy rate and maintains comparable effectiveness with other existing study solutions. Index Terms Cooperative coevolutionary algorithm, Genetic algorithm, Cooperative chromosome, Fuzzy modelling.

1 INTRODUCTION

fuzzy system gives reasons for its results because it has the ability to give explanations using fuzzy rules and membership functions, and modelled the output from a given inputs [35,37]. To obtain the output, fuzzy systems work by implementing fuzzy logic and approximate reasoning, and then incorporating them with expert knowledge before apply it in the inference system [44]. Fuzzy system has an ability to extract and interpret the knowledge that is contained in the data [6, 16, 35]. In addition, it also can handle uncertain and imprecise knowledge in real-world applications, and deal with vagueness, noisy, inaccurate and incomplete data [42]. Currently, fuzzy systems have been successfully applied in many fields, such as engineering [29, 33, 45], medicine [13, 14, 41] and the food industry [3, 31, 38]. When developing a fuzzy system, several parameters must be identified in order to obtain the desired behaviour of the system [35]. This process is known as fuzzy modelling [8]. The objective of modelling a fuzzy system is to develop reliable and understandable models for human beings. Current researches in fuzzy modelling have focus in defining the fuzzy system parameters by automated the

process of generating and tuning fuzzy rule and membership function for optimisation. Most of the work combines a fuzzy system with an evolutionary method, GA, which utilises learning capabilities to solve complex problems [11, 12, 19, 20, 23, 24, 27, 36, 50]. GA can be viewed as a search technique where the goal is to find the optimal (or close approximate to the optimal) solution to the search problem. GA involves mechanisms inspired by biological evolution: selection, crossover and mutation. Generally, the solution of GA is represented by the combination of bit strings, known as chromosomes. The process of GA starts with a random population that is generated and continues until a termination condition is reached. For every generation, the fitness of all chromosomes is evaluated and selected to be modified (by performing crossover and mutation operations) to produce a new generation. Work that involves the generation process of fuzzy rules by GA has been performed by Li and Wang [23]. They propose niching methods to generate fuzzy rules, and GA is then used to fine tune and improve the quality of the fuzzy rules. Li et al. [24] introduces Fuzzy Feature Extraction Agent (FFEA) and Fuzzy Classification Unit (FCU) to automatically generate and tune fuzzy rules by applying GA and Adaptive Grade Mechanism (AGM). Evsukoff et al. [12] used GA to adjust A. M. Ismail is with the Universiti Teknologi Malaysia, 81310 UTM Sku- and tune fuzzy rules to improve classifier performance and reduce model complexity. Similar with Zhang et al. dai, Malaysia. H. Asmuni. is with the Universiti Teknologi Malaysia, 81310 UTM Sku- [50] works where they also used GA to improve the dai, Malaysia. fuzzy rule. They proposed a new approach that uses GA R. M. Othman is with the Universiti Teknologi Malaysia, 81310 UTM to represent the fuzzy rule in three separate species. Their Skudai, Malaysia.
2011 Journal of Computing Press, NY, USA, ISSN 2151-9617 http://sites.google.com/site/journalofcomputing/

JOURNAL OF COMPUTING, VOLUME 3, ISSUE 11, NOVEMBER 2011, ISSN 2151-9617 HTTPS://SITES.GOOGLE.COM/SITE/JOURNALOFCOMPUTING WWW.JOURNALOFCOMPUTING.ORG

82

approachs able to optimize the number of rule, the antecedent and the antecedent parameter of the rule. Kim and Ryu [20] used GA to determine the optimum fuzzy model by choosing the best set of membership functions based on quantitative data. Dimitriou et al. [11] applied GA to tune the parameters of fuzzy systems by adjusting the variety of components in the system. Kelesoglu [19] used chromosomes to represent the membership functions to discover a better fuzzy model by tuning it. The method proposed by Rezaee and Zarandi [36] only fine-tunes the membership functions. This is similar to the work performed by Martinez et al. [27] that finds only the best of the membership functions for the optimisation of fuzzy parameters. From all the studies mentioned, it is apparent that GA is the best technique that can be implemented to automate the generation process and fine-tune the parameters (the fuzzy rules and membership functions) of a fuzzy system. However, the aforementioned works focus solely on tuning the rule and/or membership functions. They do not focus on the overlap length in the membership function. In light of this, the present study uses GA to tune the fuzzy rules, membership functions and overlap lengths in the membership functions. GA performs well in optimisation problems, but when applied to complex problems, they tend to get stuck in local optima and thus perform poorly [44]. Most recent researches [11, 12, 19, 20, 23, 24, 27, 36, 50] successfully use GA to fine-tuning the fuzzy model in order to discover the best of model. But several issues occurred when fuzzy modelling applied on complex problem such as when many dimensions of data [26], when the search space is large [23] and involve many parameters setting [4, 5]. This will make the solution representation becomes complex. It is also time-consuming to evaluate the fitness of every solution representation. Therefore, to overcome these problems, we implement coevolutionary algorithms to simplify the solution representation. The main function of a coevolutionary algorithm (CA) is to simplify the solution by breaking complex problems into sub-components [32]. A CA can be stated as two or more separate, interacting sub-components that evolve together, wherein the fitness of a component depends on the type of relationship between its sub-components. Generally, there are two types of CA, the competitive coevolution algorithm and the cooperative coevolution algorithm. This study applies the cooperative coevolution algorithm (CCA) because research trends show its recent prevalence in many studies [7, 22, 35, 46, 48, 59, 51]. The main reason for the introduction of the CCA was to prepare a new framework for implementing GAs when dealing with systems that have large and complex problems [49]. A study conducted by Xing et al. [46] used CA to improve the performances of GA and Ant Colony Optimisations (ACO) by introducing the concept of multipopulation interactive CCA. This reduces the computing resources resulting from the interaction, competition and sharing mechanisms among populations. Another study using CCA is that of Lee and Yoon [22]. CCA decomposes the problem into sub-problems and it improves the per-

formance of the proposed method in which the performance of each sub-problem affects the others. Yang et al. [49] introduced a new CCA framework that is able to optimise the large scale of non-separable and highdimensional problems. The success of their framework relies largely on the idea of a grouping strategy that is offered by CCA. Zhu and Guan [51] proposed a CCA method known as Enhanced Cooperative Co-Evolution Genetic Algorithm (ECCGA), whereby ECCGA decomposes the problem into sub-problems, species that are represented by multi-population of GA. Their method shows the improvements when compared to a single population of GA. The results are similar to those found by Castillo et al. [7], in which CCA achieves a better result and reduces the running time compared to a conventional GA. Xing et al. [48] used CCA to decompose the fuzzy system (fuzzy rule and membership function) that is represented by GA into two species of chromosomes to simplify and improve the fuzzy system. Reyes and Sipper [35] presented a method known as Fuzzy Cooperative Coevolution (Fuzzy CoCo) that is applicable to hard problems. In their method, GA is enhanced by implementing CCA to search for the best fuzzy model by tuning the fuzzy system that is represented by two species of chromosomes. All the studies mentioned used CCA by subdividing the problems into sub-problems. Thus, in simplifying problems by subdividing the problems into sub-problems, CCAs may also reduce the complexity of the solution. Additionally, the implementation of CCA in GA also speeds up the GA learning process. This study has been performed by applying learning and optimisation capabilities of GA and by employing CCA to divide problems into sub-problems. Furthermore, this study introduces an improved method: using CCA and GA for fuzzy modelling, in which the representation of solutions, known as the cooperative chromosome that is breaks into three species. The three species represent the parameters which are the fuzzy rule set, the membership functions and the overlap lengths in the membership functions. This study also introduces a two-level evaluation of the solution: a species evaluation and a cooperative chromosome evaluation. Each species is assessed at the species evaluation level, whereas the complete fuzzy model is evaluated at the cooperative chromosome evaluation level.

2 METHOD
In this section, the proposed method known as Fuzzy Cooperative Genetic Algorithm (FCoGA) is discussed and the concept of cooperative chromosomes is presented. Fig. 1 presents the FCoGA in a pseudo-code format. A discussion of the FCoGA process follows.

2.1 Cooperative Chromosome Representation


The proposed cooperative chromosome is composed of three species and can be viewed in Fig. 2. The first species, SFR, represents the fuzzy rule set. This species is used to discover a set of fuzzy rules. SFR is encoded in a numerical format and stores the information that is used by the

JOURNAL OF COMPUTING, VOLUME 3, ISSUE 11, NOVEMBER 2011, ISSN 2151-9617 HTTPS://SITES.GOOGLE.COM/SITE/JOURNALOFCOMPUTING WWW.JOURNALOFCOMPUTING.ORG

83

fuzzy rule in an IF-THEN form: IF(V1iISA1i)AND..(VjiISAji)THEN(CLASSiISCi) where V is the linguistic variable (an attribute of the data) and A is the linguistic value (a value of the data). The symbol j denotes the number of attributes contained in the data and i is the number of the fuzzy rules. The process of encoding SFR can be seen in Fig. 3. The length of SFR is dependent on the number of fuzzy rules and the number of antecedents involved in each rule.
1BEGINFCoGA 2g:=0 3j:={SFR,SMF,SRG} 4FORallj 5initializepopulationSPjg //SPjgisspeciesofchromosome 6chooserep_SPjgfromSPjg 7ENDFOR 8assembleCMgbycombineallrep_SPjg //CMiscompletemodel 9evaluateCMg 10WHILENOTterminationconditionDO 11j:={SFR,SMF,SRG} 12FORallj 13g:=g+1 14elite_selectigfromSPj(g1) 15selectSPjgfromSPj(g1) 16crossoverSPjg 17mutateSPjg 18new_SPjgbycombineelite_selectigwithSPjg 19evaluatenew_SPjg 20chooserep_SPjgfromnew_SPjg 21ENDFOR 22assembleCMgbycombineallrep_SPjg 23evaluateCMg 24ENDWHILE 25RETURNthebestofmodel 26ENDFCoGA Fig. 1. Pseudo-code of the FCoGA.

represented by d as shown in Fig. 4(a). The value of genes in SRG as shown in Fig. 4(c), represent the overlap lengths for the input linguistic variables (V1 to Vn) and the output linguistic variable (CL).

Fig. 2. Overview of species in the FCoGA.

2.2 Fitness Evaluation


The fitness function is used to evaluate the quality of the solution. In this method, two levels of fitness evaluation are used: the fitness evaluation at the species level, known as the species fitness function, and the fitness evaluation at the cooperative chromosome level, known as the cooperative chromosome fitness function. The reason for the introduction of these two levels of fitness evaluation is to ensure that the highest quality solutions are discovered. This can be achieved by allowing the species with the highest fitness value to be chosen first to cooperate with others to become the cooperative chromosome. By doing this, the solution with highest quality can be produced. In addition, this also speeds up the learning process in FCoGA. The species fitness function is applied to all species except the SRG, whereas the cooperative chromosome fitness function can be performed when all species have been combined to assemble a complete solution of the fuzzy model.
IF(V rISA r)AND(V rISA r)AND(V rISA r)THEN(CLrISCr)
1 1 2 2 n n

The second species, SMF, holds all the starting points of the membership functions that define for the fuzzy system (represented by P in Fig. 4(a)). The starting point for each membership function is encoded in a numerical format. In this study, the membership function used is trapezoidal in shape, as shown in Fig. 4(a). The example of the encoding process of SMF is illustrated in Fig. 4(c). The value of every gene in SMF (P1,P2,Pn and PCL) represents the starting point of the overlap in the membership function that is taken from P in Fig. 4(b), and their length (SMF) depends on the number of attributes in its particular dataset. The last species, SRG, determines the overlap length in the membership functions for all linguistic variables. SRG is also encoded in a numerical format and the length of SRG is the same as the length of SMF. Fig. 4 shows the encoding process of SRG. For each linguistic variable, the overlap length in the membership functions is

Encodeprocess V1 A1
r

V2

r r

Vn

r r

CL C
r

A2

An

VandCL=linguisticvariable(attributeofdata) AandC=linguisticvalue(valueofdata) n=no.ofattribute r=noofrule


Fig.3. Encoding process of SFR.

Before the complete of the fuzzy model is achieved, the species must be measured to determine their quality. At this stage, a pair from each species is selected to represent

JOURNAL OF COMPUTING, VOLUME 3, ISSUE 11, NOVEMBER 2011, ISSN 2151-9617 HTTPS://SITES.GOOGLE.COM/SITE/JOURNALOFCOMPUTING WWW.JOURNALOFCOMPUTING.ORG

84

Degreeofmembershipfunction Low 1 High

known as the cooperative chromosome. The following is the formula of cooperative chromosome fitness:

Value

(a) Schematic of membership function for V1.

fitcc acc (ncerr nMF vmaxFR ) (3) where ncerr is the number of classification errors in the data. The cooperative chromosome covers two criteria, which are the achievement of truly classified values (classification performance) and the interpretability of the fuzzy model that is gained from fitFR and fitMF. The practical fuzzy model can be considered when there are fewer variables in the rules and the maximum number of rules is limited to ten [48]. The fuzzy model becomes less interpretable and loses its resemblance to human intelligence when the number of rules increases [30, 43, 48].
2.3 Classification of Fuzzy Systems
Generally, fuzzy systems consist of four components: the knowledge base, the fuzzifier, the inference engine and the defuzzifier. In this study, the knowledge base is comprised of rules and membership functions, whereas the fuzzifier is a mechanism to translate the crisp input (data) into the fuzzy input. The inference engine is a reasoning process for making use of the fuzzy operator to obtain the fuzzy output. The inference engine used in this study is a Sazonov [39] fuzzy engine that can be downloaded from http://people.clarkson.edu/~esazonov. The defuzzifier is the method that translates the fuzzy output back into crisp output.

V1r

V2r

Vnr

CLr

P1

P2

Pn

PCL

(b) Encoding process of SMF.

V1r

V2r

Vnr

CLr

d1

d2

dn

dCL

(c) Encoding process of SRG. Fig. 4. Encoding process of SMF and SRG.

their species in assembling the complete fuzzy model. The pair from each species that is selected is also known as the species representatives. The fitness function of the SFR can be stated as follows:

2.4 Selection
Selection is the process of selecting the species on which the reproduction process is executed. For SFR and SMF, tournament selection is used to obtain the best species based on their fitness. This is to enable the best of SFR and SMF to be selected first to bring about the reproduction. Meanwhile, for the SRG, a random function is used for the selection process. This is to maintain exploration of the search space that is performed by GA [35, 47]. In addition to the conventional means of selection, this study incorporates the concept of elitism (elite selection), where an Erate rate is used to allow some of the best species from previous generations to survive through to the next generation. The concept of elitism, depicted in Fig. 5, helps avoid varying behaviour among species populations [35, 48], and subsequently, maintains the genetic information of the best species discovered by the evolution process. Therefore, elitism allows high quality solutions to be found within a smaller number of generations.

fittFR = acc - vmaxFR (1) where acc is the correct case diagnosis percentage (classification performance) and vmaxFR refers to the maximum number of variables in the longest rule. The purpose of vmaxFR is to measure the interpretability of the rule, where the fuzzy rules with large variables are penalised to guarantee that simple rules with fewer variables are applied [10, 35]. The fitness function of the SMF can be formulated as follows:

fittMF acc nMF (2) where nMF is the number of applied membership functions. The correct case diagnosis percentage is subtracted from the number of membership functions to discover the species with the highest fitness. This is done so that when the number of membership functions increases, the fitness value decreases and the fuzzy model becomes less closely interpreted [48]. For the SRG, the fitness function is not applied. The process of selecting a pair of individuals is accomplished by a random function and that keeps the exploration of the search space at a minimum [35, 47]. Besides that, there is no criterion to be measured in the overlap length in the membership functions. After each species has been selected, the representatives are assembled to perform within the fuzzy model. At this stage, the combination of all representatives is

Population g

Population g+1

Some of species in pervious generation are selected with probability Erate rate.

Elitist Before applied elite selection After applied elite selection

Fig. 5. Concept of elite selection.

Fig. 8. Concept of elite selection.

JOURNAL OF COMPUTING, VOLUME 3, ISSUE 11, NOVEMBER 2011, ISSN 2151-9617 HTTPS://SITES.GOOGLE.COM/SITE/JOURNALOFCOMPUTING WWW.JOURNALOFCOMPUTING.ORG

85

2.5 Reproduction
Reproduction is the process of creating a new generation (children) of a species by crossover and/or mutation processes on the previous generation (parents). The reproduction process only happens within the same species. The purpose of reproduction is to discover the best combination of fuzzy models by producing subsequent generations. In the crossover process, a two-point crossover is performed on the SFR, whereas a one-point crossover is done on the SMF and SRG species. The two-point crossover is applied to SFR because of a rule that has two parts: input (attribute of data) and output (class of data). On the other hand, a one-point crossover is completed for SMF and SRG to prevent the new offsprings features being different from its parents. The crossover between species is performed with a probability of pc. The point of crossover is chosen by a random function on the parent. An exchanging process then takes place to produce two new offspring. If no crossover takes place (pc is equal to 0), the new offspring will become exact copies of their parents (unless mutation takes place). The rationale for mutation in this method is to create slight diversity within the population by changing a value of a gene. In this method, mutation is performed by mutating a gene from a species with a probability of pm. If pm is equal to 0, mutation will not take place. The point for mutation is searched for by a random function.

marginal adhesion (v4), single epithelial cell size (v5), bare nuclei (v6), bland chromatin (v7), normal nuclei (v8) and mitosis (v9), and one diagnosis case of cancer (either benign or malignant). The data are divided into nine categories of input (v1 to v9) and one output (benign or malignant).

3.1.2 Pima Indian Diabetes (PID) Dataset


Besides the WBCD dataset, FCoGA was also tested on the PID dataset. This dataset has been used by many studies [9, 12, 14, 18, 20]. All data in this dataset comes from Pima Indian women who are at least 21 years of age and living near Phoenix, Arizona, USA. This dataset consists of 768 data that comprise eight attributes and one output. The attributes are number of times pregnant (v1), plasma glucose concentration a 2 h in an oral glucose tolerance test (v2), diastolic blood pressure (v3), triceps skin fold thickness (v4), two hour serum insulin (v5), body mass index (v6), pedigree function (v7) and age (v8). The value of the output (v9) class is 0 (negative test) or 1 (positive test). There are 500 (65.1%) cases in class 0 and 268 (34.9%) cases in class 1.

3.2 Experimental Environment


The experiment of this study involves several parameter settings, the purpose of which is to discover the best suite of parameters to obtain the best possible results. Table 1 shows the parameter settings involved in this experiment. Because of the nature of CCA, which breaks the problems to sub-problems, a small population with sizes ranging from 30 to 70 chromosomes is preferred in FCoGA. The probability of crossover and mutation is tested in the range of 0.5 to 1.0 for crossover and 0.0 to 0.5 for mutation to find the best combination between them. This is in line with the current research trends, which posit that better results will be produced when the crossover probability approaches 1 and the mutation probability goes to 0 [10, 15, 17, 19, 23, 33, 34, 48]. The number of generation depends on the number of rule; where the number of rule is multiplied by 100. The number of rules is fixed at 10: with a greater number of rules, the fuzzies become less interpretable and loses its resemblance to human intelligence [30, 43, 48]. The method is tested with a program written in JAVA and employing an inference engine. This experiment has been conducted by using a 10-fold cross validation, where the data is partitioned into 10 equal sizes and the process of running the experiment is repeated 10 times on every portion of data. The effectiveness of FCoGA is validated using the percentage of correctly predicted cases produced by FCoGA. The percentage of accuracy can be determined by (4):

EXPERIMENTAL SETUP

To evaluate the proposed method, two well-known datasets for evaluating fuzzy systems are used: Wisconsin Breast Cancer Diagnosis (WBCD) and Pima Indian Diabetes (PID). These datasets were obtained from the University of California, Irvine (UCI) machine learning repository. First a brief explanation of each dataset used is present, followed by a description of the dataset within the context of the experiment. Finally, the results of the FCoGA are presented.

3.1 Dataset Description 3.1.1 Wisconsin Breast Cancer Diagnosis (WBCD) Dataset
The WBCD dataset has been widely used to evaluate the performance of classifier systems such as the genetic fuzzy system [35], neural networks [40], support vector machines [2] and decision trees [1]. The WBCD dataset is used to differentiate the diagnoses of cases between benign and malignant. The WBCD dataset contains nine attributes and one output with 699 diagnosis cases in which 458 are benign samples and the rest are malignant. However, 16 cases are reported incomplete and therefore omitted in this experiment [40]. As a result, only 683 diagnosis cases are used in which 444 cases are benign and 239 cases are malignant. The attributes are clump thickness (v1), uniformity of cell size (v2), uniformity of cell shape (v3),

Accuracy (acc) (TP TN ) / no. of data 100 (4) where TP is true positive (the number of cases A is correctly predicted as A), whereas TN is true negative (the number of cases B is correctly predicted as B) and no. of data is the number of data that has been tested. The accuracy chosen is validated by other existing studies that have used accuracy in the validation of their techniques [13, 14, 18, 20, 25, 35, 42].

JOURNAL OF COMPUTING, VOLUME 3, ISSUE 11, NOVEMBER 2011, ISSN 2151-9617 HTTPS://SITES.GOOGLE.COM/SITE/JOURNALOFCOMPUTING WWW.JOURNALOFCOMPUTING.ORG

86

TABLE 1 PARAMETER SETTINGS Parameter Population size Crossover probability Mutation probability Elite probability No. of rules Generation Value [30, 70] [0.5, 1.0] [0.0, 0.5] [0.1, 0.5] [1, 10] 100 no. of rules

TABLE 3 THE BEST PARAMETER SETTING ON WBCD AND PIMA


DATASETS

Parameter Population size Crossover probability Mutation probability Elite probability No. of rules

Value 50 0.9 0.3 0.1 10

3.3 Experimental Results


The results obtained by FCoGA when applied on the WBCD and the PID Indian datasets are showed in Table 2. The best parameter setup is shown in Table 3, where both of the datasets use same setting to produce the best result. From the experiment on the WBCD dataset, the highest average accuracy is 98.42% with the number of rule is 10; the best is 100% when the number of rule is two; while the worst is 82.37% when the number of rule is 10. For evaluation purposes, the FCoGA performance is compare with other techniques as illustrated in Table 4, which shows that FCoGA obtained the highest accuracy of all techniques. For the experiment performed on the PID dataset, the highest average accuracy obtained is 78.17% when the number of rule is 10; the best is 84.42% when the number of rule is three; and the worst is 65.79% when the number of rule is 10. To evaluate the performance of FCoGA, Table 5 shows the comparison with other techniques when applied on the PID dataset. It shows that FCoGA achieves the highest average accuracy when compared to other techniques.

4 DISCUSSION
The main objective of this study is to propose an improved fuzzy modelling method that can obtain classification accuracies that are better than those of existing methods. In addition, the interpretability of the fuzzy system

also needs to be considered. Although there is no standard definition of interpretability for a fuzzy system, several studies have defined interpretability as covering certain factors; for instance, the characteristics of the fuzzy rules, where only a few membership functions (attributes of data) are applied [30, 43, 48]. Moreover, another study has defined the interpretability of a fuzzy system by the number of rules [23, 33]. Mencar and Fanelli [28] stated that the interpretability of the model must take into consideration whether it can be reasonably understood by humans. Therefore, the FCoGA has been designed to set the new standard in classification accuracy while retaining (or improving) interpretability. Using the best parameter setup for the experiments (Table 4), the FCoGA has obtained the highest accuracy and only needs a small number of rules. In addition, these rules use only a few membership functions. Fig. 6 shows the best model obtained by the FCoGA when applied to a WBCD. This model applied only two rules: there are four membership functions in the longer rule and only one membership function in the shorter rule. This set of fuzzy rules employed only five membership functions in total. Meanwhile, Fig. 7 shows the best model when the FCoGA is applied to PID dataset. This model also utilised two fuzzy rules, with five membership functions in the longer rule and only one membership function in the shorter rule. The fuzzy rules in this model applied a total of six membership functions.

TABLE 2 THE RESULTS OF WBCD AND PID DATASETS No. of rules 1 2 3 4 5 6 7 8 9 10 WBCD dataset (%) Average 59.17 76.73 88.72 92.22 95.71 95.75 97.14 96.83 96.45 98.42 Best 76.47 100.00 100.00 100.00 100.00 100.00 100.00 100.00 100.00 100.00 Worst 0.00 60.29 60.29 67.65 70.59 57.35 60.92 51.47 69.12 82.35 Average 44.85 53.14 74.01 73.89 73.10 71.66 74.79 72.72 76.09 78.17 PIMA dataset (%) Best 61.04 68.83 85.72 81.82 81.82 84.42 81.82 84.82 81.82 84.42 Worst 18.18 18.18 58.44 40.26 44.16 57.89 59.21 44.16 63.64 65.79

JOURNAL OF COMPUTING, VOLUME 3, ISSUE 11, NOVEMBER 2011, ISSN 2151-9617 HTTPS://SITES.GOOGLE.COM/SITE/JOURNALOFCOMPUTING WWW.JOURNALOFCOMPUTING.ORG

87

TABLE 4 COMPARATIVE RESULTS OF WBCD DATASET WITH OTHER


TECHNIQUES

Technique by Li and Wang [23] Gadaras and Mikhailov [13] Luukka [25] Evsukoff et. al. [12] Kim and Ryu [20] Tsipouras et. al. [42] Reyes and Sipper [35] This paper

Accuracy (%) 96.09 96.08 98.19 96.63 96.66 95.71 98.25 98.42

TABLE 5 COMPARATIVE RESULTS OF PID DATASET WITH OTHER


TECHNIQUES

Technique by Tsipouras et. al. [42] Kim and Ryu [20] Evsukoff et. al. [12] Hu [15] Kukkurainen and Luukka [21] Cornelis et. al [9] This paper
Membership function v1 P d 3 8 v2 2 5 v3 1 1 v4 5 1 v5 2 2 v6 3 5 v7 7 6

Accuracy (%) 77.30 77.00 76.82 75.80 74.40 73.45 78.17

From the experiments that were tested on the WBCD and the PID datasets, FCoGA obtained the highest average of accuracy when it is compared to other works. The successfulness of FCoGA in producing the highest classification accuracy may have been contributed by the two fitness levels of evaluation which are at the species level and at the cooperative chromosome level. This is because all of the species with the highest fitness value collaborates with each other to perform the completion solution. By doing this, the quality of the complete solution can be found easier and able to produce the fuzzy model that can achieve higher classification accuracy. To support this statement, Table 6 shows the comparison of FCoGA with one level fitness evaluation and FCoGA with two level fitness evaluations. FCoGA with one level fitness evaluation refers to the fitness evaluation that only occurs at the cooperative chromosome level and the species selected to perform the cooperative chromosome is chosen by random function. TABLE 6 A COMPARISON OF ONE FITNESS LEVEL WITH TWO FITNESS
LEVELS

Fitness level 1 level 2 level

Dataset (Average Accuracy) WBCD dataset(%) PID dataset (%) 92.17 53.82 98.42 78.17

v8 1 3

v9 7 4

cancer 5 2

Rule 1: IF (clump thickness IS high) AND (uniformity of cell shape IS high) AND (single epithelial cell size IS high) AND (bland chromatin IS low) then (cancer IS malignant) Rule 2: IF (uniformity of cell size IS low) THEN (cancer IS benign) Fig. 6. The Best model on WBCD dataset. Membership function v1 P d 10 15 v2 140 137 v3 61 59 v4 35 0 v5 443 171 v6 3 13 v7 7 5 v8 86 6 diabetes 1 3

Rule 1: IF (Diastolic blood pressure IS high) AND (Body mass index IS high) THEN (diabetes IS negative) Rule 2: IF (Number of times pregnant IS low) AND (Plasma glucose concentration a 2 h in an oral glucose tolerance test IS low) AND (Diastolic blood pressure IS low) AND (Triceps skin fold thickness IS high) AND (Body mass index IS high) THEN (diabetes IS positive) Rule 3: IF (pedigree function IS low) THEN (diabetes IS negative) Fig. 7. The Best model on PID dataset.

The concept of cooperative chromosomes has been adopted in this study to simplify the representation of the solution. As a consequence, the learning process of FCoGA is rapid. This might have been because of the process of breaking the problems into sub-problems. Fig. 8 and Fig 9 show the graph of the fitness per generation by using the best set of parameter settings (Table 3) to show the speed of learning. Fig. 8 shows the FCoGA applied to the WBCD dataset. The most rapid learning process in all experiments can be considered to be from the 0th to 15th generations, in which the graph shows that fitness is sharply improved, and needs only 15 generations to learn the problem. Furthermore, the improvement in all experiments that occurred from the 0th to 15th generation can be considered to be at an earlier generation. In Fig. 9, the graph shows the fitness of FCoGA when applied to the PID dataset. From the graph, it can be seen that from generation 0th to 5th, the fitness in all experiments improved sharply. With regards to the beginning of the learning process, this can be considered as the most rapid learning, taking only five generations to learn the problem before stabilising. Also, the learning process that began between the 0th and 5th generations can be considered at earlier generations. Because of the rapid learning process of FCoGA, the maximum numbers of generations needed are only 190 and 200 for the WBCD and PID datasets, respectively. Compared to the decomposed method, the FCoGA with single species was also tested. Single species means that the FCoGA has only one species that represents the solution. Fig. 10 and Fig. 11 plotted the line

JOURNAL OF COMPUTING, VOLUME 3, ISSUE 11, NOVEMBER 2011, ISSN 2151-9617 HTTPS://SITES.GOOGLE.COM/SITE/JOURNALOFCOMPUTING WWW.JOURNALOFCOMPUTING.ORG

88

hand, FCoGA with single species occurred in the generation 15 to 50. For the PID dataset, the learning process on three species and on single species occurred in the generation 5. Even though the learning process occurred in the same generation, but the fitness value of single species is not as high as compared to the three species. This is shown in Fig. 11. In conclusion, FCoGA with three species has the highest capability of learning the problems in which it can learn the problems at the early generation. Therefore, as a plus advantage, FCoGA only needs a small number of maximum generations.
Fig. 8. Speed of learning of the WBCD dataset.

5 CONCLUSION
In this paper, an improved method of generating fuzzy model called as FCoGA, has been proposed. FCoGA is designed to improve current accuracy rates and increase the ease of interpretation regarding generated fuzzy models compared to other previously reported methods. FCoGA is built on top of GA optimisation method. Following this, GA is extended by using CCA method with the intention of reducing the complexity of the solutions. CCA method breaks the chromosomes in GA into three species that represent the parameters of the fuzzy model: the fuzzy rule set, the membership functions and the overlap lengths in the membership functions. In the evolution process, each species is evolved separately before being combined with others to complete fuzzy model. In addition, FCoGA has two stages of evaluation that are based on fitness: species fitness and cooperative chromosome fitness. The fitness is applied to all species with the purpose of improving the accuracy of the model and to ensure that FCoGA obtains the best fuzzy model. For the purpose of performance measurement, FCoGA is tested on two famous benchmark datasets, the WBCD and the PID, and shows better results than those reported by previous studies. Future research will strive to improve the ability of FCoGA to classify non-binary classifications. Consequently, one or more new fuzzy parameters must be identified to reduce the complexity of FCoGA while maintaining its interpretability.

Fig. 9. Speed of learning of the PID dataset.

Fig. 10. A comparison of speed of the WBCD dataset.

ACKNOWLEDGMENT
This study has been performed under project Vote 79278 and is fully funded by the Malaysian Ministry of Science, Technology and Innovation (MOSTI). Many thanks are offered to the reviewers whose comments and suggestions have improved the paper

REFERENCES
[1] Fig. 11. A comparison of speed of the PID dataset. J. Abonyi, J.A. Roubos, F. Szeifert, Data-driven generation of compact, accurate, and linguistically sound fuzzy classifiers based on a decisiontree initialization, International Journal of Approximate Reasoning 32 (2003) 121. M.F. Akay, Support vector machines combined with feature selection for breast cancer diagnosis, Expert Systems with Applications 36 (2009) 32403247. L. Amelia, D.A. Wahab, A. Hassan, Modeling of palm oil pro-

graph that demonstrates the comparison. In Fig. 10, it shows the comparison on the WBCD dataset. The learning process of FCoGA with three species resulted in the first 10 generation before becoming stable. On the other

[2]

[3]

JOURNAL OF COMPUTING, VOLUME 3, ISSUE 11, NOVEMBER 2011, ISSN 2151-9617 HTTPS://SITES.GOOGLE.COM/SITE/JOURNALOFCOMPUTING WWW.JOURNALOFCOMPUTING.ORG

89

[4]

[5]

[6] [7]

[8]

[9]

[10]

[11]

[12]

[13]

[14]

[15]

[16] [17]

[18]

[19]

[20]

[21]

[22]

duction using fuzzy expert system, Expert Systems with Applications 3 (2009) 87358749. E. Araujo, L. S. Coelho, Particle swarm approaches using Lozi map chaotic sequences to fuzzy modelling of an experimental thermal-vacuum system, Applied Soft Computing 8 (2008) 13541364. M. F. Azeem, Z. Ahmad, M. Hanmandlu, Fuzzy modeling of fluidized catalytic cracking unit, Applied Soft Computing 7 (2007) 298324. R. Babuska, H.B. Verbruggen, An overview of fuzzy modeling for control, Control Engineering Practice (1996) 15931606. P.A. Castillo, J.J. Merelo, M.G. Arenas, G. Romero, Comparing evolutionary hybrid systems for design and optimization of multilayer perceptron structure along training parameters, Information Sciences 177 (2007) 28842905. O. Cordon, F. Gomide, F. Herrera, F. Hoffmann, L. Magdalena, Ten years of genetic fuzzy systems: current framework and new trends, Fuzzy Sets and Systems 141 (2004) 531. C. Cornelis, R. Jensen, G. Hurtado, D. Slezak, Attribute selection with fuzzy decision reducts, Information Sciences 180 (2010) 209224. K. Crockett, Z. Bandar, D. Mclean, J. OShea, On constructing a fuzzy inference framework using crisp decision trees, Fuzzy Sets and Systems 157 (2006) 28092832. L. Dimitriou, T. Tsekeris, A. Stathopoulos, Adaptive hybrid fuzzy rule-based system approach for modeling and predicting urban traffic flow, Transportation Research Part C, 16 (2008) 554573. A.G. Evsukoff, S. Galichet, B.S.L.P. de Lima, N.F.F. Ebecken, Design of interpretable fuzzy rule-based classifiers using spectral analysis with structure and parameters optimization, Fuzzy Sets and Systems 160 (2009) 857881. I. Gadaras, L. Mikhailov, An interpretable fuzzy rule-based classification methodology for medical diagnosis, Artificial Intelligence in Medicine 47 (2009) 2541. S.N. Ghazavi, T.W. Liao, Medical data mining by fuzzy modeling with selected features, Artificial Intelligence in Medicine 43 (2008) 195206. Y.C. Hu, Nonadditive grey single-layer perceptron with Choquet integral for pattern classification problems using genetic algorithms, Neurocomputing 72 (2008) 331340. E. Hullermeier, Fuzzy sets in machine learning and data mining, Applied Soft Computing 11 (2011) 14931505. G.H. Hwang, D.W. Kim, J.H. Lee, Y.J. An, Design of fuzzy power system stabilizer using adaptive evolutionary algorithm, Engineering Applications of Artificial Intelligence 21 (2008) 86 96. H. Kahramanli, N. Allahverdi, Design of a hybrid system for the diabetes and heart diseases, Expert Systems with Applications 35 (2008) 8289. O. Kelesoglu, Fuzzy multiobjective optimization of trussstructures using genetic algorithm, Advances in Engineering Software 38 (2007) 717721. M.W. Kim, J.W. Ryu, Optimized fuzzy classification using genetic algorithm in fuzzy systems and knowledge discovery, Springer Berlin, Heidelberg, 2005. P. Kukkurainen, P. Luukka, Classification method using fuzzy level set subgrouping, Expert Systems with Applications 34 (2008) 859865. K. K. Lee, W.C. Yoon, A classifier learning system using a coe-

[23] [24]

[25]

[26]

[27]

[28]

[29]

[30]

[31]

[32]

[33]

[34]

[35]

[36]

[37]

[38]

[39]

[40]

volution method for deflection yoke misconvergence pattern classification problem, Information Sciences 178 (2008) 1372 1390. M. Li, Z. Wang, A hybrid coevolutionary algorithm for designing fuzzy classifiers, Information Sciences 179 (2009) 19701983. T.H.S. Li, N.R. Guo, C.P. Cheng, Design of a two-stage fuzzy classification model, Expert Systems with Applications 35 (2008) 14821495. P. Luukka, Classification based on fuzzy robust PCA algorithms and similarity classifier, Expert Systems with Applications 36 (2009) 74637468. O.L. Mangasarian, W.N. Street, W.H. Wolberg, Breast cancer diagnosis and prognosis via linear programming, Operations Research 43 (1995) 570577. R. Martinez, O. Castillo, L.T. Aguilar, Optimization of interval type-2 fuzzy logic controllers for a perturbed autonomous wheeled mobile robot using genetic algorithms, Information Sciences 179 (2009) 21582174. C. Mencar, A.M. Fanelli, Interpretability constraints for fuzzy information granulation, Information Sciences 178 (2008) 4585 4618. L.F. Mendonca, J.M.C. Sousa, J.M.G.S.d. Costa, An architecture for fault detection and isolation based of fuzzy methods, Expert Systems with Applications 36 (2009) 10921104. R. Mikut, J. Jkel, L. Grll, Interpretability issues in data-based learning of fuzzy systems, Fuzzy Sets and Systems 150 (2005) 179197. M. Mohebbi, J. Barouei, M.R. Akbarzadeh-T, A.R. Rowhanimanesh, M.B. Habibi-Najafi, M. Yavarmanesh, Modeling and optimization of viscosity in enzyme-modified cheese by fuzzy logic and genetic algorithm, Computers and Electronics in Agriculture 62 (2008) 260265. M.A. Potter, K.A.D. Jong, Cooperative coevolution: An architecture for evolving coadapted subcomponents, Evolutionary Computation 8 (2000) 129. P. Pulkkinen, J. Hytonen, H. Koivisto, Developing a bioaerosol detector using hybrid genetic fuzzy systems, Engineering Applications of Artificial Intelligence 21 (2008) 13301346. P. Pulkkinen, H. Koivisto, Fuzzy classifier identification using decision tree and multiobjective evolutionary algorithms, International Journal of Approximate Reasoning 48 (2008) 526543. C.A.P. Reyes, M. Sipper, Fuzzy CoCo: A cooperative coevolutionary approach to fuzzy modeling, IEEE Transactions on Fuzzy Systems 9 (2002) 727736. B. Rezaee, M.H.F. Zarandi, Data-driven fuzzy modeling for Takagi-Sugeno-Kang fuzzy system, Information Sciences 180 (2010) 241255. M. R. Sadrabadi, M. H. F. Zarandi, Identification of the linear parts of nonlinear systems for fuzzy modeling, Applied Soft Computing 11 (2011) 807819. J. Sargolzaei, M. Khoshnoodi, N. Saghatoleslami, M. Mousavi, Fuzzy inference system to modeling of cross flow milk ultrafiltration, Applied Soft Computing 8 (2008) 456465. E.S. Sazonov, P. Klinkhachorn, H.S. Gangarao, U.B. Halabe, Fuzzy logic expert system for automated damage detection from changes in strain energy mode shapes, Nondestructive Testing and Evaluation 18 (2002) 120. R. Setiono, Generating concise and accurate classification rules for breast cancer diagnosis, Artificial Intelligence in Medicine 18 (2000) 205219.

JOURNAL OF COMPUTING, VOLUME 3, ISSUE 11, NOVEMBER 2011, ISSN 2151-9617 HTTPS://SITES.GOOGLE.COM/SITE/JOURNALOFCOMPUTING WWW.JOURNALOFCOMPUTING.ORG

90

[41] C.D. Stylios, V.C Georgopoulos, G.A. Malandraki, S. Chouliara, Fuzzy cognitive map architectures for medical decision support systems, Applied Soft Computing 8 (2008) 12431251. [42] M.G. Tsipouras, T.P. Exarchos, D.I. Fotiadis, A methodology for automated fuzzy model generation, Fuzzy Sets and Systems 159 (2008) 32013220. [43] H. Wang, S. Kwong, Y. Jin, W. Wie, K.F. Man, Multi-objective hierarchical genetic algorithm for interpretable fuzzy rulebased knowledge extraction, Fuzzy Sets and Systems 149 (2005) 149186. [44] L.X. Wang, A course in fuzzy systems and control, PrenticeHall, Englewood Cliffs, NJ, 1997. [45] Y.F. Wang, Y.F. Wang, T.Y. Chai, Modeling and control compensation of nonlinear friction using adaptive fuzzy systems, Mechanical Systems and Signal Processing 23 (2009) 24452457. [46] L.N. Xing, Y.W. Chen, K.W. Yang, Multi-population interactive coevolutionary algorithm for flexible job shop scheduling problems, Computational Optimization and Applications 44 (2009), doi: 10.1007/s10589-009-9244-7. [47] Z.Y. Xing, Y.L. Hou, Y. Zhang, L.M. Jia, Y. Hou, A multiobjective cooperative coevolutionary algorithm for constructing accurate and interpretable fuzzy systems, In IEEE International Conference on Fuzzy Systems. 2006, Vancouver, Canada, 1404 1410. [48] Z.Y. Xing, Y. Zhang, Y.L. Hou, L.M. Jia, On generating fuzzy systems based on pareto multi objective cooperative coevolutionary algorithm, International Journal of Control, Automation, and Systems 5 (2007) 444455. [49] Z. Yang, K. Tang, X. Yao, Large scale evolutionary optimization using cooperative coevolution, Information Sciences 178 (2008) 29852999. [50] Y. Zhang, X. Wu, Z. Xing, W. Hu, On generating interpretable and precise fuzzy systems based on pareto multi-objective cooperative co-evolutionary algorithm, Applied Soft Computing 11 (2011) 12841294. [51] F. Zhu, S.U. Guan, Cooperative co-evolution of GA-based classifiers based on input decomposition, Engineering Applications of Artificial Intelligence 21 (2008) 13601369. Arfian M. Ismail Arfian M. Ismail is a M.Sc. candidate at the Faculty of Computer Science and Information Systems at the Universiti Teknologi Malaysia. He received a BSc degree in Computer Science from the Universiti Teknologi Malaysia in 2008. His research interests focus on fuzzy modelling, evolutionary and coevolutionary algorithms and artificial intelligence. Hishammudin Asmuni is a Senior Lecturer at the Faculty of Computer Science and Information Systems at the Universiti Teknologi Malaysia. He received a PhD in Computer Science from the University of Nottingham, UK in 2008, a MSc degree in Computer Science from the Universiti Teknologi Malaysia in 1999 and a BSc degree in Computer Science from the Universiti Malaya in 1996. His research interests focus on time tabling/scheduling, fuzzy systems and bioinformatics. Razib M.Othman is a Director of Laboratory of Computational Intelligence and Biotechnology at the Universiti Teknologi Malaysia. He received a BSc, MSc and PhD in Computer Science from the Universiti Teknologi Malaysia in 1993, 2003 and 2008, respectively. His research interests are in the areas of computational intelligence, computational biology and software engineering.

You might also like