2018年6月27日 星期三

雖又擊敗了人類選手,但我們認為 OpenAI 的 5v5 DOTA AI 不過如此




文章摘要: OpenAI 還會在 7 月 28 日組織頂尖人類職業玩家再與 OpenAI Five 進行比賽OpenAI 對於 DOTA AI 的最終目標是開發出能夠打敗人類職業選手的 AI



雷鋒網 AI 科技評論按:各位讀者想必今天一睜眼就被「OpenAI 的人工智慧在 DOTA 5v5 比賽中也打敗了人類選手」的新聞刷屏了。 OpenAI 開發的 DOTA AI 去年在 1v1 solo 中打敗頂級職業選手 Dendi 和 Sumail 之後,緊接著就放出豪言還要在 5v5 的 DOTA 比賽中擊敗人類,這一天彷彿這麼快就到來了。


5v5 AI,一個新的臺階,不過這個 AI 其實還比較初級


DOTA(以及 DOTA2)是目前最火熱的電子競技遊戲之一,也是當之無愧的職業比賽規模最大、獎金最高的遊戲。DOTA 遊戲有很高的難度,對人類玩家來說都需要很長的學習時間,因為 DOTA 中有上百種英雄、上百種物品、多種遊戲策略、不同英雄有不同的玩法、不同的英雄組合之間也有獨特的技能和裝備配合;除此之外玩家還需要審時度勢,同一個英雄在不同局面中也有不同的玩法。DOTA 的職業比賽也因此而變得激動人心,選手的區域性小操作和整個團隊改變戰局的戰略執行都會被玩家們津津樂道。



複雜的英雄、物品、配合、長短期策略結合等方面正是我們長期認為 DOTA 這樣的遊戲對現階段的 AI 來說過於困難的原因。而且除了這些人類眼中的認知難題之外,DOTA 遊戲的行動空間還非常龐大。相比於圍棋中每一步操作只需要在棋盤上剩餘的空位中選一個落子,DOTA 中的行動是非常密集的(每分鐘操作在 100 次數量級)、考慮時間長短的(比如持續施法技能)、數值連續的(比如走位)、複雜多值化的(比如購買裝備)、資訊是部分可觀察的(地圖上有大量的無視野區域),反饋也可以認為是稀疏的(勝負最為重要),所以主流觀點一度認為類似 DeepMind 開發 AlphaGo 時那樣的純粹強化學習自我對弈是無法學會玩 DOTA (以及星際等即時戰略遊戲)的,過大的行為空間會讓訓練過程長期停留在沒有有效反饋的區域從而無法收斂。層級強化學習被認為是一種有希望幫助訓練過程快速走出低效探索的方法,但發展仍不成熟。


OpenAI 對於 DOTA AI 的最終目標是開發出能夠打敗人類職業選手的 AI。顯然這樣的目標是無法一蹴而就的,所以他們的指導思想是分步走,從英雄、物品、地圖範圍、策略都有高度限制的 1v1 比賽開始,然後逐步減少限制,同時逐步改善模型,一步步接近最終目標;去年 TI(國際邀請賽)中 1v1 打敗 Dendi,以及在測試比賽中打敗 Sumail 的 DOTA AI 就是其中的第一步。對於這樣的結果,初看有些意外,但細想之下還是比較合理的。畢竟玩 Atari 遊戲我們都已經司空見慣了。



對於接下來的 5v5 AI(名為 OpenAI Five),自然也保留了諸多限制,遊戲環境和各位玩家熟悉的樣子有諸多不同。OpenAI Five 在這個環境裡做了多次迭代更新,4 月 23 日版本首次打敗了 OpenAI 自己編寫的基於指令碼的基準模型,5 月 15 日的版本與 OpenAI 員工隊伍(天梯分段 2500,高於 46% 的玩家)打了一勝一負;而 6 月 6 日的版本則在與業餘戰隊(天梯分段 4200,高於 93% 的玩家)和半職業戰隊(天梯分段 5500,高於 99% 的玩家)的比賽中都贏得了三局中的前兩局。



OpenAI Five 目前設定的遊戲中的限制有以下這些方面:



  • 比賽雙方都使用固定的瘟疫法師、冥界亞龍、矮人火槍手、水晶室女、巫妖 5 個英雄,而不是在超過 110 個英雄中任意選擇(顯然我們也可以推測出 OpenAI 就是以這組固定的英雄進行訓練的)




  • 禁止使用守衛,禁止使用隱身物品(消耗品及裝備)




  • 禁止使用幻象和分身




  • 禁止打肉山




  • 禁止購買聖劍、魔瓶、壓制之刃、遠行鞋、知識之書、眼淚




  • 禁止使用掃描




  • OpenAI Five 方有五個無敵的信使,不過也禁止使用這些信使看視野以及承受傷害



顯然各位 DOTA 玩家一看就知道,僅英雄選擇的限制這一項就極大降低了遊戲的複雜度;隱身、肉山之類的禁用也縮小了戰略戰術的選擇空間;至於 5 個無敵的信使就更像是對 5 個 AI 之間(也許並不理想的)協作能力的妥協了。


不過,能打敗業餘和半職業戰隊的表現畢竟還是有一些特色的,能在三局中贏得前兩局也說明了 AI 的策略選擇與執行的效果。在幾場比賽中 OpenAI Five 的玩法體現出了這些特點:



OpenAI Five 五個英雄都集結在對方優勢路到中塔之間的區域



比賽開始 2 分鐘,AI 的 2 級冰女和 2 級毒龍 gank 中路



人類方進攻高地,AI 冰女 BKB 跳大,配合隊友擊殺對方四人


複雜的強化學習任務比預想的要簡單?


即便遊戲中有一些限制,但還是有足夠的複雜度,而且我們也看到了 AI 在遊戲中的精彩表現。從技術角度來說,這也給了我們新的啓發。


正如前文提到的,DOTA 中複雜的行動空間以及對長短期策略結合的需求的讓領域內的研究者,甚至包括 OpenAI 的人自己都認為 DOTA 需要層次化強化學習這樣的全新的深度學習技術,但其實只通過雷鋒網 AI 科技評論也曾介紹過的近端策略優化 PPO就已經達到如此的水平 —— 至少是在用足夠大的規模做訓練,以及選用了合適的超引數平衡了探索行為的程度的時候。


OpenAI 使用了256 個 V100 GPU 和 128000 個 CPU 訓練模型,不使用人類資料,80% 的時間自我對弈,20% 的時間和過去的版本對弈。訓練中每天進行的遊戲數量時長相當於大約 180 年。根據 DOTA 解說 Blitz 評價,OpenAI Five 的補刀只是普通玩家水平,但整場遊戲的長期策略執行已經有了職業選手水準。用現有的方法就能達到短期策略和長期策略之間的均衡,算是一項驚喜的發現。


另一方面,OpenAI Five 中使用的模型架構也出人意料地簡單。每一個英雄由一個單獨的 LSTM 模型控制,而它只是一個單層的、含有 1024 個單元的 LSTM 網路。網路從 Value (DOTA2 製作公司)提供的 BOT API 獲取資料,然後通過多個不同的動作輸出介面進行控制。



OpenAI Five 的網路架構圖


OpenAI 對於反饋的設計也別有用心。除了輸贏之外也選用了人類選手常用的指標:總財產、擊殺數、死亡數、助攻數、補刀數等等。但是爲了避免 AI 過於關注這些偏向於短期策略的資料,他們的反饋設計只鼓勵 AI 在這些方面做到人類玩家的平均水平。



還有一個專案是 AI 之間的合作。OpenAI 並沒有為 AI 之間設計顯式的溝通頻道,目前他們設計了一個名為「團隊精神」的超引數,這個 0 到 1 之間的值會反應每個英雄關注自己單獨的反饋和整個團隊的反饋之間的比例。在訓練中 OpenAI 通過退火來優化這個值的具體大小。


總結


雖然我們說到目前的 5v5 OpenAI Five 的實際表現不過如此,但以現有的資源和方法就達到了超出預期的效果,這也值得我們反思以往的強化學習研究中,方法與實現是否有諸多做的不完善的地方纔導致容易遇到訓練困難、表現瓶頸、表現不穩定性等問題;另一方面,在現有方法的威力完全得到發揮的地方,我們也更容易清晰地看到繼續提升表現還需要哪些創新。


OpenAI 還會在 7 月 28 日組織頂尖人類職業玩家再與 OpenAI Five 進行比賽,這之前系統還會進行除錯更新。我們期待 OpenAI Five 近期能有更新、更強的表現,也期待它早日在無限制的完全展現了 DOTA 複雜程度的環境中再展風姿,更與 OpenAI 全體一起期待這些用於 DOTA AI 的技術能為更多真實世界問題帶來幫助。


雷鋒網 (公眾號:雷鋒網) AI 科技評論報道。


雷鋒網原創文章,未經授權禁止轉載。詳情見 轉載須知 。





http://www.buzzfunnews.com/20180622532.html

更多有趣新聞請上:http://www.buzzfunnews.com

沒有留言:

張貼留言