Adaptive Neuro-Fuzzy Inference System (ANFIS) is a combination of artificial neural network (ANN) and Takagi-Sugeno-type fuzzy system, and it is proposed by Jang, in 1993, in this paper. ANFIS inherits the benefits of both neural networks and fuzzy systems; so it is a powerful tool, for doing various supervised learning tasks, such as regression and classification.
Fuzzy Logic Toolbox provides fundamental functionalities to create and train fuzzy inference models. For creation of initial FIS structure, MATLAB provides three methods:
- Grid Partitioning approach, using genfis1 function;
- Subtractive Clustering , using genfis2 function;
- Fuzzy c-Means (FCM) Clustering, using genfis3 function.
For designing and training of ANFIS models, MATLAB provides to ways:
- a graphical user interface (GUI) tool, using anfisedit function;
- programmatic training of ANFIS structure, using anfis function.
In this post, we are going to share with you, an implementation of nonlinear regression using ANFIS in MATLAB. The whole process of ANFIS designing and training, is performed programmatically, letting the user to choose ANFIS generation method (genfis1, genfis2, and genfis3), and parameters of training algorithm. If you are familiar with MATLAB programming language, you will it easy to use the provided source codes, in your research and projects.
The download link of this project follows.
Implementation of Nonlinear Regression using ANFIS in MATLABDownload