peter
peter

iuygvfhg

談談阿羅悖論與選舉投票

最近來到了matters這個平台。不會被刪評論這一點是極好的。跟一些用戶有了一些交流。回復與評論之間我也打了不少字。於是想整理一下投稿。

阿羅悖論的英文是Arrow's impossibility theorem。想要知道更多細節的可以去這個頁面看看。在這篇文章裡我先複述一下阿羅悖論的表述,然後在舉一個比較生動的例子,為大家呈現一個阿羅悖論的應用。最後順便嘲笑一下universal suffrage沒什麼好爭取的。因為這個平台貌似打不了LaTeX,各位可以參考那個維基頁面將就著看。假設大家都學過一點calculus和algebra(其實也就是熟悉一下數學符號和基本的概念而已),能流利閱讀英文吧。看簡體字有困難的也可以可以參考那個維基頁面將就著看。我不太習慣繁體字的用詞。

不懂數學的可以跳過直接看舉例部分。

記所有結果的集合為A;N是投票人數;記A的任意排序為L(A)。這裡對L(A)稍加解釋。 L(A)是A所有的的全序關係的集合(the set of all full linear orderings of A)。舉例說明如下。設A={a,b,c}。如果L(A)是A的一個全序關係,那麼對於A裡的元素而言,滿足以下條件:

  1. 如果a<=b且a>=b,那麼a=b
  2. 如果a<=b且b<=c,那麼a<=c
  3. 對a和b而言,必有a<=b或b<=a

這題闡述一下<=的意思。與3<=5中的<=不同,這裡的a<=b表示的是比起a,同等喜歡b或更喜歡b。以上三個條件用文字表述來就是:

如果一場選舉有以下三個候選人:a、b和c,記A={a,b,c}。一個投票人P的喜好L(A)滿足以下三個條件:

  1. 如果比起a,P不討厭b;而且比起b,P不討厭a;那麼P對a和b是同等喜歡的。
  2. 如果比起a,P不討厭b;而且比起b,P不討厭c;那麼比起a,P不討厭c。
  3. 對於兩個候選人a和b,P至少比起a,不討厭b或比起b,不討厭a。

通俗來說,P就是在對候選人們進行排序。而這個排序,滿足以上三個條件。以美國大選為例簡單說明,假如說現在有三個人角逐總統寶座,Trump、Clinton和Sanders。如果Jacob喜歡Trump勝過Clinton、喜歡Clinton勝過Sanders,那麼他一定喜歡Trump勝過Sanders。如果Jacob喜歡Clinton勝過Sanders,同時又喜歡Sanders勝過Clinton,那麼他肯定同等喜歡Clinton和Sanders。對於Clinton和Sanders,Jacob一定會有個選擇,他不能對兩位毫無看法,不做區分,沒有排序。

因為我們是在進行排序(ranking),我們就將A的某個全序關係記為R。對於N個投票人來說,每個人都有一個排序R,即R1、R2、...、RN。每一個R都是L(A)的一個元素(recall:L(A)是A所有的的全序關係的集合)。我們將這N個集合的笛卡爾積(Cartesian product)記為L(A)^N。 L(A)^N裡的元素(member, element, etc.)看起來是這樣子的:(R1, R2, ..., RN)。

接下來,我們嘗試定義一個從L(A)^N到L(A)的映射(mapping)F: L(A)^N -> L(A)。也即我們嘗試著定義一個規則,將N個人的偏好總集起來,產生出一個社會偏好。明顯地寫出來就是F(R1, R2, ..., RN)=R,這麼一個映射。其中R1, R2, ..., RN是N個人的偏好,R是社會偏好。以選舉為例,Jacob的偏好是Trump>=Clinton>=Sanders;Regina的偏好是Trump>=Sanders>=Clinton; ...。我們嘗試定義某種規則,產生一個社會偏好,比如Clinton>=Sanders>=Trump。

感謝你竟然有耐心讀到這裡。舞台搭建好後,下面就是對阿羅悖論的表述了。設a、b屬於A;R和R1, R2, ..., RN屬於L(A);(R1, R2, ..., RN)屬於L(A)^N;F(R1, R2, ..., RN)=R。如果A中含有兩個以上的元素,那麼以下三個命題是不相容的:

  1. 如果對於所有的R1, R2, ..., RN,a都比b好(即排名比b高,a>=b),那麼在R中a也比b好。
  2. 不存在這麼一個人j:他的偏好Rj中a>b決定了R中a>b。
  3. 設(R1, R2, ..., RN)屬於L(A)^N,(S1, S2, ..., SN)屬於L(A)^N,F(R1, R2, ..., RN)=R,F(S1, S2, ..., SN)=S。對於所有的Rj和Sj,如果a和b有相同的排序,那麼在R和S裡,a和b也應該有相同的排序。

用文字表述出來就是:

  1. 如果所有的N個決策者都認為選擇a優於b,那麼在投票結果中,a也優於b。
  2. 不存在一個決策者i,使得投票結果總是等同於R的排序。

如果現在一些決策者改了主意(R1, R2, ..., RN) -> (S1, S2, ..., SN),但是在每個決策者的排序中(即所有的Rj和Sj中),a和b的相對位置不變,那麼在投票結果(即R和S)中a和b的相對位置也不變。

Cheers! 到這裡總算是把這個定理說完了。要是你喜歡一些不那麼數學的表述,我在這裡也提一些。比如:

  1. no voting method is fair, every ranked voting method is flawed
  2. the only voting method that isn't flawed is a dictatorship

接下來我舉一個大家出去吃飯的例子,來說明以下阿羅悖論如何體現的。當然例子是非常多的,比如各種選舉啦,大學排名啦。值得注意的是,有一種選舉方法可以攜帶更多的信息(Cardinal voting)。如果是ordinal的,我給張三1分,給李四2分;跟張三1分,給李四222222222分是一樣的。如果是cardinal的,我給張三1分,給李四2分;跟張三1分,給李四222222222分就是完全不一樣的,因為我真的超超超超超級喜歡李四。阿羅悖論雖然沒有涵蓋Cardinal voting的情況,不過這種情況在現代社會還是很少見的。比如英國脫歐公投的時候,你只說要走要留,而不會說我超超超超超超超超超級想脫歐,給脫歐23333333333分。言歸正傳,說一下大家出去吃飯的事情。這個例子是南方科技大學數學系主人夏志宏說的。我在這裡就把他的例子復讀一遍。

有13名同學想出去吃飯。

學校附近有A四川菜、B廣東菜、C日本菜。這裡的ABC就是之前提到的集合A裡的結果。舉一個L(A)的例子,比如B>=C,C>=A,B>=A。為了方便起見我就把這記作B>=C>=A了,默認是transitive的了。意思就是我最喜歡粵菜,其次日料,再次川菜。那麼我這個全序集合R滿足以下條件:

  1. 我有B>=C這個關係,但是我沒有C>=B這個關係,所以我的真愛其實是粵菜。
  2. 我愛粵菜勝過日料,我愛日料勝過川菜,那麼我愛粵菜必然勝過川菜。
  3. 任意給我A四川菜、B廣東菜、C日本菜中的兩個,我肯定能說出我愛哪個。比如給我粵菜和川菜,我選擇粵菜,我不會毫無看法,我要么喜歡粵菜,要么喜歡川菜,要么我全都喜歡(DD發言!)。

接下來同學們嘗試找到一個方法,決定我們到底去吃什麼好。這個方法起碼要滿足以下幾個條件:

  1. 如果所有人都喜歡粵菜,那我們就去吃粵菜了。
  2. 不存在這麼一個人:他想去吃粵菜我們就去吃粵菜,他想去吃日料我們就去吃日料。
  3. 如果有突然川菜館倒閉了,那我們該吃粵菜還是吃粵菜,該吃日料還是吃日料,不會因為川菜館倒閉了我們就不去吃粵菜而去吃日料。

這三個條件很合理吧?但是阿羅說這三個條件實際上是矛盾的,不可能同時成立。這麼一個方法是不存在不存在不存在的!接下來我們看看13個人的吃飯之旅如何產生矛盾。至於如何在數學上證明不存在,我不打算在這篇文章裡說。總之這是有數學基礎的,不是說換了個領導人(主席、特首、總統、首相)就存在了。

先看看大家都想吃什麼

  • 3人:A>B>C
  • 2人:A>C>B
  • 4人:B>C>A
  • 4人:C>B>A

太糟糕了,大家沒有共識,得像個辦法決定去哪家餐館。投票吧,用Majority rule。大家都投票給最喜歡的那個餐館。投票結果如下。

  • A四川菜:5票
  • B廣東菜:4票
  • C日本菜:4票

No!!!!!!!!! 我們有7位同學無法接受川菜。他們決定...... 上街遊行!焚燒垃圾桶,或者咬斷那5位同學的手指。想吃川菜的同學被嚇怕了,於是紛紛決定不吃川菜了。那5名吃川菜的同學就把自己的票投給了粵菜和日料。投票結果如下:

  • B廣東菜:7票
  • C日本菜:6票

好,那我們去吃粵菜吧? No!!!!!!!!! 我們有將近一半的同學都想去吃日料。這時候有人發現,把票投給粵菜的那個同學,如果我們能夠說服他投日本菜的話,那我們就能名正言順地去吃日料了。於是他們找到那個同學,說給你¥100,投日本菜。想吃廣東菜的同學發現想吃日本菜的同學的骯髒勾當,於是他們找到那個同學,說給你¥1000,用金錢堅持自我。發現沒有,這位同學就是我們所說的獨裁者!結果投日本菜的同學比較有錢,於是大家就去吃日料了。這是不是有點像官商勾結。地產商跟政府說,這塊地皮本來是建公屋的,我們劃一塊建公屋的地出來,用來建郵輪碼頭、體育城、購物中心,創造GDP啊、增加稅收啊。於是本來應該拿來建公屋的地上就多了一個郵輪碼頭。

OK,我們換個投票方式看看。我們先把討厭人數最多的去掉。

  • 8人:A四川菜
  • 2人:B廣東菜
  • 3人:C日本菜

What??? 之前大家都愛的川菜竟然第一個就被刷掉了! OK,還是majority rule,我們看看要是粵菜館突然倒閉了會發生什麼。

  • 3人:A>C
  • 2人:A>C
  • 4人:C>A
  • 4人:C>A

What??? 結果是日本菜!難道我們喜歡日料還是川菜,取決於粵菜館今天有沒開門?不對啊,我喜歡日料還是川菜,跟今天粵菜館有什麼關係呢?

所以你會發現,採用majority rule的投票是有問題的!好,我們想一個真正的好辦法。

A THOUSAND YEARS LATTER... 得了,飯不用吃了,喝開水得了。我寧可喝民主的白開水也不吃一口你獨裁的飯!真香!這清甜的白開水。

我們有一個簡單!粗暴!完美!毫無內在矛盾的方法!獨裁!

Arrow先生決定跟同學們一起吃飯。老師的意願是B>C>A(廣東菜、日本菜、四川菜)。同學們尊重Arrow先生(其實有些同學還是想吃辣的,想吃火鍋),但既然老師喜歡粵菜,那沒什麼好說的了,直奔粵菜館。白斬雞挺好吃。

言歸正傳,既然投票如此不靠譜,為什麼我們還樂此不疲?有時候那也是沒辦法,我們總得有個領導人吧?每件事都投個票,現在的科技做得到嗎?就算做得到,大家都有空去了解你投的這一票意味著什麼嗎?拿英國脫歐公投來說,After Brexit Vote, Britain Asks Google: 'What Is The EU?'。在看看美國大選,說好了一人一票、人人平等,選出來的Trump卻不是支持者人數最多的。

再比如,台灣地區2000年第一次領導人的選舉,當時有三個候選人:陳水扁、宋楚瑜和連戰。得票情況如下:

  • 陳水扁:39.3%
  • 宋楚瑜:36.8%
  • 連戰:23.1%

其實如果兩兩對決,宋楚瑜和連戰都能穩贏陳水扁。但因為台灣地區直接用了美國的選舉制度,結果最不該當選的陳水扁獲勝。我們知道美國大選方法很糟,您可能會問不如換成法國的。開始可能會好點,其實過了一段時間還是會變糟糕,人們會想辦法利用體制的...

那麼Cardinal voting的情況呢?比如我給連戰100分、宋楚瑜70分、陳水扁50分。然後我再算算各個候選人得到的總分。這也有個問題,就是存在故意壓低對手得分的情況。比如給我不喜歡的全都打0分,即使我沒有真的那麼討厭他。還有就是這種投票方式比較少見。還有一個問題就是大家真的知道該給候選人打幾分嗎?用打分的方式呈現出的喜好是存在偏差的。比如我知道我愛粵菜勝過川菜,可我真的知道我愛粵菜勝過川菜多少倍多少分嗎?

總之並不存在完美的投票方式。如果大家都有很大程度上的共識,那majority rule之類常用的投票方式還是有一定可信度的。但是當社會意見分歧很大的時候,這種方法就很糟糕了。比如英國公投的時候,England和Wales要脫歐, Northern Ireland和Scotland要留歐。比如美國大選的時候有很多人要Trump,有很多人要Clinton。這兩場社會選擇的結局,今天大家也都看到是個什麼結果。英國拖到現在都還沒脫歐。

什麼?想要universal suffrage? TRUE FREE FAIR ELECTION?香港想當

最尊貴的威尼斯共和國🐴

Most Serene Republic of Venice (English)

Serenissima Repubblica di Venezia (Italian)

Serenìsima Repùblica Vèneta (Venetian)

寫這篇文章的時候我參考了很多維基百科的頁面和各種新聞報導還有其他的一些文章。這不是我的原創文章。我還只是一名在讀的本科生。希望各位能跟寬容上街的學生一樣給予我一點點點點耐心。歡迎指出這篇文章的各種錯誤。希望沒有劈頭蓋臉一頓臭罵。

CC BY-NC-ND 2.0 版權聲明

喜歡我的文章嗎?
別忘了給點支持與讚賞,讓我知道創作的路上有你陪伴。

載入中…

發布評論