騰訊AI足球隊奪冠Kaggle競賽,絕悟強化學習方案遷移至足球隊

12月30日,騰訊宣佈其人工智能球隊摘得首屆谷歌足球Kaggle競賽冠軍。該冠軍球隊來自騰訊AI Lab研發的絕悟WeKick版本,憑藉1785.8的總分在與全球頂級技術團隊的競技中以顯著優勢勝出。

今年11月底,騰訊AI Lab與王者榮耀聯合研發的策略協作型AI絕悟升級爲完全體,首次讓AI精通了所有英雄的所有技能。此次絕悟WeKick版本的整體設計正是基於絕悟完全體遷移得到,並針對足球任務進行了一些針對性的調整,展現了絕悟AI背後深度強化學習方法的通用能力。

Kaggle 競賽 google-football 排行榜前十名,

來自 https://www.kaggle.com/c/google-football/leaderboard 

Kaggle創立於2010年,是全球最大的數據科學社區和數據科學競賽平臺。此次足球AI比賽由Google Research與英超曼城俱樂部在Kaggle平臺上聯合舉辦。

一直以來,足球運動團隊策略以其複雜性、多樣性和高難度,成爲長期困擾世界頂尖AI研究團隊的難題,更加稀疏的遊戲激勵也使得其成爲比MOBA遊戲更難攻克的目標。今年Kaggle首次針對足球AI領域發佈賽題,爲深度強化學習多智能體技術競技和基準評測提供了一個全新舞臺。深度強化學習多智能體技術競技和基準評測提供了一個全新舞臺。

比賽使用Google Research Football強化學習環境,基於開源足球遊戲Gameplay Football開發,採取11vs11的賽制,參賽團隊需要控制其中1個智能體與10個內置智能體組成球隊,兼具挑戰性和趣味性。一經推出,便吸引了來自世界頂級院校和研究機構的1100多支科研強隊參與挑戰。

 

“11 個強化學習智能體的合作與對抗”

 

Google Football(on Kaggle)以流行的足球遊戲爲模型,就像是一款由AI操作的FIFA遊戲,智能體控制足球隊中的一個或所有足球運動員,學習如何在他們之間傳球,並設法克服對手的防守以進球。其競賽規則與普通足球比賽類似,比如目標都是將球踢入對方球門以及越位、黃牌和紅牌規則。

不同於常見足球視頻遊戲的統一調控式NPC球隊,在本次Kaggle競賽中,每個球員都各由一個單獨的智能體控制,而參賽的AI模型則根據比賽情況控制其中一個智能體,與其他10個內置智能體配合。這要求每個球員不僅需要觀察對手的行爲,還需要留意己方隊員的情況,背後需要非常複雜的團隊協作和競爭策略作爲支撐。

舉個例子,當對方球員控球時,己方智能體不僅要根據球場上雙方球員的分佈位置預測控球球員的下一步動作,還需要與己方其他球員協同如何合規地奪取足球的控制權。且由於球場動態瞬息萬變,因此高速的實時決策能力也是必需的。

此外,從零開始完全採用強化學習方法來訓練完整的足球AI實際上也相當困難。與MOBA遊戲中不斷有經濟、血量、經驗等實時學習信號不同,足球的遊戲激勵非常稀疏,基本只能依靠進球,而稀疏激勵一直是目前強化學習一大難題。

 

絕悟AI如何走上冠軍之路

得益於深度強化學習在遊戲領域突飛猛進的發展,從Atari遊戲到圍棋再到多種不同的視頻遊戲,AI智能體在不斷的迭代演化中變得越來越強大,而足球運動團隊策略的難關也得以被攻克。

絕悟WeKick版本首先採用了強化學習和自博弈(Self-Play)來從零開始訓練模型,並部署了一種異步的分佈式強化學習框架。雖然該異步架構犧牲了訓練階段的部分實時性能,但靈活性卻得到顯著提升,而且還支持在訓練過程中按需調整計算資源,使其能適應 11 智能體足球遊戲訓練環境。

由於MOBA遊戲和足球遊戲任務目標的差異,絕悟WeKick版本採用了生成對抗模擬學習(GAIL)與人工設計的獎勵結合,在特徵與獎勵設計上進行了擴展和創新。

 

架構概況

具體來說,該模型由一些密集層(每層 256 維)和一個 LSTM 模塊(32 步,256 隱藏單元)構成。訓練過程採用了一種改進版的近端策略優化(PPO)強化學習算法。學習率固定爲 1e-4。參數更新則採用了 Adam 優化器。這套方案能實現非常快速的適應和迭代,且內存佔用也較爲合理。

在算法上,絕悟總體上採用了一種改進版PPO強化學習算法,這與不久之前發佈的絕悟完全體的架構一致。簡單來說,PPO算法的思路在每個步驟計算更新時不僅會保證成本函數儘可能地小,而且還會確保與之前策略的偏差相對較小。這一策略能克服強化學習難以調試的缺點,在實現難度、樣本複雜度和調試難度之間取得合適的平衡。

在價值估計上,採用了絕悟完全體的多頭價值(MHV)估計方案,即獎勵會被分解爲多個頭,然後再使用不同的折現因子聚集到一起。採用這一方案的原因是某些事件僅與近期的動作相關,比如攔截、越位和剷球;另一些事件則涉及一系列決策,比如進球。因此不同事件的獎勵會具有不同的權重。

在特徵設計上,研究者對標準的115維向量進行了擴展,使之包含了更多特徵,比如隊友與對手的相對姿態(位置與方向)、活動球員與足球之間的相對姿態、標記可能越位的隊友的越位標籤、紅/黃牌狀態等特徵。這些擴展爲訓練速度帶來了30%的效率增益。

WeKick傳球配合

除了人工設計的獎勵,絕悟WeKick版本還採用了生成對抗模擬學習(GAIL),該方案利用了生成對抗訓練機制來擬合專家行爲的狀態和動作分佈,使其可以從其它球隊學習。

比如某個 AI 球隊展現出的「反攻(counter attack)」策略就給研究者留下了深刻印象,即接球后退→傳到守門員→守門員高傳到前場。這是一種相對複雜的序列動作,難以通過人工方法定義其獎勵;但使用 GAIL,絕悟WeKick版本可以成功地基於回放(replay)進行學習。然後,再將 GAIL 訓練的模型作爲固定對手進行進一步自博弈訓練,絕悟WeKick版本的穩健性得到了進一步提升。

  GAIL 的優勢(WeKick 的獎勵設計綜合了 Reward Shaping 和 GAIL 兩種方案)

但這種通過自博弈強化學習得到的模型有一個天然的缺點:很容易收斂到單一風格。在實際比賽的時候單一風格的模型很容易發生由於沒見過某種打法而表現失常,最終導致成績不佳的情況。因此,爲了提升策略的多樣性和穩健性,絕悟還採用了針對多智能體學習任務的League(若干策略池)多風格強化學習訓練方案。

 

這種League多風格強化學習訓練方案的主要流程可簡單總結爲先專精後綜合。 

1. 訓練一個基礎模型,具備一定程度競技能力,比如運球過人、傳球配合、射門得分;

2. 基於基礎模型訓練出多個風格化模型,每個模型專注一種風格打法;在風格化模型訓練的過程中會定期加入主模型作爲對手,避免過度堅持風格,丟失基本能力;

3. 基於基礎模型訓練一個主模型,主模型除了以自己的歷史模型爲對手以外,還會定期加入所有風格化對手的最新模型作爲對手,確保主模型的策略具備魯棒性,能夠適應風格完全不同的對手。

內部能力評分系統顯示,加入對手池訓練以後的主模型,可以在基礎模型的上提高 200 分,比最強的風格化打法高 80 分。

最終,基於絕悟完全體的架構遷移,定製化的框架改進,加上關鍵性的生成對抗模擬學習(GAIL)方案和 League (若干策略池)多風格強化學習訓練方案,使得絕悟實現了優於其它競爭AI球隊的優勢,最終成就了冠軍之路。

視頻:https://www.kaggleusercontent.com/episodes/7012487.webm

WeKick vs SaltyFish(第二名)近期的一局比賽記錄,成績爲 3:2

此次絕悟WeKick版本奪冠,意味着在絕悟繼完全體升級後,其背後的深度強化學習方案又訓練出了適應複雜足球競技場景的AI模型,展現了騰訊AI Lab在前沿AI技術上的研發實力,也驗證了騰訊絕悟AI底層架構與方法的通用性。

據瞭解,絕悟團隊的研究方向正在從足球比賽中的單個智能體控制向11個智能體同時控制、協同作戰深入,當完整的足球獨立智能體個數達到11個,強化學習的難度將隨着智能體個數的增長呈現指數級的爆炸增長,同時足球智能體之間差距不大,如何自動形成角色分工以及在不同角色間的激勵分配也一直多智能體強化的難題。在此前5v5形式(多智能體)的谷歌天梯比賽Google Research Football League中,騰訊絕悟團隊也摘得冠軍。

WeKick射門2

從圍棋AI絕藝到MOBA遊戲AI絕悟再到如今的AI足球隊WeKick,騰訊AI Lab的深度強化學習智能體正在步步進化,逐漸向更復雜更多樣化的問題遷移,向通用人工智能的終極目標不斷邁進。可以預見,這類方法未來還有望進一步遷移至機器人等更多領域,創造更大的實用價值。

附賽事技術介紹:

https://www.kaggle.com/c/google-football/discussion/202232


更多精彩推薦
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章