Ted Stern
2017-12-25 23:43:35 UTC
Chris Benham proposed IBIFA in May and June, 2010, on the election-methods
mailing list:
http://lists.electorama.com/pipermail/election-methods-
electorama.com/2010-May/091807.html
http://election-methods.electorama.narkive.com/KdBxpweB/irrelevant-ballots-
independent-fallback-approval-ibifa
http://wiki.electorama.com/wiki/IBIFA
IBIFA is, as originally stated, a "Bucklin-like method meeting Favorite
Betrayal and Irrelevant Ballots." Its key principle is to compare the
ballots voting for a candidate at-or-above a particular rating to the
most-approved candidate on the complementary ballots. When the former
exceeds the latter, a meaningful threshold has been crossed, unlike the
arbitrary 50% threshold of median rating methods. This is what enables
IBIFA to yield the same result if irrelevant ballots are added or dropped.
By construction, IBIFA is cloneproof.
With this in mind, I realized that a minor modification of IBIFA would make
it more like Majority Judgment, reducing later-harm and improving Condorcet
consistency (though not completely), while satisfying the same criteria as
MJ.
IBIFA, simply stated, does the following:
- Find the highest rating R, for which there is at least one candidate X
who is rated *at or above level R* on more ballots than any candidate is
approved on ballots that rate X below R.
- If there is more than one such candidate X, elect the candidate X with
the most ballots rating X at R or above.
- If no candidates satisfy the first criterion, for any approved rating
R, elect the candidate with the highest approval over all ballots.
My modification is inserted with emphasis added.
- Find the highest rating R, for which there is at least one candidate X
who is rated *at or above level R* on more ballots than any candidate is
approved on ballots which rate X below R.
- If there is more than one such candidate X, *then if there is at least
one candidate Y who is rated above R on more ballots than the highest
approved candidate on ballots that rate Y below R, elect the candidate Y
with the most ballots rating Y above R.*
- *Otherwise, *elect the candidate X with the most ballots rating X at R
or above.
- If no candidates satisfy the first criterion, for any approved rating
R, elect the candidate with the highest approval over all ballots.
I call this IBIFA variant "EXACT", because it uses an EXclusive Approval
Comparison Threshold. That is, the candidate compared to X is the one with
maximum approval on ballots that *exclude* votes for X at some rating or
above. Like IBIFA, it is also cloneproof.
For EXACT, it is convenient to keep track of co-approval: the approval for
candidates X[j] on a ballot containing candidate X[i] with rating k:
for ballot in ballots:
for candidate i on ballot with score k:
if k approved:
for candidate j on ballot with score m:
if m approved:
W[k,i,j] += 1
Note that W[k,i,i] is the total approval for candidate X[i] at rating k,
and the total approval for candidate X[i] at rating k and higher is the sum
of W[k,i,i] over all approved ratings k.
It should then be clear that the approval for any candidate j on a ballot
that rates X[i] at R or higher is
Approval[j] - W[R,i,j] - W[R+1,i,j] ... - W[MaxScore,i,j]
The EXACT score for a candidate is tuple similar to Majority Judgment's
"majority grade":
EXACT score for candidate X = (R, S, T)
where R is the rating at which X's votes at or above R are greater than
the highest approved candidate on ballots excluding X at R or above.;
If the number of ballots with X at rating R+1 and above is greater than
those of the highest approved candidate on ballots excluding X at ratings R
and above, then S = R+1, and T = votes for X at R+1 and above.
Otherwise, S = R and T = votes for X at R and above.
By sorting these tuples in descending order, one gets, as with Majority
Judgment, an EXACT ranking for the candidates.
EXACT satisfies all the same properties as Majority Judgment, and in
addition, is irrelevant-ballot-immune (IBI). That is, a ballot containing
approval only for non-contending candidates won't affect the results.
EXACT does require several N^2 arrays for summable storage, but note that
no sorting of the ballots is required as with pairwise methods.
mailing list:
http://lists.electorama.com/pipermail/election-methods-
electorama.com/2010-May/091807.html
http://election-methods.electorama.narkive.com/KdBxpweB/irrelevant-ballots-
independent-fallback-approval-ibifa
http://wiki.electorama.com/wiki/IBIFA
IBIFA is, as originally stated, a "Bucklin-like method meeting Favorite
Betrayal and Irrelevant Ballots." Its key principle is to compare the
ballots voting for a candidate at-or-above a particular rating to the
most-approved candidate on the complementary ballots. When the former
exceeds the latter, a meaningful threshold has been crossed, unlike the
arbitrary 50% threshold of median rating methods. This is what enables
IBIFA to yield the same result if irrelevant ballots are added or dropped.
By construction, IBIFA is cloneproof.
With this in mind, I realized that a minor modification of IBIFA would make
it more like Majority Judgment, reducing later-harm and improving Condorcet
consistency (though not completely), while satisfying the same criteria as
MJ.
IBIFA, simply stated, does the following:
- Find the highest rating R, for which there is at least one candidate X
who is rated *at or above level R* on more ballots than any candidate is
approved on ballots that rate X below R.
- If there is more than one such candidate X, elect the candidate X with
the most ballots rating X at R or above.
- If no candidates satisfy the first criterion, for any approved rating
R, elect the candidate with the highest approval over all ballots.
My modification is inserted with emphasis added.
- Find the highest rating R, for which there is at least one candidate X
who is rated *at or above level R* on more ballots than any candidate is
approved on ballots which rate X below R.
- If there is more than one such candidate X, *then if there is at least
one candidate Y who is rated above R on more ballots than the highest
approved candidate on ballots that rate Y below R, elect the candidate Y
with the most ballots rating Y above R.*
- *Otherwise, *elect the candidate X with the most ballots rating X at R
or above.
- If no candidates satisfy the first criterion, for any approved rating
R, elect the candidate with the highest approval over all ballots.
I call this IBIFA variant "EXACT", because it uses an EXclusive Approval
Comparison Threshold. That is, the candidate compared to X is the one with
maximum approval on ballots that *exclude* votes for X at some rating or
above. Like IBIFA, it is also cloneproof.
For EXACT, it is convenient to keep track of co-approval: the approval for
candidates X[j] on a ballot containing candidate X[i] with rating k:
for ballot in ballots:
for candidate i on ballot with score k:
if k approved:
for candidate j on ballot with score m:
if m approved:
W[k,i,j] += 1
Note that W[k,i,i] is the total approval for candidate X[i] at rating k,
and the total approval for candidate X[i] at rating k and higher is the sum
of W[k,i,i] over all approved ratings k.
It should then be clear that the approval for any candidate j on a ballot
that rates X[i] at R or higher is
Approval[j] - W[R,i,j] - W[R+1,i,j] ... - W[MaxScore,i,j]
The EXACT score for a candidate is tuple similar to Majority Judgment's
"majority grade":
EXACT score for candidate X = (R, S, T)
where R is the rating at which X's votes at or above R are greater than
the highest approved candidate on ballots excluding X at R or above.;
If the number of ballots with X at rating R+1 and above is greater than
those of the highest approved candidate on ballots excluding X at ratings R
and above, then S = R+1, and T = votes for X at R+1 and above.
Otherwise, S = R and T = votes for X at R and above.
By sorting these tuples in descending order, one gets, as with Majority
Judgment, an EXACT ranking for the candidates.
EXACT satisfies all the same properties as Majority Judgment, and in
addition, is irrelevant-ballot-immune (IBI). That is, a ballot containing
approval only for non-contending candidates won't affect the results.
EXACT does require several N^2 arrays for summable storage, but note that
no sorting of the ballots is required as with pairwise methods.