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:

  • Layer 1: The fuzzification process which transforms crisp values into linguistic terms using the Gaussian function as the shape of the membership function.

  • Layer 2: The inference stage using the t-norm operator (the AND operator).

  • Layer 3: Calculating the ratio of the strengths of the rules.

  • Layer 4: Calculating the consequent parameters.

  • Layer 5: Calculating the overall output as the sum of all incoming signals.

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 19, 2017, 7:28 p.m.
Search within the frbs package
Search all R packages, documentation and source code

Questions? Problems? Suggestions? Tweet to @rdrrHQ or email at

Please suggest features or report bugs in the GitHub issue tracker.

All documentation is copyright its authors; we didn't write any of that.