Ok @Toby_Pereira, I implemented your method, or at least I think I did. I called it TobysCSHybrid, but you can give it any name you want. (or we can do a vote for a name, using it for tabulation, which is of course my suggestion ) Let me know if you think I got it right. I didn’t attempt to deal with tie situations, which I probably should. https://codepen.io/karmatics/pen/ExKZVjM

It’s actually one of the shorter methods codewise, although of course it calls into other functions (tabulateScore, tabulateCondorcet, and eliminateCandidateAndNormalize).

With the ballot data supplied at the CodePen, it got the same result as CardinalBaldwin and STAR, e, while all the others got c. Remember this is on an election that is extremely close and had three candidates in the Smith set, so not super surprising that some methods produce a different result.

In addition, I made a hybrid of yours with my “Stella” method. Yours doesn’t always meet the Smith criterion (as you note it ignores the Smith set), while the Stella method does. So I made a variation that uses the same logic to narrow it down to the Smith set and normalize, but then calls into your method for the last phase, rather doing a Score tabulation on those remaining candidates. Codewise, it worked pretty nicely because a bit of reorganization allowed me to reuse code, so most of this comes for free. (I called it “Stella Toby Hybrid” for lack of a better name) This one also picked e.

I would describe this one as “aggressively Condorcet”. The scores (beyond simple rankings) are used to the absolute minimum possible… simply to eliminate members of the Smith set, and of course even then they are normalized.

I think you’d have to have God-like omniscience to be able to gain any benefit from knowing how others will vote and exaggerating or whatnot.

At bottom are full results. Notice that, if no Condorcet winner, your method has the most bulky results here, since it alternates between doing Condorcet (producing a list of pairwise wins) and Score (producing a list of scores), so there’s a fair amount of meaningful data to dump out. Stella output is shorter because it skips straight to the Smith set.

First, though, each round looks something like this:

```
***** round 2 *****
*** scores ***
c: 2.4804
e: 2.4390
f: 2.3606
d: 2.2968
b: 2.0414
a: 1.9574
*** pairwise ***
c: 3
d: 3
e: 3
f: 1
b: 0
```

That shows that after the score comparison, a is eliminated, then a Condorcet round is done, which results in 3 candidates in the Smith set.

While this is the whole thing (showing all the methods’ output)

```
****** Pairwise wins ******
c: 4
d: 4
e: 4
f: 2
a: 1
b: 0
****** Score ******
c: 2215 (2.4804)
e: 2178 (2.4390)
f: 2108 (2.3606)
d: 2051 (2.2968)
b: 1823 (2.0414)
a: 1748 (1.9574)
****** Stella ******
c: 2537.5
e: 2440
d: 2047.8333
****** Stella Toby Hybrid ******
***** round 1 *****
*** pairwise ***
c: 1
d: 1
e: 1
***** round 2 *****
*** scores ***
c: 2.8415
e: 2.7324
d: 2.2932
*** pairwise ***
e: 1
c: 0
****** STAR ******
e: 413
c: 405
****** Cardinal Baldwin ******
***** round 1 *****
c: 2.4804
e: 2.4390
f: 2.3606
d: 2.2968
b: 2.0414
a: 1.9574
***** round 2 *****
c: 2.5555
e: 2.4409
d: 2.2724
f: 2.2417
b: 2.0764
***** round 3 *****
c: 2.8415
e: 2.4253
d: 2.0784
f: 1.9825
***** round 4 *****
c: 2.8415
e: 2.7324
d: 2.2932
***** round 5 *****
e: 2.3124
c: 2.2676
****** TobyCSHybrid ******
***** round 1 *****
*** pairwise ***
c: 4
d: 4
e: 4
f: 2
a: 1
b: 0
***** round 2 *****
*** scores ***
c: 2.4804
e: 2.439
f: 2.3606
d: 2.2968
b: 2.0414
a: 1.9574
*** pairwise ***
c: 3
d: 3
e: 3
f: 1
b: 0
***** round 3 *****
*** scores ***
c: 2.5555
e: 2.4409
d: 2.2724
f: 2.2417
b: 2.0764
*** pairwise ***
c: 2
d: 2
e: 2
f: 0
***** round 4 *****
*** scores ***
c: 2.8415
e: 2.4253
d: 2.0784
f: 1.9825
*** pairwise ***
c: 1
d: 1
e: 1
***** round 5 *****
*** scores ***
c: 2.8415
e: 2.7324
d: 2.2932
*** pairwise ***
e: 1
c: 0
****** STLR ******
c: 2898.25
e: 2463.75
```