pairwise_transitivity

mcda.pairwise_transitivity(report)

Test the pairwise majority relation for one consistent order.

Reads a PairwiseSuperiorityReport and builds the pairwise majority relation from its per-pair outperformance counts: method i outperforms j when it does so on more of their shared datasets than j does. Those counts already apply the region of practical equivalence, so a difference inside the noise floor adds no edge. The relation is then checked for a method preferred to all others, for circular triads, and for transitivity, and the coefficient of consistence is reported when every pair is decided.

Parameters

Name Type Description Default
report PairwiseSuperiorityReport A PairwiseSuperiorityReport from beam.mcda.pairwise_superiority. required

Returns

Type Description
PairwiseTransitivityReport

Examples

>>> import numpy as np
>>> from beam.mcda import pairwise_superiority, pairwise_transitivity
>>> scores = np.array([[0.9, 0.8, 0.7], [0.5, 0.6, 0.4], [0.2, 0.1, 0.3]])
>>> sup = pairwise_superiority(scores, "higher_is_better")
>>> cc = pairwise_transitivity(sup)
>>> cc.condorcet_choice
0
>>> cc.is_transitive
True
>>> cc.n_circular_triads
0