skcriteria.agg.spotis module

SPOTIS method.

skcriteria.agg.spotis.spotis(matrix, weights, bounds, isp)[source]

Execute SPOTIS method.

class skcriteria.agg.spotis.SPOTIS[source]

Bases: SKCDecisionMakerABC

The Stable Preference Ordering Towards Ideal Solution (SPOTIS) method.

The SPOTIS method is a multi-criteria decision analysis method that is exempt of rank reversal. The method is rank reversal free because the preference ordering established from the score matrix of the MCDM problem does not require relative comparisons between the alternatives, but only comparisons with respect to the ideal solution (ISP) chosen by the MCDM designer.

References

[Dezert et al., 2020]

evaluate(dm, *, bounds=None, isp=None)[source]

Validate the decision matrix and calculate a ranking.

Parameters:
  • dm (skcriteria.data.DecisionMatrix) – Decision matrix on which the ranking will be calculated.

  • bounds (array-like, optional) – The bounds of the problem. If not provided, they will be calculated from the matrix.

  • isp (array-like, optional) – The ideal solution point (ISP), if not provided, it will be calculated from the bounds.

Raises:

ValueError:

  • If bounds are provided and the matrix has values out of the bounds. - If ISP is provided and the ISP has values out of the bounds (either given or calculated from the matrix). - If bounds or ISP have an invalid shape.

Returns:

Ranking.

Return type:

skcriteria.data.RankResult