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.
A matrix of the degree of each linguistic terms based on the shape of the membership functions
In this function, there are five shapes of membership functions implemented,
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
TRAPEZOID in left side,
TRAPEZOID in right side, 4 means
TRAPEZOID in the middle,
SIGMOID, and 7 means
BELL. And, the second up to fifth row indicate
the corner points to construct the functions.
TRIANGLE has three parameters (\(a, b, c\)), where \(b\) is the center point of the
and \(a\) and \(c\) are the left and right points, respectively.
TRAPEZOID has four parameters (\(a, b, c, d\)).
GAUSSIAN has two parameters (\(mean\) and \(variance\)).
SIGMOID has two parameters (\(\gamma\) and \(c\)) for representing steepness of the function and distance from the origin, respectively.
BELL has three parameters (\(a, b, c\)).
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)