2016年2月29日星期一

點票奇慢的愛爾蘭

愛爾蘭在26日進行了大選,這篇文章主要想寫:以一個已發展國家來說,愛爾蘭的點票速度是異常地慢(照片來自RTE,是當地點票中心的情況)。

撰寫此文章時,投票已結束近兩天,但全國158個議席中,仍只確定了142名當選議員。這主要涉及愛爾蘭近乎全球獨有的選舉制度——比例代表制—單一可轉移選票制度(PR—STV)。

投人不投黨的比例代表制
所謂PR,就是議席按各黨所獲選票的比例分配,但跟香港以至大部份PR不一樣,香港選民是投票給一張名單,但愛爾蘭選民是把各候選人排次序的。

在今屆大選,愛爾蘭把全國分為40個選區,每個選區選出3至5名議員。選民只需把候選人排上次序便可以,最想他當選的寫上「1」、第二想他當選的寫上「2」,如此類推。選民可以只寫上「1」,或只把2、3或4個候選人排次序,不是硬性規定把所有候選人都要排次序。

愛爾蘭選舉複雜、或是麻煩之處,在於點票。首先,愛爾蘭承襲了英國的傳統,投票在深夜10時才結束,這是全球罕有,大部份地區都是黃昏6時至晚上8時結束。由於點票一定十分漫長,因此點票是在翌日早上9時才開始,而非一如大部份地區,投票一結束便立即開始點票。而且,如果翌日整天都未能完成點票,當天點票結束,再在翌日早上9時再開始過,不會通宵點票。

漫長的點票過程
現在來重點——點票過程,看完後,就會明白為何愛爾蘭不會通宵點票。

愛爾蘭是這樣分配議席的:每個選區都會有個「當選門檻」,得票一達該數字便當選,而當選門檻的計算方法為:
整體有效選票/(議席+1)+1
例如:選區有4席,整體有效票為5萬,當選門檻便是:
5萬/(4+1)+1=10001
點票人員進行第一輪點票。如果在第一輪點票便有人達到當選門檻,該人宣佈當選,並會在下一輪點票,把他的「過多得票」,「分給」其他候選人。

以上述「5萬」數字為例,如果候選人得票10801票,他較當選所需選票數目多了800張,因此便要根據相關選票的第二選擇,把他的800張選票分給其他候選人。

理論上,應是把他全部選票的第二選擇點算一次,再按比例乘以800分給其他候選人。但實際上,愛爾蘭只會隨機抽樣800張點算。

如果分了這位候選人的票後,還是沒人達到當選門檻,那麼,便要把得票最低的候選人淘汰,根據該候選人所獲選票的下一級選擇,來把他的票分給其他候選人。

如是者,點票人員便要不斷把上述「重新分配選票」及「淘汰最低得票候選人」過程不斷進行,直至確定該區所獲分配的議員數目都確定了當選人。

「轉讓」左右選舉結果的威力
以首都都柏林的「都柏林中」選區為例,該區有15名候選人角逐3個議席,有效選票為23686,最終要11輪點票才可決定全部3個當選者,第一位當選者要在第6輪點票才能確定當選。有趣的是,最終第3高得票而當選的一名獨立人士,她在第一輪點票(即是選民的第一選擇)只排第7,但由於支持其他被淘汰候選人的選民不少改為投向她,令她最終當選。
去到投票結束後兩天,全國40個選區中,仍有7個還未完成點票。

在整體層面上,愛爾蘭有票站調查,主要調查第一選擇票的意向,這個已可大概反映選舉形勢。例如今屆大選,票站調查已能確定:1、本屆合組政府的統一黨(Fine Gael)和工黨兩黨篤定不能過半,2、統一黨仍是最大黨;以及3、最大反對黨共和黨(Fianna Fail)議席顯著增加。

不過,在微觀層面,最終各黨議員數目仍會跟票站調查有差別,而且個別候選人,誰當選誰下馬,仍要等待最終點票結果,因此各黨到現在仍未能確實表明在下屆國會的組閣意向。

延伸閱讀:
「內戰政治」的終結?(上屆大選時的文章,主要提及愛爾蘭的「右右」政黨制度)

3 則留言:

  1. 可能是我漏下了什么重要规则, 但是我发现这个计票方法, 同样的一堆有效票, 出来的最终结果都可以不同。 让民众可以 rank 自己的喜好其实是个很好很先进的概念。 但是那个计票模型可能需要一些改进。 http://horizongermany.blogspot.com/2016/03/nondeterministic-pr-stv.html

    回覆刪除
    回覆
    1. 如果用電腦計分配餘票的話,就應該要複雜一點了。

      例如:A在第一輪有11001票,多了1000票,然後把那11001票全部點算第二選擇,然後有6成給B,3成給C,一成給D,令D得票累積增長700(第一輪自己有600+第二輪獲分配的100、A得票中有約1100票給了D)。而如果在第三輪點票,是要把D淘汰,他的得票分配應是把那600張給D為第一選擇的票點算第二選擇,例如一半給B,B再獲300票,另一點給C,C再獲300票。而餘下由A繼承的「100票」,便應再把全部1100張全部再點算第三選擇,然後再按比例乘以100,計出不同候選人可獲分配的選票。

      當然,還有一個情況要考慮:在愛爾蘭,選民不是必須把所有候選人都排次序,這代表在之後的點票中,會有些選票因為沒有再作選擇而變廢票,相對下,該輪點票的當選門檻便改變了

      刪除
    2. 这下很清楚了。也就是说,当某一轮中发生选票转移时,具体哪几张选票发生转移无关紧要。 必须知道的是: 1. 本轮中有几张选票可以转移;2. 本轮中的下一选择分布情况 (百分比). 对于下一轮接收方来说, 只须知道接收的选票是来自哪里就可以. 因为在候选人遭淘汰的情况下, 必须到选票来源那里去读取相应的下下一轮选择. 这样就不存在随机抽样的情况, 可以保证点票结果是 deterministic 的. 而每轮点票中, 当选门槛必须重新算。许多选票要重新遍历以计算本轮的 valid 选票。还好, 重算当选门槛的复杂度等级是 worst case O(n), n 为选票数。 的确如果这个算法用手工一遍一遍计数,会很麻烦的。 但是计算机处理就很快。爱尔兰为什么不用这个方法:选民还是要到票站,在纸质选票写下选择, 跟以前一样。 监票人和其他工作人员一起, 人工输入选票,然后让计算机计算。 六秒之内就可以出结果的, 不是六天。 现在这个手工点票方法,选票转移过程中有随机抽样的环节,每次点票,不同的抽样结果可能会导致不同的最终结果。我觉得好玩的是,偏偏不少大的 IT 公司把他们的欧洲总部设在爱尔兰,包括 Google, Microsoft, Amazon, Paypal 等等等等。 就没有公司向政府部门建议提供这样一个点票 service 吗? 基本上这个产品,两个程序师,大约两周就可做出来了(算法引擎一天就够。剩下的时间用来写 UI,数据记录部分,以及测试和修改)。 卖到六位数都不奇怪 (说服政府部门采用这个系统可能要花大量时间精力)。

      刪除