Defuzzification methods
Type-1 defuzzifiers
#
FuzzyLogic.BisectorDefuzzifier
— Type
struct BisectorDefuzzifier <: FuzzyLogic.AbstractDefuzzifier
Bisector defuzzifier. Given the aggregated output function and the output variable domain ] the defuzzified output is the value ] that divides the area under into two equal parts. That is
Parameters
-
N::Int64
: number of subintervals for integration, default 100.
Algorithm
The domain is partitioned into N equal subintervals. For each subinterval endpoint, the left and right area are approximated using the trapezoidal rule. The end point leading to the best approximation is the final result.
#
FuzzyLogic.CentroidDefuzzifier
— Type
struct CentroidDefuzzifier <: FuzzyLogic.AbstractDefuzzifier
Centroid defuzzifier. Given the aggregated output function and the output variable domain ] the defuzzified output is the centroid computed as
Parameters
-
N::Int64
: number of subintervals for integration, default 100.
Algorithm
The integrals are computed numerically using the trapezoidal rule.
#
FuzzyLogic.LeftMaximumDefuzzifier
— Type
struct LeftMaximumDefuzzifier <: FuzzyLogic.AbstractDefuzzifier
Left maximum defuzzifier. Returns the smallest value in the domain for which the membership function reaches its maximum.
Parameters
-
N::Int64
: number of subintervals, default 100. -
tol::Float64
: absolute tolerance to determine if a value is maximum, defaulteps(Float64)
.
#
FuzzyLogic.MeanOfMaximaDefuzzifier
— Type
struct MeanOfMaximaDefuzzifier <: FuzzyLogic.AbstractDefuzzifier
Mean of maxima defuzzifier. Returns the mean of the values in the domain for which the membership function reaches its maximum.
Parameters
-
N::Int64
: number of subintervals, default 100. -
tol::Float64
: absolute tolerance to determine if a value is maximum, defaulteps(Float64)
.
#
FuzzyLogic.RightMaximumDefuzzifier
— Type
struct RightMaximumDefuzzifier <: FuzzyLogic.AbstractDefuzzifier
Right maximum defuzzifier. Returns the largest value in the domain for which the membership function reaches its maximum.
Parameters
-
N::Int64
: number of subintervals, default 100. -
tol::Float64
: absolute tolerance to determine if a value is maximum, defaulteps(Float64)
.
Type-2 defuzzifiers
#
FuzzyLogic.EIASCDefuzzifier
— Type
struct EIASCDefuzzifier <: FuzzyLogic.Type2Defuzzifier
Defuzzifier for type-2 inference systems using Iterative Algorithm with Stopping Condition (IASC).
PARAMETERS
-
N::Int64
: number of subintervals for integration, default 100.
Extended help
The algorithm was introduced in
-
Wu, D. and M. Nie, "Comparison and practical implementations of type-reduction algorithms for type-2 fuzzy sets and systems," Proceedings of FUZZ-IEEE, pp. 2131-2138 (2011)
#
FuzzyLogic.EKMDefuzzifier
— Type
struct EKMDefuzzifier <: FuzzyLogic.Type2Defuzzifier
Enhanced Karnik-Mendel type-reduction/defuzzification algorithm for Type-2 fuzzy systems.
Parameters
-
N::Int64
: number of subintervals for integration, default 100. -
maxiter::Int64
: maximum number of iterations, default 100.
Extended help
The algorithm was introduced in
-
Wu, D. and J.M. Mendel, "Enhanced Karnik-Mendel algorithms," IEEE Transactions on Fuzzy Systems, vol. 17, pp. 923-934. (2009)
#
FuzzyLogic.IASCDefuzzifier
— Type
struct IASCDefuzzifier <: FuzzyLogic.Type2Defuzzifier
Defuzzifier for type-2 inference systems using Iterative Algorithm with Stopping Condition (IASC).
PARAMETERS
-
N::Int64
: number of subintervals for integration, default 100.
Extended help
The algorithm was introduced in
-
Duran, K., H. Bernal, and M. Melgarejo, "Improved iterative algorithm for computing the generalized centroid of an interval type-2 fuzzy set," Annual Meeting of the North American Fuzzy Information Processing Society, pp. 190-194. (2008)
#
FuzzyLogic.KarnikMendelDefuzzifier
— Type
struct KarnikMendelDefuzzifier <: FuzzyLogic.Type2Defuzzifier
Karnik-Mendel type-reduction/defuzzification algorithm for Type-2 fuzzy systems.
Parameters
-
N::Int64
: number of subintervals for integration, default 100. -
maxiter::Int64
: maximum number of iterations, default 100. -
atol::Float64
: absolute tolerance for stopping iterations
Extended help
The algorithm was introduced in
-
Karnik, Nilesh N., and Jerry M. Mendel. ‘Centroid of a Type-2 Fuzzy Set’. Information Sciences 132, no. 1—4 (February 2001): 195—220