apply.WISP | R Documentation |
Performs the WISP method calculations, returning a utility score for each alternative. Columns whose indices appear in beneficial.vector are treated as beneficial (max); all other columns are treated as non-beneficial (min).
apply.WISP(mat, beneficial.vector, weights, simplified = FALSE)
mat |
A numeric matrix with alternatives in rows and criteria in columns. |
beneficial.vector |
An integer vector of column indices that are beneficial ("max") criteria. All columns not in beneficial.vector are assumed to be "min". |
weights |
A numeric vector of weights, one for each criterion (same length as the number of columns of mat). |
simplified |
A logical. If FALSE, uses all four partial utilities; if TRUE it uses only n_wsd and n_wpr in the final aggregation. |
A numeric vector of length nrow(mat) with the final WISP utility scores.
mat <- matrix(c(75.5, 95, 770, 187, 179, 239, 237,
420, 91, 1365, 1120, 875, 1190, 200,
74.2, 70, 189, 210, 112, 217, 112,
2.8, 2.68, 7.9, 7.9, 4.43, 8.51, 8.53,
21.4, 22.1, 16.9, 14.4, 9.4, 11.5, 19.9,
0.37, 0.33, 0.04, 0.03, 0.016, 0.31, 0.29,
0.16, 0.16, 0.08, 0.08, 0.09, 0.07, 0.06), nrow=7)
colnames(mat)<-c("Toughness Index", "Yield Strength", "Young's Modulus",
"Density", "Thermal Expansion", "Thermal Conductivity","Specific Heat")
rownames(mat)<-c("AI 2024-T6", "AI 5052-O","SS 301 FH",
"SS 310-3AH","Ti-6AI-4V","Inconel 718","70Cu-30Zn")
# Suppose the first two columns are beneficial, and the 3rd is non-beneficial
beneficial.vector <- c(1,2, 4)
weights <- c(0.28, 0.14, 0.05, 0.24, 0.19, 0.05, 0.05)
# Get the WISP scores
apply.WISP(mat, beneficial.vector, weights, simplified=FALSE)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.