影/超人類水準!DeepMind 《星海爭霸2 》AI 「AlphaStar」致勝關鍵揭密!

影/超人類水準!DeepMind 《星海爭霸2 》AI 「AlphaStar」致勝關鍵揭密!

【原文:《多圖詳解 DeepMind 的超人類水準星際爭霸 AI 「AlphaStar」》,作者:楊曉凡,智慧機器人網編輯整理】

文、圖/雷鋒網

雷鋒網 AI 科技評論按:英國當地時間 1 月 24 日(台北時間凌晨),DeepMind 在倫敦組織線上直播,向全世界的遊戲 AI 研究人員以及遊戲愛好者們介紹自己的 AI 研發最新進展。

▲DeepMind 在倫敦組織線上直播,向全世界的遊戲 AI 研究人員以及遊戲愛好者們介紹自己的 AI 研發最新進展。(影片/取自YouTube,若遭移除請見諒)

參加直播的 DeepMind 研究人員是 DeepMind 團隊聯合研發負責人 Oriol Vinyals 和 David Silver,後者也是 AlphaGo 專案的核心開發人員,我們都比較熟悉了。

左 Oriol Vinyals ,右 David Silver

DeepMind 的星海爭霸 2  AI 名為「AlphaStar」,這個命名方式正如之前的圍棋 AI「AlphaGo」以及蛋白質折疊計算 AI「AlphaFold」。

據 DeepMind 介紹,AlphaStar 使用神族(Protoss),在 2018 年 12 月 10 日以 5戰績打敗了 Team Liquid 的職業星海 2 選手 TLO,然後經過更多訓練後,在 12 月 19 日再次以 5的完勝戰績打敗了來自同一個戰隊的職業選手 MaNa 。直播現場中重播、解說了其中數場比賽的 replay。

AlphaStar 在比賽中展現出了職業選手般成熟的比賽策略,以及超越職業選手水準的微操,甚至可以同時在地圖上多個地點同時展開戰鬥(人類選手在這種狀況下就會吃不少虧)。

職業選手式的建築佈局,並快速派出偵查兵探索地圖以及對方基地

AlphaStar 會建造大量工人,快速建立資源優勢(超過人類職業選手的 16 個或 18 個的上限)

AlphaStar 的追獵者從三面圍攻人類選手 MaNa 的不朽者

AlphaStar 控制的兩個追獵者黑血極限逃生

在直播中 DeepMind 還再次讓 AlphaStar 與 MaNa 現場比賽。這次比賽中的 AlphaStar 是一個重新訓練的新版本,它需要自己控制視角(而不像前面的版本可以直接讀取地圖上所有的可見內容)。這次 MaNa 終於取得了勝利。

AlphaStar 的詳細介紹請見下文。

星海爭霸 AI 背景

自以圍棋為代表的完全資訊博弈/遊戲被 AlphaGo 攻克、取得超出人類頂尖棋手的水準之後,研究人員們立刻向非完全資訊博弈發起更加猛烈的進攻。典型的非完全資訊博弈比如德州撲克,玩家需要在看不到對手的牌面的狀況下做出決策,CMU 的德撲 AI 論文也拿到了 NIPS 2017 的最佳論文獎。

而另一方面,深度學習的研究人員們也希望借助深度強化學習的力量探索更複雜的博弈/遊戲。德州撲克顯然不夠難,德撲 AI 之父表示其中沒有用到任何深度學習;再看圍棋,雖然圍棋中可能出現的局面的總數目是一個天文數字,但具體到每一回合中,比賽的雙方只需要選擇在棋盤的某一處落一顆棋子即可。相比之下,現代的競技類電子遊戲的行動空間就複雜得多,比賽可以有 2 個以上的玩家參與、每個玩家可以同步做出行動、每個行動可以有不同的時間長短、位移和移動都是空間連續的、攻擊防禦技能物品等還有很多的變化。

隨著當年的狂熱玩家們如今成為電腦科學領域的研究人員,電子競技遊戲 AI 研發也快速分出了兩大主要陣營:星海爭霸/星海爭霸2,以及 DOTA2。兩者都有廣泛的群眾基礎,玩家們對遊戲 AI 喜聞樂見,也有許多高水準的職業選手可供 AI 切磋學習。

雖然都是 RTS (即時戰略)遊戲,雖然都需要在收集資源和打架之間找到平衡,但星海和 DOTA2 也有不少區別。星海中需要控制多種不同類型的單位,這些單位有各自的運動和攻擊特點,而 DOTA2 中可以從頭到尾只控制同一個英雄;星海中每一方只有一位玩家,而 DOTA2 中每一方有五位玩家。由此帶來的遊戲策略和執行上的區別也讓星海 AI 研究和 DOTA2 AI 研究走出了不同的發展路線。

截至本次比賽前,星海 AI 研究領域和 DOTA2 AI 研究領域已經見識過的最強 AI 分別來自三星和 OpenAI

  • 2018 年 AIIDE 星海爭霸 AI 挑戰賽共有來自全世界的 27 支團隊帶著自己的 AI 參賽,獲得冠軍的人族 bot 「SAIDA」來自三星。這個 bot 的核心特點是有一個穩定的遊戲策略,它會首先考慮防守,然後在遊戲中期伺機一波帶走對方。這種策略是從韓國的職業星海選手們身上學到的。這個 bot 去年時還不能擊敗職業選手。
  • 星海爭霸 AI 普遍大量使用固定策略和手工規則,三星的 bot 應用了一些機器學習技術來説明控制單位、探索地圖,開發團隊也在嘗試更多地應用機器學習技術。參加了同一個比賽的 Facebook 的蟲族 bot「CherryPi」大量應用了機器學習技術,但只獲得第二名。(更多資訊可以閱讀雷鋒網 AI 科技評論 報導 )
  • 2018 年 8 月,OpenAI 組織線下比賽測試自己的 DOTA2 AI 系統「OpenAI Five」,前一次在有較多比賽限制的情況下對陣歐美前職業選手組成的團隊取得了勝利,然後在稍後的 DOTA2 國際邀請賽 Ti8 中對陣中國(前)職業選手組成的團隊時失敗。這之後 OpenAI 在持續不斷地進行改進,並聲稱後來的某個版本已經大幅超越此前線下比賽中的版本。
  • 「OpenAI Five」是一套精心設計的深度強化學習系統,由 5 個獨立的神經網路分別控制 5 個英雄。研究人員們使用了許多技巧引導智慧體學習 DOTA2 中的各種行為,也設計了超參數説明網路學習團隊協作;但比賽過程中智慧體之間沒有直接的溝通。(更多資訊可以閱讀此前 報導

AlphaStar 技術介紹

在活動預告文中,我們盤點了此前 DeepMind 在星海 2 AI 研究中的動向。作為以深度強化學習著稱的人工智慧企業,如今我們見到的 DeepMind 的星海 2 AI「AlphaStar」自然毫不意外地是一套基於深度強化學習的系統。

▲2018 年 12 月的比賽時,觀戰室中的 Oriol Vinyals 和 David Silver(以及你們看出來中間是誰了嗎?)

AlphaStar 模型設計

AlphaStar 是一個把遊戲看作長串列建模學習工作的強化學習 AI,模型設計也就以長串列建模為能力為核心。模型從遊戲介面接收的資料是單位清單和這些單位的屬性,經過神經網路計算後匯出遊戲執行的指令。這個神經網路的基礎是 Transformer 網路,並結合一個深度 LSTM 網路核心、一個帶指標網路的自動回歸策略頭,以及一個中心化的評分基準。這網路架構是 DeepMind 對複雜串列建模工作的最新思考結果,他們也相信這先進模型可在其他需要長串列建模、有很大行動空間的機器學習工作(比如機器翻譯、語言建模和視覺表示)同樣發揮出優秀的表現。

網路設計的相關論文:

AlphaStar 訓練策略

AlphaStar 的初始訓練策略與早期 AlphaGo 相同,DeepMind 研究員首先用人類比賽的 replay 監督學習訓練模型,以模仿學習的思路讓模型快速學到高級玩家在星海天梯使用的基礎策略和微操作。這時的 AlphaStar 就能以 95% 的勝率打敗《星海爭霸 2內建的「精英」等級 AI(對比 OpenAI 的 DOTA 2 AI 是完全從零開始的強化學習,初始階段花了很多時間在無意義的遊戲操作)。

下面當然就是強化學習的自我對弈、繼續提升水準階段了,這也是和 AlphaGo 的訓練策略不同的地方。之前介紹過,AlphaGo 自我對弈階段的棋局是由所有之前更新過程的表現最好版本生成,也就是說每時刻都有一個「最好的版本」,也不斷搜尋比前輩還好的版本替換。但對《星海爭霸》,DeepMind 研究員認為不同的優秀策略之間可相互剋補,沒有哪個策略可完勝其他策略。所以這次他們分別更新、記錄許多不同版本的網路(合稱為 AlphaStar league)。

如上圖,AlphaStar 用人類資料初始訓練後,繼續進行多輪 AlphaStar league 自我對戰,每輪都會在之前數個較強的版本基礎上分叉;分叉前的版本會固定參數保留下來,一直參與後續多輪自我對戰;不同版本也可能會安排不同對戰策略和學習目標。這樣不斷提升網路水準、提高對戰難度的同時,也保留足夠多樣性。根據每輪自我對戰的結果,每個網路參數都會更新;這種做法來自群體強化學習的想法,保證持續穩定的表現提升,且很新的版本也不會「忘記」如何擊敗很早的版本。

群體自我對弈的過程會產生許多策略。有些策略僅細微改善早期策略,也有一些策略會有全新的建造順序、單位組合、微操作;能穩定擊敗早期策略的策略也開始出現。比如 AlphaStar league 自我對戰早期,快速 rush 的策略有較高勝率;但隨著訓練過程持續,其他策略開始展現更高勝率,比如用更多工人快速擴大基地,獲取更多資源後建立經濟優勢;或派幾個兵去對方基地騷擾,獲得發展速度的優勢。這種策略更換演化也和人類選手數年摸索之路非常類似。如下圖,隨著總訓練時間越來越長,AI 平均使用的單位數目也越來越多。

多輪自我對戰結束後,研究人員會以 AlphaStar league 的 Nash 分散取樣出一個版本,當作訓練結束後最終得到的 AI。這做法可得到已發現的多種策略綜合最優解。

據 DeepMind 介紹,擊敗 TLO(蟲族選手操作神族,並不是他最佳水準)和 MaNa 的 AlphaStar 版本分別來自第 天和第 14 天的自我對戰(如下圖),實際上觀賽選手和遊戲解說也都注意到兩次比賽 AlphaStar 的變化。

保證策略多樣性的努力

DeepMind 在技術介紹部落格提到,為了讓 AlphaStar league 有盡量高的多樣性,他們有意識地為不同 AI 設定不同的學習目標(這也符合人類常識,簡單的隨機擾動帶來的多樣性變化非常有限)。有的 AI 要專門針對擊敗某特定 AI 學習,或為另一些 AI 設定其餘內部動機,比如具體透過建造某種單位,擊敗所有使用某類策略的 AI。這些目標會在訓練時調節。DeepMind 可視化展示了最終形成的多種不同策略分散,如下圖。

AlphaStar league 自我對戰中,每個 AI 的網路權重都會根據強化學習演算法更新,最佳化各自不同的學習目標。權重更新規則來自新的、高效的策略離線 actor-critic 算法,其中含經驗重播、自我模仿學習和策略蒸餾的思想。

AlphaStar 算力需求

為了支援大批不同版本 AlphaStar AI 的對戰與更新,DeepMind 構建大規模可拓展的分散式訓練環境,使用最新的 Google  TPUv3,這訓練環境可支援成群 AlphaStar AI 實例同時執行;《星海爭霸 2遊戲主體也有數千個實例同步執行。AlphaStar league 的自我對戰訓練過程用了 14 天,每個 AlphaStar AI 使用 16 個 TPU,最終相當於每個 AI 都有長達 200 年的遊戲時間。訓練結束後的模型在單塊消費級 GPU 就可執行。

AlphaStar 的遊戲表現

由於 AlphaStar 首先從人類玩家資料模仿學習,以及神經網路有一定的計算延遲,操作頻率其實比人類選手還低一些。MaNa 的 APM 達平均 390AlphaStar 平均只有 280 左右。AlphaStar 的計算延遲平均為 350 毫秒(從觀察到行動)。相比之下,以往基於固定策略和手工規則的星海 AI 會保持上千 APM。

DeepMind 也根據 AlphaStar 和 MaNa 一局比賽製作 AI 視角和內部資訊的可視化示意圖,如下:展示神經網路接收到的初始資料(左下角小圖藍色點),神經網路內部的觸發狀況(中下方手邊小圖)、AI 考慮點擊和建造建築的地圖區域示意(中下方右側小圖,這也可以理解為 AI 的注意力關注的區域)、AI 作業輸出觸發情況(右下角小圖)及勝率預測。圖中同步展示 MaNa 視角,遊戲中 AlphaStar 看不到對手視角。

本文開頭提到,兩次以 5:擊敗 TLO 和 MaNa 的 AlphaStar 無需控制視角,可直接讀取地圖所有可見內容。相比之下,人類選手顯然需要手動切換視角到地圖不同位置才能看到部分資訊。從這個角度說,AlphaStar 有欺負人類選手的嫌疑。DeepMind 也針對這點分析,他們的資料統計認為 AlphaStar 切換關注區域的速度約是每分鐘 30 次,這個次數和人類職業選手相當。

當然了,最好的辦法還是做實驗證明。所以 DeepMind 重新訓練了需要自己控制視角的 AlphaStar ,也就是直播時 MaNa 擊敗的那版(不過那版只訓練了 天,而不是初始版的 14 天)。這版的 AlphaStar 能抓取的資訊僅限於視角包含的部分,指令也一樣。DeepMind 提供的訓練圖表也顯示這帶來一定的表現下降(雖然仍能追上)。不過 DeepMind 認為表現下降的幅度非常輕微,也表現出 AlphaStar 的強大,主要還是歸功於學到有效的遊戲策略和強力微操作。

DeepMind 的展望

雖然這次模型用在《星海爭霸 2AI,但 DeepMind 認為這是夠複雜、有代表性的工作,用來解決這個工作的技術也可用在其他複雜問題。比如為長串列建模設計的網路架構,可用在更多不完全資訊的長串列建模工作,如天氣預測、氣候建模、語言理解等。他們也會繼續開發 AlphaStar 項目,並利用其中技術收穫,改善更多工作。

另一方面,DeepMind 認為此次設計策略也是通往安全、強健性 AI 的新路徑。現階段的 AI 系統一大難題就是難以預測系統會在多少種不同情況下失效,《星海爭霸的職業選手取勝 AI 也往往依靠搜尋並攻擊 AI 的弱點和錯誤。AlphaStar 提出的群體訓練策略就是一種更可靠、出錯可能性明顯減少的訓練策略。DeepMind 研究員認為,這種方法還有很多潛力可挖掘,也許未來會成為安全因素非常關鍵的重要一環。最終,DeepMind 希望建立真正智慧的系統,幫助人類解決最重要、最基礎的科學難題。

關於技術細節更細緻全面的介紹,DeepMind 正撰寫論文,並計畫投稿到期刊讓同行評議。共同期待正式論文的發表吧。

 

留言

延伸閱讀