Search code examples
rdata-analysisahpmcdm

Whats the logic behind 'impact' argument in ahp topsis function


d <- matrix(rpois(12, 5), nrow = 4)
w <- c(1, 1, 2)
i <- c("+", "-", "+")
topsis(d, w, i)

this is the function available in R for Ahp topsis, i am confused about how to assign "+" and "-" signs here for "impact" argument. how is it done here in this example


Solution

  • Good question.

    'c("+", "-", "+")' indicates which criteria you need to maximise and which criteria you need to minimise.

    So TOPSIS was developed in 1981 by Hwang and Yoon [1] and is a common algorithm used for MCDC (multi-criteria decision making) problems. TOPSIS is based on the premise that the 'best' solution out a set of alternatives, is the one with the closest geometric distance to the ideal solution and the farthest geometric distance to the anti-ideal solution.

    Each alternative is characterised with different criteria. Criteria can be beneficial or unbeneficial. If it is beneficial you want to maximise, but if it is a cost you want to minimise.

    So, let's say you want to select the 'best' car from an array of car alternatives.

    Price is a cost criterion... that you want to minimise. But, maybe 'speed limit' is something you want to maximise.

    As said, those '+', '-' indicates which are the attributes are costs and which are benefits so that you can compute the ideal and anti-ideal solution.

    Resources:

    REFERENCES:

    • 1 Hwang, C. L., & Yoon, K. (1981). Methods for multiple attribute decision making. In Multiple attribute decision making (pp. 58-191). Springer, Berlin, Heidelberg.