學界 | 中科院開源星際爭霸2宏觀運營研究數據集MSC

 2017-10-11 00:02:00.0

原標題:學界 | 中科院開源星際爭霸2宏觀運營研究數據集MSC

選自arXiv

參與:李澤南、蔣思源

DeepMind 與暴雪共同發起的星際爭霸 2 人工智能研究看起來遭遇了很大挑戰。目前的人工智能還難以在完整對戰中擊敗簡單級別的遊戲內建電腦玩家。不過,兩家公司 8 月份共同推出的人工智能研究環境 SC2LE 爲後續研究提供了可利用的平臺。中國科學院自動化研究所的研究人員最近針對宏觀運營任務提出了全新數據集 MSC,試圖推動研究社區繼續前進。值得一提的是,中科院自動化所的團隊 10 月 8 日剛剛在星際爭霸 AI 競賽 AIIDE 2017 上取得第四名的成績(bot CPAC),本研究的部分參與者也是該團隊成員。

項目 GitHub 鏈接:https://github.com/wuhuikai/MSC

基於深度學習的人工智能技術已經在 Atari 遊戲(Mnih 等人,2015)、圍棋(Silver 等人,2016)和第一人稱 3D 射擊遊戲 Doom(Lample & Chaplot,2017)上達到了超越以前最優水平的表現。但時至 2017 年,在面臨即時戰略遊戲(RTS)星際爭霸時,我們卻遇到了前所未有的困難。此類遊戲的動作空間和狀態空間(強化學習)相比於其它遊戲顯得極其巨大,而且與圍棋等完全公開環境不同,星際爭霸的戰爭迷霧等設定使對手狀態不完全可知。

最近 DeepMind 的研究表明,想要訓練基於深度神經網絡(DNN)的端到端星際爭霸 2 人工智能是一件非常困難的事。不過,Vinyals 等人提出了星際爭霸 2 研究平臺 SC2LE,他們此前也訓練出了用於進行遊戲的 DNN 網絡 A3C。當然,A3C 無法在對陣哪怕是遊戲內建簡單電腦玩家的情況下獲勝。基於人們在星際爭霸 1 的人工智能研究上,中科院的研究人員們認爲整合了微觀操作(Peng 等人,2017)、建造指令預測(Justesen & Risi,2017)和全局狀態評估(Erickson & Buro,2014)等能力的智能體是下一步研究的方向,而以上各種能力可以被分爲宏觀運營(macro-management)與微觀操作(micro-management)兩個部分。

微操作包括與單位控制相關的所有低級別任務,如採礦、與敵對單位戰鬥;而宏觀運營則有關高級別的遊戲策略,如計劃建造哪種新的單位/建築、科技研究、對於遊戲全局態勢的判斷。我們可以通過深度強化學習算法輕鬆地讓計算機獲得近似於人類表現的微操作能力,但宏觀運營在目前看來還是一個難以解決的問題。一個有前景的方向是通過機器學習的方法學習職業玩家的經驗,利用遊戲 Replay 學會「大局觀」,利用 DNN 進行建造指令預測。兩種方法都需要用到遊戲 Replay 進行學習,這是星際爭霸系列遊戲專有的遊戲回放錄像文件。

星際爭霸 1 有很多用於進行宏觀運營學習的 Replay 數據集。然而這些數據集通常都只能用作特定的宏觀運營任務訓練,也沒有預先分成訓練、驗證和測試集。另一方面,很多數據集體量很小,無法適應現代機器學習算法。目前最大的星際爭霸 1 Replay 數據集是 StarData(Lin 等人,2017),其中包含 65,646 條遊戲錄像,但其中只有一少部分包含最終結果,這對於宏觀運營的某些訓練,如全局態勢評估而言並不適用。DeepMind 的 SC2LE 中則包含了星際爭霸 2 的最大數據集,其中包括 80 萬條錄像,適用於多種不同的宏觀運營任務。

圖 1. MSC 框架示意圖。遊戲 Replay 首先會被預定義的標準過濾,隨後使用 PySC2 進行解析。解析 Replay 後的狀態被採樣並轉化爲 N 維向量。最後,包含特徵對和最終對戰結果的文件被分爲訓練、驗證和測試集。

然而,現在並沒有標準的處理步驟和預定義的訓練集、驗證集和測試集。此外,這些數據集的設計初衷是用於星際爭霸 2 的端到端類人控制,並不適合用於宏觀運營的訓練任務。

爲了推進利用 Replay 學習宏觀運營的研究,中科院的研究人員基於 SC2LE 構建了一個新的數據集 MSC。它目前是適用於星際爭霸 2 宏觀運營的最大數據集,可用於各類任務,如建造順序預測和全局狀態評估。MSC 基於 SC2LE 構建原因有三:1)SC2LE 包含最大的 Replay 數據集。2)SC2LE 受官方支持,且更新頻率高。3)SC2LE 中的 Replay 質量較高,格式更標準。研究人員定義處理 SC2LE 中 Replay 的標準步驟,如圖 1 所示。處理後的數據集包括精心設計的特徵向量、預定義的動作空間(action space)和每次比賽的最終結果。所有處理過的文件可分爲訓練集、驗證集和測試集。隨後,研究人員基於 MSC 訓練了基線模型,展示全局狀態評估和建造順序預測的初始基線結果,二者是宏觀運營的重要任務。爲了方便其他任務的研究,研究人員還展示了 MSC 的一些數據,列出了適合它的後續任務。該研究的主要貢獻可歸納爲以下兩點:

a. 新數據集 MSC 用於星際爭霸 2 的宏觀運營,包括標準預處理、解析和特徵提取過程。爲方便評估和對比不同方法,數據集分爲訓練集、驗證集和測試集。

b. 爲宏觀運營的兩項重要任務全局狀態評估和建造順序預測提出基線模型和初始基線結果。

宏觀運營

在星際爭霸社區中,與單位控制有關的所有任務叫作微觀操作(micro-management),而宏觀運營指玩家遵循的高級遊戲策略。全局狀態評估是宏觀運營的一項核心任務,聚焦於預測在當前狀態下的勝率(Erickson & Buro 2014;Stanescu 等人 2016;Ravari、Bakkes & Spronck 2016;Sanchez-Ruiz & Miranda 2017)。建造順序預測(Build order prediction)用於預測在當前狀態中下一步要訓練、建造或進行哪些研究(Hsieh & Sun 2008;Churchill & Buro 2011;Synnaeve、Bessiere & others 2011;Justesen & Risi 2017)。Churchill 和 Buro 2011 年使用基於目標的方法將樹搜索應用到建造順序規劃中。Synnaeve、Bessiere 等 2011 年從 Replay 中訓練貝葉斯模型,而 Justesen 和 Risi 在 2017 年探索了 DNN 方法。開放的策略預測是建造順序預測的子集,旨在預測比賽初始階段的建造順序(Kostler & Gmeiner 2013;Blackford & Lamont 2014;Justesen & Risi 2017)。Dereszynski 等人 2011 年研究預測敵人的狀態,Cho、Kim 和 Cho 2013 年嘗試預測敵人的建造順序。

圖 2. 數據集中人族對人族比賽 replay 的 APM(每秒指令次數)與 MMR(天梯分數)密度圖。我們可以看到,APM 與 MMR 對於比賽的輸贏而言沒有太大的相關性。

論文:MSC: A Dataset for Macro-Management in StarCraft II

論文鏈接:https://arxiv.org/abs/1710.03131

宏觀運營(Macro-management)是《星際爭霸》系列遊戲中玩家需要掌握的重要能力,也是 AI 研究者們一直在探索的方向。近年來,人們提出了多種不同的數據集和方法。但這些數據集對於推動研究和業界探索而言有着諸多限制:1)一些數據集裏沒有標準的預處理、解析和特徵提取過程,也沒有預定義的訓練、驗證和測試集。2)某些數據集只是用於特定任務的宏觀運營。3)一些數據集太小,或者沒有足夠的數據,無法適用於現代機器學習算法(如深度神經網絡)。

大部分此前的方法都是由不同特徵訓練的,它們由不同的測試集評估,相互之間難以進行直接比較。爲了推動星際爭霸的宏觀運營研究,我們在 SC2LE 平臺上推出了新數據集 MSC,其中包含仔細設計的特徵向量、預定義的高級指令和每種匹配的最終結果。我們還將 MSC 分成訓練、驗證和測試集以便於評估和比較。除了數據集以外,我們還提出了基線模型(baseline model),並展示了全局狀態評估和建造指令預測的基線結果——這兩個任務也是宏觀運營的核心。爲了研究星際爭霸 2 的宏觀運營,我們也研究與分析了一系列後續任務(downstream tasks)。

本文爲機器之心編譯,轉載請聯繫本公衆號獲得授權。

責任編輯:

文章來源:機器之心