StrategyOrdinal
- class poisson_approval.StrategyOrdinal(d_ranking_ballot, d_weak_order_ballot=None, profile=None, voting_rule=None)[source]
A strategy profile for an ordinal preference profile.
- Parameters
d_ranking_ballot (dict) – Keys are rankings and values are ballots, e.g.
'abc': 'ab'
. A ballot can be''
if the behavior of these voters is not specified in the strategy.d_weak_order_ballot (dict) – Key: weak order. Value: strategy. A strategy can be a valid ballot,
SPLIT
or''
if the behavior of these voters is not specified in the strategy. This is useful in two cases only: for “haters” (e.g.'a~b>c'
) in Plurality, and for “lovers” (e.g.'a>b~c'
) in Anti-Plurality. In all other cases, voters with a weak order have a dominant strategy and they automatically use it. About'SPLIT'
: for example, in Plurality,'a~b>c': SPLIT
means that half of voters with weak order abc cast a ballot for a, and the other half for b.profile (Profile, optional) – The “context” in which the strategy is used.
voting_rule (str) – The voting rule. Possible values are
APPROVAL
,PLURALITY
andANTI_PLURALITY
. Default: the same voting rule as profile if a profile is specified,APPROVAL
otherwise.
Examples
>>> strategy = StrategyOrdinal({'abc': 'a', 'bac': 'ab', 'cab': 'c'}) >>> strategy StrategyOrdinal({'abc': 'a', 'bac': 'ab', 'cab': 'c'}) >>> print(strategy) <abc: a, bac: ab, cab: c> >>> strategy.abc 'a' >>> strategy.a_bc 'a' >>> strategy.ab_c 'a' >>> strategy.d_ranking_threshold['abc'] 1
- property a_bc
Strategy of voters with type
a_bc
.- Type
str
- property a_cb
Strategy of voters with type
a_cb
.- Type
str
- property ab_c
Strategy of voters with type
ab_c
.- Type
str
- property abc
Strategy of voters with ranking
abc
.- Type
str
- property ac_b
Strategy of voters with type
ac_b
.- Type
str
- property acb
Strategy of voters with ranking
acb
.- Type
str
- property b_ac
Strategy of voters with type
b_ac
.- Type
str
- property b_ca
Strategy of voters with type
b_ca
.- Type
str
- property ba_c
Strategy of voters with type
ba_c
.- Type
str
- property bac
Strategy of voters with ranking
bac
.- Type
str
- property bc_a
Strategy of voters with type
bc_a
.- Type
str
- property bca
Strategy of voters with ranking
bca
.- Type
str
- property c_ab
Strategy of voters with type
c_ab
.- Type
str
- property c_ba
Strategy of voters with type
c_ba
.- Type
str
- property ca_b
Strategy of voters with type
ca_b
.- Type
str
- property cab
Strategy of voters with ranking
cab
.- Type
str
- property cb_a
Strategy of voters with type
cb_a
.- Type
str
- property cba
Strategy of voters with ranking
cba
.- Type
str
- property d_ranking_best_response
Defined when a profile is given. Cf.
TauVector.d_ranking_best_response
.
- property d_ranking_t_threshold_ratio_optimistic
Thresholds and ratios of optimistic voters.
Key : ranking, e.g.
'abc'
. Value: tuple (threshold
,ratio_optimistic
).- Type
dict
- deepcopy_with_attached_profile(profile)
Deep copy with an attached profile.
- property duo_ab
Defined when a profile is given. Cf.
TauVector.duo_ab
.
- property duo_ac
Defined when a profile is given. Cf.
TauVector.duo_ac
.
- property duo_ba
Defined when a profile is given. Cf.
TauVector.duo_ba
.
- property duo_bc
Defined when a profile is given. Cf.
TauVector.duo_bc
.
- property duo_ca
Defined when a profile is given. Cf.
TauVector.duo_ca
.
- property duo_cb
Defined when a profile is given. Cf.
TauVector.duo_cb
.
- property is_equilibrium
Whether this strategy is an equilibrium (in the context of the given profile). Cf.
Profile.is_equilibrium()
.- Type
- property pivot_strict_ab
Defined when a profile is given. Cf.
TauVector.pivot_strict_ab
.
- property pivot_strict_ac
Defined when a profile is given. Cf.
TauVector.pivot_strict_ac
.
- property pivot_strict_ba
Defined when a profile is given. Cf.
TauVector.pivot_strict_ba
.
- property pivot_strict_bc
Defined when a profile is given. Cf.
TauVector.pivot_strict_bc
.
- property pivot_strict_ca
Defined when a profile is given. Cf.
TauVector.pivot_strict_ca
.
- property pivot_strict_cb
Defined when a profile is given. Cf.
TauVector.pivot_strict_cb
.
- property pivot_tij_abc
Defined when a profile is given. Cf.
TauVector.pivot_tij_abc
.
- property pivot_tij_acb
Defined when a profile is given. Cf.
TauVector.pivot_tij_acb
.
- property pivot_tij_bac
Defined when a profile is given. Cf.
TauVector.pivot_tij_bac
.
- property pivot_tij_bca
Defined when a profile is given. Cf.
TauVector.pivot_tij_bca
.
- property pivot_tij_cab
Defined when a profile is given. Cf.
TauVector.pivot_tij_cab
.
- property pivot_tij_cba
Defined when a profile is given. Cf.
TauVector.pivot_tij_cba
.
- property pivot_tjk_abc
Defined when a profile is given. Cf.
TauVector.pivot_tjk_abc
.
- property pivot_tjk_acb
Defined when a profile is given. Cf.
TauVector.pivot_tjk_acb
.
- property pivot_tjk_bac
Defined when a profile is given. Cf.
TauVector.pivot_tjk_bac
.
- property pivot_tjk_bca
Defined when a profile is given. Cf.
TauVector.pivot_tjk_bca
.
- property pivot_tjk_cab
Defined when a profile is given. Cf.
TauVector.pivot_tjk_cab
.
- property pivot_tjk_cba
Defined when a profile is given. Cf.
TauVector.pivot_tjk_cba
.
- property pivot_weak_ab
Defined when a profile is given. Cf.
TauVector.pivot_weak_ab
.
- property pivot_weak_ac
Defined when a profile is given. Cf.
TauVector.pivot_weak_ac
.
- property pivot_weak_ba
Defined when a profile is given. Cf.
TauVector.pivot_weak_ba
.
- property pivot_weak_bc
Defined when a profile is given. Cf.
TauVector.pivot_weak_bc
.
- property pivot_weak_ca
Defined when a profile is given. Cf.
TauVector.pivot_weak_ca
.
- property pivot_weak_cb
Defined when a profile is given. Cf.
TauVector.pivot_weak_cb
.
- print_all_pivots()
Defined when a profile is given. Cf.
TauVector.print_all_pivots()
.
- print_weak_pivots()
Defined when a profile is given. Cf.
TauVector.print_weak_pivots()
.
- property scores
Defined when a profile is given. Cf.
TauVector.scores
.
Defined when a profile is given. Cf.
TauVector.share_double_votes
.
Share of voters that happen to cast a sincere ballot (in the context of the given profile).
Cf.
ProfileCardinal.share_sincere()
. This is defined only for aProfileCardinal
.- Type
Number
Share of strategic voters that happen to cast a sincere ballot (in the context of the given profile).
Cf.
ProfileCardinal.share_sincere_among_strategic_voters()
. This is defined only for aProfileCardinal
.- Type
Number
Defined when a profile is given. Cf.
TauVector.share_single_votes
.
- property tau
The tau-vector associated to this strategy (in the context of the given profile). Cf.
Profile.tau()
.- Type
- property trio
Defined when a profile is given. Cf.
TauVector.trio
.
- property trio_1t_a
Defined when a profile is given. Cf.
TauVector.trio_1t_a
.
- property trio_1t_b
Defined when a profile is given. Cf.
TauVector.trio_1t_b
.
- property trio_1t_c
Defined when a profile is given. Cf.
TauVector.trio_1t_c
.
- property trio_2t_ab
Defined when a profile is given. Cf.
TauVector.trio_2t_ab
.
- property trio_2t_ac
Defined when a profile is given. Cf.
TauVector.trio_2t_ac
.
- property trio_2t_ba
Defined when a profile is given. Cf.
TauVector.trio_2t_ba
.
- property trio_2t_bc
Defined when a profile is given. Cf.
TauVector.trio_2t_bc
.
- property trio_2t_ca
Defined when a profile is given. Cf.
TauVector.trio_2t_ca
.
- property trio_2t_cb
Defined when a profile is given. Cf.
TauVector.trio_2t_cb
.
- property winners
Defined when a profile is given. Cf.
TauVector.winners
.
- property τ
The tau-vector (alternate notation). Cf.
Profile.τ()
.- Type