electre
This module implements the Electre algorithms.
Implementation and naming conventions are taken from [Vin98a].
- class IElectre(performance_table)
Bases:
Generic
[T
],ABC
This class represents the common interface between all Electre algorithms
- Parameters
performance_table (PerformanceTable[QuantitativeScale]) –
- abstract concordance()
Compute the concordance matrix.
- Returns
concordance matrix
- Return type
- abstract construct()
Construct the outranking structure.
- Returns
outranking structure
- Return type
T
- abstract discordance()
Compute the discordance matrix.
- Returns
discordance matrix
- Return type
- abstract exploit(outranking_structure, **kwargs)
Exploit outranking structure.
- Parameters
outranking_structure (T) –
- Returns
result
- Return type
Any
- class IElectre1(performance_table, criteria_weights)
Bases:
IElectre
[T
],Generic
[T
],ABC
This class implements common methods for Electre I and II.
- Parameters
performance_table (PerformanceTable[QuantitativeScale]) –
criteria_weights (Dict[Any, float]) –
- concordance()
Compute the concordance matrix.
- Returns
concordance matrix
- Return type
- abstract construct()
Construct the outranking structure.
- Returns
outranking structure
- Return type
T
- discordance()
Compute the discordance matrix.
- Returns
discordance matrix
- Return type
- abstract exploit(outranking_structure, **kwargs)
Exploit outranking structure.
- Parameters
outranking_structure (T) –
- Returns
result
- Return type
Any
- class IElectre3(performance_table, criteria_weights, indifference_thresholds, preference_thresholds, veto_thresholds)
Bases:
IElectre
[AdjacencyValueMatrix
],ABC
This class implements basic Electre III methods shared to other classes.
- Parameters
performance_table (PerformanceTable[QuantitativeScale]) –
criteria_weights (Dict[Any, float]) –
indifference_thresholds (Dict[Any, float]) –
preference_thresholds (Dict[Any, float]) –
veto_thresholds (Dict[Any, float]) – missing criteria won’t apply veto
- concordance(performance_table=None)
Compute the concordance matrix.
- Parameters
performance_table (Optional[PerformanceTable[QuantitativeScale]]) – use
performance_table
attribute if not provided- Returns
concordance matrix
- Return type
- abstract construct()
Construct the outranking structure.
- Returns
outranking structure
- Return type
T
- credibility(performance_table=None)
Compute the credibility matrix.
- Parameters
performance_table (Optional[PerformanceTable[QuantitativeScale]]) – use
performance_table
attribute if not provided- Returns
credibility matrix
- Return type
- discordance(performance_table=None)
Compute the discordance matrix.
- Parameters
performance_table (Optional[PerformanceTable[QuantitativeScale]]) – use
performance_table
attribute if not provided- Returns
discordance matrix
- Return type
- abstract exploit(outranking_structure, **kwargs)
Exploit outranking structure.
- Parameters
outranking_structure (T) –
- Returns
result
- Return type
Any