Fuzzy VIKOR

Method object

class pyfdm.methods.f_vikor.fVIKOR(defuzzify=<function mean_area_defuzzification>)[source]

Bases: object

__call__(matrix, weights, types, v=0.5, *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

  • v (float) – Weight of the strategy (see VIKOR algorithm explanation).

Returns:

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

Return type:

ndarray

rank()[source]

Calculates the alternatives ranking based on the obtained preferences

Returns:

Rankings of alternatives for S, R, Q approaches

Return type:

ndarray

Fuzzy calculations

pyfdm.methods.vikor.fuzzy.fuzzy(matrix, weights, types, defuzzify, v)[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

  • defuzzify (callable) – Function used to defuzzify the TFN into crisp value

  • v (float) – Weight of the strategy (see VIKOR algorithm explanation).

Returns:

Crisp preferences of alternatives

Return type:

ndarray