MMT:

MMT can be made to meet FBC by replacing "...over all candidates outside that 
set" with
"at top or over all candidates outside that set".

But it still isn't ideal, because it makes all middle ratings strongly 
conditional, preventing middle
support for a lesser-evil who is genuinely a middle candidate, between favorite 
and the unacceptables,
whose voters have good strategic reason to not support your favorites, and 
shouldn't be expected
to.

Anyway, MMT doesn't avoid Mono-Add-Plump failure, and only improves on MDDTR by 
not
failing Plurality in the ABC or in Kevin's MMPO bad-example.

To MMT, I prefer MMPO, MDDTR, MTAOC, and the ABC-passing new methods of Forrest 
and Chris.

MTAOC:

As I posted it, MTAOC works tolerably, but not exactly as I'd intended. Say you 
top-rate two candidates, and
only of them is close enough to your conditionally middle-rated lesser-evil for 
us to expect mutuality. The
MTAOC that I posted can cancel your middle vote for that lesser evil just 
because hir voters don't support
_both_ of your top-rated candidates, including the one that is quite distant 
from their own candidate.

Requiring only that a lesser-evil's top-supporters only mutually support _one_ 
of your top-rated
candidates, however, would be too lenient. Maybe they'd support only one of 
your bare compromises
that you strategically rated top, rather than a favorite of yours.

Much improved MTAOC refinement:

So it's best to let the voter specify which of hir top-rated candidates are 
"coalition-sufficient"--candidates
whom you expect a conditionally-middle-rated lesser-evil's top-supporters to 
mutually support, in order
for them to get your conditional middle vote.

The ballot would then, strictly-speaking, be 5-slot ballot, though the method 
is just the same 3-slot
method with conditional-support refinements.

As before, you give, to a candidate, a conditional or unconditional middle 
rating. But now, if you do, 
you can also indicate which of your top-rated candidates are 
"coalition-sufficient", meaning that
a conditionally-middle-rated candidate can get your middle rating if hir 
top-supporters support
that "coalition-sufficient" top-rated candidate of yours.

The count rule for the method that I now call MTAOC is best expressed as 
pseudocode. That doesn't
make it too complicated to propose. The pseudocode is simpler than that for 
STV, and STV has been
publicly accepted, in the U.S. and in Australia.

For STV or MTAOC, when you tell someone what the method does, what it 
guarantees, what
kind of voting it allows, that person won't insist on reading, understanding 
and approving the
computer program that implements it.

I'd also like to hear brief and natually & obviously motivated explanations for 
what Chris's and
Forrrest's ABC-passing methods do--to tell people why they want that method, 
without their
reading the more complicated details of the official count rule.

This pseudocode for MTAOC consists of three sections:

1. Determine support-parity for each ordered pair of candidates.

2. Determine if y top-voters mutually support at least one of your 
coalition-sufficient
candidates. If not, your conditional middle-rating for y is marked unkept.

3. If not, take back your unkept middle-rating of y--toward achieving 
support-parity
between y and one of your coalition-sufficient candidates.

Now, the pseudocode.

First a few definitions:

middle(x,y) is the number of ballots that top-rate x but not y, and middle-rate 
y.

middle(b,y) = "yes" means that ballot b middle-rates y

condmiddle(b,y) = "yes" means that ballot b conditionally middle-rates y.

middle(y) is the number of middle ratings that y has (allowing for any 
withdrawn conditional middle ratings).

sufficient(b,x) = "yes" if ballot b marks candidate x as coalition-sufficient.

par(x,y) and keep(b,y) are defined in the pseudocode.

Let me know if I've left anything out.

Initialize par(x,y) at "yes" for all permutations of x and y.

Initialize keep(b,y) at "no" for all permutations of b and y.


Comment: Determine support-parity for each ordered pair of candidates:

for all x
...for all y
......if middle(x,y) > middle(y,x) then:
.........par(x,y) = "no"
......endif
...next y
next x

Comment: Determine if y top-voters mutually support at least one of your 
coalition-sufficient candidates. If not, your conditional middle support of y
is marked unkept:

for all b
...for all x
......for all y
.........if par(x,y) = "yes", and sufficient(b,x) = "yes", and condmiddle(b,y) 
= "yes", then:
............keep(b,y) = "yes"
.........endif
......next y
...next x
next b

Comment: If kept(b,y) = "no", then take back your unkept middle rating of 
y--toward
achieving support-parity between y and one of your coalition-sufficient 
candidates:

for all x
...for all y
......for all b
.........if keep(b,y) = "no", and par(x,y) = "no", and condmiddle(b,y) = "yes"
............and sufficient(b,x) = "yes", then:
............middle(b,y) = "no"
............condmiddle(b,y) = "no"
............recalculate middle(x,y)
............recalculate middle(y)
.........endif
......next b
...next y
next x

[end of pseudocode]

That's how conditional middle ratings are dealt with. That pseudocode
gives the new value for each middle(y). Those are the middle-rating values that 
are
used in the MTA top + middle count, in MTAOC.

Mike Ossipoff




                                          
----
Election-Methods mailing list - see http://electorama.com/em for list info

Reply via email to