fuzzifier: Transforming from crisp set into linguistic terms


Fuzzification refers to the process of transforming a crisp set into linguistic terms.


fuzzifier(data, num.varinput, num.labels.input, varinp.mf)



a matrix of data containing numerical elements.


number of input variables.


the number of labels of the input variables.


a matrix containing the parameters to form the membership functions. See the Detail section.


In this function, there are five shapes of membership functions implemented, namely TRIANGLE, TRAPEZOID, GAUSSIAN, SIGMOID, and BELL. They are represented by a matrix that the dimension is (5, n) where n is a multiplication the number of linguistic terms/labels and the number of input variables. The rows of the matrix represent: The first row is the type of membership function, where 1 means TRIANGLE, 2 means TRAPEZOID in left side, 3 means TRAPEZOID in right side, 4 means TRAPEZOID in the middle, 5 means GAUSSIAN, 6 means SIGMOID, and 7 means BELL. And, the second up to fifth row indicate the corner points to construct the functions.

For example:

varinp.mf <- matrix(c(2,1,3,2,3,0,30,60,0,40,20,50,80,

30,80,40,70,100,60,100,0,0,100,0,100), nrow=5, byrow=TRUE)


A matrix of the degree of each linguistic terms based on the shape of the membership functions

See Also

defuzzifier, rulebase, and inference

Questions? Problems? Suggestions? or email at ian@mutexlabs.com.

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