objective_weighting.mcda_methods.vikor

Module Contents

Classes

VIKOR

class objective_weighting.mcda_methods.vikor.VIKOR(normalization_method=None, v=0.5)[source]

Bases: objective_weighting.mcda_methods.mcda_method.MCDA_method

__call__(self, matrix, weights, types)[source]

Score alternatives provided in decision matrix matrix using criteria weights and criteria types.

Parameters
  • matrix (ndarray) – Decision matrix with m alternatives in rows and n criteria in columns.

  • weights (ndarray) – Matrix containing vectors with criteria weights in subsequent rows. Sum of weights in each vector must be equal to 1.

  • types (ndarray) – Vector with criteria types. Profit criteria are represented by 1 and cost by -1.

Returns

Matrix with vectors containing preference values of each alternative. The best alternative has the lowest preference value. Vectors are placed in subsequent columns of matrix.

Return type

ndrarray

Examples

>>> vikor = VIKOR(normalization_method = minmax_normalization)
>>> pref = vikor(matrix, weights, types)
>>> rank = np.zeros((pref.shape))
>>> for i in range(pref.shape[1]):
>>>     rank[:, i] = rank_preferences(pref[:, i], reverse = False)
static _vikor(matrix, weights, types, normalization_method, v)[source]