Learn R Programming

frbs (version 1.0-0)

defuzzifier: Defuzzifier to transform from fuzzy terms to crisp values

Description

Defuzzification is a transformation that extracts the crisp values from the fuzzy terms.

Usage

defuzzifier(data, rule, range.output,
    names.varoutput = NULL, varout.mf = NULL, miu.rule,
    type.defuz = 1, type.model = 1, func.tsk = NULL)

Arguments

data
a matrix(m x n) of data, where m is the number of instances and n is the number of variables.
rule
a list or matrix of fuzzy IF-THEN rules, as discussed in rulebase.
range.output
a matrix(2 x n) containing the range of the output data.
names.varoutput
a list for giving names to the fuzzy terms. See rulebase.
varout.mf
a matrix for constructing the membership function of the output variable. See fuzzifier.
miu.rule
the results of the inference module. See inference.
type.defuz
the type of defuzzification to be used, where 1 means weighted average method, and 2, 3, 4 and 5 mean first, last, mean maxima and modified COG, respectively.
type.model
the type of the model that will be used in the simulation. Here, 1 or 2 means we use Mamdani or Takagi Sugeno Kang (which includes the possibility for a constant value), respectively.
func.tsk
a matrix used to build the linear equation for the consequent part if we are using Takagi Sugeno Kang. See also rulebase.

Value

  • A matrix of crisp values

Details

In this function, there exist two kinds of models which are based on the Mamdani model and the Takagi Sugeno Kang model on the consequent parts. For the Mamdani model there are five methods for defuzzifying a fuzzy term A of a universe of discourse Z. They are as follows:
  1. weighted average method
  2. first of maxima
  3. last of maxima
  4. mean of maxima
  5. modified COG

See Also

fuzzifier, rulebase, and inference