The partial solutions consideration based self-adaptive evolutionary algorithm:
A learning structure of neuro-fuzzy networks
Pei-Chia Hung
⇑, Sheng-Fuu Lin
Department of Electrical and Control Engineering, National Chiao-Tung University, Taiwan
a r t i c l e
i n f o
Keywords: Evolutionary algorithm Self adaptive Global solution Neuro-fuzzy networksa b s t r a c t
Evolutionary computation has become a popular research field due to its global searching ability. There-fore, it raises a challenge to develop an efficient and robustness evolutionary algorithm to not only reduce the evolution process but also increase the chances to meet the global solution. To this end, this study aims to provide a novel evolutionary algorithm named the partial solutions consideration based self-adaptive evolutionary algorithm (PSC-SEA) to address this issue; the proposed algorithm is applied to adjust the parameters of the neuro-fuzzy networks. More specifically, different from the existing evolu-tion algorithms, the partial soluevolu-tions consideraevolu-tion (PSC) tends to consider both the specializaevolu-tions and complementary relationships of the partial solutions from the complete solution to prevent converging to suboptimal solution. Moreover, a self-adaptive evolutionary algorithm (SEA) is proposed to dynami-cally adjust the searching space according to the performance. By doing so, the proposed evolutionary algorithm can consider the influence of partial solutions and provide a suitable searching space to increase the chances to meet the global solution. As shown in the results, the proposed evolutionary rithm obtains better performance and smoother learning curves than other existing evolutionary algo-rithms. In other words, the proposed evolutionary algorithm can efficient tune the parameters of the neuro-fuzzy networks to meet the global solution. Base on the results, a framework is proposed to build a benchmark for developing the evolutionary algorithms that can not only consider the influence of par-tial solutions but also provide a suitable searching space.
Ó 2012 Elsevier Ltd. All rights reserved.
1. Introduction
In recent decade, the research related to learning structures of the neuro-fuzzy networks have become a popular research field due to its powerful adaptive ability in various applications such as nonlinear control (Lin & Xu, 2007), face detection (Lin, Chuang, & Xu, 2006), stock prediction (Lee, 2004) and etc. More specifically, the learning structure is mainly used to let neuro-fuzzy networks can be suitable for particular application by constructing the rela-tionship between the input and output patterns. In other words, it is mainly used to develop the suitable way to adjust the parame-ters of the neuro-fuzzy networks (Sadighi & Kim, 2011). Thus, the learning structure plays an important to influence the perfor-mance of the neuro-fuzzy networks.
Since the learning structures can influence the performance of the neuro-fuzzy networks, there is an important issue for develop-ing the suitable learndevelop-ing structure when modeldevelop-ing the neuro-fuzzy networks. To address this issue, in this study, we aim to develop the efficiently and robustly learning structure to model the
neu-ro-fuzzy networks that meet the global solution (Lin & Hsu,
2007). Among various global based learning structures, the evolu-tionary algorithm (Hsu, Lin, & Cheng, 2010) is widely used as the learning structure of the neuro-fuzzy networks due to its powerful global searching ability. More specifically, the evolutionary algo-rithms are parallel and global based search techniques that can help construct the neuro-fuzzy networks that can meet the optimal solution. Moreover, it can simultaneously evaluate many points in the searching space.
Although the evolutionary algorithm can reach our aim, the tra-ditional evolutionary algorithms only pay more attention to the
whole solution when finding the optimal solution (Karr, 1991;
Lin & Jou, 2000; Lin & Xu, 2006). In other words, single individual is used to represent the overall performance. However, single solu-tion cannot consider the specializasolu-tions to ensure diversity that can prevent the single solution converging to suboptimal solutions (Smith, Forrest, & Perelson, 1993). Therefore, in moist serious case, the single solution consideration may easy meet the suboptimal solutions.
In addition, the traditional evolutionary algorithms may also fo-cus on evaluating the fixed searching space for finding the optimal solution (Karr, 1991; Lin & Jou, 2000; Lin & Xu, 2006). In other words, the searching space in such algorithms cannot be adjusted 0957-4174/$ - see front matter Ó 2012 Elsevier Ltd. All rights reserved.
http://dx.doi.org/10.1016/j.eswa.2012.02.190 ⇑ Corresponding author.
E-mail addresses: [email protected] (P.-C. Hung), sflin@mail. nctu.edu.tw).
Contents lists available atSciVerse ScienceDirect
Expert Systems with Applications
candidate solution may still need to search in the large range of space. Therefore, such algorithms may slowly or even hardly meet the optimal solution by using the single criterion evaluation.
To address this issue, this study proposed a novel evolutionary algorithm named partial solutions consideration based self-adaptive evolutionary algorithm (PSC-SEA). More specifically, the PSC-SEA can be divided into two parts such as the partial solutions consideration (PSC) and self-adaptive evolutionary algorithm (SEA). Regarding the PSC, it is mainly used to consider the influence of the partial solutions (specializations) from the complete solution to prevent the single solution converging to suboptimal solutions. More specifically, the complete solution is partitioned into several individuals. The PSC considers both specialization of the partial solution and complementary relationship among individuals to prevent the evolutionary algorithm to meet the suboptimal solu-tion. Regarding the SEA, it is mainly proposed to adjust the search-ing space automatically accordsearch-ing to the performance of each individual. More specifically, an individual can be further searched in the small range of space when the individual is near to the optimal solution. Conversely, if an individual is far away from the optimal solution, the individual should be further searched in the large range of space. By doing so, the parameters of the neu-ro-fuzzy network can be tuned efficiently and the accuracy of the outputs obtained from the neuro-fuzzy networks can be improved. In summary, this study aims to provide a novel evolutionary algorithm to not only consider the influence of partial solution but also provide a self adaptive searching space when adjusting the parameters of the neuro-fuzzy networks. By doing so, the neu-ro-fuzzy networks can not only efficiently and robustly tune the parameters of the neuro-fuzzy networks but also increase the chances to meet the optimal solution. This paper is organized as follows. The related works are introduced in Section2. In Section
3, the methodology development is described. In Section 4, the
illustrative results are presented. In Section5, a framework related to the novel evolutionary algorithm is summarized. Finally, the concluding remarks are showed in the last section.
2. Literature review
The related works of neuro-fuzzy networks and evolutionary algorithms are shown in the following sub sections.
2.1. Neuro-fuzzy networks
Recently, neuro-fuzzy networks have been widely applied in several fields (Lee, 2004; Lin & Xu, 2007; Lin et al., 2006). The main purpose of the neuro-fuzzy networks is to provide robust structure that can be applied to different applications (Lin & Xu, 2006; Tan & Quek, 2010). More specifically, in the classical applications, an accurate mathematical model is required to achieve their pur-poses. In other words, different applications may need different mathematical model. However, in real world applications, it is dif-ficult or even hardly to generate a suitable mathematical model to represent the applications. Thus, to avoid strongly associated with the mathematical models especially for nonlinear and complex problems (Juang & Lin, 1999; Narendra & Parthasarathy, 1990), the neuro-fuzzy network provide a suitable solution to address di-verse purposes of different applications.
Generally, the neuro-fuzzy network can be divided into a for-ward and backfor-ward structure (learning structure). Regarding the forward structure, it is mainly used to produce the output of the network. More specifically, it consists of a set of fuzzy if-then rules (Mitra & Hayashi, 2000), fuzzy inference mechanism (Seki &
Mizumoto, 2010) and defuzzifier mechanism (Melgarejo, 2002).
Table 1shows each of these components.
Regarding the backward structure (learning structure), it is mainly used to improve the performance of the forward structure by adjusting the parameters of the neuro-fuzzy network (i.e. the parameters of the antecedent part and consequent part). Recently, several studies tend to proposed novel algorithms applied to learn-ing structure to adjust the parameters of fuzzy if-then rules (Jang, 1993; Juang & Lin, 1998; Lin, Lin, & Shen, 2001; Zahlay, Rao, & Ibra-him, 2011). Among them, the most well known learning algorithm is back-propagation (BP)Lin et al., 2001; Zahlay et al., 2011. More specifically, it is used to adjust the parameters of the neuro-fuzzy networks by using the steepest descent technique to minimize the error function (Xu & Zhang, 2010). Since the BP can be success-fully applied to adjust the parameters of the neuro-fuzzy networks, it may easily reach the local minima or even never find the global solution (Lin, Xu, & Lee, 2005). Beside, for different structures of neuro-fuzzy networks, new mathematical expressions are needed for each network structure.
To face aforementioned issue, the global based learning struc-tures are proposed to prevent achieving the sub-optimal solution (Goldberg, 1989). More specifically, such structures mainly adopt the principle of the heuristics learning to help the networks meet the optimal solution (Lin et al., 2005). Among various global based learning structures, evolutionary algorithms are widely used to prevent the neuro-fuzzy networks achieving the sub-optimal solu-tion (Karr, 1991; Lin & Jou, 2000; Lin & Xu, 2006). In other words, the evolutionary algorithms can be applied to find an optimal solu-tion when adjusting the parameters of neuro-fuzzy networks. Moreover, they can also be suitable for different neuro-fuzzy net-work structures. It implies that evolutionary algorithms do not need to develop new mathematical expressions for different struc-tures of the neuro-fuzzy networks. Thus, the evolutionary algo-rithms are better candidates than the BP algoalgo-rithms to train the parameters of the neuro-fuzzy networks. Such arguments can also explain why this study aims to improve the learning structure about the evolutionary algorithms.
2.2. Evolutionary algorithm
As mentioned above, the evolutionary algorithms can be suc-cessfully applied to improve the global searching ability of tradi-tional learning structure (e.g. BP algorithm). Thus, recently, there are several evolutionary algorithms have been applied to tune the parameters of neuro-fuzzy networks for increasing the chances to meet the optimal solution (Fogel, 1994; Koza, 1992; Rechenberg,
1994). Such algorithms cannot only provide parallel and global
searching techniques to seek the solutions but also simultaneously evaluate many points in the search space. Among various evolutionary algorithms, the most well-known model is genetic fuzzy models (Karr, 1991; Lin & Jou, 2000; Lin & Xu, 2006) that
used the genetic algorithms (GAs) Holland, 1992, to train the
Component Content Fuzzy if-then
rules
It consists of an antecedent and consequent part. The former represents different degree (membership degrees) that each input patterns belong to each membership function and the latter means the firing strength of each fuzzy rule
Fuzzy inference schema
It is mainly used to conduct the fuzzy output by inferring fuzzy rules
Defuzzifier schema
parameters of fuzzy models. For instance, Karr applied GA to
de-sign a fuzzy controller (Karr, 1991). As shown in his work, the
GA is mainly used to seek the optimal parameters of each member-ship function. Moreover, Xu and Lin applied reinforcement GA to seek the optimal parameters of the TSK-type neural fuzzy control-ler (Lin & Xu, 2006). Their work showed that the well-trained TSK-type neural fuzzy controller could obtain better performance than the BP algorithms in several control applications.
Since genetic fuzzy models are useful to improve the global searching ability, it still has some challenges needed to be taken into account. More specifically, the major issue of the evolutionary algorithms is ‘‘how to design the criteria to generate the individu-als that can meet the optimal solution?’’. In other words, there is a need to develop a novel architecture to improve the generations of the evolutionary algorithms. To address this issue, several studies tend to develop novel evolutionary algorithms. For instance, Smith et al. proposed a symbiotic evolution to provide a multiple consid-eration when evaluating the individuals (Smith et al., 1993). More specifically, the symbiotic evolution divides the complete solution into several partial solutions. Each partial solution can be charac-terized as specializations. The specialization property can ensure the diversity of evolution. In other words, such diversity can pre-vent a population to meet suboptimal solutions. As shown in their work, the symbiotic evolution can obtain the well performance by evaluating the partial solution. Similar to the search of Smith et al., Gomez and Schmidhuber also proposed the enforced sub-popula-tions (ESP) to use multiple considerasub-popula-tions to prevent for meeting the suboptimal solutions (Gomez, 2003). As shown in their works, the sub-populations are used to evaluate the partial solutions. Their results indicated that the ESP can obtain better performance than systems with only single consideration.
More recently, Lin and Xu modified such multiple consider-ations to efficiently seek the parameters of the particular NFN (i.e. TSK-type NFN) Lin & Xu, 2007. More specifically, the fine adjusting is used to adjust the parameters of the NFNs for improv-ing the evolutionary algorithm. Their work indicated that the mul-tiple considerations can demonstrate high performance than traditional evolutionary algorithms. Besides, Lin and Hsu proposed the hybrid evolutionary learning algorithm (HELA) to apply the multiple considerations to both a structure and parameter learning when training the parameters of wavelet neuro-fuzzy networks (Lin & Hsu, 2007). Their results demonstrated that the HELA obtain better performance than other existing evolutionary algorithm.
Although aforementioned studies verified the performance of their proposed algorithms, they may lack to not only take into ac-count the influence of both specializations and complementary relationship but also consider adjusting searching space when per-forming the evolutionary process (e.g. reproduction, crossover and mutation). More specifically, regarding the former, even if the
mul-tiple considerations can demonstrate high performance (Gomez,
2003; Lin & Hsu, 2007; Lin & Xu, 2007; Smith et al., 1993); they only focus on evaluating the efficiency of a particular solution by considering the performance of all the possible combinations that contains that particular solution. In other words, the performance of each partial solution cannot completely represent the perfor-mance of the complete solution. It implies that the aforementioned algorithms can not exactly combine the partial solutions that indi-vidually perform well to generate the best performed solution. Regarding the latter, aforementioned algorithms only focuses on fixed searching space when performing the evolution. In other words, such algorithms may not offer a suitable searching space to increase the chances to let the individuals generate better off-spring in each generation. In more serious case, these algorithms may be difficult to meet the optimal solution.
To address aforementioned issues, this study proposed a novel evolutionary algorithm to consider both multiple considerations
and self adaptive searching space. Regarding the former, the influ-ence of the specializations and complementary relationship in par-tial solutions is considered to prevent the evolutionary algorithms converging to suboptimal solutions. More specifically, each partial solution can not only be evaluated independently but also consider the complementary relationship among different partial solutions. Regarding the latter, the searching space will be adjusted automat-ically according to the performance of each individual. More spe-cifically, an individual can be searched in the suitable searching space. By doing so, the parameters of the neuro-fuzzy network can be trained efficiently and the accuracy of the outputs obtained from the neuro-fuzzy networks can be improved.
3. Methodology
The methodology of this study is introduced in this section. More specifically, the neuro-fuzzy network and partial solutions consideration based self-adaptive evolutionary algorithm (PSC-SEA) are described as following sections.
3.1. Neuro-fuzzy network
Neuro-fuzzy networks are mainly used to represent the fuzzy if–then rules in a network structure. By doing so, the well-know learning algorithms of artificial neural networks can be applied to train the fuzzy if–then rules. Generally, the most popular neu-ro-fuzzy network is Takagi-Sugeno-Kang (TSK) type neuneu-ro-fuzzy networks (Lin & Xu, 2007; Lin et al., 2006; Lin & Xu, 2007) since it could achieve superior performance than the various neuro-fuzzy networks in both network size and learning accuracy. To this end, a TSK-type neuro-fuzzy network (TNFN) is used to reach the aims of this study. In other words, the PSC-SEA, which will be de-scribed in the following section, was used to train the parameters of the TNFN.
The TNFN provides the minimum fuzzy implication to perform the fuzzy reasoning. Moreover, the consequence of each rule is a function related to the input variables in the network. The general adopted function is the linear combination of input variables plus a constant term. A TSK-type fuzzy rule is shown below
IF x1is A1j and x2is A2j. . . and xnis Anj
THEN y ¼ w0jþ w1jx1þ . . . þ wnxn
ð1Þ As shown in Eq.(1), the parameter w0jrepresents the constant term
that used to plus the linear combination of input variables to gener-ate the consequence of jth rule node. Moreover, the parameter wij
represents the ith parameter, which used to product the ith input variable to generate the linear combination of input variables. Since the consequence of a rule is crisp, the defuzzification step becomes obsolete in the TSK inference scheme. Instead, the model output is computed as the weighted average of the crisp rule outputs, which is computationally less expensive then calculating the center of gravity.
To further understand the TNFN, the structure of the TNFN is shown inFig. 1. It is a five-layer network structure. The function of each layer is shown below.
3.1.1. Input layer
This layer is mainly used to transmit the input values to the next layer. The function of each node in this layer is shown below
uð1Þi ¼ xi ð2Þ
where uðkÞi denotes the input value of ith node in the kth layer and xi
3.1.2. Membership function layer
The nodes of this layer are used to compute the membership degree that corresponds to each input node in the Input Layer. By doing so, the membership degree of each input node that belongs to a fuzzy set (Wang, Wang, Bai, Chen, & Sun, 2010) is calculated in this layer. Each node in this layer corresponds to one linguistic la-bel of the particular input node in the Input Layer. In this study, the most well know Gaussian membership function is adopted in this layer (Baradaran-K, Shekofteh, Toosizadeh, & Akbarzadeh-T, 2010). The function of each node in this layer is shown below
uð2Þij ¼ exp ½uð1Þi mij2
r
2 ij ! ð3Þ where mijandr
ijare, respectively, the center and the width of theGaussian membership function of the ith input node uðkÞ
i in the jth
rule.
3.1.3. Rule layer
This layer tends to compute the firing strength of each rule. More specifically, each node in this layer is determined by the fuzzy inference operation. In this study, the ‘‘AND’’ fuzzy inference operation is adopted (Wang, He, Peng, & Liang, 2010). In other words, the product operation is used to compute the firing strength of each rule. The function of each rule is shown below
uð3Þj ¼
Q
i
uð2Þij ð4Þ
3.1.4. Consequent Layer
The nodes of this layer are mainly used to determine the conse-quent part of each rule. More specifically, each node in this layer is
compute based on the linear combination of input variables. More-over, the input nodes in this layer consist of the outputs delivered from the previous layer and the input variables from the Input Layer (seeFig. 1). The function of each node is shown below uð4Þ j ¼ u ð3Þ j w0jþP n i¼1 wijxi ð5Þ where wijare the corresponding parameters of the consequent part.
3.1.5. Output Layer
Each node in this layer is used to compute the crisp output va-lue. In other words, the defuzzifier operation is performed in this layer. More specifically, the outputs of the Rule Layer and Conse-quent Layer are used to compute the crisp output value. The func-tion of this layer is shown below
y ¼ uð5Þ¼ PR j¼1u ð4Þ j PR j¼1u ð3Þ j ¼ PR j¼1u ð3Þ j ðw0jþPni¼1wijxiÞ PR j¼1u ð3Þ j ð6Þ where R is the number of fuzz rules.
3.2. Partial solutions consideration based self-adaptive evolutionary algorithm (PSC-SEA)
In this section, the PSC-SEA is introduced in the following sub-sections, including learning components (Section3.2.1) and learn-ing procedure (Section3.2.2).
3.2.1. Learning components
This section describes the main components of the proposed PSC-SEA. More specifically, the required components can be further divided into the components related to partial solutions Fig. 1. Structure of the TSK-type neuro-fuzzy network.
consideration (PSC) and the components related to Self-Adaptive Evolutionary Algorithm (SEA). The details of these two types of components are shown below.
3.2.1.1. Partial solutions consideration (PSC). The main purpose of the PSC is to consider both specializations and complementary relationship. Regarding the former, the specializations of both indi-viduals and population are considered. More specifically, the struc-ture of the individuals and coding schema should be modified to let the individuals can be evaluated individually. Regarding the latter, the fitness value evaluation should be modified to consider not only the performance of each partial solution but also the comple-mentary performance among different partial solutions. The details of these two types of components are shown below.
3.2.1.1.1. Individuals. The idea of PSC is that each individual in a population represents only a partial solution instead of the com-plete solution. In other words, comcom-plete solution is obtained from
combining several individuals. As mention in Section2, previous
studies indicated that partial solutions can consider diversity to prevent the evolutionary algorithms converging to suboptimal solutions. By doing so, the evolutionary algorithms can have more chances to meet the optimal solution than the traditional evolu-tionary algorithms (Fogel, 1994; Karr, 1991; Koza, 1992; Lin & Jou, 2000; Rechenberg, 1994).
Generally, the applications considered partial solutions only used a single population to evaluate each partial solution (Smith et al., 1993). In other words, there is a lack of considering the spe-cializations of the populations. More specifically, single population may generate similar individuals when performing the evolution-ary process. By doing so, the complete solution may generate by combining several individuals that overlap too much. It is due to the fact that the evolutionary steps tend to find out the optimal solution by using selecting the well-perform individuals. In other words, the well-perform individuals may have more chances to survive or even reproduce in each generation. However, the indi-viduals only represent a particular solution. It implies that partic-ular individuals may generate too much to let the complete solution too difficult to meet the optimal solution. To this end, this study proposed partial solutions consideration (PSC) to prevent the complete solution that generates form similar individuals. In other words, the specializations of the population are taken into account
when building the population. More specifically, a single popula-tion of the PSC consists of several populapopula-tions. Each sub-population represents the collection of individuals that represent the particular partial solution. The complete solution is generated from selecting individuals from several sub-populations. By doing so, the PSC can prevent to building the complete solution from similar individuals.
To further understand the concept of the PSC, the structure of
the population in the PSC is shown in Fig. 2. Fig. 2 showed
that the complete TNFN is constructed from selecting several individuals from several sub-populations. Each individual in a sub-population represent only a particular fuzzy rule. In other words, the number of the sub-population is equals to the number of the fuzzy rules of the TNFN.
3.2.1.1.2. Coding. After defining the structure of the individuals, the other issue of the PSC is to encode the adjustable parameters into an individual. In other words, the parameters of the TNFN are en-coded into an individual in this operation. More specifically, the adjustable parameters of each fuzzy rule are translated into an individual. According to the Eq.(1), the adjustable parameters of a TSK-type fuzzy rule consist of an antecedent part and a conse-quence part. Therefore, the parameters of the antecedent and con-sequence part of a fuzzy rule are encoded in to an individual. The coding schema of an individual is shown inFig. 3. As shown in this figure, i and j represent the ith input node in the jth rule. The cod-ing type of the chromosomes in this study is a float point type. 3.2.1.1.3. Fitness assignment. Although aforementioned steps can consider the specializations of both population and individuals, there still lack of considering the complementary relationship among various individuals. More specifically, in traditional evolu-tionary algorithm considered the principle of particular solution (Gomez, 2003; Lin & Hsu, 2007; Lin & Xu, 2007; Smith et al.,
1993), the performance of an individual is evaluated by summing
up the fitness values of all the possible combinations that contains that the individual. In other words, the performance of each indi-vidual cannot really be used to represent the performance of the complete solution. For instance, a set of individuals with the high-est performance do not mean they can be used to combine to gen-erate the complete solution with the highest performance. Conversely, their combinations may cause the complete solution to meet the bad performance. Thus, even if the specializations of
the population are considered in this study, it may be still difficult to meet the optimal solution.
To address this issue, there is a need to consider the comple-mentary relationships among various sub-populations. More spe-cifically, the performance of the whole solution should be considered when performing the evolutionary process. To this end, the fitness assignment is proposed for the PSC that can con-sider the complementary relationships among various individuals. Like the traditional evolutionary algorithm (Gomez, 2003; Lin & Hsu, 2007; Lin & Xu, 2007; Smith et al., 1993), the proposed fitness assignment also compute the fitness value of an individual by sum-ming up the fitness values of all the possible combinations which contains the individual. However, for avoiding aforementioned problem, the proposed fitness assignment considers the combina-tion of performance when summing up the fitness values. More specifically, the performance of the whole solution is also consid-ered when evaluating the performance of each individual. By doing so, the performance of each individual can really be used to repre-sent the performance of the whole solution. Thus, the PSC can in-crease the chances to meet the optimal solution. The details of the proposed fitness assignment are described as follows.
Step 1: First of all, the fitness assignment randomly chooses R fuzzy rules from the R sub-populations to construct a TNFN. The aforementioned step is repeated for SelectionTimes times, which is predefined by using triad-and-error testing. The following equa-tion presents how to form the TNFNs.
TNFNi¼ fInd1Sel1;Ind2Sel2; . . .IndRSelRg;
i ¼ 1; 2; . . . ; SelectionTimes;
Selj¼ Random½1; SPsize;
j ¼ 1; 2; . . . R;
ð7Þ
where
TNFNireprents the ith generated TNFN.
Ind1Sel1reprents the individual the selects to formthe the TNFN.
Seljmeans the selected index of the individual in the jth
sub-population.
SPsizerepresent the number of individuals in a sub-population.
SelectionTimes represets the total number of selected TNFNs in each generation.
Step 2: The fitness assignment evaluates each TNFN, which is generated from step1, to obtain a fitness value. The fitness value is mainly used to represent the performance of each TNFN. In other words, it is the main process of the evolution because the fitness value plays an important role to decide whether the optimal solu-tion is found. The well design fitness value can help the individuals be evaluated efficiently and vice versa. In this study, the most
well-known root mean square (RMS) errors Veretelnikova, 2004 are
used to evaluate the performance of the TNFN since it can robust reflect the performance of the models. The following equation pre-sents the fitness function designed in this study.
FitnessValue ¼ ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiPn 1 i¼1jxix0ij n r þ 1 ! ; ð8Þ
where xiand x0irepresent the ith output of TNFN and the ith desired
output respectively. As shown in Eq. (8), the high FitnessValue
means that the outputs of TNFN are close to the desired outputs and vice versa.
Step 3: After obtaining the fitness value of each selected TNFN, the fitness assignment then computes the fitness value of each individual that contains in the TNFN. More specifically, the fitness value obtained from step 2 is divided by the number of the fuzzy rules (i. e. R). After that, the divided fitness value is accumulated to the selected individuals. To consider the complementary rela-tionships among the various individuals, this study considers the performance of the complete solution when accumulating the fit-ness value to the selected individuals. More specifically, the fitfit-ness value of each individual is computed as Eq.(9). It is mainly used to prevent the problem that a set of individuals with the highest per-formance may cause the complete solution to meet the bad perfor-mance. By doing so, the best combination of the individuals will be kept.
if Fitness ValueIndij¼ Best Fitness Value=R
if Fitness Value=R <¼ Best Fitness Value=R
Fitness ValueIndij¼ Fitness ValueIndij
else
Fitness ValueIndij¼ Fitness ValueIndijþ Fitness Value=R
else
Fitness ValueIndij¼ Fitness ValueIndijþ Fitness Value=R
ð9Þ
where
Fitness ValueIndij is the fitness value of the jth individual in ith
sub-population.
Best Fitness Value represents the best fitness value in current excited generations.
Step 4: In the last step, the accumulated fitness value of each individual will be further divided by the number of times it has been selected. After that, the average fitness value represents the performance of an individual. The following equation presents how to compute the average fitness value.
Fitness ValueIndij¼ Fitness ValueIndij=Select TimesIndij
where i ¼ 1; 2; . . . R;
j ¼ 1; 2; . . . SPsize:
Select TimesIndijmeans the number of timesIndijhas been selected:
ð10Þ In summary, the PSC can contribute to consider the specialization and the complementary relationships when performing the afore-mentioned steps. More specifically, it can take into account special-izations of the individual and population. Moreover, the PSC can also consider the complementary relationships among various sub-populations to let the set of individuals with the highest perfor-mance avoid meeting the bad perforperfor-mance. By doing so, the PSC can not only keep the performance in each generation but also consider the specializations of both individuals and population to increase the chances to meet the optimal solution.
3.2.1.2. Self-adaptive evolutionary algorithm (SEA). In addition to the PSC, the concept of the other proposed method (i.e. SEA) is also introduced. The main purpose of the SEA is to decide the suitable Fig. 3. The coding schema of a chromosome.
searching space when performing the evolutionary process. More specifically, the evolutionary steps, which related to seeking the solutions, will need to consider adjusting the search space accord-ing to the performance of each individual. In other words, the SEA is applied to a crossover and mutation step. The details of these two components are shown below.
3.2.1.2.1Crossover. The major task of the crossover is to exchange the genes between two parents to generate the offspring (Vereteln, 2004). By doing so, the new combination of the individuals in each sub-population will be generated in the next generation. Generally, the individuals in the top help of each sub-population will be used to perform the crossover to generate the individuals in the other half of each sub-population. It implies that such evolutionary step can seek the different combination of the individuals in each sub-population that perform well to find the optimal solution.
Although the crossover can bring aforementioned benefits, only the single criterion is used to perform the crossover. More specifi-cally, in the traditional evolutionary algorithms, the crossover only
tends to exchange the genes that selected randomly (Fogel, 1994;
Gomez, 2003; Holland, 1992; Karr, 1991; Koza, 1992; Lin & Hsu, 2007; Lin & Jou, 2000; Lin & Xu, 2007; Rechenberg, 1994; Smith et al., 1993). In other words, there is no idea to consider the fitness value to provide different actions used to generate the different combination of the chromosomes. More specifically, using a ran-dom process to generate the searching range of genes may be dif-ficult to find the optimal solution especially when the solution is near to the optimal solution. For instance, if the individuals are near to the optimal solution, it needs to search the optimal solution in a small searching range. Conversely, if the individuals are far away from the optimal solution, it needs to search the optimal solution in a large searching range. To this end, there is a need to provide multiple criteria based on the fitness value when perform-ing the crossover. By doperform-ing so, the evolutionary step can increase the chances to find the optimal solution.
To this end, the proposed SEA applies the multiple criteria to perform the crossover. The multiple criteria are mainly used to consider the fitness value when performing the crossover. The main concept of the SEA is to consider the fitness value to provide different actions to perform the crossover. More specifically, the SEA for crossover uses the fitness value of parent individuals to determine the suitable number of genes used to exchanging the genes to generate offspring in the next generation. By doing so, the parents with low fitness value may seek the optimal solution by exchanging many genes. Conversely, the parents with the high fitness value may seek the optimal solution by exchanging a few genes. The details of the SEA for crossover are shown in the follow-ing equations.
Crosso
v
erSite1¼ RandðIndLengthÞ ð11ÞMaxCroPoints ¼ chrLength ðMaxFitness
v
alue=RFitnessValueIndijÞ ð12Þ
Crosso
v
erSite2¼ Crossov
erSite1þ RandðMaxCroPointsÞCrosso
v
erSite22 ½1; IndLengthð13Þ where
Crosso
v
erSite1is the first crossover site used to perform the SEACrosso
v
erSite2is the second crossover site used to perform the SEA:MaxFitness
v
alue is the maximal value of fitness value ðIn this study;theMaxFitnessv
alueis1:00Þ:IndLength is the length of a individual:
MaxCroPoints is the range used to decide theCrosso
v
erSite2:ð14Þ
As shown in Eq.(12), the relationships between MaxCroPoints
and FitnessValueIndijare in inverse. It implies that the SEA for
cross-over can exchange many genes of the two parent individuals with low performance. In contrast, it can also exchange a few genes of
the two parent individuals with high performance (see Eqs.(11)–
(14)). Moreover, for exchanging the genes between two parents,
the two-point crossover, which is mainly used to exchange the genes between CrossoverSite1and CrossoverSite2form the two
par-ents, is adopted in this study (Lin & Yao, 1997). The two-point crossover is shown inFig. 4. After doing so, each sub-population could robust produce the different combination of the individuals according to their fitness value to seek the optimal solution when performing the SEA for crossover.
3.2.1.2.2. Mutation. Although the crossover can generate the differ-ent combinations of the individuals by exchanging the existing genes, no any new value is considered for seeking the optimal solu-tion. In other words, the evolution may only depend on the initial value of the individuals and may difficultly find the optimal solu-tion. To face this issue, there is a need to attend new genes in exist-ing individuals (chromosomes) to extend the searchexist-ing space for seeking the optimal solution. The mutation is the way to achieve such purpose. More specifically, it is mainly used to generate new gene to replace the existing gene in the individuals (Lee, Bai, & Chen, 2008). By doing so, the individuals can extend their search-ing space to increase the chance to meet the optimal solution.
Like the crossover, the SEA can also be applied to the mutation, which is used to consider the fitness value when performing the mutation, to provide an efficiency way to perform the mutation. The main concept of the SEA for mutation is to provide the multiple criteria to adjust the searching space. More specifically, it can con-sider the fitness value of each individual to determine the range values used to update the mutation genes. By doing so, the search-ing space can have a self-adaptive ability. For example, the individ-uals with low fitness value may seek the optimal solution by updating a mutation point by using the large value range and vice versa. The details of the SEA for mutation are shown in the follow-ing equations.
Fitness Range ¼ Max Fitness Value=R Fitness ValueIndij ð15Þ
MutSite ¼ RandðIndLengthÞ ð16Þ
IndMutSite¼ IndMutSiteþ MutValue ð17Þ
MutValue ¼ RandðRange Value Fitness RangeÞ ð18Þ
Where
MutSite is the mutation site of the mutated individual: IndMutSiteis the MutSite th gene of the mutated chromosome:
RangeValue is the predefined value related to the input space: ð19Þ The aforementioned equations indicate that the relationship between MutValue and Fitness ValueIndij are in inverse (see Eqs.
(15)–(19)). It implies that the SEA for mutation can rough tune the selected gene of the individual with low performance while it can fine tune the selected gene of the individual with high perfor-mance. By doing so, the SEA can robust adjust the parameters of the TNFN when performing the mutation.
In summary, the proposed SEA can contribute to consider the multiple criteria to evaluate the individuals in each sub-population. More specifically, it can take into account such criteria to perform the crossover and mutation. By doing so, the evolution-ary steps cannot only seek in a large searching space when the solution is far away from the optimal solution but also seek in a small searching space when the solution is near to the optimal
solution. Thus, the SEA can provide a robust way to evolutes the sub-populations.
3.2.2. Learning procedure
After introducing the components of both the PSC and SEA, the learning procedure of the PSC-SEA is introduced in this section. As shown inFig. 5, the procedure consists of eight steps. Each step is shown below:
P1. In this step, the PSC is applied to generate the initial sub-populations. Each initial sub-population (seeFig. 2), which con-sists of several individuals, is generated based on the coding schema (seeFig. 3). Each gene of an individual is generated ran-domly according the predefined RangeValue.
P2. The PSC then perform the Fitness Assignment to evaluate the performance of each individual in each sub-population. In other
words, Eqs.(7)–(10)are used to compute the fitness value of
each individual in each sub-population.
P3. After that, the proposed PSC then judges whether the evolu-tionary process is finished based on a predefined criterion. Gen-erally, the criterion is defined according to a predefined generation times or the predefined desired fitness value (Fogel, 1994; Gomez, 2003; Holland, 1992; Karr, 1991; Koza, 1992; Lin & Xu, 2007; Rechenberg, 1994; Smith et al., 1993). In this study, the predefined generation times is used to judge whether the evolutionary process is finished.
P4. If the evolutionary process is not finished yet, the proposed PSC then perform the reproduction to keep the well-perform individuals in the top half of each sub-population. The concept
of the reproduction is to sum up the fitness values of the top half of chromosomes in each sub-population and then compute the fitness ratio of each individual based on the summation fit-ness values. After doing so, the individuals are reproduced according to the fitness ratio. In this study, the roulette-wheel selection is used to select the reproduced individuals since it
provides more robust way than other selection methods (Zou,
Mi, & Xu, 2006).
P5. After performing the reproduction, the SEA then performs the crossover step. More specifically, a rate will be generated ran-domly to judge whether the crossover is performed based on the predefined CrossoverRate. If the crossover needs to be done, the proposed evolutionary algorithm will continue to perform the P 6. Otherwise, the evolutionary algorithm will go to the P7. P6. If the random rate is greater than CrossoverRate, the SEA for crossover is then performed. The parents, which are used to perform the SEA for crossover, are chosen randomly from the top half of each sub-population. After doing so, the SEA for crossover is performed based on the selected parents (see Eqs.
(11)–(14)).
P7. After that, the SEA then performs the mutation step. Like-wise, a rate will be generated randomly to judge whether the mutation is performed based on the predefined MutationRate. If the mutation needs to be done, the evolutionary process will go to the P 8. Otherwise, the evolutionary process will go to the P 2 until the predefined criterion is reached.
P8. The SEA for mutation is performed in this step. More specif-ically, the individual is selected from the new generated indi-viduals randomly in each sub-population. After doing so, the SEA is performed based on the selected individual (see Eqs.
(15)–(19)). After that, the evolutionary process then goes to the P2.
4. Illustrative examples
To verify the performance of the proposed PSC-SEA, two simu-lations are discussed in this section. Regarding the first simulation, the complex identification application given by Narendra and Par-thasarathy (Juang & Lin, 1998) is applied to not only investigate the benefits of the PSC-SEA but also demonstrate the performance of each component. Regarding the other example, a real world appli-cation is applied to investigate the performance of the proposed PSC-SEA. More specifically, the proposed PSC-SEA is applied to forecast the number of sunspots (Lin & Xu, 2006) to verify the robustness and efficiency of the proposed PSC-SEA in real world application.
4.1. The Identification of a nonlinear dynamic system
The nonlinear dynamic system given by Narendra and Partha-sarathy (Juang & Lin, 1998) is used to not only investigate the per-formance of the proposed PSC-SEA but also verify the perper-formance Fig. 4. The two-point crossover.
of each component. It is due to the fact that such system is easy to implement and obtain the well performance. Thus, it can be use as a benchmark to verify the benefits of the PSC-SEA. To this end, the nonlinear dynamic system should be identified firstly. The follow-ing equation describes the function related to the system.
xðk þ 1Þ ¼ axðkÞð1 xðkÞÞ ð20Þ
According to the Eq.(20), the output of the nonlinear dynamic sys-tem is nonlinearly influenced by the past state of the output and in-put value. Generally, the training patterns were generated by setting the input values to sin(2
p
k/25) (i.e. u(k) = sin(2p
k/25)). Moreover, the first 100 pairs (i.e. y(1) to y(100)) are used as the training patterns to model the TNFN that suits for identifying such system while the other 100 pairs (from y(101) to x(200)) are used as the testing patterns to validate the performance of the well-trained TNFN.In addition, there is also an issue to determine the predefined parameters of the PSC-SEA. To address such issue, a parameter
exploration proposed by De Jong (De Jong, 1975) is adopted to
determine the suitable predefined parameters since it is suitable for the smaller dataset. To this end, the parameter exploration was applied to decide the predefined parameters of the proposed PSC-SEA. More specifically, it uses the different ranges of the values to evaluate the performance of the PSC-SEA to judge whether the values are suitable. For instance, the number of fuzzy rules has the range from 3 to 10 in increments of 1, the number of individ-uals in a sub-population (i.e. SPsize in Eq.(7)) has the range from
10 to 50 in increments of 5, the crossover rate has the range from 0.20 to 0.80 in increments of 0.05 and the mutation rate has the range from 0.0 to 0.4 in exponential increments. The other param-eters of the PSC-SEA are defined as the same way. After performing the parameter exploration, the parameters of the proposed PSC-SEA are defined inTable 2.
After deciding the parameters, the proposed PSC-SEA is then used to perform the evolutionary procedure (seeFig. 5). The simu-lation was carried out for 15 runs and each run starts with the same initial parameters. Such simulation can provide the reliable evidence about the performance of the proposed PSC-SEA.
After performing the simulation, the learning curves of 15 runs are shown inFig. 6. To easy identify the performance of the pro-posed PSC-SEA, each learning curve is represented by using the RMS error (Vereteln, 2004) instead of the fitness value. The RMS er-ror (Vereteln, 2004) is showed in the following equation.
RMSerror ¼ ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi Pn i¼1jxi x0ij 2 n s ð21Þ As shown inFig. 6, each learning curve of the proposed PSC-SEA can reach the low RMS error. It implies that the proposed PSC-SEA can obtain good performance in 15 runs. To further verify the perfor-mance of the proposed PSC-SEA, a tradition genetic algorithm (GA)Karr, 1991and evaluated sub-population (ESP)Gomez, 2003, which is related to the application of the particular solution consid-eration, are used to compare the performance with the PSC-SEA.
Like the PSC-SEA, the parameters of the GA and ESP are defined by using the parameter exploration. Moreover, such two algo-rithms are used to perform the simulation for 15 runs. The learning curves of the GA and ESP are shown inFigs. 7 and 8. Comparing to
Fig. 6, the proposed PSC-SEA can dramatically outperform than the GA and ESP. The reason may be because that the proposed PSC-SEA can take into account both specializations and suitable searching space to increase the chances to meet the optimal solution. By doing so, the PSC-SEA can generate efficiency candidate solutions. Thus, the PSC-SEA can obtain better performance than others (GA and ESP). Moreover, the learning curves inFig. 6are smoother than those ofFigs. 7 and 8. It also implies that the PSC-SEA can improve to search the better solution in each generation by using the pro-posed PSC and SEA.
For further demonstrating such argument, the testing patterns are used to evaluate the performance of the proposed PSC-SEA, GA and ESP. More specifically, regarding the PSC-SEA, the testing result (seeFig. 9(a)) and testing errors (seeFig. 9(a)) between the desired output and the outputs obtained by the well-trained TNFN are shown inFig. 9. Regarding the GA and ESP, the testing results
and errors are show in Figs. 10 and 11. As shown inFigs. 9–11,
we can further verify that the PSC-SEA can outperform than the
Table 2
The predefined parameters of the PSC-SEA.
Parameters Value
The number of rules 5
The number of individuals in a sub-population 20
The number of generation times 100
Selection times 30
RangeValue for weight [5.000, 5.000]
RangeValue for membership functions [2.000, -2.000]
Mutation rate 0.3
Crossover rate 0.5
Fig. 6. The learning curves of the proposed method.
GA and ESP. It implies that the proposed PSC-SEA can efficiently and robustly adjust the parameters of the TNFN than the tradi-tional GA (Karr, 1991) and ESP (Gomez, 2003).
In addition, for providing reliable evidence about the perfor-mance of the PSC-SEA, various existing well-known genetic
algo-rithm mentioned in Section 2, including (Gomez, 2003; Karr,
1991; Lin & Hsu, 2007; Lin & Xu, 2007; Smith et al., 1993), are also applied to compare the performance with the proposed PSC-SEA. Likewise, the parameters of these algorithms are also defined by using the parameter exploration. Moreover, each algorithm is used to perform the simulation for 15 runs. The performance, which con-sists of mean and standard deviation of the RMS errors and CPU Time, of aforementioned algorithms in both training and testing re-sults are shown inTables 3. The PSC-SEA can outperform than other algorithms (Gomez, 2003; Karr, 1991; Lin & Hsu, 2007; Lin & Xu, 2007; Smith et al., 1993). In other words, the PSC-SEA cannot only spend smaller CPU time but also obtain lower RMS errors than other algorithms in both training and testing results.
In brief, the proposed PSC-SEA can demonstrate high perfor-mance via the both PSC and SEA. More specifically, the PSC can take into account not only specializations of both individuals and pop-ulation but also the complementary relationships to prevent the evolutionary algorithm meeting the sub-optimal solution. More-over, the SEA can used multiple criteria to adjust the searching space to let the evolutionary process can seek the solution in a suitable searching space. Thus, the PSC-SEA can obtain the better performance than other existing evolutionary algorithms.
Although aforementioned results can demonstrate the perfor-mance of the proposed PSC-SEA, only the complete PSC-SEA is Fig. 8. The learning curves of the ESP (Gomez, 2003).
Fig. 9. The testing results (a) and errors (b) of the PSC-SEA.
evaluated. In other words, each proposed component of the both PSC and SEA cannot be evaluated independently. Therefore, we cannot demonstrate the contribution of each proposed component.
To this end, in this example, we also tend to investigate the perfor-mance of each proposed component.
As shown inTable 4, the five types of models, including the PSC-SEA, PSC, PSC-SEA, PSC-SEA-I and PSC-SEA-II are used to evaluate the training and testing performance. Regarding the PSC, instead of the proposed SEA in the PSC-SEA, it adopts the traditional two-point crossover (Lin & Yao, 1997) and mutation (Lee et al., 2008) to generate the offspring. Regarding the SEA, instead of the pro-posed PSC, it adopts the traditional GA to perform the SEA. In other words, the SEA only considers the complete solution when per-forming the evolutionary process. Regarding the PSC-SEA-I, instead of the SEA for crossover, it adopts the traditional two-point cross-over to generate the offspring. In other words, the proposed SEA is only applied to perform the mutation. Regarding the PSC-SEA-II, the traditional unit mutation (Lee et al., 2008) is used to mutate the unit gene of the single individual. Thus, the proposed SEA is only applied to perform the crossover.
Table 4indicates that the SEA outperform than the PSC. In other words, the SEA can obtain better performance than the PSC. It im-plies that the suitable searching space is an important issue when developing the evolutionary algorithm. Thus, even if the proposed PSC can take into account not only the specializations of the indi-viduals and population but also the complementary relationships among various particular solutions, it still needs a suitable search-ing space to perform the evolutionary procedure. It is due to the fact that the searching space may influence the converging effi-ciency when performing the evolutionary process so the SEA can improve the efficiency of the PSC.
Besides, the PSC-SEA-I outperform than the PSC-SEA-II. In other words, the SEA for crossover can obtain better performance than the SEA for mutation. It may be because that the crossover is the main evolutionary procedure for finding the optimal solution (Pitangui & Zaverucha, 2008) so the modifications in the crossover step can bring much more benefits than those in the mutation step. However, as shown inTable 4, we can further see that the pro-posed PSC-SEA, which combines both the PSC and complete SEA, can obtain the best performance among five types of the models. Thus, we can demonstrate that each component of the PSC-SEA is necessary used to improve the performance. In summary, the components of the PSC-SEA are complementary to each other to increase the chances to meet the optimal solution. Thus, the PSC-SAE can be successfully applied to adjust the parameters of the TNFNs.
Fig. 11. The testing results (a) and errors (b) of the ESP.
Table 3
The performance comparison of various existing models.
Method RMS errors (training) RMS errors (testing) CPU time (training)
Mean Deviation Mean Deviation Mean (second) Deviation (second)
PSC-SEA 0.0037 0.0015 0.0043 0.0018 2.76 0.21
Lin and Xu (2007) 0.0074 0.0034 0.0087 0.0039 13.87 2.10
Gomez (2003) 0.0082 0.0026 0.0096 0.0029 4.18 1.25
Smith et al. (1993) 0.012 0.007 0.015 0.008 13.73 3.19
Lin and Hsu (2007) 0.057 0.009 0.041 0.011 14.61 2.92
Karr (1991) 0.064 0.012 0.054 0.017 11.52 3.74
Table 4
The training and testing performance of different components.
Method RMS errors (training) RMS errors (testing) CPU time (training)
Mean Deviation Mean Deviation (second) Mean Deviation (second)
PSC-SEA 0.0037 0.0015 0.0043 0.0018 2.76 0.21
PSC 0.0063 0.0024 0.0071 0.0027 2.42 0.22
SEA 0.0053 0.0018 0.0059 0.0020 1.87 0.18
PSC-SEA-I 0.0045 0.0020 0.0049 0.0022 2.69 0.23
Since the contributions of the PSC-SEA can be demonstrated in
the Section 4.1, the example is too simple to demonstrate the
robustness and efficiency of the PSC-SEA. Moreover, Section4.1
only applied the PSC-SEA to the application related to function identification. In other words, how the PSC-SEA work in real appli-cation cannot be evaluated. To this end, in this section, the real world application is adopted to evaluate the efficiency and robust-ness of the proposed PSC-SEA. More specifically, the PSC-SEA is ap-plied to forecast the number of sunspots (Lin & Xu, 2006).
As showed in previous studies, the sunspot prediction is a diffi-cult task since it displays the distribution of nonlinear, nonstation-ary and non-Gaussian cycles (from 1700 to 2004)Lin & Xu, 2006. Thus, it is suitable for applying to evaluate the performance of the PSC-SEA in real application. To this end, we apply the proposed PSC-SEA to forecast the number of sunspots. The following equa-tion describes the funcequa-tion related to the input and out pairs of the sunspots forecasting.
Input Pattern ¼ ½x1ðtÞ;x2ðtÞ;x3ðtÞ;
Output Pattern ¼ yðtÞ where
xiðtÞ ¼ yðt iÞ;
t represents the year and yðtÞ is the number of sunspots at the t th year: ð22Þ According to the Eq.(22), each training pattern consists of input and output patterns. Regarding the input pattern, it consists of three past values of the number of sunspots. Regarding the output pattern (i.e. y(t)), it represents the number of sunspots at tth year. Gener-ally, the first 180 years (from 1705 to 1884) of the sunspots data are used as the training patterns while the remaining 120 years (from 1885 to 2004) of the sunspot numbers were used as testing patterns to evaluate the performance of proposed PSC-SEA.
Likewise, the RMS error is also used to evaluate the perfor-mance of the PSC-SEA. Moreover, the parameter exploration was also applied to decide the predefined parameters of the proposed
PSC-SEA (seeTable 5).The simulation was carried out for 15 runs
and each run starts with the same initial parameters.
The learning curves of the PSC-SEA are shown inFig. 12. It ver-ifies that the proposed PSC-SEA can still keep reaching the good performance when solving such complex real application. Beside, for further investigating such argument, the testing results of the PSC-SEA (Fig. 13) are also investigated. The testing results indicate that the outputs of the PSC-SEA can accurately match the desired outputs of the sunspots (see Fig. 13(b)). It implies that the PSC-SEA can robustly and efficiently obtain well performance when solving the different or even complex application.
In addition, for providing reliable evidence about the aforemen-tioned argument, other existing well-known evolutionary algo-rithms (i.e.Gomez, 2003; Karr, 1991; Lin & Hsu, 2007; Lin & Xu, 2007; Smith et al., 1993are also applied to compare the
perfor-mance with the proposed PSC-SEA. The perforperfor-mances, which in-clude mean and standard deviation value of RMS errors and CPU Time, the training error of the training patterns and the forecasting Table 5
The predefined parameters of the PSC-SEA.
Parameters Value
The number of rules 6
The number of individuals in a sub-population 30
The number of generation times 300
SelectionTimes 50
RangeValue for weight [5.000, 0.000]
RangeValue for membership functions [1.000, 0.000]
Mutation rate 0.2
Crossover rate 0.4
Fig. 12. The learning curves of the proposed PSC-SEA.
error of the testing patterns, of these compared evolutionary
algo-rithms in both training and testing steps are shown inTables 6.
Again, the PSC-SEA can not only spend smaller CPU time but also obtain better performance (i.e. lower RMS errors, training error and testing error) than other evolutionary algorithms.
In summary, like the results obtained from the Section4.1, the proposed PSC-SEA can demonstrate high performance than other existing evolutionary algorithms in the real application. It implies that the PSC-SEA can be suitable for solving complex and nonlinear real problems. In other words, the PSC-SEA can robustly and Table 6
The performance comparison of various existing models.
Method Training Testing
RMS errors Training error CPU Time RMS errors Testing error
Mean Dev. Mean Dev. Mean Dev. Mean Dev. Mean Dev.
PSC-SEA 8.78 1.24 6.25 1.24 38.28 3.15 12.45 1.79 8.58 1.64
Lin and Xu (2007) 15.67 3.72 13.54 2.98 196.15 69.21 18.31 3.53 16.67 3.41
Gomez (2003) 21.71 3.14 18.43 2.57 81.45 7.18 24.54 2.84 21.45 2.69
Smith et al. (1993) 31.29 3.96 26.26 3.14 181.27 45.91 34.25 3.67 29.64 3.52
Lin and Hsu (2007) 35.67 4.16 31.91 3.72 208.91 91.16 39.72 4.91 36.59 4.87
Karr (1991) 43.54 5.94 38.61 4.54 176.82 68.61 48.64 6.53 42.13 6.12
Fig. 14. The framework of the PSC-SEA.
Table 7
Components of the framework.
Part Components Purposes
Training patterns capturer
It is mainly used to capture the input and output patterns used to train the neuro-fuzzy networks Neuro-fuzzy
networks
It is used to discuss the relationship between the captured input patterns and outcomes Evolutionary
procedure
Population construction
It adopts the specializations of populations to construct the population Individual Coding It uses the specializations of individuals to code the individuals
Fitness Assignment It uses the complementary considerations to design the fitness value of each individual Crossover It is mainly used to apply the SEA to perform the crossover
Mutation It is mainly used to apply the SEA to perform the mutation
PSC Specializations of
Individuals
Each individual represents only particular solution. It can increase the chances to meet the optimal solution Specializations of
population
Each sub-population is used to evaluate each particular solution independently. It can prevent building the complete solution from similar individuals
Complementary relationships
It is used to keep the best combination of the individuals
SEA Multiple criteria It considers multiple criteria to adjust the searching space when performing the crossover and mutation Recorder It is used to store the best solution (e.g. the best combination of the parameters of the TNFN) Real applications It is mainly used to apply the recorder to address the real applications
can demonstrate that considering both the specializations (i.e. PSC) and suitable searching space (i.e. SEA) can help the evolutionary algorithm obtain the better performance than others.
5. The development of the framework
This paper aims to develop a novel evolutionary algorithm for helping the neuro-fuzzy networks that can meet the optimal solution. As shown in the results, the proposed PSC-SEA is a suit-able algorithm for achieving such purpose by considering not only specializations and complementary relationship to prevent the algorithm meet the suboptimal solution but also multiple criteria to decide the suitable searching space. In addition, the results also indicate that the PSC-SEA can contribute to provide robust way to obtain the better performance than existing evolutionary algo-rithms. Moreover, the results also demonstrate that the PSC-SEA can successfully apply to complex real application. In brief, the PSC-SEA can be used to reach the aims of this study. Based on the results, the framework is developed for implementing the evo-lutionary algorithm that can apply the concept of partial solutions and multiple criteria to increase the chance to meet the optimal
solution when constructing the neuro-fuzzy networks (Fig. 14).
The details of the framework are showed below.
As shown inFig. 14, the framework consists of seven parts such as a training patterns capturer, neuro-fuzzy networks, evolutionary procedure, partial solution consideration (PSC), self-adaptive evo-lutionary algorithm (SEA), recorder and real applications. Each part is described inTable 7.
In summary, the framework is helpful to develop an evolution-ary algorithm that can help the neuro-fuzzy networks to meet the optimal solution. More specifically, it can consider both specializa-tion and complementary relaspecializa-tionships to prevent the evoluspecializa-tionary algorithm converging to the sub-optimal solution. Moreover, it can use multiple criteria to automatically adjust the searching space to let the evolutionary algorithm seek the optimal solution in a suit-able searching space. By doing so, the performance of the evolu-tionary algorithm can be improved. Thus, the framework can be tread as a benchmark when developing the evolutionary algorithm that can increase the chances to meet the optimal solution. 6. Conclusion
This study aims to develop the novel evolutionary algorithm (PSC-SEA) to adjust the parameters of the TSK-type neuro-fuzzy network (TNFN). More specifically, regarding the PSC, it cannot only consider both specializations of the individuals and popula-tion but also take into account the complementary relapopula-tionships among various particular solutions. Regarding the SEA, it can con-sider multiple criteria to adjust the searching space (i.e. the num-ber crossover points and the range of mutated value) for improving the performance of evolutionary algorithm. As shown in the re-sults, the PSC-SEA can efficiently and robustly adjust the parame-ters of the TNFN to meet the good performance. Moreover, the performance of each component of the PSC-SEA can also be verified in our results. In brief, the components of the PSC-SEA are comple-mentary to each to increase the chances to meet the optimal solu-tion. Based on the results, the framework is proposed for developing a novel evolutionary algorithm that can increase the chance to meet the optimal solution by considering the both spe-cializations of complete solution and suitable searching space.
Although the PSC-SEA can bring several benefits, there are still some limitations that need to be addressed in the future study. More specifically, some parameters of the proposed SPC-SEA such
performing the PSC-SEA. Thus, there is a need to provide an auto-matic and robust way to define these parameters. In addition, in this study, the PSC-SEA is only used to demonstrate the perfor-mance in the applications related to identification and prediction. Thus, the future works should pay more attention to applying the proposed PSC-SEA to other real applications (e.g. stock predic-tion (Lee, 2004), image processing (Lin et al., 2006) and controller (Lin & Xu, 2007) to demonstrate that the proposed framework can be suitable for seeking the optimal solution in various real applications.
References
Baradaran-K, M., Shekofteh, S. K., Toosizadeh, S., Akbarzadeh-T, M. R. (2010). A fuzzy approximator with Gaussian membership functions to estimate a human’s head pose. In Proceedings of the international joint conference on computer and automation, engineering, (pp. 1154–1158).
De Jong, K. A. (1975). Analysis of the behavior of a class of genetic adaptive systems. Ph. D. Disseration, The University of Michigan, Ann Arbor, MI.
Fogel, L. J. (1994). Evolutionary programming in perspective: The Top-down View. In J. M. Zurada, R. J. Marks, II, & C. Goldberg (Eds.), Computational intelligence. Imitating life. NJ, Piscataway: IEEE Press.
Goldberg, D. E. (1989). Genetic Algorithms in Search Optimization and Machine Learning. Reading, MA: Addison-Wesley.
Gomez, F. J. (2003). Robust Non-linear Control through Neuroevolution, Ph. D. Disseration, The University of Texas at Austin.
Holland, J. H. (1992). Adaptation in neural and artificial system. Cambridge, MA, USA: MIT Press.
Hsu, Y. C., Lin, S. F., & Cheng, Y. C. (2010). Multi groups cooperation based symbiotic evolution for TSK-type neuro-fuzzy systems design. Expert Systems with Applications, 37(7), 5320–5330.
Jang, J. S. R. (1993). ANFIS: Adaptive-network-based fuzzy inference system. IEEE Transactions on Systems Man and Cybernetics, 23, 665–685.
Juang, C. F., & Lin, C. T. (1998). An on-line self-constructing neural fuzzy inference network and its applications. IEEE Transactions on Fuzzy Systems, 6(1), 12–31. Juang, C. F., & Lin, C. T. (1998). An on-line self-constructing neural fuzzy inference
network and its applications. IEEE Transactions Fuzzy Systems, 6(1), 12–31. Juang, C. F., & Lin, C. T. (1999). A recurrent self-organizing neural fuzzy inference
network. IEEE Transactions on Neural Networks, 10(4), 828–845.
Karr, C.L. (1991). Design of an adaptive fuzzy logic controller using a genetic algorithm. In Proceeding of the fourth international conference genetic algorithms, (pp. 450–457).
Koza, J. K. (1992). Genetic programming: On the programming of computers by means of natural selection. Cambridge: MIT Press, MA.
Lee, R. S. T. (2004). iJADE stock advisor: An intelligent agent based stock prediction system using hybrid RBF recurrent network. IEEE Transactions on SMC, Part A, 34(3), 421–428.
Lee, S.F., Bai, X. Y., & Chen, Y.O. 2008. ‘‘Automatic Mutation Testing and Simulation on OWL-S Specified Web Services’’, Joint Conf. on Simulation, Symposium, pp. 149–156.
Lin, G. M., & Yao, X. (1997). Analysing crossover operators by search step size. In Proceedings of the IEEE joint conference on, evolutionary computation, (pp. 107– 110).
Lin, C. J., Chuang, H. C., & Xu, Y. J. (2006). Face Detection in Color Images Using Efficient Genetic Algorithms. Optical Engineering, 45(4). April 2006.
Lin, C. J., Xu, Y. J., & Lee, C. Y. (2005). An efficient genetic algorithm for TSK-type neural fuzzy identifier design. In Proceedings of the International Conference on Industrial and Engineering Applications of Artificial Intelligence and Expert Systems, June 22–25, Bari, Italy. Lecture Notes in Artificial Intelligence (LNAI), Springer-Verlag, June, vol. 3533, (pp. 551–553).
Lin, C. J., & Hsu, Y. C. (2007). Reinforcement hybrid evolutionary learning for recurrent wavelet-based neuro-fuzzy systems. IEEE Transactions on Fuzzy Systems, 15(4), 729–745.
Lin, C. T., & Jou, C. P. (2000). GA-based fuzzy reinforcement learning for control of a magnetic bearing system. IEEE Transactions on Systems Man and Cybernetics Part B, 30(2), 276–289.
Lin, F. J., Lin, C. H., & Shen, P. H. (2001). Self-constructing fuzzy neural network speed controller for permanent-magnet synchronous motor drive. IEEE Transactions on Fuzzy Systems, 9(5), 751–759.
Lin, C. J., & Xu, Y. J. (2006). The design of TSK-type fuzzy controllers using a new hybrid learning approach. International Journal of Adaptive Control and Signal Processing, 20, 1–25.
Lin, C. J., & Xu, Y. J. (2006). A self-adaptive neural fuzzy network with group-based symbiotic evolution and its prediction applications. Fuzzy Sets and Systems, 157(8), 1036–1056.
Lin, C. J., & Xu, Y. J. (2006). A novel genetic reinforcement learning for nonlinear fuzzy control problems. Neurocomputing, 69(16–18), 2078–2089.
Lin, C. J., & Xu, Y. J. (2007). Design of neuro-fuzzy systems using a hybrid evolutionary learning algorithm. Journal of Information Science and Engineering, 23(2), 463–477.
Lin, C. J., & Xu, Y. J. (2007). A self-constructing neural fuzzy network with dynamic-form symbiotic evolution. AutoSoft Journal-Intelligent Automation and Soft Computing, 13(2), 123–137.
Melgarejo, M. A. (2002). Modified center average defuzzifier for improving the inverted pendulum dynamics. Proc. IEEE Int. Conf. Fuzzy Systems, 1, 460–463. Mitra, S., & Hayashi, Y. (2000). Neuro-fuzzy rule generation: Survey in soft
computing framework. IEEE Transactions on Neural Networks, 11(3), 748–768. Narendra, K. S., & Parthasarathy, K. (1990). Identification and control of dynamical
systems using neural networks. IEEE Transactions on Neural Networks, 1, 4–27. Pitangui, C., & Zaverucha, G. (2008). Improved natural crossover operators in GBIVIL.
In Proceedings of the IEEE International Conference on Evolutionary Computation, (pp. 2157–2164).
Rechenberg, I. (1994). Evolution strategy. In J. M. Zurada, R. J. Marks, II, & C. Goldberg (Eds.), Computational intelligence. Imitating life. NJ, Piscataway: IEEE Press.
Sadighi, A., & Kim, W. J. (2011). Adaptive-Neuro-Fuzzy-Based Sensorless Control of a Smart-Material Actuator. IEEE Trans. On Mechatronics, 16(2), 371–379. Seki, H., Mizumoto, M. (2010). Fuzzy functional inference method. In IEEE
International Joint Conference on Fuzzy Systems, (pp. 1–6).
Smith, R. E., Forrest, S., & Perelson, A. S. (1993). Searching for diverse, cooperative populations with genetic algorithms. Evolutionary Computation, 1(2), 127–149.
Tan, J., & Quek, C. (2010). A BCM theory of meta-plasticity for online self-reorganizing fuzzy-associative learning. IEEE Transactions on Neural Networks, 21(6). 985-103.
Veretelnikova, E. L. (2004). Choice of coefficient of criterion of a minimum of the resulting root-mean-square error for linear automatic control systems. In Proceedings of the international joint conference on electronic instrument engineering proceedings, pp. 203–204.
Wang, Z. X., Wang, Q., Bai, M., Chen, Z. Q., & Sun, Z. (2010). Further exploration on relationship between crisp sets and fuzzy sets. In Proceedings of the international joint conf. on computer and automation engineering, vol. 2, (pp. 609–613). Wang, G., He, B., Peng, Y., & Liang, G. (2010). A fuzzy-inference based neural
network model and its application in real-time reservoir flood operation decision-making. In Proceedings of the international joint conference on fuzzy systems and knowledge discovery (FSKD), vol. 1, (pp. 37–40).
Xu, H., & Zhang, Q. (2010). Comparison of convergence of the modified and relaxed hybrid steepest-descent methods for variational inequalities under different conditions. In Proceedings of the international conference on computational science and optimization (CSO), vol. 2, (pp. 527–530).
Zahlay, F. D., Rao, K. S. R., & Ibrahim, T. B. (2011). A new intelligent autoreclosing scheme using artificial neural network and Taguchi’s methodology. IEEE Transactions on Industry Applications, 47(1), 306–313.
Zou, Y.P., Mi, Z.K., & Xu, M.H. (2006). Dynamic load balancing based on roulette wheel selection. In Proceedings of the joint conference on communications, circuits and systems proceedings, (pp. 149–156).