ANFIS: ANFIS model building

Description Usage Arguments Details References See Also

View source: R/FNN.Methods.R


This is the internal function that implements the adaptive-network-based fuzzy inference system (ANFIS). It is used to solve regression tasks. Users do not need to call it directly, but just use frbs.learn and predict.


ANFIS(data.train, num.labels, max.iter = 10, step.size = 0.01,
  type.tnorm = "MIN", type.snorm = "MAX", type.implication.func = "ZADEH")



a matrix (m \times n) of normalized data for the training process, where m is the number of instances and n is the number of variables; the last column is the output variable. Note the data must be normalized between 0 and 1.


a matrix (1 \times n), whose elements represent the number of labels (linguistic terms); n is the number of variables.


the maximal number of iterations.


a real number between 0 and 1 representing the step size of the gradient descent.


the type of t-norm. For more detail, please have a look at inference.


the type of s-norm. For more detail, please have a look at inference.


a value representing the type of implication functions. For more detail, please have a look at WM.


This method was proposed by J. S. R. Jang. It uses the Takagi Sugeno Kang model on the consequent part of the fuzzy IF-THEN rules. The ANFIS architecture consists of two processes, the forward and the backward stage. The forward stage has five layers as follows:

The backward stage is a process of parameter learning. In this step, the least squares method is used in order to obtain the parameters, which are coefficients of linear equations on the consequent part, and mean and variance on the antecedent part.


J.S.R. Jang, "ANFIS: Adaptive-network-based fuzzy inference system", IEEE Transactions on Systems, Man, and Cybernetics, vol. 23, no. 3, pp. 665 - 685 (1993).

J.S.R. Jang, C.T. Sun, and E. Mizutani., "Neuro-fuzzy and soft computing: a computational approach to learning and machine intelligence", Prentice-Hall, Inc (1997).

See Also

ANFIS.update, frbs.learn, and predict

frbs documentation built on May 29, 2017, 9:08 p.m.