Skip to content

The Herb Garden Council — Bloc STAR, 3 seats (the majority can sweep)

Generated from 07a_c5_b36_herb-council-bloc-3-seats.yaml — do not edit by hand. Regenerate: python STARVote_LH_tabulation_engine/tools_adam/scripts/build_yaml_pages.py.

Method: Bloc STAR (multi-winner, majoritarian) · 3 seats · Expected winners: Basil, Chive, Dill

▶ Live on BetterVoting: vote · results ↗ (election 9dx494 · test BV2244).

Scenario

One garden, 36 ballots, three seats - and TWO philosophies of 'three winners'. This is a same-ballots TWIN PAIR: file 07a tabulates Bloc STAR (single-winner STAR run once per seat - a cohesive majority can take every seat), file 07b tabulates Allocated Score / STAR-PR on the IDENTICAL rows (each Hare quota of voters fills one seat, ballots spent on a winner are reweighted). A kitchen bloc slates Basil-Chive-Dill; a tea caucus backs Anise & Endive. Same opinions, same styles, same rows - different method, different council.

The electorate (36 ballots, all individual rows): - kitchen bloc: 20 voters (10 slate, 4 bullet, 4 nuanced, 2 gentle) - tea caucus: 16 voters (9 nuanced, 4 slate, 3 cliff35)

Ballot styles in play (taxonomy: 01_STAR/01_Learn/voting_styles/README.md): - nuanced: full 0-5 range, honest gaps, ties allowed - bullet: choose-one transplant: favorite 5, rest 0/blank - slate: partisan slate: equal 5s for the in-group, 0 outside - gentle: gentle soul: everything squeezed into 3-5, no zeros - cliff35: cliff ballot: 0 or 3-5, nothing in between

What the frozen seed produced: Seats: Basil, Chive, Dill. kitchen bloc seats 3 of its 3-name slate; tea caucus seats 0 of its 2-name slate. Per-seat runoff margins: 2, 3, 0. The final seat's runoff is TIED - resolved by STAR's official tiebreaker ladder.

TWIN FILE (identical ballots, other method): 07b_c5_b36_herb-council-pr-3-seats.yaml tabulates allocated and seats Anise, Basil, Chive.

RANDOM-BUT-HUMAN, reproducible: generated by 06_Other/ballot_style_lab/generate_ballot_styles.py (scenario 'herb_council', seed 57) - utilities sampled from the faction model above, then rendered through each voter's ballot style. Per 07_Concepts/topics/simulate_utilities_not_ballots.md this is the 'stress-test the tabulator' job (with human-shaped renderings), not a method-welfare comparison. Regenerate byte-identically: python generate_ballot_styles.py --emit herb_council

Ballots

Row 1 = candidate names; each later row is one voter's 0–5 scores (a N × prefix = N identical ballots).

Markers on these ballots: - blank · ~ race abstention · & candidate abstention · ? spoiled · % spoiled+reissued — all tabulate as 0 (reported honestly).

Anise, Basil, Chive, Dill, Endive
    5,     0,     2,    1,      4
    0,     5,     0,    0,      0
    5,     0,     0,    0,      5
    5,     0,     0,    0,      5
    -,     5,     5,    5,      -
    -,     5,     5,    5,      -
    0,     5,     3,    4,      0
    0,     5,     5,    5,      0
    -,     5,     5,    5,      -
    5,     1,     0,    1,      4
    3,     5,     5,    5,      3
    0,     5,     5,    5,      0
    5,     0,     0,    0,      5
    5,     1,     1,    0,      4
    -,     5,     5,    5,      -
    5,     0,     0,    0,      5
    5,     0,     0,    0,      5
    -,     5,     -,    -,      -
    0,     5,     5,    5,      0
    4,     0,     2,    1,      5
    0,     5,     5,    5,      0
    5,     0,     1,    2,      4
    3,     5,     5,    4,      3
    3,     0,     2,    1,      5
    0,     5,     5,    5,      0
    0,     5,     5,    4,      0
    0,     5,     5,    5,      0
    5,     1,     1,    0,      3
    0,     5,     5,    3,      0
    5,     -,     -,    -,      5
    0,     5,     5,    5,      0
    -,     5,     -,    -,      -
    -,     5,     -,    -,      -
    5,     0,     0,    0,      5
    5,     0,     0,    1,      5
    4,     0,     0,    1,      5

What the engine says

The count, step by step — the rounds and how the winner is reached:

--- Bloc STAR Voting Method (3 winners) ---

[Bloc STAR]
 Tabulating 36 ballots to fill 3 seats.
Count × Anise,Basil,Chive,Dill,Endive
    7 ×     0,    5,    5,   5,     0
    6 ×     5,    0,    0,   0,     5
    4 ×     -,    5,    5,   5,     -
    3 ×     -,    5,    -,   -,     -
    1 ×     5,    0,    2,   1,     4
    1 ×     0,    5,    0,   0,     0
    1 ×     0,    5,    3,   4,     0
    1 ×     5,    1,    0,   1,     4
    1 ×     3,    5,    5,   5,     3
    1 ×     5,    1,    1,   0,     4
    1 ×     4,    0,    2,   1,     5
    1 ×     5,    0,    1,   2,     4
    1 ×     3,    5,    5,   4,     3
    1 ×     3,    0,    2,   1,     5
    1 ×     0,    5,    5,   4,     0
    1 ×     5,    1,    1,   0,     3
    1 ×     0,    5,    5,   3,     0
    1 ×     5,    -,    -,   -,     5
    1 ×     5,    0,    0,   1,     5
    1 ×     4,    0,    0,   1,     5
  ('-' = left blank / abstained; '0' = scored zero — both count as 0 stars.)

[Bloc STAR: Round 1: Scoring Round]
 The two highest-scoring candidates advance to the next round.
   Basil         -- 103 -- First place
   Chive         --  87 -- Second place
   Dill          --  83
   Anise         --  82
   Endive        --  80
 Basil and Chive advance.

[Bloc STAR: Round 1: Automatic Runoff Round]
 The candidate preferred in the most head-to-head matchups wins.
   Basil         -- 6 -- First place
   Chive         -- 4
   Equal Support -- 26
 Basil wins.
   Runoff math:
     36  ballots cast
   − 26  Equal Support (no preference between the two finalists)
     ──
     10  voters with a preference  (majority = 6)
           Basil 6 (60%)  ·  Chive 4 (40%)

──────────────────────────────────────────────────

[Bloc STAR: Round 2: Scoring Round]
 The two highest-scoring candidates advance to the next round.
   Chive         -- 87 -- First place
   Dill          -- 83 -- Second place
   Anise         -- 82
   Endive        -- 80
 Chive and Dill advance.

[Bloc STAR: Round 2: Automatic Runoff Round]
 The candidate preferred in the most head-to-head matchups wins.
   Chive         -- 8 -- First place
   Dill          -- 5
   Equal Support -- 23
 Chive wins.
   Runoff math:
     36  ballots cast
   − 23  Equal Support (no preference between the two finalists)
     ──
     13  voters with a preference  (majority = 7)
           Chive 8 (62%)  ·  Dill 5 (38%)

──────────────────────────────────────────────────

[Bloc STAR: Round 3: Scoring Round]
 The two highest-scoring candidates advance to the next round.
   Dill          -- 83 -- First place
   Anise         -- 82 -- Second place
   Endive        -- 80
 Dill and Anise advance.

[Bloc STAR: Round 3: Automatic Runoff Round]
 The candidate preferred in the most head-to-head matchups wins.
   Anise         -- 16 -- Tied for first place
   Dill          -- 16 -- Tied for first place
   Equal Support --  4
 There's a two-way tie for first.

[Bloc STAR: Round 3: Automatic Runoff Round: First tiebreaker]
 The highest-scoring candidate wins.
   Dill          -- 83 -- First place
   Anise         -- 82
 Dill wins.

[Bloc STAR: Winners — Bloc STAR Voting Method (3 winners)]
 Basil
 Chive
 Dill

Full audit — preference matrix, Condorcet, and score distribution

--- Preference Matrix ---
Head-to-head / pairwise comparison
Legend: For - Equal Support - Against
        Informational only — not part of the 3-winner count below,
        so no Top-2 finalists are marked.
                 |     Anise    |    Basil    |    Chive    |     Dill    |    Endive   |
-----------------------------------------------------------------------------------------
         Anise > |     ---      |16 -  0 - 20 |16 -  4 - 16 |16 -  4 - 16 | 5 - 28 -  3 |
         Basil > | 20 -  0 - 16 |    ---      | 6 - 26 -  4 |10 - 20 -  6 |20 -  0 - 16 |
         Chive > | 16 -  4 - 16 | 4 - 26 -  6 |    ---      | 8 - 23 -  5 |16 -  4 - 16 |
          Dill > | 16 -  4 - 16 | 6 - 20 - 10 | 5 - 23 -  8 |    ---      |16 -  4 - 16 |
        Endive > |  3 - 28 -  5 |16 -  0 - 20 |16 -  4 - 16 |16 -  4 - 16 |    ---      |

[Condorcet Winner]
  Condorcet Winner: Basil — matches the STAR winner

[Condorcet Loser]
  No strict Condorcet loser; jointly weak Condorcet losers: Dill, Endive (winless — pairwise ties)

[Score Distribution] (how many ballots gave each star rating)
                   Score
Candidate   5   4   3   2   1   0  Abs  | Total  Avg all  Avg rated
Anise      13   2   3   0   0  11    7  |    82      2.3        2.8
Basil      20   0   0   0   3  12    1  |   103      2.9        2.9
Chive      15   0   1   3   3  10    4  |    87      2.4        2.7
Dill       12   3   1   1   6   9    4  |    83      2.3        2.6
Endive     11   4   3   0   0  11    7  |    80      2.2        2.8
  Avg all   = Total / all ballots — a blank counts as 0, so this is the Total the Scoring Round ranks on, per ballot.
  Avg rated = Total / the ballots that scored this candidate (Abs excluded) — support among voters who had an opinion.

Everything in one file: the _tabulated mirror (regenerated on every run; every analysis forced on).

Run it yourself:

python STARVote_LH_tabulation_engine/starvote_larry_hastings.py 06_Other/ballot_style_lab/cases/07a_c5_b36_herb-council-bloc-3-seats.yaml

See also

More cases in this set: 01_c3_b31_graders-divide · 02_c4_b40_cliff-city · 03_c4_b33_bullet-storm · 04_c4_b47_noise-soup · 05_c3_b38_squeeze-survives · 06_c4_b24_narrow-bands · 07b_c5_b36_herb-council-pr-3-seats · 08_c6_b29_quota-circus-pr-2-seats · 09_c7_b44_park-bloc-4-seats