銅靈 編譯整理

量子位 出品 | 公衆號 QbitAI

今天,《星際爭霸2》(後稱星際2)深度強化學習(DRL)智能體Reaver開源了,引來大量Reddit用戶圍觀。

來自塔爾圖大學的Roman Ring介紹說,這種模塊化的框架主要用於訓練星際2的各種任務,提供比大多數開源解決方案更快的單機環境並行化能力。

Reaver可適應多種環境,除了用於星際2的SC2LE外,還支持其他強化學習任務上常用的Gym、Atari和Mujoco。它用簡單的Keras模型來定義神經網絡,配置和共享配置也非常方便。

最重要的是,Reaver的訓練規模親民到爆炸。在普通的4核CPU的筆記本電腦上,每秒採樣率可以達到5K,10秒內就能學會那個立杆子的遊戲CartPole-0。

在電腦配置爲Intel i5-7300HQ CPU (4 核) 和 GTX 1050 GPU 的筆記本情況下,Reaver 30分鐘攻克了星際2 的MoveToBeacon遊戲,成績與DeepMind不分伯仲。

功能介紹

Reaver主要有6大特點:

可擴展

Reaver同時適用於初學者和老手。對業餘編程愛好者,Reaver提供了必要工具,修改智能體(例如超參數)後就能訓練。

老手可直接利用Reaver模塊化架構和性能優化過的代碼庫,其中的智能體、模型和環境都是解耦的,可隨意搭配,可擴展性強。

性能

Reaver利用無鎖數據結構共享內存,將星際2的採樣速率提升了2倍(通常能實現100倍的加速),瓶頸在GPU輸入/輸出pipeline。

可配置

Reaver中所有配置都能通過gin-config配置框架處理,並且能夠將所有超參數、環境參數和模型定義輕鬆共享成.gin格式文件。

實現智能體

作者採用兩種經典DRL算法進行實現:

優勢actor-critic算法(A2C)

近端策略優化(PPO)

支持多種環境

PySC2(用所有迷你遊戲測試過)OpenAI Gym(用CartPole-v0測試過)Atari(用PongNoFrameskip-v0測試過)Mujoco (用InvertedPendulum-v2和HalfCheetah-v2測試過)

其他強化學習特點

GAE算法加持獎勵剪裁梯度標準剪裁利用歸一化方法基線引導獨立基線網絡

結果展示

Reaver具體實戰的表現如何?研究人員在不同地圖上,對A2C架構的Reaver、DeepMind的SC2LE和ReDRL進行基準測評,同時,還給出了人類GrandMaster級的專業人員在這些任務上的成績。

其中,DeepMind的結果均來自此前發佈論文中的最佳結果。

Reaver(A2C)是訓練reaver.agents.A2C智能體得到的,通過訓練—test模塊進行100次迭代,計算總獎勵值得到這個結果。圖中括號值代表是平均值、標準差,方括號中爲最小和最大值。

傳送門

Reddit討論貼:

https://www.reddit.com/r/MachineLearning/comments/a0jm84/p_reaver_starcraft_ii_deep_reinforcement_learning/

具體的安裝說明,可移步GitHub:

https://github.com/inoryy/reaver-pysc2

此外,如果你的電腦配置了Google Colab,還可以在線使用Reaver,地址:

https://colab.research.google.com/drive/1DvyCUdymqgjk85FB5DrTtAwTFbI494x7

— 完 —

誠摯招聘

量子位正在招募編輯/記者,工作地點在北京中關村。期待有才氣、有熱情的同學加入我們!相關細節,請在量子位公衆號(QbitAI)對話界面,回覆“招聘”兩個字。

量子位 QbitAI · 頭條號簽約作者

վ'ᴗ' ի 追蹤AI技術和產品新動態

查看原文 >>
相關文章