Tuesday, March 22, 2016

也談 AlphaGo - 從 gamer 的角度切入

時隔多年,因為上星期在韓國舉行的 Google AlphaGo vs 李世石 的圍棋大戰,人類與電腦的智力對決又再一次成為新聞媒體的焦點。這條新聞,不禁讓我回想起上世紀末 (1996/1997) 的 IBM 深藍 vs Kasparov 的西洋棋大戰,Kasparov 的敗北成為世界級新聞的往事。那時的我還是剛開始探索自己 career 的大學生,也從沒料到 machine learning 這個聽起來很遙遠的概念有一天會變成自己的 career 的一部分(雖然我到現在也從沒學會教電腦下棋)。最讓我覺得有趣的是現在已經從政的 Kasparov 在 Facebook 上的現身說法 "I suppose it is my honor and my burden to forever be mentioned whenever there is a new human vs machine competition!..." 逛了一下他的 Facebook,充滿了各種政治評論,已經完全看不出當年世界棋王的影子,讓人覺得真是滄海桑田,世界從當年那條讓我驚訝的新聞起算已經不知道轉了多少圈了。

再仔細想想,1996年的世界是什麼樣子?我們都還是不到二十歲的年輕大學生,還在為了三電二數傷腦筋;智障型手機基本上都還沒普及,只有商務人士才用得起"大哥大";上網要去計中,或用撥接網路打進系上那幾支超難打的 modem 專線;儲存檔案最常用的是磁片,光碟燒錄機才剛開始慢慢開始流行。

想起了這些差異之後,我真的只能讚嘆,從那時到現在,科技進步了這麼多,而圍棋卻一直是沒有被人工智慧攻破的最後堡壘之一。直到現在。

因為我對機器vs人類的主題一直很有興趣(有興趣到連 Terminator 3/4/5 這種爛片都可以看好幾遍),這場圍棋賽從一開始就完全吸引我的注意。加上我最近幾年開始自學 machine learning,本身又是 board gamer(對普遍不懂圍棋的外國人,西方新聞媒體常常以 "The most ancient board game that has been played thousands of years" 來介紹圍棋),這簡直就是為我而生的新聞啊。可惜的是,我雖然愛玩 board game,但對這人類最早的 board game 圍棋全無認識,無法直接第一手欣賞、消化棋譜;看電視轉播的時候,講評的人講的很 high,我完全是一頭霧水。我只能很可惜地靠廣泛地閱讀各方新聞、評論,來了解這場比賽到底是怎麼回事。

關於圍棋如何複雜, AlphaGo 又是如何建構的,厲害在哪邊,網路上的文章很多了。我自己最喜歡的是這一篇。它在比賽開始之前,就比較深入地說明了 AlphaGo 大致是怎麼運作的。

http://wechat.kanfb.com/archives/202615

在棋賽進行了兩盤,李世石兩戰皆輸,人類看起來已經無望,網路上一片嘩然的時候,我又找到了下面這篇文章。作者以圍棋愛好者的角度,為李世石辯護,說他已經盡了最大努力代表人類迎戰,值得大家多了解一下他心裡的 thought process。雖然看起來全是本文作者憑空想像的,而且很多圍棋的技術名詞我也完全看不懂,但這篇文章文情並茂,兩場棋的評論能寫到這麼多采多姿,也是相當值得一看的。

http://news.sina.com.tw/article/20160311/16357111.html

我尤其喜歡文章裡的這一句引用 「人工智慧就像一列火車,它臨近時你聽到了轟隆隆的聲音,你在不斷期待著它的到來。他終於到了,一閃而過,隨後便遠遠地把你拋在身後。」我覺得沒有比這更精彩、讓人拍案叫絕的比喻了。

不過,真正讓我想要寫寫自己的感想的,則是這一篇網路上的新聞。因為它從一個 "圍棋做為一種遊戲/競技,怎麼樣才叫做美好" 的觀點來討論這場賽事。這個觀點,跟我做為一個 board gamer 對 board game 常有的種種心得或評論頗為相似,提供了我一個可以參加這個討論的切入點

http://www.epochtimes.com/b5/16/3/12/n4660533.htm

《職業的殘酷

首先我想說,對於文章裡一些評論現代圍棋"醜陋"的地方(為了求勝而去下一些不"優雅"的棋),我認為作者低估了人們選擇成為職業棋手(或者其它任何專業)而伴隨相生的不得不的犧牲。

怎麼說呢?我覺得若是下棋只是愛好、興趣,那隨便怎麼下都行,開心就好。這是業餘愛好者才能擁有的幸福。一旦你選擇了某種事情為職業,那你就等於簽下了惡魔的契約,這種做某事只為了開心、增加生活體驗的情形,就永遠不存在了。

比如說玩 board game,因為我不是職業玩家(也不打算當個職業玩家),所以很多時候我玩桌遊,在意的是和朋友一起互動同樂、或尋找某個新遊戲的規則是不是合理,有沒有平衡性的問題、或更甚者只是享受一種桌遊的代入感,在短短幾小時內,幻想自己是辛苦求生的原始人,或是經營國際企業的大亨,或是在古堡裡被怪獸追著到處逃的可憐旅人。在桌遊桌上,有時候我看到的不是分數、效率、或計算,而是故事和情節。這種心態朋友間同樂可以,去打比賽的話多半是敗多勝少;若真要做為一個職業,那簡直就是拿自己的前途開玩笑了。

這是一個高度分工、高度競爭的社會,一旦選擇了某事(特別是競技性本質的事情)做為職業,不管這本來對一般大眾來說是再怎麼有樂趣的事,對做出這些選擇的專業人士,他們所在的就是和一般人完全不同的修羅場。職業圍棋是這樣,職業棒球是這樣,職業電競玩家也是這樣。業餘人士有空間可以選擇以自己不同的態度去"愛好"自己的興趣,他們自己高興就行;而職業人士,則只能以勝負規則定義的標準,來追求極大化自己的勝率。不見得是他們真的喜歡如此,而是一種專業上的要求,如果他們尊重自己的專業,那就不得不選擇任何可能極大化勝率的打法。

《黑貓白貓,能抓到老鼠的,就是好貓》

當然,圍棋的規則簡單明瞭,也是助長了這種現象的根本原因。一人一子,兩方輪流,占地多者為勝,毫無迴避轉折的餘地。在這麼明確的規則之下,能夠多占地的打法,就沒有所謂的美醜分別,只有效率高低之差。若今天對手的棋士不擅長打作者所謂的"混戰",那打混戰就是最佳策略;如果我有獨到的全局感,能夠在布局階段就壓倒對手,那引導布局就是我的最佳策略。在唯一考慮占地為勝負的棋局裡,能多占地的,就是好策略。

當然,如果今天圍棋規則改成除了占地量之外,還要在棋局結束時把黑子和白子排列成的圖案拿給評審團評價美感分數,誰家的 pattern 擺得漂亮就有另外加分,那圍棋就會變成完全不同的遊戲,所謂的"美感"就有它的立足之地。但今天規則只說占地多為勝,只要我不是用拿噴漆把黑子噴成白的這種下三濫違規方法,那招法實在沒有高下之別。

《圍棋的門檻》

對於作者在文章中提到的,圍棋做為一種遊戲,在操作的過程中隱含了為人處事的修養這種境界,我個人是感到非常好奇。我相信它的確存在(比如說,在積極進攻之前要先看好大局 "深謀遠慮",或占優勢的區塊不要死命進攻等等),但是就算現在有人當場演示給我看,我也無法看懂。這在某種層面上凸顯了圍棋的高進入門檻,在棋力沒有到達一定程度之前,我連欣賞別人如何下棋都沒辦法,更何況是一些棋道裡隱藏的深意。就像沒有玩過兩局 board game 的人,可能只看到一些木塊卡片搬來搬去,每個行動背後暗藏的後招,是無論如何也看不出來的了。

正因為圍棋的高度抽象且全無故事性,它做為一個 board game 比起其它任何 game 都還要生硬難以下嚥。對於自己無從一窺這其中堂奧,我雖然覺得可惜,但短期內並沒有真的要用心去學一下圍棋的打算。

所以我倒是覺得圍棋真正的困境在於推廣,特別是在這個故事行銷當道,一年又有幾百款新 board game 上市的圈子裡,圍棋這種經典款的遊戲,怎麼能新瓶裝舊酒賣出去,我覺得是遠比所謂棋路好不好看這種入了門之後才看得懂的問題更為迫切。

回到我個人,若短期內沒打算學圍棋,那當然無從體會 AlphaGo 驚人的實力(如果 Google 有一天開放 AlphaGo 讓大家跟它下棋)。若讓我選擇一款 board game,來和訓練過的 AlphaGo 對戰,那我會選擇哪一款?這其實是個很有趣,值得所有 gamer 思考的問題。因為若是太能夠精算的遊戲(例如 stone age),人是絕無可能算贏電腦;太運氣成分的遊戲,就體會不到AlphaGo 的強大;自己不太擅長的遊戲,也有一樣體會不到 AlphaGo 威力的問題。仔細思考之後,我覺得卡卡頌蠻適合做為我和 AlphaGo 對戰的選擇。希望 Google 早一天開放 AlphaGo 玩 board game 這個服務。