Fuzzy SPOTIS

Method object

class pyfdm.methods.f_spotis.fSPOTIS(normalization=None)[source]

Bases: object

__call__(matrix, weights, types, bounds, *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

  • bounds (ndarray) – Decision problem bounds / criteria bounds. Should be two dimensional array with [min, max] value for in criterion in rows.

Returns:

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

Return type:

ndarray

make_bounds(matrix)[source]
rank()[source]

Calculates the alternatives ranking based on the obtained preferences

Returns:

Ranking of alternatives

Return type:

ndarray

Fuzzy calculations

pyfdm.methods.spotis.fuzzy.fuzzy(matrix, weights, normalization, bounds, isp)[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

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

  • bounds (ndarray) – Decision problem bounds / criteria bounds. Should be two dimensional array with [min, max] value for in criterion in rows.

  • isp (ndarray) – Vector of Ideal Solution Point

Returns:

Crisp preferences of alternatives

Return type:

ndarray