[EM] Single Non-Transferable voting + Approval (or Approval Sorted Margins) as a primary

C.Benham cbenham at adam.com.au
Fri Sep 18 09:48:23 PDT 2020


Ted,

I haven't been thinking very much about this topic lately.  But I have 
one or two ideas.

Abolish the party primaries and just have one big "primary". Use  STV to 
one-at -a-time eliminate candidates until the remaining candidate with 
the fewest votes has a tally that is at least X (say 15)%
of the total of the unexhausted ballots (i.e. those that show some 
preference among uneliminated candidates).

In the "general election" this should limit the field to a manageable 
number (no more than 6).

("STAR" is an abomination.)

At least as important in the current period  is election integrity and 
thinking of ways to use technology to implement direct democracy or some 
hybrid of direct and representative democracy.

Chris


On 18/09/2020 6:13 am, Ted Stern wrote:
> I've implemented the primary idea I proposed last month. It's 
> available in my github repository as *winnow.py*. The repo is located at
> *
> *
> https://github.com/dodecatheon/approval-sorted-margins/
> *
> *
> The code is designed to be used as a test bed for several 
> score-ballot-based methods.
>
> The default method for advancing candidates is Preference Approval 
> Sorted Margins.  It's basically Approval Sorted Margins, but I 
> interpret any non-zero score as approval, so I'm calling the higher 
> level of approval "Preference". As I proposed before, any ballots 
> approving (non-zero score) of the currently advancing winner are 
> removed completely, then tallies are done on the remaining ballots 
> until no more candidates remain or 95% of the ballots are used up, or 
> a maximum number of candidates (default 7) has been reached. In each 
> candidate advance round, candidates with remaining approval below the 
> threshold (default 1%) are dropped.
>
> Approval, Score, STAR, Vote 3-2-1, and Score Sorted Margins are 
> supported, and just for the sake of completeness, I also include 
> Preference (like approval but using explicit "preference" cutoff), and 
> Top-rating.
>
> It is designed to be used on a linux command line with python 3.7+ 
> that includes numpy.  I recommend getting the Anaconda (or mini-conda) 
> package.  There are a lot of commandline options.
>
> From the standpoint of practicality, say in the event of a 100+ 
> candidate jungle primary, this type of primary would be relatively 
> simple to implement for Approval, Score, Preference or Top-Rating.  
> Slightly more difficult would be STAR or Vote 3-2-1.  Finally, any 
> method that requires the pairwise array, such as PASM or SSM, would be 
> most complicated, and would probably require some sort of candidate 
> pruning below an approval threshold (to get the number of candidates 
> below 20 or so) to be at all feasible.
>
> On Fri, Aug 7, 2020 at 2:33 PM Ted Stern <dodecatheon at gmail.com 
> <mailto:dodecatheon at gmail.com>> wrote:
>
>     Over the years a number of people on this list (e.g. Rob Lanphier,
>     myself and others) have proposed various methods for using
>     Approval in primary elections.
>
>     There are arguments to be made for using other PR methods, but it
>     seems to me that SNTV is ideally suited to be a primary method,
>     since it resists pushover and doesn't tend to overrepresent parties.
>
>     Using Approval as a base method, single non-transferable approval
>     voting would look like
>
>       * Advance Approval winner and Approval runner-up
>       * Deweight to zero all ballots approving of AW.
>       * Repeat until some threshold (e.g. 90%) of ballots have been
>         used up:
>           o Advance approval winner on the current remaining ballots
>           o Deweight ballots approving of latest winner to zero
>
>     The advantages here are
>
>       * Relative simplicity -- No complicated reweighting algorithms,
>         so each recount for the next approval winner is faster than
>         the previous, and can even be done by hand.
>       * Each winner (other than the first approval runner-up) will
>         tend to be from a different party or faction of a party. 
>         There may be some overlap from also advancing the overall
>         Approval runner-up, but if the total AW and ARU are from the
>         same party, it gives them an advantage under Approval to have
>         a similar candidate for comparison.
>       * Most groups will be represented in the General election.
>       * Pushover strategy is disincentivized by complete deweighting,
>         so parties should not be threatened by strategic promotion of
>         their worst candidate. There is some possibility that voters
>         would do that regardless, but the effect should be no worse
>         than in current top-two elections.
>       * Modifications could include:
>           o Stop advancing candidates when the highest approval on
>             remaining ballots drops below a threshold. For example, if
>             the total deweight threshold is 90%, if the latest winner
>             has less than 5% approval on remaining ballots (half the
>             complement of 90%), break the loop.
>           o Stop when a certain number of candidates have advanced.
>             For example, if using the 5% rule above, it is possible
>             that 10 to 15 candidates could advance to the General,
>             defeating the winnowing purpose of a primary. It seems
>             reasonable to stop at 5 or 6 candidates.
>           o Use a different method other than simple Approval.
>
>     I would be perfectly satisfied to have SNTAV as a primary method,
>     but if one can handle a bit more complexity (say in smaller
>     groups), it would be reasonable to use Approval Sorted Margins as
>     the base method:
>
>       * Use Ranked or Rated ballots with explicit Approval Cutoff. If
>         not explicitly specified, cutoff is at zero-rating or last
>         ranking.
>       * Advance Approval Sorted Margins winner to general election
>       * Deweight to zero all ballots approving of AW.
>       * Repeat until some threshold (e.g. 90%) of ballots have been
>         used up:
>           o Advance ASM winner on the current remaining ballots
>           o Deweight ballots approving of latest winner to zero
>
>     For public elections, I think the SNTAV approach I outline above,
>     with a 90% threshold, 5% minimum remaining approval, and limited
>     to 6 candidates (4 approval winners and 1 top approval runner-up)
>     gives enough room to enable more parties to develop.
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.electorama.com/pipermail/election-methods-electorama.com/attachments/20200919/f5af2700/attachment-0001.html>


More information about the Election-Methods mailing list