游戲是人工智能研究的完美實(shí)驗(yàn)環(huán)境。在游戲環(huán)境中,可用于訓(xùn)練人工智能模型的數(shù)據(jù)是近乎無限、低成本、可復(fù)制,相比現(xiàn)實(shí)世界的經(jīng)驗(yàn)更容易獲得。這些特點(diǎn)正幫助 Facebook 人工智能實(shí)驗(yàn)室(FAIR)探索一些短期目標(biāo),如復(fù)雜游戲環(huán)境中多個人工智能的能力;以及長期目標(biāo):讓人工智能應(yīng)對現(xiàn)實(shí)世界的挑戰(zhàn)。游戲研究可以幫助我們構(gòu)建能夠進(jìn)行計劃、具有理性、自我導(dǎo)航、解決問題、合作與交流的人工智能。
盡管使用游戲進(jìn)行訓(xùn)練能夠帶來多種好處,但研究者們在游戲環(huán)境中進(jìn)行探索可能會遇到很多困難。由于目前機(jī)器學(xué)習(xí)算法的諸多限制,訓(xùn)練需要成百上千的游戲局?jǐn)?shù),這需要大量的計算資源,如配備大量 CPU、GPU 或定制硬件的高性能計算平臺。此外,這些算法是復(fù)雜而難以進(jìn)行微調(diào)的。而隨著訓(xùn)練環(huán)境中增加更多的人工智能代理,這些變量將更加難以控制。
為了解決這些問題,讓所有人都能參與人工智能的研究。FAIR 團(tuán)隊創(chuàng)造了 ELF:一個大范圍、輕量級且易于使用的游戲研究平臺。ELF 可以讓研究者們在不同的游戲環(huán)境中測試他們的算法,其中包括桌游、Atari 游戲(通過 Arcade Learning Environment),以及定制的即時戰(zhàn)略游戲(RTS)。它們可以運(yùn)行在帶有 GPU 的筆記本電腦上,而且支持在更為復(fù)雜的游戲環(huán)境中訓(xùn)練 AI,例如即時戰(zhàn)略游戲——僅僅使用 6 塊 CPU,一塊 GPU,花上一天時間。
FAIR 的研究者們將 ELF 的界面設(shè)計得易于使用:ELF 在 C/C++界面中運(yùn)行所有游戲,自動處理并發(fā)問題如多線程/多任務(wù)。另外,ELF 還有一個純凈的 Python 用戶界面,提供了一批可供訓(xùn)練的游戲狀態(tài)。ELF 也支持游戲以外的用途,它包括物理引擎等組件,可以模擬現(xiàn)實(shí)世界的環(huán)境。
目前,ELF 平臺已經(jīng)開源,開發(fā)者和研究者們可以在 GitHub 中找到它:
https://github.com/facebookresearch/ELF
相關(guān)論文也已發(fā)表在 arXiv 中:https://arxiv.org/abs/1707.01067
架構(gòu)
ELF 的架構(gòu)相對簡單,它包含一個能夠主持多個在 C++端運(yùn)行并發(fā)游戲示例的模擬器,同時在 Python 端與 AI 模型(深度學(xué)習(xí)、強(qiáng)化學(xué)習(xí)等)溝通。
與其他在一個界面包含單個游戲的 AI 平臺不同,ELF 能把一批游戲包括進(jìn)一個 Python 界面。這使得模型和強(qiáng)化學(xué)習(xí)算法能夠在每次迭代中包含一批游戲狀態(tài),降低了訓(xùn)練模型所需的時間。
我們也在游戲推斷和參與者模型(actor model) 之間建立配對靈活性。使用該框架,非常容易用一個參與者模型配對特定的游戲示例,或者一個示例配對許多參與者模型,或者許多示例配對一個參與者模型。這樣的靈活性能夠快速的構(gòu)建算法原型,幫助研究員更快地理解哪個模型有更好的表現(xiàn)。
在 FAIR 早期的實(shí)驗(yàn)中,ELF 能進(jìn)行更快的模擬,使用同樣數(shù)量的 CPU 和 GPU 相比于 OpenAI Gym 玩 Atari 游戲可以提高 30% 的訓(xùn)練速度。當(dāng)增加更多的核心之后,ELF 每核的幀率保持穩(wěn)定。
Mini-RTS:實(shí)時策略游戲進(jìn)行研究
ELF 平臺包括一個名為 Mini-RTS 的實(shí)時策略引擎與環(huán)境。我們寫 Mini-RTS 是為了幫助測試 ELF,它非常的快,在 Macbook Pro 上每核每秒運(yùn)行 4 萬幀。它能捕捉實(shí)時策略游戲的關(guān)鍵動態(tài):兩個玩家同時收集資源、建立設(shè)施、探索未知領(lǐng)地,并嘗試控制地圖上的領(lǐng)地。此外,該引擎能夠加速人工智能研究:完美的保存、加載、回放,完全可接入其游戲內(nèi)部狀態(tài),多個內(nèi)建式角色 AI,調(diào)試可視化、人類-AI 界面,等等。作為基準(zhǔn),我們在 Mini-RTS 上訓(xùn)練的人工智能展現(xiàn)出了驚人的結(jié)果,它可以在 70% 的對局中擊敗內(nèi)建式 AI。這些結(jié)果顯示,訓(xùn)練人工智能完成任務(wù),并在相對復(fù)雜的策略環(huán)境中優(yōu)先排序行為是可能的。
有了 ELF 平臺,我們期待它能幫助計算機(jī)處理指數(shù)級行為空間、長期延時獎勵和不完美信息。
論文:ELF: An Extensive, Lightweight and Flexible Research Platform for Real-time Strategy Games
摘要:在本論文中,我們提出了 ELF,一個大范圍、輕量級且易于使用的強(qiáng)化學(xué)習(xí)研究平臺。在 ELF 中,我們可以通過高度定制化的即時戰(zhàn)略游戲(RTS)引擎,實(shí)現(xiàn)三種游戲環(huán)境(Mini-RTS、奪旗游戲和塔防游戲)。Mini-RTS 是簡化版的《星際爭霸》,捕捉游戲動態(tài),并可以在 MacBook Pro 筆記本上以每核心 40K 幀率(FPS)的速度運(yùn)行。結(jié)合現(xiàn)代強(qiáng)化學(xué)習(xí)的方法,該系統(tǒng)可以在一天內(nèi)使用 6 塊 CPU 和 1 塊 GPU 對內(nèi)置 AI 進(jìn)行端到端的訓(xùn)練。
此外,我們的平臺在環(huán)境代理通信拓?fù)?、?qiáng)化學(xué)習(xí)方法選擇、游戲參數(shù)調(diào)整等方面上是靈活的,而且可以承載現(xiàn)有的 C/C++游戲環(huán)境如 Arcade Learning Environment。通過 ELF,我們徹底探索了訓(xùn)練環(huán)境,并展示了 Leaky ReLU 和 Batch Normalization 與長期訓(xùn)練和漸進(jìn)式課程體系的結(jié)合超過了基于規(guī)則的內(nèi)建 AI,在超過 70% 的 Mini-RTS 游戲中獲得了勝利。它在其他兩種游戲中也能達(dá)到相似的水平。在游戲的 Replay 中,我們可以看到人工智能代理展示了有趣的策略。ELF 和它的強(qiáng)化學(xué)習(xí)平臺將會開源。
(審核編輯: 林靜)
分享