訂閱/取消電子報│聯絡我們

圍棋程式不只是遊戲,它是AI的果蠅!─ 資工系吳毅成教授專訪


2017年8月16日,一款名叫「CGI」的圍棋AI,在中國的世界AI圍棋大賽中連續擊敗暫居當時世界第二、中國騰訊開發的「絕藝」,和日本老牌的「DeepZenGo」,以全勝戰績大爆冷門晉級決賽,最終奪下亞軍。賽後,全世界的圍棋界都好奇這匹名叫「CGI」的黑馬究竟來自何方?不若震驚世界的Google AlphaGo或名聲響亮的騰訊絕藝背後均有強大軟體公司的支持,CGI的搖籃竟然只是一間位於交通大學工程三館內外貌平凡無奇的實驗室。

走過貼滿奧林匹亞電腦遊戲程式競賽、臺灣電腦對局學會、日本UEC盃等大大小小獎項的走廊,CGI實驗室的靈魂人物─資工系吳毅成教授打開門邀請我們入內,一旁的白板上,眾多黑白子貼出正在研究的棋譜,吳教授的小會議桌上還擺著棋盤。從小就著迷棋類遊戲的吳教授,向我們娓娓道來這段從一個人寫出六子棋程式,一直到2015年底實驗室買下第一顆CGI的GPU(圖形處理器,又稱顯示核心),在短短二年內站上世界舞臺的歷程。

 

「實現目標要『眼高手低』」

吳教授從小就對下棋和電腦遊戲有莫大的興趣,1982年,世界上第一款個人電腦Kenbak-1才剛誕生十年,就讀臺大電機系大四的吳教授就獨立寫出了五子棋程式。2003年更改良五子棋規則,發明「六子棋」,使黑白子獲勝的獲勝機率更加公平,並且因為公平性大增,棋盤能無限制放大,複雜度遠遠超過五子棋,甚至和圍棋不相上下。2006年六子棋納入奧林匹亞電腦遊戲程式競賽正式項目,吳教授帶領碩士班的學生寫出「NCTU6」程式奪得冠軍。

然而對吳教授而言,六子棋程式僅僅是為了測試機器極限與累積實力的起步,他真正的目標一直都是圍棋,他解釋:「因為圍棋就是AI的果蠅,所謂果蠅就是你如果要研究人的基因,那太複雜了,可以先從簡單一點的果蠅開始。」而為何特別選擇圍棋而非其他遊戲呢?吳教授說明,AI剛出來的時候西方一直把西洋棋當作AI的果蠅,但其實是錯誤的,因為西洋棋不夠複雜,只要用演算法就能解決,圍棋才真的深不可測,必定要以AI的思維才能解出。

雖然吳教授的目標遠大,作法卻一向十分踏實,「我常常告訴學生要眼高手低,」吳教授說。「就像我想寫圍棋程式,卻是從簡單的遊戲開始,如果一開始就做圍棋會死得很慘,不但很挫折,而且很多問題都看不到。」三年多前一位棋力不錯且擅長coding的同學在吳教授的鼓勵下,於2015年進入實驗室,可說是技術、人力一切到齊。因此,第一代CGI一上線立刻達到業餘二段的實力,先於臺灣電腦對局學會比賽上稱霸全國,接著在國際電腦對局協會的比賽也拿到前三名的好成績。年底實驗室買入第一顆CGI的GPU後,隔年CGI 2.0版的深度學習技術大幅成長,直接挑戰職業棋士林杰漢二段,在沒有讓子的情況下獲得一勝一負的成績,說明實力已經和職業棋士不相上下。

後續吳教授帶領團隊在各種細節上持續著墨,開發出的CGI 3.0,2017的六月中旬與美女棋士黑嘉嘉在福州舉行的「人工智能與物聯網大會人機配對賽」,兩連勝奪得冠軍;隔月連續贏過圍棋四冠王王元均和紅面棋王周俊勳。交大CGI團隊藉由不斷和高手對弈改進程式弱點,終於在八月中國世界AI圍棋大賽大放異彩。

 

用二、三十顆GPU力克絕藝上千大軍

鄂爾多斯中國圍棋大會比賽。

從2005年設計第一款六子棋程式開始的AI實力一次爆發,擊敗當今的霸主騰訊絕藝和DeepZenGo,震撼全世界,更令人感到不可思議的是,Google的AlphaGo論文裡頭提到光是測試至少就需要三百顆GPU,正式訓練估計更是達到數千顆甚至上萬顆,才有足夠的計算支援。對絕藝和DeepZenGo而言這樣的規模不是問題,但只是一個大學實驗室規模的CGI呢?

「這次打敗絕藝我也很意外,因為它才剛剛在日本的UEC比賽輾壓所有隊伍,賽後所有人都在問我CGI有什麼秘訣,但其實我們就是一步一腳印踏實地做出來。」吳教授謙虛地說。他也舉了一個數據讓我們參考:「我們國網中心的主要超級電腦要建構下一代beta系統的時候,裡頭含的GPU數量是1600顆,而且是2018才要蓋。」而交大CGI從一顆GPU起家,途中千辛萬苦四處尋找資源,正式比賽打敗絕藝時也僅有二、三十顆,難怪跌破所有人眼鏡。

吳教授透露背後的關鍵秘訣在於2017年時,分散式計算法大功告成因而誕生CGI 3.0,用少少的GPU即達到強大的運算效果。另外,幾乎所有圍棋AI都是訓練後手貼七目半的下法,只管勝率多寡,不管結果究竟贏了幾目;但CGI不只訓練七目半,連五目半、四目半等不同狀況也試著教導AI解決,並計算每一種情況的勝率。乍看之下對比賽時的勝率提升沒有幫助,但因此提升了計算的精準度,讓系統能精確到去思考每場比賽中能夠贏幾目,實驗室也將這項技術發表成論文,讓世人看見交大的突破世界尖端技術的AI實力。

然而資源不對等畢竟對研發團隊是個巨大壓力,問起吳教授看到AlphaGo打敗李世乭、柯潔等世界棋手時,會不會擔憂自己的研究永遠追不上企業級投入大把金錢研發的腳步?吳教授的想法卻相當樂觀:「想想我們也才花一年時間,沒什麼好吃虧的,而且就教育的角度來看,藉這個機會訓練學生學到最新東西是很棒的事情。」而且以研究的心態出發,別人越是發表先進的成果,自己就越有改進的參考,「AlphaGo的出現對我們絕對是助力不是阻力。」吳教授說。

不過吳教授也承認,面對像絕藝這種因為公司本身就在經營遊戲事業,勢必會持續研究下去的AI,仍感到不小的壓力,下次捲土重來奪取冠軍的機率相當高,CGI想維持寶座勢必得開發出新的秘密武器,使棋力再一次大幅躍升。

 

想投身AI,最根本的基礎是數學

吳教授展示CGI予科技部陳良基部長與陳建仁副總統。

當然,全世界會如此瘋狂投入圍棋AI,乃至於其他複雜遊戲的AI,正是因為「玩遊戲」可以反應人類的思維,AI能從中學習人看到棋盤上的格線時如何進行圖形辨識?如何理解不同遊戲的規則?如何預測棋盤上的變化?有助於人們理解神經網路的運作,應用到各式各樣的領域中。

吳教授表示,目前實驗室除了開發棋類遊戲的AI,也有三分之一的人力都投入在人工智慧的其他應用領域上,例如機器人。從2016年初開始與工研院合作,將AI結合到機器人身上,訓練AI的方式並不一定要直接將程式導入機器人或機械手臂中,而是可以先將之遊戲化,讓程式進到模擬器中練習,減少硬體的耗損,省下大把時間和金錢。這一系列的過程其實就可以看出遊戲是AI的縮影,再一次說明遊戲的重要性,雖然表面上看起來下圍棋和機器人是不同的兩件事,但最後卻有殊途同歸味道。

面對AI時代的到來,吳教授認為臺灣有幾項現有優勢,如果能好好與AI結合就有機會創造新一波的高峰。第一就是製造業,臺灣製造業生態鏈相當完整,幾十年來都是支撐臺灣經濟的樑柱,但缺工和毛利率漸漸降低也是不爭的事實,政府和業界一片高呼工業4.0轉型的聲浪中,不管是以AI補充人力,或是取代傳統機器人,如何將AI導入工廠將是重要的課題。

再來則是醫療和金融,科技部11月定案,由交大、臺大、清大、成大進行的「AI創新研究中心」計畫中,就包含生技醫療和智慧服務專案,交大負責智慧服務部分。吳教授認為「醫療」是永遠不會消失的題材,而金融和醫療一樣,一旦做成利潤相當可觀,也許不如在臺灣製造業有那麼明顯的強大優勢,但可以以製造業為根基,試著將觸角延伸到這兩部分。

最後,對於想進入AI大門的年輕一輩,吳教授也給予了最實際的建議:「數學一定要學好。」AI屬於資訊工程領域,一眼看上去很容易只著重在軟體和邏輯能力,忽略最根本的數學。但吳教授說到,其實想透徹了解深度學習、演算法的理論,數學不可或缺,像是一打開圍棋AI的論文,就會發現裡頭用到的依然是最經典的線性代數、機率統計、微積分,尤其是電腦遊戲的研發。了解原理才能知道AI的變化,嗅得出那些方向是未來發展的機會,將成為百分之百搶手的人才。

雖然遊戲AI的世界總有勝負,起起伏伏,吳教授不忘提醒大家做AI最核心的價值:「我們研究AI,不完全是一定要贏過人家的程式,而是從中學習到了解到人如何思維,看到一樣東西的時候是怎麼學習,然後讓AI怎麼學習到人類思考的方式?這才是研究目的。

海峰棋院協助交大提升圍棋AI實力。
吳教授參加大兒子的畢業典禮。

 

 

 

 

 

 

 

 

 

吳毅成教授小檔案

 

延伸閱讀:

如何在AI時代中找出產業與自我的定位─ AI專家、資策會副執行長余孝先學長專訪

打GAME也能成為一堂課 交大電子遊戲上課囉!交大傳科系─林日璇教授專訪

創業是要做中學,自信來自經驗累積─ 群聯電子董事長潘健成學長專訪

電機50專訪─蔡豐賜學長