[新聞] 星海爭霸 AI 大賽冠軍出爐!沒用機器學
星海爭霸 AI 大賽冠軍出爐!沒用機器學習的三星,打爆臉書在內的二十幾個 AI 選手
---
【為什麼我們要選這篇文章】今年的星際 AI 大賽結果出爐,冠軍 選手居然沒有「學習技能」還是第一次參賽!這個由三星出品的人工智能令所有團隊驚豔,而其他參賽者還有 Facebook 的 AI 團隊,以及中國知名影音平台 Bilibili 等多家科技公司參與,至於他們戰況如何,就來看看以下文章吧!(責任編輯:鄭惟馨)
本文經 AI 新媒體量子位(公眾號 ID:QbitAI)授權轉載,轉載請聯繫出處
作者:量子位/夏乙 問耕
剛剛,星海爭霸 AI 大賽新王誕生!
二十多個掌握了機器學習技能的 AI,全都在一個不會學習、只會基於規則機械行動的 bot 面前,俯首稱臣。包括三巨頭之一 Yann LeCun 底下的 Facebook AI 團隊。他們的 AI 獲得亞軍,但在與新王的 100 回合大戰中,戰績是 83 負 17 勝,劣勢明顯。
其他 AI 更不是對手。新霸主與全部對手的 2600 場廝殺中,勝率達到了 95.91%。而往屆比賽中,冠軍勝率最高的一次,也不過 89%。
到底是誰?哪個團隊的人工規則,能如此碾壓人工智慧?
答案是: 賽達(SAIDA)。
三星出品的 AI 沒有學習能力,勇奪冠軍靠得是人類經驗!
來自三星,首次參賽的 賽達 ,完全基於規則,在這個機器學習大爆炸的時代,一個如此「復古」的系統,俾睨一眾 AI。賽達之所以如此厲害,一個重要原因是,背後有韓國職業星際選手助力。要知道,星際一度被稱為韓國的國技。
這次星海爭霸 AI 大賽的組織者戴夫.邱吉爾(Dave Churchill)總結說,今年的比賽成了兩家巨頭之間的爭奪。第一名三星賽達,代表頂級人類玩家的經驗總結;第二名 Facebook 的 CherryPi,有頂級工程師坐鎮,3 位頂尖 bot 作者都在麾下。(TO 編按:bot 為軟體代理的口語)
目前,三星職業選手組更勝一籌,但這還不是賽達的全部成就。在另一個星海賽事——星際 AI 錦標賽(SSCAIT)上,它的 ELO 等級分也排在第一名。(TO 編按:ELO 等級分制度是基於統計學的一種評估棋手水準的方法。一些線上遊戲的競技對戰系統也採用此評分)
總體來看,它已經是地表最強星際 AI 了。讓我們來認識一下這匹黑馬。
基於規則的演算法+選手經驗,成就賽達的冠軍之路
這次大賽還是基於星海爭霸:母巢之戰(Starcraft Broodwar)。
賽達使用人族(Terran),以穩定的防守優先戰略開局,到中期過後,它會尋找最佳 rush 時機,一波強攻擊敗對手拿下比賽。
和現在主流方法不一樣的是,賽達沒有用機器學習方法。
三星的工程師們嘗試了用卷積神經網路(Convolutional Neural Network, CNN)和編碼器—解碼器從游戲視頻中學習戰鬥時機,也嘗試了用多智能體強化學習演算法來控制單位……然後決定,在參賽演算法裡不用這些東西了。
這些研究當然也沒有白費,他們把研究結果寫進論文,投稿到了 AAAI 2019。哪位朋友見到這篇論文的預印本,歡迎通知我們,和更多讀者分享。
我們說回參賽版本的賽達,它都是手工編寫基於規則的演算法,一共 49702 行。不過,這並不是說它的打法就是一成不變的。它所用的策略不是一開始就預設好的,而是會根據偵查和掃描收集的訊息來建構。除了選擇策略的程式,賽達還包含用來控制單位和建築物的有限狀態機,用來尋找建基地位置或者敵人基地的幾種搜索演算法。
那麼,人類工程師是如何給這個演算法制定規則的呢?
背後有韓國職業星際選手的幫助。戴夫說,把大賽官方提供的樣本程式 UAlbertaBot 和專業軟體開發者、韓國職業星際選手放到一起,就有了賽達。
賽達目前只能應付業餘玩家,距擊敗頂尖職業選手還要一兩年
賽達的源頭,可以追溯到 2017 年三星 SDS 舉辦的演算法大賽。
當時的主題剛好是星際。比賽中成績不錯的工程師們惺惺相惜,向公司提出要聯手打造一個超級厲害的星海 AI。
於是,2018 年 1 月,賽達誕生了。現在,這個誕生還不到一年的新秀不僅是兩大星際 AI 賽事的第一名,還已經和人類業餘玩家、職業選手都交過手。人類業餘玩家已經不是它的對手。
雖然賽達目前,暫時,還打不過職業選手,但開發團隊認為「已經不遠了」,內心充滿了希望。他們說,現在的星海 AI 已經達到了高端業餘玩家的水平,戰網天梯 1800 分左右的那種。再有一兩年,就能擊敗戰網 3000 多分的最強 7 位職業選手之一。
籌辦者戴夫對這個展望似乎半信半疑,他說,“I’ll believe that when I see it :)”,「眼見為實」吧。
他們的目標是:成為第一個擊敗人類星海職業選手的 AI。
賽達團隊
上面,就是賽達的 8 名創造者:Iljoo Yoon、Daehun Jun、Junseung Lee、Hyunjin Choi、Changhyeon Bae、Hyunjae Lee、Yonghyun Jeong、Uk Jo。其中,Changhyeon Bae 是這支隊伍的 leader。
Facebook 團隊 CherryPi 進步明顯,影片平台 bilibili 也有參賽
下面,說說今年的其他選手。先看看最終的排名。
今年的星際 AI 大賽成績單
第二名是 CherryPi。如果你關注過這項賽事,一定不會對這個名字陌生。櫻桃派這個選手,家世顯赫,出自著名的 Facebook AI Research 團隊,領軍人物是大名鼎鼎的 Yann LeCun。戰隊成員包括:Jonas Gehring, Vegard Mella, Daniel Gant, Zeming Lin, Da Ju, Danielle Rothermel, Nicolas Carion, Nicolas Usunier, Gabriel Synnaeve
去年,CherryPi 參賽獲得第六名。今年,經過一番車輪鏖戰,CherryPi 最終奪得亞軍,僅次於三星 SAIDA 戰隊。要知道去年的冠軍 ZZZKBot,今年只獲得第 10 名的成績。
CherryPi 會有 8-13 個候選策略。每場比賽開始時,它會根據與對手之間的歷史表現,基於具有時間衰減權重的強盜模型,選擇一個策略(通俗的說,也就是越是最近的比賽,權重越高)。隨著比賽進行,CherryPi 會根據當前情況,使用預訓練的模型,使用每種策略估計獲勝的可能性,滿足一些條件的情況下,會切換到勝率最高的策略。
所以,這也是一種來回切換的「混合」策略。
策略選擇上有幾個基本的要素。一是多樣性,能夠考慮到盡可能多的情況。二是穩健性,以及追求 100% 的勝率。三是更好的揚長避短。
CherryPi 使用了非常多的 AI 技術,包括:
基於搜索的 AI。CherryPi 使用了區域級尋路來指揮單位繞過地圖上的障礙,使用威脅感知尋路來風箏或者引導單位脫離戰鬥。CherryPi 也會基於人類數據學習建築擺放的位置,還用了離線強化學習,以及在線學習,也使用了 BWEM 進行自定義的地圖分析。
與去年相比,現在的 CherryPi 使用了 LSTM 模型進行高級策略的選擇,使用部分觀察的游戲狀態作為輸入;在巨集觀管理方面進行了優化,微觀管理也進行了改進。
CherryPi 使用了 Torch 框架,全部的代碼是大約 5 萬行的 C++。
第三名到第八名的共同特點:全是神族!
第三名 CSE。這是一個中國戰隊。成員包括:Junge Zhang、Wei Guo、Qiyue Yin、Dong Zhan、Qiwei Wang、Yihui Hu、Shengqi Shen、Kaiqi Huang。
其中第一位應該是中科院自動化所的張俊格,去年他也帶領團隊參加了星際 AI 大賽,只不過去年他們的 AI 是 CPAC,今年改了名字。這支戰隊算是「改裝」派打法,他們的 AI 去年基於 Steamhammer bot,而今年則基於 Locutus。他們在 Locutus 的基礎上,做了一些策略和微觀層面的優化。
第四名 BlueBlueSky,也基於 Locutus,作者是科羅拉多大學的博士生 Pengfei Hou。
第五名是正牌的 Locutus。在八月的 CIG 星際 AI 大賽上,丹麥獨立游戲 AI 開發者編寫的 Locutus 一舉奪魁。(當時 ZZZKBot 也參賽了,最終排名第七。)
可能正是由於 Locutus 的成功,今年 3-8 名的戰隊,全都是使用神族的 AI。全部戰隊中,有 11 支使用了神族,蟲族的熱度有所下降。
其實 Locutus 是基於 Steamhammer 改進的,不同之處在於,Steamhammer 玩蟲族,而 Locutus 玩神族。
Steamhammer 本尊這次排名第十一。
除了 CSE 和 BlueBlueSky,這屆 AIIDE 星際 AI 大賽還有其他的中國團隊參賽。
排名第六的 ISAMind,作者 Fang Gao,來自中國電子科技集團公司認知與智能實驗室。
排名第七的 DaQin,作者 Lion Gis,看 GitHub 的畫風應該也是來自中國:
https://github.com/liongis。
而排名第 13 位的 LastOrder,來自 B 站(Bilibili AI Research)。LastOrder 使用了 TensorFlow 機器學習框架。
B 站這個 bot,據說用了 1000 台機器進行分佈訓練,也被對手認為很有潛力。
從勝率中發現的小細節:賽達輕微下降、CherryPi 卻緩緩上升
雖然「不會學習」的賽達擊敗了各路 AI,但有個細節很有意思。
我們注意到,如上圖所示,隨著比賽時間的推移,三星賽達的勝率雖然一直很高,但總體上在輕微但持續的下降。與此同時,獲得第二名的 CherryPi 的勝率,在輕微而持續的上升。
儘管星海很難,但對於 AI 來說,也許未來有一天也能跟圍棋一樣,不用依靠人類的知識,自己成長為一代高手。
最後,給幾個開源地址。
賽達的源代碼目前還沒有放出,不過,GitHub 頁面已經有了,誰知道官方什麼時候會補一些除了 readme 之外的東西呢:
https://github.com/TeamSAIDA/SAIDA
CherryPi 的 GitHub 頁面傳送門:
https://github.com/TorchCraft/TorchCraft
Locutus 的 GitHub 頁面傳送門:
https://github.com/bmnielsen/Locutus/
(本文經原作者 量子位 授權轉載,並同意 TechOrange 編寫導讀與修訂標題,原文標題為 〈2018 星際 AI 大賽冠軍誕生!一個個機器學習演算法,都輸給不會學習的韓國 bot〉。)
原文連結: https://buzzorange.com/techorange/2018/11/21/aiide-starcraft-ai-competition/?fbclid=IwAR2PzhsYSCY6nRz4YXHjWnAFHz3Q7yol6VV2Ua7Ji67GYKTjeAuJnJ70z3M
---
心得:
他們的 AI 獲得亞軍,但在與新王的 100 回合大戰中,戰績是 83 負 17 勝,劣勢明顯。
內建Flash經驗的AI? AI領域連韓T也要主宰世界了嗎
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 49.215.246.127
※ 文章網址: https://www.ptt.cc/bbs/StarCraft/M.1542861297.A.110.html
推
11/22 13:06,
7年前
, 1F
11/22 13:06, 1F
推
11/22 13:12,
7年前
, 2F
11/22 13:12, 2F
推
11/22 13:51,
7年前
, 3F
11/22 13:51, 3F
→
11/22 14:01,
7年前
, 4F
11/22 14:01, 4F
推
11/22 14:22,
7年前
, 5F
11/22 14:22, 5F
推
11/22 14:42,
7年前
, 6F
11/22 14:42, 6F
推
11/22 14:44,
7年前
, 7F
11/22 14:44, 7F
推
11/22 15:06,
7年前
, 8F
11/22 15:06, 8F
推
11/22 16:20,
7年前
, 9F
11/22 16:20, 9F
→
11/22 16:29,
7年前
, 10F
11/22 16:29, 10F
→
11/22 16:30,
7年前
, 11F
11/22 16:30, 11F
→
11/22 16:30,
7年前
, 12F
11/22 16:30, 12F
→
11/22 16:33,
7年前
, 13F
11/22 16:33, 13F
推
11/22 16:40,
7年前
, 14F
11/22 16:40, 14F
→
11/22 16:40,
7年前
, 15F
11/22 16:40, 15F
→
11/22 16:41,
7年前
, 16F
11/22 16:41, 16F
→
11/22 16:54,
7年前
, 17F
11/22 16:54, 17F
推
11/22 16:56,
7年前
, 18F
11/22 16:56, 18F
→
11/22 17:01,
7年前
, 19F
11/22 17:01, 19F
→
11/22 18:07,
7年前
, 20F
11/22 18:07, 20F
推
11/22 19:47,
7年前
, 21F
11/22 19:47, 21F
→
11/22 20:57,
7年前
, 22F
11/22 20:57, 22F
推
11/22 21:00,
7年前
, 23F
11/22 21:00, 23F
推
11/22 22:53,
7年前
, 24F
11/22 22:53, 24F
→
11/22 22:53,
7年前
, 25F
11/22 22:53, 25F
→
11/22 22:55,
7年前
, 26F
11/22 22:55, 26F
推
11/22 23:39,
7年前
, 27F
11/22 23:39, 27F
→
11/22 23:39,
7年前
, 28F
11/22 23:39, 28F
→
11/22 23:57,
7年前
, 29F
11/22 23:57, 29F
推
11/23 00:49,
7年前
, 30F
11/23 00:49, 30F
→
11/23 06:40,
7年前
, 31F
11/23 06:40, 31F
推
11/23 07:27,
7年前
, 32F
11/23 07:27, 32F
推
11/23 10:27,
7年前
, 33F
11/23 10:27, 33F
→
11/23 12:52,
7年前
, 34F
11/23 12:52, 34F
→
11/23 17:14,
7年前
, 35F
11/23 17:14, 35F
推
11/23 17:54,
7年前
, 36F
11/23 17:54, 36F
推
11/23 19:32,
7年前
, 37F
11/23 19:32, 37F
→
11/23 19:33,
7年前
, 38F
11/23 19:33, 38F
推
11/23 20:41,
7年前
, 39F
11/23 20:41, 39F
推
11/23 21:39,
7年前
, 40F
11/23 21:39, 40F
→
11/23 21:42,
7年前
, 41F
11/23 21:42, 41F
→
11/23 21:43,
7年前
, 42F
11/23 21:43, 42F
→
11/23 21:43,
7年前
, 43F
11/23 21:43, 43F
推
11/24 09:47,
7年前
, 44F
11/24 09:47, 44F
→
11/24 09:47,
7年前
, 45F
11/24 09:47, 45F
→
11/24 09:47,
7年前
, 46F
11/24 09:47, 46F
StarCraft 近期熱門文章
PTT遊戲區 即時熱門文章