fuzzifier {frbs} | R Documentation |
Transforming from crisp set into linguistic terms
Description
Fuzzification refers to the process of transforming a crisp set into linguistic terms.
Usage
fuzzifier(data, num.varinput, num.labels.input, varinp.mf)
Arguments
data |
a matrix of data containing numerical elements. |
num.varinput |
number of input variables. |
num.labels.input |
the number of labels of the input variables. |
varinp.mf |
a matrix containing the parameters to form the membership functions. See the Detail section. |
Details
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.
-
TRIANGLE
has three parameters (a, b, c
), whereb
is the center point of theTRIANGLE
, anda
andc
are the left and right points, respectively. -
TRAPEZOID
has four parameters (a, b, c, d
). -
GAUSSIAN
has two parameters (mean
andvariance
). -
SIGMOID
has two parameters (\gamma
andc
) for representing steepness of the function and distance from the origin, respectively. -
BELL
has three parameters (a, b, c
).
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)
Value
A matrix of the degree of each linguistic terms based on the shape of the membership functions
See Also
defuzzifier
, rulebase
, and inference