Navigation

    Voting Theory Forum

    • Register
    • Login
    • Search
    • Recent
    • Categories
    • Tags
    • Popular
    • Users
    • Groups
    1. Home
    2. akazukin5151
    A
    • Profile
    • Following 0
    • Followers 0
    • Topics 2
    • Posts 4
    • Best 0
    • Groups 0

    akazukin5151

    @akazukin5151

    0
    Reputation
    2
    Profile views
    4
    Posts
    0
    Followers
    0
    Following
    Joined Last Online

    akazukin5151 Unfollow Follow

    Latest posts made by akazukin5151

    • RE: Largest remainders methods: more remaining seats than parties?

      I'd say that the Droop Quota isn't very good when the quota is so small.

      I agree, I'm not allocating seats in a real life election so this is just purely theoretical.

      A more realistic quota for most elections would be in the thousands, so rounding up to the next integer would be a very small percentage difference. I think this is largely where the problem stems from.

      So that's the core reason, makes sense to me.

      But if we're going with 4 as the quota anyway, I think we're just minimising the amount over quota they go. So we have the following seats "owed" to each party:

      That's pretty smart. This is the algorithm as I understand it:

      If there are still seats remaining to elect, award seats to the party with the smallest difference between seats won and "party quota" (seats_won - votes / quota). Repeat until all seats filled

      (For simplicity I'm breaking ties in favour of the first party)

      So my example would start from the automatic seats [5, 6, 12]. Award seats based on the largest remainders method as usual, stopping when all parties has been awarded a seat: [6, 6, 12], [6, 6, 13], [6, 7, 13].

      The remaining 4 seats would be filled like this

      [7, 7, 13], [7, 7, 14], [7, 8, 14], [8, 8, 14]

      Thank you very much for the help!

      posted in Voting Theoretic Criteria
      A
      akazukin5151
    • Largest remainders methods: more remaining seats than parties?

      Hello,

      I've found a weird edge case in using the Droop quota for the largest remainders methods in proportional representation. Consider the following election results for 100 voters and 30 seats:

      Party Votes
      A 23
      B 26
      C 51

      The droop quota is 1 + (100 / (1 + 30)) = 4.23. There are various flooring strategies, but they all should yield 4.

      A total of 23 seats are automatically allocated:

      Party Formula Automatic seats
      A floor(23 / 4) 5
      B floor(26 / 4) 6
      C floor(51 / 4) 12

      There are still 7 seats remaining, but there are only 3 parties. It doesn't matter what the remainders are, there are only 3 remainders.

      The examples on Wikipedia assumes that the remaining number of seats are less than the number of parties. This election does works if there are 20 seats total:

      The quota is 1 + (100 / (1 + 20)) = 5.76 ~= 5. 19 seats are automatically allocated, the largest remainder is party A with 0.6, hence the result is A: 5, B: 5, C : 10 seats.

      My question is, what is supposed to happen in this situation? Will there just be unfilled seats in parliament? How can this be fixed or mitigated? Did I make any mistakes above? Thank you in advance


      PS: I'd post this to the proportional representation category but there was no new topic button

      posted in Voting Theoretic Criteria
      A
      akazukin5151
    • RE: Proportional representation with droop quota and quota rule

      @andy-dienes Oh, that makes sense. How do I use the droop quota to calculate the lower and upper quota though? I can sort of see the similarities between p1 / sum and the hare quota (total_votes/total_seats). But if I substitute p1 into total_votes and sum (of all votes) into total_seats for droop, I get 1 + floor(p1 / (1 + sum)), which will always be greater than 1. Even if the 1+ and floor is dropped, I still get 311 for party #1's upper quota. Thank you so much for your help!

      posted in Voting Theoretic Criteria
      A
      akazukin5151
    • Proportional representation with droop quota and quota rule

      Hello,

      I was running property-based tests and it seems to have found a situation where the Droop quota violated the quota rule. As a largest remainder method, I thought the Droop quota will always satisfy the quota rule. I don't think it is my code being buggy because I reached the same results when calculating by hand. You can also use this unrelated calculator and it gives the same results. In fact, its code uses my algorithm. I found another project which I didn't manage to compile, but the code should also give the same results.

      I am aware of the mathematical proofs behind the method and the quota rule, so I hope all three of us made a mistake!

      Consider this election with 4 parties contesting 360 seats, with the following vote counts

      p1, p2, p3, p4 = 885292, 50089, 1536, 87859
      house_size = 360
      
      sum == 1024776
      

      Calculate the droop quota

      quota = 1 + floor(sum / (1 + house_size))
      quota == 2839
      

      Divide each party's votes by the quota

      p1 / quota = 311.83233532934133
      p2 / quota = 17.643184219795703
      p3 / quota = 0.5410355759070095
      p4 / quota = 30.94716449454033
      

      Give each party their automatic seats based on the floor of the above:

      party seats
      1 311
      2 17
      3 0
      4 30
      total 358

      There are 2 seats remaining, so give one seat to the two parties with the largest remainder - they are party #3 (0.94716449454033) and party #1 (0.83233532934133)

      The election result is thus:

      party seats
      1 312
      2 17
      3 0
      4 31
      total 360

      The problem with this result is that party #1's seats violated the quota rule. The lower and upper quotas are the vote percentages times the house size:

      expr result lower quota upper quota
      p1 / sum * house_size 310.99978922223 310 311
      p2 / sum * house_size 17.596079533478534 17 18
      p3 / sum * house_size 0.5395910911262558 0 1
      p4 / sum * house_size 30.86454015316518 30 31

      Party #1 received 312 seats, which violates the quota rule. The additional seat could be awarded to party #2 or #3 without violating the quota rule. Notably, party #1 was automatically allocated its upper quota, and gained another one due to its large remainder.

      I'm following the rules on the Wikipedia page for the largest remainder method -- as do the two other implementations. You can see my code here. Please do leave a comment if you have an insight. Thank you.


      PS: I'd post this to the proportional representation category but there was no new topic button


      Edit: here are some other parameters that appear to violate quota:

      house_size = 72, p1 = 80183, p2 = 34027, p3 = 403586, p4 = 30472
      house_size = 144, p1 = 80183, p2 = 34027, p3 = 803270, p4 = 7888
      house_size = 216, p1 = 35570, p2 = 24675, p3 = 798357, p4 = 30291
      house_size = 288, p1 = 80183, p2 = 34027, p3 = 705602, p4 = 23398
      

      They all appear to share some common characteristics: the largest party has over 80% of the vote; their vote share has a large remainder, and the floor of their vote share is their upper quota. In other words, to construct this scenario, find p such that floor(p) == upper_quota(p) and remainder(p) is one of the largest compared to the other parties.

      posted in Voting Theoretic Criteria
      A
      akazukin5151