OpenAI Dota2 5v5模式擊敗人類,AI每天訓練量抵人類180年

OpenAI是Elon Musk聯合創立的非盈利AI研究機構,旨在提高人們對AI技術現在所處的位置的認識,以及促進科技的安全進步。這不是OpenAI首次公開試玩Dota 2,去年,OpenAI在Dota2 1v1比賽中戰勝了人類選手Dendi。

OpenAI Five的訓練量級非常大,每天都會玩相當於180年時長的遊戲,通過自我對決來學習。它使用在256個GPU和128,000個CPU內核上運行的擴展版近端策略優化進行訓練,這是OpenAI去年發佈的1v1 Dota AI的更大規模版本。對每個英雄使用單獨的LSTM並且不使用人類數據,由此學習可識別的策略。

從Deep Blue到AlphaGo,再到現在的Dota2,將人工智能與人類之間進行較量,一直是計算機科學領域的有趣傳統。

與圍棋和國際象棋等回合制的遊戲模式不同,Dota2更需要大量的實時決策以及隊友之間的默契合作。還記得AlphaGo與柯潔那場圍棋之戰麼,人工智能在運籌帷幄的時候總有幾分鐘的思考時間。但是如果你在Dota2中靜止深思,那麼你可能會被對手gank。OpenAI表示,遊戲的平均運行時間為每秒30幀,也就是說,在平均45分鐘的遊戲中會產生大約80000幀,而AI大約分析了其中的四分之一。

OpenAI技術細節

OpenAI Dota2 5v5模式擊敗人類,AI每天訓練量抵人類180年

問題描述

在星際爭霸或者Dota這樣複雜的視頻遊戲中超越人類的能力,是人工智能發展的里程碑。相對於之前的AI在國際象棋或圍棋上的里程碑式進步,複雜的視頻遊戲更能夠效仿現實世界的混亂和連續性。具有很高的通用性,在遊戲之外也有可用之處。

OpenAI Dota2 5v5模式擊敗人類,AI每天訓練量抵人類180年

Dota 2是一款實時戰略遊戲,有兩支隊伍,每隊5個玩家,每個玩家控制一個稱為“英雄”的角色。玩Dota的AI必須掌握以下幾點:

1.長時間。Dota遊戲以每秒30幀的速度運行,平均時間為45分鐘,每場遊戲產生80,000幀。大多數行為(例如命令英雄移動到某個位置)單獨產生較小的影響,但回城等一些個別行為可能會在戰略上影響遊戲。一些策略可能貫穿遊戲全程。OpenAI Five每四幀觀察一次,產生20,000次移動。國際象棋通常在40次移動之前結束,圍棋在150次移動之前結束,幾乎每一次移動都是戰略性的。

2.不完整信息。單位和建築物只能看到他們周圍的區域。地圖的其他部分隱藏在霧中,隱藏了敵人和他們的戰略。AI需要根據不完整的數據進行推斷,並且需要對對手行為建模。象棋和圍棋都是全信息遊戲。

OpenAI Dota2 5v5模式擊敗人類,AI每天訓練量抵人類180年

3.動作高度連續。在Dota中,每個英雄可以採取數十個動作,許多動作都是針對另一個單位或地面上的某個位置。OpenAI將每個英雄的空間分割成170,000個可能的行動(不是在每個幀都有效,比如冷卻動作);不計算連續部分,每幀平均有大約1000次有效操作。國際象棋中的平均動作數為35,圍棋中是250。

4.高維度、連續的觀察空間。Dota包含十個英雄,數十個建築物,幾十個NPC單位以及諸如符文、樹木等一大堆遊戲特徵,和大型連續的地圖。AI通過Bot API觀察遊戲,被允許觀察2萬個數值(人類所被允許觀察的所有值)。國際象棋棋盤有大約70個枚舉值(一個8x8的棋盤,6種棋子類型和少量歷史信息),一個圍棋棋盤有約400個枚舉值(一個19x19的棋盤,兩種棋子類型加上“劫”)。

此外,Dota規則也非常複雜。遊戲開發已經持續了十多年,遊戲邏輯在數十萬行代碼中實現。這個邏輯需要幾毫秒的時間才能執行,而國際象棋或圍棋引擎則需要幾納秒。遊戲也每兩週更新一次,不斷改變環境語義。

方法

OpenAI系統使用大規模版本的Proximal Policy Optimization進行學習。 OpenAI Five和我們早期的1v1機器人都完全從自我對抗中學習。他們從隨機參數開始,不使用來自人類玩家的回放視頻進行搜索或引導。

OpenAI Dota2 5v5模式擊敗人類,AI每天訓練量抵人類180年

強化學習研究者通常認為,對於長時空上的建模,需要全新的算法,比如分層強化學習。但是OpenAI的結果表明,只要採取合理的方式,目前的算法在大規模資源上運行的結果還不錯。

AI經過訓練可以通過指數衰減因子γ進行加權,從而最大化指數衰減的未來獎勵總和。在最新的OpenAI Five訓練中,衰減因子γ從0.998(評估未來獎勵的半衰期為46秒)增大到0.9997(評估未來獎勵的半衰期為五分鐘)。對比而言,PPO這篇論文上最長的推理時間是0.5秒,Rainbow論文上最長的推理時間是4.4秒,Observe and Look Further這篇論文使用的半衰期為46秒。

PPO論文:

https://arxiv.org/abs/1707.06347

Rainbow論文:

https://arxiv.org/abs/1710.02298

Observe and Look Further論文:

https://arxiv.org/abs/1805.11593

儘管當前版本的OpenAI Five在最後一擊時表現不佳,但是專業Dota評論員Blitz認為OpenAIFive的表現可以比得上一般的人類玩家。

原因是,OpenFive在遊戲中對收益的取捨和頂尖的戰略決策類似。例如,短期內“補兵”可以獲得金錢,而準備團戰推塔可能花費更多的時間。如果選擇團戰,就會喪失小兵收益,然而在勝利以摧毀防禦塔為前提的遊戲中,放棄團戰可能不是明智的選擇。所以,AI是朝著長期目標進行優化的。

OpenAI Dota2 5v5模式擊敗人類,AI每天訓練量抵人類180年

OpenAI仍需要一些限制條件,比如,和AI比賽的人類對手必須遵守某些規則,包括不使用某些物品和策略。

OpenAI將在下個月舉辦一場Dota 2巡迴賽,展示自己在與頂級玩家競爭時的實力。

當然,也沒必要過度擔心,因為這個AI雖然可以打Dota,但也只能做這一件事。

相關報道:

https://blog.openai.com/openai-five/

https://techcrunch.com/2018/06/25/openais-dota-2-neural-nets-are-defeating-human-opponents/


分享到:


相關文章: