不服SOLO:騰訊絕悟AI擊敗王者榮耀頂尖職業玩家,論文入選AAAI,未來將開源

機器之心發表於2019-12-24

不服SOLO:騰訊絕悟AI擊敗王者榮耀頂尖職業玩家,論文入選AAAI,未來將開源

圍棋被攻克之後,多人線上戰術競技遊戲(MOBA)已經成為測試檢驗前沿人工智慧的動作決策和預測能力的重要平臺。基於騰訊天美工作室開發的熱門 MOBA 類手遊《王者榮耀》,騰訊 AI Lab 正努力探索強化學習技術在複雜環境中的應用潛力。本文即是其中的一項成果,研究用深度強化學習來為智慧體預測遊戲動作的方法,該論文已被 AAAI-2020 接收。

據介紹,此技術支援了騰訊此前推出的策略協作型 AI「絕悟」1v1 版本,該版本曾在今年 8 月上海舉辦的國際數碼互動娛樂展覽會 China Joy 首次亮相,在 2100 多場和頂級業餘玩家體驗測試中勝率達到 99.8%。

不服SOLO:騰訊絕悟AI擊敗王者榮耀頂尖職業玩家,論文入選AAAI,未來將開源

王者榮耀 1v1 遊戲 UI 介面。在主螢幕中,左上角的 A 為小地圖、右上角 B 為控制皮膚、左下角 C.1 為移動控制、右下角的 C.2 為技能控制。實驗表明,AI 智慧體能在多種不同型別的英雄上能擊敗頂級職業玩家。

此外,騰訊 AI Lab 告訴機器之心,本文提出的框架和演算法將在未來開源,而且為了促進對複雜模擬場景的進一步研究,騰訊也將在未來把《王者榮耀》的遊戲環境提供給社群使用,並且還會透過虛擬雲的形式向社群提供計算資源。

騰訊 AI Lab 表示,AI+遊戲的研究成果,短期看,可以給遊戲行業、電競行業帶來直接的推動和幫助,同時也能應用到教育、醫療、農業等更多行業中。長期來看,AI+遊戲的研究,會推進 AI 的終極目標——通用人工智慧問題的探索和發展。

除了本次研究提出的王者 1v1 智慧體,騰訊 AI Lab 與王者榮耀還將聯合推出「開悟」AI+遊戲開放平臺。

王者榮耀會開放遊戲資料、遊戲核心叢集(Game Core)和工具,騰訊 AI Lab 會開放強化學習、模仿學習的計算平臺和算力,邀請高校與研究機構共同推進相關 AI 研究,並透過平臺定期測評,讓「開悟」成為展示多智慧體決策研究實力的平臺。

目前「開悟」平臺已啟動高校內測,預計在 2020 年 5 月全面開放高校測試,並且在測試環境上,支援 1v1,5v5 等多種模式;2020 年 12 月,騰訊計劃舉辦第一屆的 AI 在王者榮耀應用的水平測試。想想是不是就很有趣?

王者榮耀 SOLO 人類

為了評估智慧體的能力,研究者將模型部署到王者榮耀中,並與專業的頂級玩家對戰。比賽確保了智慧體每做一次決策的反應時間與人類差不多。

表 3 給出了 AI 和 5 名頂級職業選手的比賽結果,需要指出這些職業玩家玩的都是他們擅長的英雄。可以看到 AI 能在多種不同型別的英雄上擊敗職業選手。

不服SOLO:騰訊絕悟AI擊敗王者榮耀頂尖職業玩家,論文入選AAAI,未來將開源 表 3:AI 與職業選手使用不同型別英雄比賽的結果

絕悟選擇了每個人類玩家擅長的英雄進行了 1v1 的五局三勝對戰,用到的英雄包括貂蟬、狄仁傑、露娜、韓信和花木蘭。

不服SOLO:騰訊絕悟AI擊敗王者榮耀頂尖職業玩家,論文入選AAAI,未來將開源

當然,與 5 位頂級玩家的對戰並不能說明智慧體已經無敵了,因此在 ChinaJoy 2019 中,騰訊 AI Lab 舉行了大型公開賽。如果玩家在 1v1 比賽中擊敗了遊戲 AI,那麼能獲得價值 4200 元人民幣的智慧手機,而且現場參賽設定了門檻:挑戰 AI 的玩家需要達到排位高階別段位。在所有 2100 次匹配賽中,遊戲 AI 只輸了 4 次(其中國服第一后羿拿下了一局),更詳細的對戰資訊可檢視文後實驗部分。

不服SOLO:騰訊絕悟AI擊敗王者榮耀頂尖職業玩家,論文入選AAAI,未來將開源

王者榮耀為什麼很難打

在競爭環境中學習具備複雜動作決策能力的智慧體這一任務上,深度強化學習(DRL)已經得到了廣泛的應用。在競爭環境中,很多已有的 DRL 研究都採用了兩智慧體遊戲作為測試平臺,即一個智慧體對抗另一個智慧體(1v1)。Atari 和圍棋等遊戲目前已經有很多優秀的解決方案,但更復雜的推塔類遊戲又該怎麼解?

這篇研究就在探討這種更復雜的 MOBA 1v1 遊戲,其中 MOBA 1v1 遊戲就是一種需要高度複雜的動作決策的 RTS 遊戲。相比於棋盤遊戲和 Atari 系列等 1v1 遊戲,MOBA 的遊戲環境要複雜得多,AI 的動作預測與決策難度也因此顯著提升。

以 MOBA 手遊《王者榮耀》中的 1v1 遊戲為例,其狀態和所涉動作的數量級分別可達 10^600 和 10^18000,而圍棋中相應的數字則為 10^170 和 10^360,參見下表 1。

不服SOLO:騰訊絕悟AI擊敗王者榮耀頂尖職業玩家,論文入選AAAI,未來將開源 表 1:圍棋與 MOBA 1v1 遊戲的比較

此外,MOBA 1v1 的遊戲機制也很複雜。要在遊戲中獲勝,智慧體必須在部分可觀察的環境中學會規劃、攻擊、防禦、控制技能組合以及誘導和欺騙對手。除了玩家與對手的智慧體,遊戲中還有其它很多遊戲單位,比如小兵和炮塔。這會給目標選擇帶來困難,因為這需要精細的決策序列和相應的動作執行。

此外,MOBA 遊戲中不同英雄的玩法也不一樣,因此就需要一個穩健而統一的建模方式。還有一點也很重要:MOBA 1v1 遊戲缺乏高質量人類遊戲資料以便進行監督學習,因為玩家在玩 1v1 模式時通常只是為了練習英雄,而主流 MOBA 遊戲的正式比賽通常都採用 5v5 模式。

需要強調,本論文關注的是 MOBA 1v1 遊戲而非 MOBA 5v5 遊戲,因為後者更注重所有智慧體的團隊合作策略而不是單個智慧體的動作決策。考慮到這一點,MOBA 1v1 遊戲更適合用來研究遊戲中的複雜動作決策問題。

這麼難, AI Lab 怎麼解?

為了解決這些難題,騰訊 AI Lab 設計了一種深度強化學習框架,並探索了一些演算法層面的創新,對 MOBA 1v1 遊戲這樣的多智慧體競爭環境進行了大規模的高效探索。文中設計的神經網路架構包含了對多模態輸入的編碼、對動作中相關性的解耦、探索剪枝機制以及攻擊注意機制,以考慮 MOBA 1v1 遊戲中游戲情況的不斷變化。

騰訊 AI Lab 表示,這篇論文的貢獻在於,對需要高度複雜的動作決策的 MOBA 1v1 遊戲 AI 智慧體的構建進行了全面而系統的研究。

  • 在系統設計方面,研究者提出了一種深度強化學習框架,能提供可擴充套件的和非同步策略的訓練。

  • 在演算法設計方面,研究者開發了一種用於建模 MOBA 動作決策的 actor-critic 神經網路。

網路的最佳化使用了一種多標籤近端策略最佳化(PPO)目標,並提出了對動作依賴關係的解耦方法、用於目標選取的注意機制、用於高效探索的動作掩碼、用於學習技能組合 LSTM 以及一個用於確保訓練收斂的改進版 PPO——dual-clip PPO。

下面,我們來看看這個強大的智慧體,在演算法和效果上都是什麼樣的。

不服SOLO:騰訊絕悟AI擊敗王者榮耀頂尖職業玩家,論文入選AAAI,未來將開源

論文地址:https://arxiv.org/abs/1912.09729

頂級智慧體長什麼樣?

系統設計

考慮到複雜智慧體的動作決策問題可能引入高方差的隨機梯度,所以有必要採用較大的批大小以加快訓練速度。因此,本文設計了一種高可擴充套件低耦合的系統架構來構建資料並行化。具體來說,這個架構包含四個模組:強化學習學習器(RL Learner)、人工智慧伺服器(AI Server)、分發模組(Dispatch Module)和記憶池(Memory Pool)。如圖 1 所示。

不服SOLO:騰訊絕悟AI擊敗王者榮耀頂尖職業玩家,論文入選AAAI,未來將開源

圖 1:系統設計概況

AI 伺服器實現的是 AI 模型與環境的互動方式。分發模組是用於樣本收集、壓縮和傳輸的工作站。記憶池是資料儲存模組,能為 RL 學習器提供訓練例項。這些模組是分離的,可靈活配置,從而讓研究者可將重心放在演算法設計和環境邏輯上。這樣的系統設計也可用於其它的多智慧體競爭問題。

演算法設計

RL 學習器中實現了一個 actor-critic 神經網路,其目標是建模 MOBA 1v1 遊戲中的動作依賴關係。如圖 2 所示。

不服SOLO:騰訊絕悟AI擊敗王者榮耀頂尖職業玩家,論文入選AAAI,未來將開源

圖 2:論文實現的 actor-critic 網路

為了實現有效且高效的訓練,本文提出了一系列創新的演算法策略:

  • 目標註意力機制;用於幫助 AI 在 MOBA 戰鬥中選擇目標。

  • LSTM;為了學習英雄的技能釋放組合,以便 AI 在序列決策中,快速輸出大量傷害。

  • 動作依賴關係的解耦;用於構建多標籤近端策略最佳化(PPO)目標。

  • 動作掩碼;這是一種基於遊戲知識的剪枝方法,為了引導強化學習過程中的探索而開發。

  • dual-clip PPO;這是 PPO 演算法的一種改進版本,使用它是為了確保使用大和有偏差的資料批進行訓練時的收斂性。如圖 3 所示。

不服SOLO:騰訊絕悟AI擊敗王者榮耀頂尖職業玩家,論文入選AAAI,未來將開源

 圖 3:論文提出的 dual-clip PPO 演算法示意圖,左為標準 PPO,右為 dual-clip PPO

有關這些演算法的更多詳情與數學描述請參閱原論文。

驚豔的實驗效果

測試平臺為熱門 MOBA 遊戲《王者榮耀》的 1v1 遊戲模式。為了評估 AI 在現實世界中的表現,這個 AI 模型與《王者榮耀》職業選手和頂級業餘人類玩家打了大量比賽。實驗中 AI 模型的動作預測時間間隔為 133 ms,這大約是業餘高手玩家的反應時間。另外,論文方法還與已有研究中的基準方法進行了比較,其中包括遊戲內建的決策樹方法以及其它研究中的 MTCS 及其變體方法。實驗還使用 Elo 分數對不同版本的模型進行了比較。

在上文中,透過挑戰頂級職業玩家,騰訊 AI Lab 可以探索智慧體動作決策能力的上限;透過挑戰大量頂級業餘玩家,AI Lab 可以評估智慧體的動作決策能力穩健性。

在 2019 年 8 月份,王者榮耀 1v1 AI 對公眾亮相,與大量頂級業餘玩家進行了 2100 場對戰,AI 勝率達到驚人的 99.81%,在 5 個英雄上都保持絕對的勝率。

不服SOLO:騰訊絕悟AI擊敗王者榮耀頂尖職業玩家,論文入選AAAI,未來將開源

表 4:AI 與不同頂級人類玩家的比賽結果。

基準比較

可以看到,用論文新方法訓練的 AI 的表現顯著優於多種 baseline 方法。

不服SOLO:騰訊絕悟AI擊敗王者榮耀頂尖職業玩家,論文入選AAAI,未來將開源

圖 4:擊敗同一基準對手的平均時長比較

訓練過程中模型能力的進展

圖 5 展示了訓練過程中 Elo 分數的變化情況,這裡給出的是使用射手英雄「狄仁傑」的例子。可以觀察到 Elo 分數會隨訓練時長而增長,並在大約 80 小時後達到相對穩定的水平。此外,Elo 的增長率與訓練時間成反比。

不服SOLO:騰訊絕悟AI擊敗王者榮耀頂尖職業玩家,論文入選AAAI,未來將開源 圖 5:訓練過程中 Elo 分數的變化情況

控制變數研究

為了理解論文方法中不同元件和設定的效果,控制變數實驗是必不可少的。表 5 展示了使用同樣訓練資源的不同「狄仁傑」AI 版本的實驗結果。

不服SOLO:騰訊絕悟AI擊敗王者榮耀頂尖職業玩家,論文入選AAAI,未來將開源 表 5:控制變數實驗

相關文章