Fuzzy TOPSIS

Method object

class pyfdm.methods.f_topsis.fTOPSIS(normalization=<function linear_normalization>, distance=<function vertex_distance>)[source]

Bases: object

__call__(matrix, weights, types, *args, **kwargs)[source]

Calculates the alternatives preferences

Parameters:
  • matrix (ndarray) – Decision matrix / alternatives data. Alternatives are in rows and Criteria are in columns.

  • weights (ndarray) – Vector of criteria weights in a crisp form

  • types (ndarray) – Types of criteria, 1 profit, -1 cost

Returns:

Preference calculated for alternatives. Greater values are placed higher in ranking

Return type:

ndarray

rank()[source]

Calculates the alternatives ranking based on the obtained preferences

Returns:

Ranking of alternatives

Return type:

ndarray

Fuzzy calculations

pyfdm.methods.topsis.fuzzy.fuzzy(matrix, weights, types, normalization, distance)[source]

Calculates the alternatives preferences based on Triangular Fuzzy Number extension

Parameters:
  • matrix (ndarray) – Decision matrix / alternatives data. Alternatives are in rows and Criteria are in columns.

  • weights (ndarray) – Vector of criteria weights in a crisp form

  • types (ndarray) – Types of criteria, 1 profit, -1 cost

  • normalization (callable) – Function used to normalize the decision matrix

  • distance (callable) – Function used to calculate distance from fuzzy negative solution

Returns:

Crisp preferences of alternatives

Return type:

ndarray