OpenAI釋出Neural MMO :大型多智慧體遊戲環境
大資料文摘出品
作者:魏子敏、雲舟、蔣寶尚
今日凌晨,OpenAI釋出Neural MMO—一個強化學習的大型多智慧體遊戲環境。這一平臺可以在永續性和開放式任務中支援大量可變數量的智慧體。
一直以來,人工智慧研究者都希望讓智慧體(agent)學會合作競爭,一些研究者也認為這是實現通用人工智慧(AGI)的必要條件。
17年7月份,OpenAI、麥吉爾大學和 UC Berkeley 聯合提出了一種“用於合作-競爭混合環境的多智慧體 actor-critic”,可用於多智慧體環境中的中心化學習(centralized learning)和去中心化執行(decentralized execution),讓智慧體可以學會彼此合作和競爭。
論文地址:
之後,OpenAI也一直沒有放棄對多智慧體學習環境的探索。
今日凌晨,OpenAI宣稱釋出Neural MMO——一個強化學習的大型多智慧體遊戲環境。這一多智慧體的環境可以探索更相容和高效的整體環境,力求在複雜度和智慧體人數上獲取難得的平衡。
近年來,多重代理設定已成為深度強化學習研究的一個有效平臺。儘管進展頗豐,但其仍存在兩個主要挑戰:當前環境要麼複雜但過於受限,要麼開放但過於簡單。
其中,永續性和規模化將是探討的關鍵屬性,但研究者們還需要更好的基準測試環境,在存在大量人口規模和永續性的情況下量化學習進度。這一遊戲型別(MMO:大型多人線上遊戲)模擬了在持續和廣泛環境中可變數量玩家進行競爭的大型生態系統。
為了應對這些挑戰,OpenAI構建了神經MMO以滿足以下標準:
永續性:在沒有環境重置的情況下,代理可以在其他學習代理存在的情況下同時學習。策略必須具有遠見思維,並適應其他代理行為的潛在快速變化。
比例:環境支援大量且可變數量的實體。實驗考慮了100個併發伺服器中每個伺服器128個併發代理且長達100M的生命週期。
效率:進入的計算障礙很低。可以在單個桌面CPU上培訓有效的策略。
擴充套件:與現有 MMO類似,Neural MMO旨在更新內容。目前的核心功能包括基於拼接單元塊(tile-based)的地形的程式生成,食物和水覓食系統以及戰略戰鬥系統。未來有機會進行開源驅動的擴充套件。
OpenAI在部落格中詳細介紹了這一新環境。
環境
環境
玩家(代理)可以加入任何可用的伺服器(環境),每個都會包含一個可配置大小、且自動生成的基於圖塊的遊戲地圖。一些障礙塊,例如森林和草,是可穿越的;其他的如水和實心岩石,則不能穿越。
代理在環境邊緣的隨機位置產生。他們需要獲得食物和水,並避免其他代理的戰鬥傷害,以維持自己的生存。踩在森林地塊上或出現在水資源地塊的旁邊會分別填充一部分代理的食物和水供應。然而,森林的食物供應有限,隨著時間的推移會緩慢再生。這意味著代理必須競爭食品塊,同時定期補充水源。玩家還可以使用三種戰鬥風格參與戰鬥,分別為混戰,遊獵及魔法。
輸入:代理觀察以其當前位置為中心的方形區域。這包括地塊型別和佔用代理的選擇屬性(健康,食物,水和位置)。
輸出:代理為下一個遊戲單位時間(timestep)輸出操作選項。該操作由一個動作和一個攻擊組成。
模型
模型
作為一個簡單的基準,我們使用vanilla策略梯度訓練一個小型,完全連線的架構,並把值函式基準和獎勵折扣作為唯一的增強功能。在這個模型中,獎勵策略並不針對實現特定目標,而是針對其生命週期(軌跡長度)進行最佳化:他們在其生命週期的每個單位時間上獲得獎勵1。我們透過計算所有代理的最大值來將可變長度觀測值(例如周圍代理列表)轉換為單個長度向量(OpenAI Five也使用了這個技巧)。基於PyTorch和Ray,源版本包括我們完整分散式培訓的實現。
訓練中最大種群數量在(16,32,64,128)之間變化。為了提高效率,在測試時,將在一對實驗中學到的特定群進行合併,並在一個固定的範圍內進行評估。只對作戰策略進行評估,因為直接量化作戰策略比較困難。通常來說,在更大的分佈範圍內進行訓練效果會更好。
代理的策略是從多個種群中簡單抽樣——不同種群中的代理共享體系結構,但只有相同種群中的代理共享權重。初步實驗表明,隨著多智慧體相互作用的增加,智慧體的能力也隨之增加。增加併發智慧體的最大數量將放大探索行為;增加種群的數量將放大生態位形成——也就是說,種群在地圖的不同部分擴散和覓食的趨勢。
在評估跨多臺伺服器的玩家能力方面,並沒有統一的標準。然而,有時,MMO伺服器會進行合併。我們透過合併在不同伺服器中訓練的玩家基地來實現“錦標賽”風格的評估。這使得我們可以直接比較在不同實驗環境中學到的策略。改變了測試時間範圍,發現在較大環境下訓練的代理一直優於在較小環境中訓練的代理。
評估結果
評估結果
訓練中最大種群數量在(16,32,64,128)之間變化。為了提高效率,在測試時,將在一對實驗中學到的特定群進行合併,並在一個固定的範圍內進行評估。只對作戰策略進行評估,因為直接量化作戰策略比較困難。通常來說,在更大的分佈範圍內進行訓練效果會更好。
代理的策略是從多個種群中簡單抽樣——不同種群中的代理共享體系結構,但只有相同種群中的代理共享權重。初步實驗表明,隨著多智慧體相互作用的增加,智慧體的能力也隨之增加。增加併發智慧體的最大數量將放大探索行為;增加種群的數量將放大生態位形成——也就是說,種群在地圖的不同部分擴散和覓食的趨勢。
伺服器合併條件下的錦標賽:多代理放大了競爭行為
在跨多臺伺服器隊玩家能力的能力進行評估時,我們並沒有統一的標準。然而,有時MMO伺服器會進行合併。我們透過合併在不同伺服器中訓練的玩家基地來實現“錦標賽”風格的評估。這使得我們可以直接比較在不同實驗環境中學到的策略。改變了測試時間範圍後,我們發現,在較大環境下訓練的代理一直優於在較小環境中訓練的代理。
種群規模的增加放大了探索行為
種群規模放大了探索行為:代理表現出分散開來的特徵以避免競爭。最後幾幀顯示學習值函式疊加。有關其他引數,請參閱論文:
在自然世界中,動物之間的競爭可以激勵它們分散開來以避免衝突。我們觀察到,隨著併發代理數量的增加,對映覆蓋率增加。代理學習探索僅僅是因為其他代理的存在提供了這樣做的自然動機。物種數量的增加擴大了生態位形成的機率。
物種數量的增加擴大了生態位的形成。
物種數量(種群數量)放大了生態位的形成。上圖中訪問地圖覆蓋了遊戲地圖;不同的顏色對應不同的物種。訓練單一物種傾向於產生單一的深度探索路徑。訓練八個物種則會導致許多較淺的探索路徑:種群擴散以避免物種之間的競爭。
鑑於環境足夠大且資源豐富,我們發現不同的代理群在地圖上呈現分散的特點,以避免隨著數量的增加與其他代理產生競爭。由於代理不能與自己種群中的其他代理競爭(即與他們共享權重的代理),他們傾向於尋找包含足夠資源來維持其種群數量的地圖區域。在DeepMind的併發多代理研究中也獨立地觀察到類似的效果。
併發多代理研究:
其他見解
其他見解
每個方形圖顯示位於中心的代理對其周圍代理的存在的響應。我們在初始化和訓練早期展示覓食地圖;額外的依賴圖對應於覓食和戰鬥的不同表述。
我們透過將代理固定在假設的地圖中心來對代理進行視覺化。對於該代理可見的每個位置,我們將顯示在該位置有第二個代理時的值函式。
我們發現代理商在覓食和戰鬥環境中,可以學習依賴於其他代理的策略。代理學習“插眼(bull’s eye)”行為時,在幾分鐘的訓練後就能更有效地開始覓食。當代理學習環境的戰鬥力學時,他們開始適當地評估有效的接觸範圍和接近角度。
下一步
下一步
Neural MMO解決了之前基於遊戲環境的兩個主要限制,但仍有許多尚未解決。這種Neural MMO在環境複雜性和人口規模之間盡力尋求平衡。OpenAI在設計這個環境時考慮了開源擴充套件,併為研究社群提供了基礎。
博文連結:
https://blog.openai.com/neural-mmo/
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31562039/viewspace-2637572/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- OpenAI釋出大型強化深度學習模擬器Neural MMO,AI適者生存擇最優OpenAI深度學習
- OpenAI官方開源多智慧體框架「Swarm」,並不是我想要的多智慧體框架OpenAI智慧體框架Swarm
- OpenAI官方開源多智慧體框架「Swarm」,並不是我想要的多智慧體框架PIOpenAI智慧體框架Swarm
- 正式釋出丨Azure OpenAI ServiceOpenAI
- Vue設定不同的環境釋出程式Vue
- OpenAI「草莓」兩週內釋出?網傳不是多模態,反應慢了10多秒OpenAI
- PyCharm 4.0.2 釋出,Python 整合開發環境PyCharmPython開發環境
- vue 多環境配置Vue
- Webpack多環境搭建Web
- OpenAI等機構聯合釋出《人工智慧惡意使用》報告OpenAI人工智慧
- 搭建大型原始碼閱讀環境——使用 OpenGrok原始碼
- 國際AI環境高速發展 人工智慧國家戰略相繼釋出AI人工智慧
- OpenAI和谷歌分別釋出重大更新OpenAI谷歌
- 手把手教你搭建一個灰度釋出環境
- PyCharm 4.0.3 正式釋出,Python 整合開發環境PyCharmPython開發環境
- NetBeans IDE 8.0.2 釋出,整合開發環境BeanIDE開發環境
- PyCharm 4.5 EAP 釋出,Python 整合開發環境PyCharmPython開發環境
- 開源叢集計算環境:Spark 1.1.0釋出Spark
- 記錄一次預釋出環境的 Bug
- 行業首創!巨人網路釋出多智慧體大模型AI原生遊戲玩法行業智慧體大模型AI遊戲
- python下多環境開發(虛擬環境)Python
- 自媒體多平臺釋出,自媒體多平臺一鍵釋出工具
- 怎麼Jenkins配置分散式環境的安全釋出?Jenkins分散式
- Vue2.0 新手入門 — 從環境搭建到釋出Vue
- 跨平臺的.NET執行環境 Mono 3.2.7釋出!Mono
- 使用oracle support釋出的peoplsoft image快速搭建Demo環境Oracle
- FM收聽新方式?多聽FM將釋出全新車載智慧硬體
- 魅族智慧手環釋出 碾壓小米和iwach?
- FFmpeg 2.6.1 釋出,多媒體處理工具
- 人工智慧中的情景環境與順序環境人工智慧
- docker安裝多環境ApolloDocker
- SpringBoot多環境配置Spring Boot
- WIndows環境配置多版本JavaWindowsJava
- PhpStorm 2018.3.5 釋出,PHP 整合開發環境PHPORM開發環境
- 怎麼用Jenkins配置分散式環境的安全釋出?Jenkins分散式
- polarphp 0.0.1 alpha 釋出:全新 PHP 執行時環境PHP
- 釋出ASP.NET Core程式到Linux生產環境ASP.NETLinux
- 馬斯克連發三推,釋出退出OpenAI內情馬斯克OpenAI