如果說我們的征途是星辰大海,那么星際爭霸必定是其中一關。今天,有人在Github開源了他潛心研究一年半的成果,一個新手和資深研究人員都能受益的深度強化學習框架,單機運行速度快、方便調式,支持多種強化學習訓練環境。
上周結束的 AI Challenger 星際爭霸競賽,讓 AI 挑戰星際爭霸這個議題又稍稍火了一把。雖然這屆冠軍使用的仍然是硬編碼方法,但從其他解決方案中不難看出,AI算法的占比在不斷提升。
作為圍棋之后 DeepMind 公開宣布的下一個攻克目標,《星際爭霸》的魅力可見一斑。而隨后不久 DeepMind 便將其相關研究及平臺開源,更是印證了讓 AI 玩星際爭霸的挑戰。
今天,塔爾圖大學的 Roman Ring 在 Github 上開源了他傾力投入一年半的成果,一個名叫 Reaver 的《星際爭霸 II》AI,可用于訓練《星際爭霸 II》的各種基本任務。
Reaver 的基本思路是沿著 DeepMind 的路線在走,也即 AI 的玩法是像人類玩家一樣,從游戲畫面中獲取視覺特征,然后再做出決策。
補充說明,Roman 去年本科畢業項目是使用《Actor-Critic 法復現 DeepMind 星際爭霸 II 強化學習基準》[1],Reaver 則是在此基礎上的改善提升。
Reaver 的強項在于比其他開源的同類框架單機運行速度快;除了支持星際爭霸游戲訓練環境 SC2LE,也支持 OpenAI Gym、ATARI 和 MUJOCO;模塊化組成,容易調試。
根據作者所說,Reaver 不到10 秒就解決 CartPole-v0,在 4 核 CPU 筆記本上每秒處理 5000 張圖像,使用 Google Colab,Reaver 通關《星際爭霸 II》SC2LE 小型游戲 MoveToBeacon 只需要半小時的時間。
Reaver 玩《星際爭霸 II》小型游戲 MoveToBeacon 的畫面,左邊是未經訓練,右邊是訓練后的情況。來源:Roman Ring/YouTube
套用一句話,如果我們的征途是星辰大海,那么其中的一關必然是《星際爭霸》。
Reaver 對于不具備 GPU 集群的人非常友好,正如作者在 Github 庫里介紹所說,
“雖然開發是研究驅動的,但 Reaver API 背后的理念類似于《星際爭霸II》游戲本身——新手可以用,領域專家也能從中獲得東西。
“對于業余愛好者而言,只要對 Reaver 稍作修改(例如超參數),就能得到訓練深度強化學習智能體的所有必須工具。對于經驗豐富的研究人員,Reaver 提供簡單但性能優化的代碼庫,而且都是模塊化架構:智能體、模型和環境都是分開,并且可以隨意組合調換。”
歡迎加入星際爭霸強化學習陣營。
深度強化學習AIReaver:模塊化且便于調試
性能 大部分已發表的強化學習基準通常針對的都是 MPI 之間 message-based 通信,對于 DeepMind 或者 OpenAI 這樣有大規模分布式強化學習配置的機構而言這樣做自然很合理,但對于普通研究者或其他沒有這類強大基礎設施的人,這就成了很大的瓶頸。因此,Roman Ring 采用了共享內存(shared memory)的方法,相比 message-based 并行的解決方案實現了大約 3 倍的速度提升。
模塊化 很多強化學習基準都或多或少都是模塊化的,不過這些基準通常與作者使用的訓練環境密切相關。Roman Ring 自己就曾經因為專注于《星際爭霸 II》環境而導致調試花了很長時間。因此,Revar 只需要一個命令行就能改變訓練環境,從 SC2 到 Atari 或者 CartPole(將來計劃納入 VizDoom)。每個神經網絡都是簡單的 Keras 模型,只要符合基本的 API contracts 都能調用。
調試 現在一個游戲 AI 通常含有十幾個不同的調試參數,如何實現更為統一便捷的調試?Roman Ring 在 Reaver 中只要能用的地方都用了 “gin-config”,這個輕量級調試框架只要是 Python 可調用函數都能調試,非常方便。
更新 是的,現在算法發展很快,去年發表的東西今年就可能過時。在開發 Reaver 的時候 Roman 表示他想著用了 TensorFlow 2.0 API(主要是使用 tf.keras 不用 tf.contrib),希望這個庫能活用久一點吧。
單機友好,可用于訓練星際爭霸II各種任務
Roman Ring 列出了 Reaver 在《星際爭霸 II》各種小型游戲上與其他 AI 的性能對比。其中,
Reaver(A2C)就是在 SC2LE 訓練 Reaver 得到的結果
DeepMind SC2LE 是 DeepMind 在《StarCraft II: A New Challenge for Reinforcement Learning》一文中發布的結果[2]
DeepMind ReDRL 則是 DeepMind 在《Relational Deep Reinforcement Learning》中的結果[3]
人類專家是 DeepMind 收集的 GrandMaster 級別人類玩家的結果
以下是 Reaver 在不同小型游戲中訓練花費的時間:
綜上,就算 DefeatRoaches 花了 150 小時,但考慮到硬件只是一臺筆記本(英特爾酷睿 i5-7300HQ,4核 +GTX 1050GPU),這個結果已經算很不錯。
Roman 還列出了他的路線圖,上述成果只是他萬里長征的第一步。如果你感興趣,不妨加入這個項目。
-
強化學習
+關注
關注
4文章
268瀏覽量
11305 -
GitHub
+關注
關注
3文章
473瀏覽量
16586 -
AI算法
+關注
關注
0文章
252瀏覽量
12345
原文標題:單機《星際爭霸2》AI,不用GPU集群,支持多種訓練環境
文章出處:【微信號:AI_era,微信公眾號:新智元】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
汽輪機與其他動力設備的對比
真空斷路器與其他類型斷路器的性能對比
HarmonyOS NEXT 應用開發練習:AI智能對話框
華為云Flexus X實例,Redis性能加速評測及對比
![華為云Flexus X實例,Redis<b class='flag-5'>性能</b>加速評測及<b class='flag-5'>對比</b>](https://file1.elecfans.com//web3/M00/03/C9/wKgZPGdsEdqAYenRAAJ02uTtywI722.png)
ddc與其他分類系統的比較
TNC連接器對比分析:與其他射頻連接器的性能對決
![TNC連接器<b class='flag-5'>對比</b>分析:<b class='flag-5'>與其他</b>射頻連接器的<b class='flag-5'>性能對</b>決](https://file1.elecfans.com/web3/M00/02/8F/wKgZPGdg6IyALeazAADQzc0qDYo889.png)
可控硅與其他半導體器件的對比
NPU與GPU的性能對比
Orin芯片與其他芯片對比
Llama 3 模型與其他AI工具對比
PLC如何與其他設備進行通信
三星電容與其他品牌電容的對比優勢是什么?
![三星電容<b class='flag-5'>與其他</b>品牌電容的<b class='flag-5'>對比</b>優勢是什么?](https://file1.elecfans.com/web2/M00/C6/8A/wKgZomYKYQ-AO_yDAADyrBmtMDE821.png)
評論