Fuzzy Methods
Fuzzy Cocoso
JMcDM.Fuzzy.fuzzycocoso — FunctionFuzzyCocoso(
decmat::Matrix{FuzzyType},
w::Vector{FuzzyType},
fns;
defuzzificationmethod::DefuzzificationMethod = WeightedMaximum(0.5),
lambda::Float64 = 0.5,
) -> FuzzyCocosoResult where {FuzzyType<:FuzzyNumber}
Perform the fuzzy COCOSO method.Arguments
decmat: The decision matrix.w: The weights of the criteria.fns: The direction of the criteria (maximum or minimum).defuzzificationmethod: The defuzzification method to use.lambda: The lambda parameter for the method.
Returns
FuzzyCocosoResult: A struct containing the results of the fuzzy COCOSO method.
Fuzzy Edas
JMcDM.Fuzzy.fuzzyedas — Functionfuzzyedas(decmat::Matrix{Triangular}, w::Vector{Triangular}, fns)
Fuzzy EDAS method for decision making.Arguments
decmat: A matrix of triangular fuzzy numbers representing the decision matrix.w: A vector of triangular fuzzy numbers representing the weights.fns: A vector of functions (maximum or minimum) for each criterion.
Returns
- An instance of
FuzzyEdasResultcontaining the results of the EDAS method.
Fuzzy SAW
JMcDM.Fuzzy.fuzzysaw — Functionfuzzysaw(decmat::Matrix{FuzzyType}, w::Vector{FuzzyType}, fns; defuzzificationmethod::DefuzzificationMethod = WeightedMaximum(0.5))Description
Fuzzy SAW method for fuzzy decision making.Arguments
decmat: A matrix of fuzzy numbers.w: A vector of weights.fns: A vector of functions (either maximum or minimum).defuzzificationmethod: The method used for defuzzification.
Returns
- A FuzzySawResult object containing the normalized decision matrix, weighted normalized decision matrix, and scores.
Fuzzy Topsis
JMcDM.Fuzzy.fuzzytopsis — Functionfuzzytopsis(
decmat::Matrix{FuzzyType},
w::Vector{FuzzyType},
fns,
)::FuzzyTopsisResult where {FuzzyType<:FuzzyNumber}Fuzzy TOPSIS method for multi-criteria decision making.
Arguments
decmat: The decision matrix.w: The weights of the criteria.fns: The direction of the criteria (maximum or minimum).
Returns
FuzzyTopsisResult: A struct containing the results of the fuzzy TOPSIS method.
Fuzzy VIKOR
JMcDM.Fuzzy.fuzzyvikor — Functionfuzzyvikor(decmat::Matrix{Triangular}, w::Vector{Triangular}, fns::Vector{F}) -> FuzzyVikorResultDescription
The fuzzy VIKOR method is a multi-criteria decision-making method that uses fuzzy logic to evaluate alternatives based on multiple criteria.
Arguments
decmat::Matrix{Triangular}: A matrix of fuzzy numbers representing the decision matrix.w::Vector{Triangular}: A vector of fuzzy numbers representing the weights of the criteria.fns::Vector{F}: A vector of functions (eithermaximumorminimum) representing the type of each criterion.
Returns
FuzzyVikorResult: A struct containing the results of the fuzzy VIKOR method, including the positive ideal solution, negative ideal solution, and the Si values for each alternative.