Abstract
This paper proposes a structure evolving learning method for fuzzy systems. The mechanism of the algorithm is that it is an error-reducing driven learning method. The proposed algorithm starts with a simple fuzzy system and evolves the system structure by adding more fuzzy terms and rules to reduce the model errors in a ‘greedy’ way. The main features of the proposed algorithm are summarized as three points. Firstly, it can automatically determine and control the number and location of fuzzy terms by following the error-reducing driven evolving process to achieve the desired accuracy. Secondly, it adds new fuzzy terms and rules by evenly distributing error to each sub-region aiming at an efficient set of fuzzy rules. Thirdly, it uses triangular membership functions with regular partitions and leads to fuzzy system models with good transparency and interpretability. Three benchmark examples are given to illustrate the advantages of the proposed algorithm.
Similar content being viewed by others
References
Angelov P (2002) Evolving rule-based models: a tool for design of flexible adaptive systems. Springer, Heidelberg
Angelov P, Filev D (2004) An approach to online identification of Takagi–Sugeno fuzzy models. IEEE Trans Syst Man Cybern B Cybern 34:484–498
Angelov P, Filev D (2005) Simpl_eTS: a simplified method for learning evolving Takagi–Sugeno fuzzy models. In: The 14th IEEE international conference on fuzzy systems, pp 1068–1073
Angelov P, Filev D, Kasabov N, Cordon O (eds) (2006) Evolving Fuzzy Systems. In: Proceedings of the 2006 international symposium on evolving fuzzy systems EFS’06, IEEE Press
Bernard K, Lázsló L (1981) Mathematical structures underlying greedy algorithms. In: Gecseg F (ed) Fundamentals of computation theory: Proceedings of the 1981 international FCT-conference. Lecture Notes Comput Sci, vol 117. Springer, Berlin, pp 205–209
Deng D, Kasabov N (2000) Evolving self-organizing maps for online learning, data analysis and modeling. In: Amari SI. Giles CL, Gori M, Piuri V (eds) Proceedings IJCNN 2000, Neural networks neural computing, new changes perspectives new millennium, vol VI, New York, pp 3–8
Ding YS, Ying H, Shao SH (2000) Necessary conditions on minimal system configuration for general MISO Mamdani fuzzy systems as universal approximators. IEEE Trans Syst Man Cybern B 30(6):857–864
Emami MR, Turksen B, Goldenberg AA (1998) Development of a systematic methodology of fuzzy modeling. IEEE Trans Fuzzy Syst 6(6):341–361
Fritze B (1995) A growing neural gas network learns topologies. Adv Neural Inf Process Syst 7:1–8
Ishibuchi Nozaki HK, Tanaka H (1993) Efficient fuzzy partition of pattern space for classification problems. Fuzzy Sets Syst 59:295–304
Jack E (1971) Matroid and the greedy algorithm. Math Program 1:127–136
Kadirkamanathan V, Niranjan M (1993) A function estimation approach to sequential learning with neural networks. Neural Comput 5:954–975
Kasabov N (1998) Evolving fuzzy neural networks–algorithms, applications and biological motivation. In: Yamakawa T, Matsumoto G (eds) Methodologies for conception design and application of soft computing. World Scientific, Singapore, pp 217–274
Kasabov N (2002) DENFIS: dynamic evolving neural-fuzzy inference system and its application for time-series prediction. IEEE Trans Fuzzy Syst 10(1):144–153
Kim E, Park M, Ji S, Park M (1997) A new approach to fuzzy modeling. IEEE Trans Fuzzy Syst 5(3):328–337
Leng G, Prasad G, McGinnity TM (2004) An on-line algorithm for creating self-organising fuzzy neural networks. Neural Netw 17(10):1477–1493
Leng G, McGinnity TM, Prasad G (2005) An approach for on-line extraction of fuzzy rules using a sefl-organising fuzzy neural network. Fuzzy Sets Syst 150(2):211–243
Lin F-J, Shen P-H (2006) Adaptive fuzzy-neural-network control dsp-based permanent magnet linear synchronous motor servo drive. IEEE Trans Fuzzy Syst 14(4):481–495
Lu Y, Sundararajan N, Saratchandran P (1997) A sequential learning scheme for function approximation using minimal radial basis function (RBF) neural networks. Neural Comput 9:461–478
Mousavi SJ, Ponnambalam K, Karray F (2007) Inferring operating rules for reservoir operations using fuzzy regression and ANFIS. Fuzzy Syst Sets 158(10):1064–1082
Nelles O, Fink A, Isermann R (2000) Local linear model trees (LOLIMOT) toolbox for nonlinear system identification. In: Proceedings of 12th IFAC symposium system Identification Santa Barbara
Pedram A, Jamali MR, Pedram T, Fakhraie SM, Lucas C (2006) Local Linear Model Tree (LOLIMOT) reconfigurable parallel hardware, in transactions on engineering. Comput Technol 13:1305–5313
Pedrycz W (2006a) Logic-based fuzzy neurocomputing with unineurons. IEEE Trans Fuzzy Syst 14(6):860–873
Pedrycz W (2006b) Linguistic models as a framework of user-centric system modeling. IEEE Trans Syst Man Cybern A 36(4):727–745
Platt J (1991) A resource allocating network for function interpolation. Neural Comput 3:213–225
Qin H, Yang SX (2007) Adaptive neuro-fuzzy inference systems based approach to nonlinear noise cancellation for images. Fuzzy Systems Sets 158(10):1036–1063
Rung HJ, Sundararajan N, Huang GB, Saratchandran P (2006) Sequential adaptive fuzzy inference system (SAFIS) for nonlinear system identification and prediction. Fuzzy System Sets 157:1260–1275
Sugeno M, Yasukawa T (1993) A fuzzy-logic based approach to qualitative modeling. IEEE Trans Fuzzy Syst 1(1):7–31
Takagi T, Sugeno M (1985) Fuzzy identification of systems and its applications to modeling and control. IEEE Trans Syst Man Cybern 15(1):116–132
Tsekouras GE (2005) On the use of the weighted fuzzy C-means in fuzzy modeling. Int J Adv Eng Softw 36:287–300
Wang L-X (1992) Fuzzy Systems are Universal Approximators. In: Proceedings of 1st IEEE Conference on Fuzzy Systems, San Diego, pp 1163–1169
Wang L-X (1997) A course in fuzzy systems and control. Prentice-Hall, Upper Saddle River
Wang L-X, Mendel JM (1992) Fuzzy basis functions, universal approximation, and orthogonal least-squares learning. IEEE Trans Neural Netw 3:807–814
Wang L, Yen J (1999) Extracting fuzzy rules for system modeling using a hybrid of genetic algorithm and Kalman filter. Fuzzy Sets Syst 101:353–362
Wang D, Zeng X-J, Keane JA (2010) An evolving construction scheme for fuzzy systems. IEEE Trans Fuzzy Syst 18(3)
Wu S, Er MJ (2000) Dynamic fuzzy neural networks-a novel approach to function approximation. IEEE Trans Syst Man Cybern B 30:358–364
Wu S, Er MJ, Gao Y (2001) A fast approach for automatic generation of fuzzy rules by generalized dynamic fuzzy neural networks. IEEE Trans Fuzzy Syst 9:578–594
Zeng X-J, Singh MG (1994) Approximation theory of fuzzy systems—SISO case. IEEE Trans Fuzzy Syst 2:162–176
Zeng X-J, Singh MG (1995) Approximation theory of fuzzy systems—MIMO case. IEEE Trans Fuzzy Syst 3:219–235
Acknowledgments
The authors would like to thank the Associate Editor and reviewers for their very detailed comments and very valuable suggestions which have helped us to improve the paper both in the presentation and methodology.
Author information
Authors and Affiliations
Corresponding author
Appendix
Appendix
Proof of Theorem 1
We assume that the sub-region sub-region m is selected for splitting, and the splitting point is \( {\mathbf{x}}^{splitting} = ( {x_{1}^{splitting}}, x_{2}^{splitting}, \ldots, x_{n}^{splitting} ), \) and the selected attribute for splitting is x s . Now we prove that for any given input vector \( {\mathbf{x}} = (x_{1},x_{2}, \ldots,x_{n} ), \) the output o old(x) for the old fuzzy system F old(x) (before sub-region splitting), is the same as the output o new(x) for the new fuzzy system \( \hat{F}^{new} ({\mathbf{x}}) \) after sub-region splitting.
1.1 Part A. Proof for Mamdani fuzzy system
1.1.1 Part A.I
If \( {\mathbf{x}} = (x_{1},x_{2}, \ldots,x_{n} ) \) is located in sub-region c , and c ≠ m, then the parameters \( y_{c}^{{k_{1} k_{2}, \ldots, k_{n} }} \) and membership functions \( \mu_{c,i}^{{k_{i} }} (x_{i} ) \) for sub-region c (c ≠ m) do not change after sub-region splitting.
1.1.2 Part A.II
If \( {\mathbf{x}} = (x_{1},x_{2}, \ldots,x_{n} ) \) is located in sub-region m , then before sub-region splitting, the model output of F old(x) is,
We define,
Then,
-
(a)
If \( x_{s} \in [ {b_{m,s},x_{s}^{splitting} } ), \) then after sub-region splitting, the model output of \( \hat{F}^{new} ({\mathbf{x}}) \) is,
$$ \begin{gathered} o^{new} ({\mathbf{x}}) \hfill \\ = \left( {{\frac{{x_{s}^{splitting} - x_{s} }}{{x_{s}^{splitting} - b_{m,s} }}}} \right) \times \left( {\sum\limits_{{k_{1} k_{2}, \ldots, k_{n} }} {\left( {\mathop \Uppi \limits_{i \ne s}^{{}} \mu_{m,i}^{{k_{i} }} (x_{i} )} \right) \times y_{m}^{{k_{1} k_{2}, \ldots, k_{n} }} |_{{k_{s} = 0}} } } \right) \hfill \\ + \left( {{\frac{{x_{s} - b_{m,s} }}{{x_{s}^{splitting} - b_{m,s} }}}} \right) \times \left( {\sum\limits_{{k_{1} k_{2}, \ldots, k_{n} }} {\left( {\mathop \Uppi \limits_{i \ne s}^{{}} \mu_{m,i}^{{k_{i} }} (x_{i} )} \right) \times y^{{k_{1} k_{2}, \ldots, k_{s - 1} k_{s + 1}, \ldots, k_{n} }} } } \right) \hfill \\ \end{gathered} $$(23)Applying Eqs. 20–22, we obtain,
$$ o^{new} ({\mathbf{x}}) = \left( {{\frac{{c_{m,s} - x_{s} }}{{c_{m,s} - b_{m,s} }}}} \right) \times A_{0} + \left( {{\frac{{x_{s} - b_{m,s} }}{{c_{m,s} - b_{m,s} }}}} \right) \times A_{1} $$(24)where \( x_{s}^{splitting} \) is the edge of the new sub-region created after splitting. However, b m,s and c m,s are the minimum and maximum value of the old sub-region_m before splitting.Therefore
$$ o^{new} ({\mathbf{x}}) = o^{old} ({\mathbf{x}}). $$(25) -
(b)
If \( x_{s} \in [ {x_{s}^{splitting},c_{m,s} } ), \) then after sub-region splitting, the model output of \( \hat{F}^{new} ({\mathbf{x}}) \) is,
$$ \begin{gathered} o^{new} ({\mathbf{x}}) \hfill \\ = \left( {{\frac{{x_{s} - x_{s}^{splitting} }}{{c_{m,s} - x_{s}^{splitting} }}}} \right) \times \left( {\sum\limits_{{k_{1} k_{2}, \ldots, k_{n} }} {\left( {\mathop \Uppi \limits_{i \ne s}^{{}} \mu_{m,i}^{{k_{i} }} (x_{i} )} \right) \times y_{m}^{{k_{1} k_{2}, \ldots, k_{n} }} |_{{k_{s} = 1}} } } \right) \hfill \\ + \left( {{\frac{{c_{m,s} - x_{s} }}{{c_{m,s} - x_{s}^{splitting} }}}} \right) \times \left( {\sum\limits_{{k_{1} k_{2}, \ldots, k_{n} }} {\left( {\mathop \Uppi \limits_{i \ne s}^{{}} \mu_{m,i}^{{k_{i} }} (x_{i} )} \right) \times y^{{k_{1} k_{2}, \ldots, k_{s - 1} k_{s + 1}, \ldots, k_{n} }} } } \right) \hfill \\ \end{gathered} $$(26)Applying Eqs. 20–22, we obtain,
$$ o^{new} ({\mathbf{x}}) = \left( {{\frac{{c_{m,s} - x_{s} }}{{c_{m,s} - b_{m,s} }}}} \right) \times A_{0} + \left( {{\frac{{x_{s} - b_{m,s} }}{{c_{m,s} - b_{m,s} }}}} \right) \times A_{1} $$(27)therefore
$$ o^{new} ({\mathbf{x}}) = o^{old} ({\mathbf{x}}) $$(28)By combining Eqs. 18 25, and 28,
$$ o^{new} ({\mathbf{x}}) = o^{old} ({\mathbf{x}}). $$(29)
1.2 Part B. Proof for TS fuzzy system
1.2.1 Part B.I
If \( {\mathbf{x}} = (x_{1},x_{2}, \ldots,x_{n} ) \) is located in sub-region c , and c ≠ m, then the parameters \( a_{m,0}^{{k_{1} k_{2}, \ldots, k_{n} }},a_{m,1}^{{k_{1} k_{2}, \ldots, k_{n} }}, \ldots,a_{m,n}^{{k_{1} k_{2}, \ldots, k_{n} }} \) and membership functions \( \mu_{c,i}^{{k_{i} }} (x_{i} ) \) for sub-region c (c ≠ m) do not change after sub-region splitting.
1.2.2 Part B.II
If \( {\mathbf{x}} = (x_{1},x_{2}, \ldots,x_{n} ) \) is located in sub-region m , then before sub-region splitting, the model output of F old(x) is,
We define,
Then,
-
(a)
If \( x_{s} \in [ {b_{m,s},x_{s}^{splitting} } ), \) then after sub-region splitting, the model output of \( \hat{F}^{new} ({\mathbf{x}}) \) is,
$$ \begin{gathered} o^{new} ({\mathbf{x}}) \hfill \\ = \left( {{\frac{{x_{s}^{splitting} - x_{s} }}{{x_{s}^{splitting} - b_{m,s} }}}} \right) \times \left( {\sum\limits_{{k_{1} k_{2}, \ldots, k_{n} }} {\left( {\mathop \Uppi \limits_{i \ne s}^{{}} \mu_{m,i}^{{k_{i} }} (x_{i} )} \right) \times \left( {a_{m,0}^{{k_{1} k_{2}, \ldots, k{}_{n}}} + \sum\limits_{i = 1}^{n} {a_{m,i}^{{k_{1} k_{2}, \ldots, k_{n} }} x_{i} } } \right)|_{{k_{s} = 0}} } } \right) \hfill \\ + \left( {{\frac{{x_{s} - b_{m,s} }}{{x_{s}^{splitting} - b_{m,s} }}}} \right) \times \left( {\sum\limits_{{k_{1} k_{2}, \ldots, k_{n} }} {\left( {\mathop \Uppi \limits_{i \ne s}^{{}} \mu_{m,i}^{{k_{i} }} (x_{i} )} \right) \times a_{new,0}^{{k_{1} k_{2}, \ldots, k_{s - 1} k_{s + 1}, \ldots, k_{n} }} } } \right) \hfill \\ \end{gathered} $$(35)Applying Eqs. 32, 34, 35, we obtain,
$$ o^{new} ({\mathbf{x}}) = \left( {{\frac{{c_{m,s} - x_{s} }}{{c_{m,s} - b_{m,s} }}}} \right) \times A_{0} + \left( {{\frac{{x_{s} - b_{m,s} }}{{c_{m,s} - b_{m,s} }}}} \right) \times A_{1} $$(36)therefore
$$ o^{new} ({\mathbf{x}}) = o^{old} ({\mathbf{x}}). $$(37) -
(b)
If \( x_{s} \in [ {x_{s}^{splitting},c_{m,s} } ), \) then after sub-region splitting, the model output of \( \hat{F}^{new} ({\mathbf{x}}) \) is,
$$ \begin{gathered} o^{new} ({\mathbf{x}}) \hfill \\ = \left( {{\frac{{x_{s} - x_{s}^{splitting} }}{{c_{m,s} - x_{s}^{splitting} }}}} \right) \times \left( {\sum\limits_{{k_{1} k_{2}, \ldots, k_{n} }} {\left( {\mathop \Uppi \limits_{i \ne s}^{{}} \mu_{m,i}^{{k_{i} }} (x_{i} )} \right) \times \left( {a_{m,0}^{{k_{1} k_{2}, \ldots, k{}_{n}}} + \sum\limits_{i = 1}^{n} {a_{m,i}^{{k_{1} k_{2}, \ldots, k{}_{n}}} x_{i} } } \right)|_{{k_{s} = 1}} } } \right) \hfill \\ + \left( {{\frac{{c_{m,s} - x_{s} }}{{c_{m,s} - x_{s}^{splitting} }}}} \right) \times \left( {\sum\limits_{{k_{1} k_{2}, \ldots, k_{n} }} {\left( {\mathop \Uppi \limits_{i \ne s}^{{}} \mu_{m,i}^{{k_{i} }} (x_{i} )} \right) \times a_{new,0}^{{k_{1} k_{2}, \ldots, k_{s - 1} k_{s + 1}, \ldots, k_{n} }} } } \right) \hfill \\ \end{gathered} $$(38)Applying Eqs. 32, 34, 35, we obtain,
$$ o^{new} ({\mathbf{x}}) = \left( {{\frac{{c_{m,s} - x_{s} }}{{c_{m,s} - b_{m,s} }}}} \right) \times A_{0} + \left( {{\frac{{x_{s} - b_{m,s} }}{{c_{m,s} - b_{m,s} }}}} \right) \times A_{1} $$(39)therefore
$$ o^{new} ({\mathbf{x}}) = o^{old} ({\mathbf{x}}) $$(40)By combining Eqs. 30, 37, and 40, we have
$$ o^{new} ({\mathbf{x}}) = o^{old} ({\mathbf{x}}). $$(41)
So we can get conclusion that by setting the initial value of consequent parameters by Eqs. 14 and 17, we obtain a special case of a new fuzzy system which is equivalent to its old fuzzy system before splitting in accuracy.
Proof of Theorem 2
We have proved in Theorem 1, that we can always find a new fuzzy system \( \hat{F}^{new} ({\mathbf{x}}) \) with its consequent parameters being determined by Eq. 12 or by Eqs. 14 and 17 is equivalent to its old fuzzy system F old(x). That is \( \hat{F}^{new} ({\mathbf{x}}) = F^{old} ({\mathbf{x}}) \) and \( E( {\hat{F}^{new} ({\mathbf{x}})} ) = E( {F^{old} ({\mathbf{x}})} ), \) \( \hat{F}^{new} ({\mathbf{x}}) \in \{ {F^{new} ({\mathbf{x}})} \}. \) Let \( F_{{^{Best} }}^{new} ({\mathbf{x}}) \in \{ {F^{new} ({\mathbf{x}})} \} \) be a new fuzzy system which minimizes the approximation errors, that is, \( E[ {F_{{^{Best} }}^{new} (X)} ] = \min_{{\{ {F^{new} ({\mathbf{x}})} \}}} E[ {F^{new} ({\mathbf{x}})} ]. \) Then we have
where the inequality is obtained based on the fact that \( \hat{F}^{new} ({\mathbf{x}}) \in \{ {F^{new} ({\mathbf{x}})} \}. \)
Rights and permissions
About this article
Cite this article
Wang, D., Zeng, XJ. & Keane, J.A. A structure evolving learning method for fuzzy systems. Evolving Systems 1, 83–95 (2010). https://doi.org/10.1007/s12530-010-9009-7
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s12530-010-9009-7