Definite Majority Choice: Difference between revisions

m
no edit summary
m (clean up (AWB), typos fixed: satisifies → satisfies, , → ,)
mNo edit summary
 
(12 intermediate revisions by 4 users not shown)
Line 2:
:'''While no undefeated candidates exist, eliminate the least-approved candidate.'''
See also [[Proposed Statutory Rules for DMC]].
 
It can be extended to use [[Range voting]] instead of [[Approval voting]] as its base: in that case, the method eliminates the least-rated candidate.
 
Its elimination logic is the same as [[Benham's method]], and the method can thus be thought of as a rated version of it.
 
== [[Range voting]] implementation ==
Line 13 ⟶ 17:
Quick example: A:99, B:98, C:50, D:25, E:25 would be counted as
A>B>C>D=E
{| class="wikitable" border="1"
|
! !! A !! B !! C !! D !! E !! F
! A !! B !! C !! D !! E !! F
|-
! A
! A || 99 || 1 || 1 || 1 || 1 || 1
| 99 || 1 || 1 || 1 || 1 || 1
|-
! B
! B || 0 || 98 || 1 || 1 || 1 || 1
| 0 || 98 || 1 || 1 || 1 || 1
|-
! C
! C || 0 || 0 || 50 || 1 || 1 || 1
| 0 || 0 || 50 || 1 || 1 || 1
|-
! D
! D || 0 || 0 || 0 || 25 || 0 || 1
| 0 || 0 || 0 || 25 || 0 || 1
|-
! E
! E || 0 || 0 || 0 || 0 || 25 || 1
| 0 || 0 || 0 || 0 || 25 || 1
|-
! F
! F || 0 || 0 || 0 || 0 || 0 || 00
| 0 || 0 || 0 || 0 || 0 || 00
|}
 
== Alternative implementation ==
 
This implementation is called '''Pairwise Sorted Approval'''. It is the simplest of a class of [[Pairwise Sorted Methods]].
 
A voter ranks candidates, and specifies approval, either by using an [[Approval Cutoff]] or by ranking above and below a fixed approval cutoff rank.
 
To determine the winner,
# sort candidates in descending order of approval.
# For each candidate, move it higher in the list as long as it pairwise beats the next-higher candidate, and only after all candidates above it have moved upward as far as they can.
 
This procedure can be used to produce a social ordering. It finds the same winner as the Benham-form implementation.
 
== Properties ==
Line 37 ⟶ 60:
== Background ==
The name "DMC" was first suggested [http://lists.electorama.com/pipermail/election-methods-electorama.com/2005-March/015164.html here]. Equivalent methods have been suggested several times on the EM mailing list:
* The [[Pairwise Sorted Approval]] equivalentmethod/implementation was first proposed by [[Forest Simmons]] in [http://lists.electorama.com/pipermail/election-methods-electorama.com/2001-March/005448.html March 2001].
* The Ranked Approval Voting equivalentmethod/implementation was first proposed by [[Kevin Venzke]] in [http://lists.electorama.com/pipermail/election-methods-electorama.com/2003-September/010799.html September 2003]. The name was suggested by Russ Paielli in 2005.
 
The [http://lists.electorama.com/pipermail/election-methods-electorama.com/2005-March/015144.html philosophical basis] of DMC is to eliminate candidates that the voters strongly agree should ''not'' win, using two strong measures, and choose the undefeated candidate from those remaining.
Line 66 ⟶ 89:
 
== Example ==
Here's a set of preferences taken from Rob LeGrand's [httphttps://cecwww.wustlcs.angelo.edu/~rhl1rlegrand/rbvote/calc.html online voting calculator]. We indicate the approval cutoff using '''>>'''.
 
The ranked ballots:
Line 86 ⟶ 109:
 
The pairwise matrix, with the victorious and approval scores highlighted:
<table{| borderclass="wikitable" cellpadding="3>" border=""
|- align="center"
<tr align="center"><td colspan=2 rowspan=2></td><th colspan=5>against</th></tr>
| colspan=2 rowspan=2 |
<tr align="center"><td class="against"><span class="cand">Abby</span></td><td class="against"><span class="cand">Brad</span></td><td class="against"><span class="cand">Cora</span></td><td class="against"><span class="cand">Dave</span></td><td class="against"><span class="cand">Erin</span></td></tr>
! colspan=5 | against
<tr align="center">
|- align="center"
<th rowspan=5>for</th>
<td! class="foragainst"><span class="cand">| Abby</span></td>
! class="against" | Brad
<td bgcolor="yellow">645</td>
<td! class="lossagainst">458</td> | Cora
! class="against" | Dave
<td bgcolor="yellow">461</td>
! class="against" | Erin
<td bgcolor="yellow">485</td>
|- align="center"
<td bgcolor="yellow">511</td>
! rowspan=5 | for
</tr>
! class="for" | Abby
<tr align="center">
| bgcolor="yellow" | 645
<td class="for"><span class="cand">Brad</span></td>
| class="loss" | 458
<td bgcolor="yellow">463</td>
<td| bgcolor="yellow">410</td> | 461
<td| bgcolor="yellow">461</td> | 485
| bgcolor="yellow" | 511
<td class="loss">312</td>
|- align="center"
<td bgcolor="yellow">623</td>
! class="for" | Brad
</tr>
| bgcolor="yellow" | 463
<tr align="center">
| bgcolor="yellow" | 410
<td class="for"><span class="cand">Cora</span></td>
| bgcolor="yellow" | 461
<td class="loss">460</td>
<td| class="loss">460</td> | 312
<td| bgcolor="yellow">460</td> | 623
|- align="center"
<td class="loss">460</td>
<td! class="lossfor">460</td> | Cora
| class="loss" | 460
</tr>
| class="loss" | 460
<tr align="center">
| bgcolor="yellow" | 460
<td class="for"><span class="cand">Dave</span></td>
<td| class="loss">436</td> | 460
| class="loss" | 460
<td bgcolor="yellow">609</td>
|- align="center"
<td bgcolor="yellow">461</td>
! class="for" | Dave
<td bgcolor="yellow">311</td>
<td| class="loss">311</td> | 436
| bgcolor="yellow" | 609
</tr>
| bgcolor="yellow" | 461
<tr align="center">
| bgcolor="yellow" | 311
<td class="for"><span class="cand">Erin</span></td>
<td| class="loss">410</td> | 311
|- align="center"
<td class="loss">298</td>
! class="for" | Erin
<td bgcolor="yellow">461</td>
| class="loss" | 410
<td bgcolor="yellow">610</td>
| class="loss" | 298
<td bgcolor="yellow">708</td>
| bgcolor="yellow" | 461
</tr>
| bgcolor="yellow" | 610
</table>
| bgcolor="yellow" | 708
|}
 
The candidates in descending order of approval are Erin, Abby, Cora, Brad, Dave.
Line 136 ⟶ 161:
After reordering the pairwise matrix, it looks like this:
 
<table{| borderclass="wikitable" cellpadding="3>" border=""
|- align="center"
<tr align="center"><td colspan=2 rowspan=2></td><th colspan=5>against</th></tr>
| colspan=2 rowspan=2 |
<tr align="center">
! colspan=5 | against
<td class="against"><span class="cand">Erin</span></td>
|- align="center"
<td class="against"><span class="cand">Abby</span></td>
<td! class="against"><span class="cand">Cora</span></td>| Erin
<td! class="against"><span class="cand">Brad</span></td>| Abby
<td! class="against"><span class="cand">Dave</span></td>| Cora
! class="against" | Brad
</tr>
! class="against" | Dave
<tr align="center">
|- align="center"
<th rowspan=5>for</th>
! rowspan=5 | for
<td class="for"><span class="cand">Erin</span></td>
! class="for" | Erin
<td bgcolor="yellow">708</td>
| bgcolor="yellow" | 708
<td class="loss">410</td>
| class="loss" | 410
<td bgcolor="yellow">461</td>
| bgcolor="yellow" | 461
<td class="loss">298</td>
| class="loss" | 298
<td bgcolor="yellow">610</td>
| bgcolor="yellow" | 610
</tr>
<tr|- align="center">
<td! class="for"><span class="cand">| Abby</span></td>
<td| bgcolor="yellow"> | 511</td>
<td| bgcolor="yellow"> | 645</td>
<td| bgcolor="yellow"> | 461</td>
<td| class="loss"> | 458</td>
<td| bgcolor="yellow"> | 485</td>
|- align="center"
</tr>
! class="for" | Cora
<tr align="center">
| class="loss" | 460
<td class="for"><span class="cand">Cora</span></td>
<td| class="loss"> | 460</td>
<td| classbgcolor="lossyellow"> | 460</td>
<td| bgcolorclass="yellowloss"> | 460</td>
<td| class="loss"> | 460</td>
|- align="center"
<td class="loss">460</td>
! class="for" | Brad
</tr>
| bgcolor="yellow" | 623
<tr align="center">
| bgcolor="yellow" | 463
<td class="for"><span class="cand">Brad</span></td>
<td| bgcolor="yellow">623</td> | 461
<td| bgcolor="yellow">463</td> | 410
| class="loss" | 312
<td bgcolor="yellow">461</td>
|- align="center"
<td bgcolor="yellow">410</td>
<td! class="lossfor">312</td> | Dave
| class="loss" | 311
</tr>
| class="loss" | 436
<tr align="center">
| bgcolor="yellow" | 461
<td class="for"><span class="cand">Dave</span></td>
| bgcolor="yellow" | 609
<td class="loss">311</td>
| bgcolor="yellow" | 311
<td class="loss">436</td>
|}
<td bgcolor="yellow">461</td>
<td bgcolor="yellow">609</td>
<td bgcolor="yellow">311</td>
</tr>
</table>
 
To find the winner,
Line 198 ⟶ 219:
A voter ranks candidates in order of preference, additionally indicating approval cutoff, using a ballot like the following:
<pre>
┌───────────────────────────────────────┐
+-----------------------+---------------+
| RANKING |
├───────┬───────┬───────┬───────┬───────┤
+-------+-------+-------+-------+-------+
| 1 | 2 | 3 | 4 | 5 |
────────────┼───────┼───────┼───────┼───────┼───────┤
------------+-------+-------+-------+-------+-------+
X1 | ( ) | ( ) | ( ) | ( ) | ( ) |
| | | | | |
X2 | ( ) | ( ) | ( ) | ( ) | ( ) |
| | | | | |
X3 | ( ) | ( ) | ( ) | ( ) | ( ) |
| | | | | |
X4 | ( ) | ( ) | ( ) | ( ) | ( ) |
| | | | | |
DISAPPROVED | ( ) | ( ) | ( ) | ( ) | ( ) |
────────────┴───────┴───────┴───────┴───────┴───────┘
------------+-------+-------+-------+-------+-------+
</pre>
 
As an example, say a voter ranked candidates as follows:
<pre>
┌───────────────────────────────────────┐
+-----------------------+---------------+
| RANKING |
├───────┬───────┬───────┬───────┬───────┤
+-------+-------+-------+-------+-------+
| 1 | 2 | 3 | 4 | 5 |
────────────┼───────┼───────┼───────┼───────┼───────┤
------------+-------+-------+-------+-------+-------+
X1 | ( ) | ( ) | ( ) | (X) | ( ) |
| | | | | |
X2 | (X) | ( ) | ( ) | ( ) | ( ) |
| | | | | |
X3 | ( ) | ( ) | ( ) | ( ) | (X) |
| | | | | |
X4 | ( ) | (X) | ( ) | ( ) | ( ) |
| | | | | |
DISAPPROVED | ( ) | ( ) | (X) | ( ) | ( ) |
────────────┴───────┴───────┴───────┴───────┴───────┘
------------+-------+-------+-------+-------+-------+
</pre>
 
We summarize this ballot as
X2 > X4 >> X1 > X3
where the ">>" indicates the approval cutoff --- candidates to the right of that sign receive no approval votes. This ballot is counted as
X2 > X2 (approval point)
X2 > X4
Line 255 ⟶ 276:
For example, the single example ballot above,
X2 > X4 >> X1 > X3
, the following votes would be added into the pairwise array:
{| class="wikitable" border="1"
|
! !! X1 !! X2 !! X3 !! X4
! X1 !! X2 !! X3 !! X4
|-
! X1 || 0 || 0 || 1 || 0
| 0 || 0 || 1 || 0
|-
! X2 || 1 || 1 || 1 || 1
| 1 || 1 || 1 || 1
|-
! X3 || 0 || 0 || 0 || 0
| 0 || 0 || 0 || 0
|-
! X4 || 1 || 0 || 1 || 1
| 1 || 0 || 1 || 1
|}
 
Line 307 ⟶ 333:
* [[Marginal Ranked Approval Voting]]: chooses the winner from a subset of the definite majority set.
 
[[Category:SingleCondorcet-winnercardinal votinghybrid methods]]
[[Category:Smith-efficient Condorcet methods]]
<!--
(Emacs settings)
Line 314 ⟶ 340:
fill-column: 1024
End:
-->[[Category:Cardinal voting methods]]
-->
1,196

edits