Title: | Intuitionistic Fuzzy Multi-Criteria Decision Making Methods |
---|---|
Description: | Implementation of two multi-criteria decision making methods (MCDM): Intuitionistic Fuzzy Synthetic Measure (IFSM) and Intuitionistic Fuzzy Technique for Order of Preference by Similarity to Ideal Solution (IFTOPSIS) for intuitionistic fuzzy data sets for multi-criteria decision making problems. References describing the methods: Jefmański (2020) <doi:10.1007/978-3-030-52348-0_4>; Jefmański, Roszkowska, Kusterka-Jefmańska (2021) <doi:10.3390/e23121636>. |
Authors: | Andrzej Dudek [aut, cre] |
Maintainer: | Andrzej Dudek <[email protected]> |
License: | GPL (>= 2) |
Version: | 0.1.17 |
Built: | 2025-01-22 03:56:09 UTC |
Source: | https://github.com/a-dudek-ue/ifmcdm |
The sample intuitionistic fuzzy dataset
data_IF
data_IF
An object of class matrix
(inherits from array
) with 5 rows and 9 columns.
set.seed(61222) data(data_IF) m<-IFSM(data_IF) print(m)
set.seed(61222) data(data_IF) m<-IFSM(data_IF) print(m)
The IFconversion
- Aggregation of primary data into Intuitionistic Representation. Reference describing the method: Jefmański (2020) doi:10.1007/978-3-030-52348-0_4
IFconversion( primary, u = round(mean(c(min(primary[, -1], na.rm = TRUE), max(primary[, -1], na.rm = TRUE)))), u_is_neutral = TRUE )
IFconversion( primary, u = round(mean(c(min(primary[, -1], na.rm = TRUE), max(primary[, -1], na.rm = TRUE)))), u_is_neutral = TRUE )
primary |
dataset with object names (not aggregated) in first column |
u |
cut level |
u_is_neutral |
if exact value of variable is equal to u (cut_level) the variable is treated as neutral (TRUE) or negative (FALSE) |
IFconversion
returns the decision matrix (m x n*3) with the values of the mi ni and pi (three columns for each fuzzy representation), for the n criteria
Jefmański Bartłomiej, Intuitionistic Fuzzy Synthetic Measure for Ordinal Data. in: Classification and Data Analysis: Theory and Applications / Jajuga Krzysztof, Batóg Jacek, Walesiak Marek (eds.), Studies in Classification, Data Analysis, and Knowledge Organization, 2020, Cham, Springer, 53-72. doi:10.1007/978-3-030-52348-0_4
set.seed(61222) data<-sample(1:7,26*13*8,replace=TRUE) dim(data)<-c(26*13,8) nrColumns<-8 primary<-data.frame(name=rep(LETTERS,each=13),data) inth<-IFconversion(primary)
set.seed(61222) data<-sample(1:7,26*13*8,replace=TRUE) dim(data)<-c(26*13,8) nrColumns<-8 primary<-data.frame(name=rep(LETTERS,each=13),data) inth<-IFconversion(primary)
The IFSM
- Intuitionistic Fuzzy Synthetic Measure Method for Fuzzy Multi-Criteria Decision Making Problems. Reference describing the method: Jefmański, Roszkowska, Kusterka-Jefmańska (2021) doi:10.3390/e23121636
IFSM( data, d = "e", w = rep(3/ncol(data), ncol(data)/3), z = rep("b", ncol(data)/3), p = "dataBounds" )
IFSM( data, d = "e", w = rep(3/ncol(data), ncol(data)/3), z = rep("b", ncol(data)/3), p = "dataBounds" )
data |
The data matrix (m x n*3) with the values of mi ni and pi (three columns for each intuitionistic fuzzy representation of criteria for each alternative) where m is the number of alternatives and n is the number of criteria. |
d |
Distance "euclidean" or "hamming". |
w |
A vector of length n, containing the crisp weights for the criteria (one value for intuitionistic fuzzy representation). |
z |
A vector of length n, with preferences type for each criterion with "b" (benefit) and "c" (cost). |
p |
Ideal point calculation type with one of two values: "dataBounds" – ideal point contains max and min values from the dataset – see details; "idealBounds" – ideal point contains 1 and 0’s - see details. |
For p="dataBounds" the actual ideal point is calculated for benefits as maximum from all values for mi and min for ni (pi = 1- mi - ni); in the case of costs, minimal value for mi and max for ni (pi = 1- mi - ni). For p="idealBounds" for benefitss is 1 for mi and 0 for ni (pi = 1- mi - ni ). In the case of costs it is 0 for mi and 1 for ni (pi = 1- (mi - ni).
IFSM
returns a data frame that contains the scores of the Intuitionistic Fuzzy Synthetic Measure (IFSM) and the ranking of the alternatives.
Jefmański B, Roszkowska E, Kusterka-Jefmańska M. Intuitionistic Fuzzy Synthetic Measure on the Basis of Survey Responses and Aggregated Ordinal Data. Entropy. 2021; 23(12):1636. doi:10.3390/e23121636
Roszkowska E, Jefmański B, Kusterka-Jefmańska M. On Some Extension of Intuitionistic Fuzzy Synthetic Measures for Two Reference Points and Entropy Weights. Entropy. 2022; 24(8):1081. doi:10.3390/e24081081
Xu, Z. Some Similarity Measures of Intuitionistic Fuzzy Sets and Their Applications to Multiple Attribute Decision Making. Fuzzy Optimization and Decision Making. 2007; 6: 109–121. doi:10.1007/s10700-007-9004-z
set.seed(823) data<-sample(1:7,26*13*8,replace=TRUE) dim(data)<-c(26*13,8) nrColumns<-8 primary<-data.frame(name=rep(LETTERS,each=13),data) f<-IFconversion(primary) print(f) m<-IFSM(f) print(m)
set.seed(823) data<-sample(1:7,26*13*8,replace=TRUE) dim(data)<-c(26*13,8) nrColumns<-8 primary<-data.frame(name=rep(LETTERS,each=13),data) f<-IFconversion(primary) print(f) m<-IFSM(f) print(m)
The IFTOPSIS
- Intuitionistic Fuzzy Technique for Order of Preference by Similarity to Ideal Solution for Fuzzy Multi-Criteria Decision Making. Reference describing the method: Roszkowska, Kusterka-Jefmańska, Jefmański (2021) doi:10.3390/e23050563
IFTOPSIS( data, d = "e", w = rep(3/ncol(data), ncol(data)/3), z = rep("b", ncol(data)/3), p = "dataBounds", ap = "dataBounds" )
IFTOPSIS( data, d = "e", w = rep(3/ncol(data), ncol(data)/3), z = rep("b", ncol(data)/3), p = "dataBounds", ap = "dataBounds" )
data |
The data matrix (m x n*3) with the values of mi ni and pi (three columns for each intuitionistic fuzzy representation of criteria for each alternative), where m is the number of alternatives and n is the number of criteria. |
d |
Distance "euclidean" or "hamming". |
w |
A vector of length n, containing the crisp weights for the criteria (one value for intuitionistic fuzzy representation) |
z |
A vector of length n, with preferences type for each criterion with "b" (benefit) and "c" (cost). |
p |
Ideal point calculation type with one of two values: "dataBounds" – ideal point contains max and min values from the dataset – see details; "idealBounds" – ideal point contains 1 and 0’s - see details. |
ap |
Anti-ideal point calculation type with one of two values: "dataBounds" – anti-ideal point contains min and max from the dataset – see details; "idealBounds" – anti-ideal point contains 0 and 1’s - see details. |
For p="dataBounds" the actual ideal point is calculated for benefits as maximum from all values for mi and min for ni (pi = 1- mi - ni); in the case of costs, minimal value for mi and max for ni (pi = 1- mi - ni). For p="idealBounds" for benefitss is 1 for mi and 0 for ni (pi = 1- mi - ni ). In the case of costs it is 0 for mi and 1 for ni (pi = 1- (mi - ni). For ap="dataBounds" the actual anti-ideal point is calculated for benefit criteria as minimum of all values for mi, maximum of all values for ni and pi = 1- (mi + ni); in the case of cost criteria, maximum of all values for mi, minimum of all values for ni and pi = 1- (mi + ni). For ap="idealBounds" in the case of benefit criteria it is 0 for mi, 1 for ni, 0 for pi; in the case of cost criteria it is 1 for mi, 0 for ni and 0 for pi.
IFTOPSIS
returns a data frame that contains the scores of the Intuitionistic Fuzzy Technique for Order of Preference by Similarity to Ideal Solution (IFTOPSIS) and the ranking of the alternatives.
Roszkowska E, Kusterka-Jefmańska M, Jefmański B. Intuitionistic Fuzzy TOPSIS as a Method for Assessing Socioeconomic Phenomena on the Basis of Survey Data. Entropy. 2021; 23(5):563. doi:10.3390/e23050563
Xu, Z. Some Similarity Measures of Intuitionistic Fuzzy Sets and Their Applications to Multiple Attribute Decision Making. Fuzzy Optimization and Decision Making. 2007; 6: 109–121. doi:10.1007/s10700-007-9004-z
set.seed(823) data<-sample(1:7,26*13*8,replace=TRUE) dim(data)<-c(26*13,8) nrColumns<-8 primary<-data.frame(name=rep(LETTERS,each=13),data) f<-IFconversion(primary) m<-IFTOPSIS(f) print(m)
set.seed(823) data<-sample(1:7,26*13*8,replace=TRUE) dim(data)<-c(26*13,8) nrColumns<-8 primary<-data.frame(name=rep(LETTERS,each=13),data) f<-IFconversion(primary) m<-IFTOPSIS(f) print(m)