玩躲貓貓遊戲AI自動發展出類似人類的攻防策略
儘管機器學習在諸如圍棋和Dota 2等複雜遊戲中取得了顯著進步,但在這些領域掌握的技能並不一定能推廣到真實場景中實際應用。越來越多的研究人員正在尋求建立一種機器智能,使其行為、學習和進化更像人類。
AI進行遊戲的場景示意圖。圖片來源:OpenAI公司
總部位於舊金山的OpenAI公司近日發表的一篇新論文提出,在兒童的“躲貓貓”遊戲中訓練模型,並在數以千萬計的競賽中使它們相互對抗,可導致模型自動發展出類似人類的行為,從而提高智力並改善後續行動的性能。
為什麼選擇躲貓貓?
該論文的第一作者、OpenAI研究員博文·貝克認為,躲貓貓被選為一個有趣的起點,主要是因為其規則很簡單。所有遊戲中的代理(Agent,也稱智能體,指能自主活動的軟件或硬件實體)都被模擬為球形對象,可執行3種類型的操作:導航、抓住並移動物體、鎖定對象,且只能由該代理的隊友解鎖。
研究人員在模擬的、物理接地的環境中放置了1—3個“躲藏者”和1—3個“尋找者”,房間的邊界是靜態牆。環境中還包括不同尺寸的可移動箱子和可移動坡道。
研究人員使用強化學習來訓練遊戲代理,並遵循簡單的躲貓貓規則:隱藏者成功躲過尋找者的追逐,或是尋找者成功找到躲藏者。
AI如何玩躲貓貓?
在經過數億次的遊戲後,AI代理經歷了幾個階段的策略發展過程。
在初始階段,躲藏者(藍色)和尋找者(紅色)通過在空間中移動而不操縱任何物體,制定了非常粗糙的躲避和追逐策略。
在經歷2500萬個回合後,遊戲變得更加複雜。躲藏者學會了移動和鎖定在環境中的箱子和路障,以在自己周圍建立堡壘,這樣尋找者就永遠看不到它們了。不僅如此,他們還制定了協調戰略,例如相互傳遞物體,以加快建造堡壘的進程。
然而,在遊戲進行了7500萬回合之後,尋找者發現了一個反策略。他們學會了在躲藏者的要塞旁邊移動一個坡道,並用它來爬過牆壁。
作為回應,躲藏者學會了將坡道移入他們的房間,因此尋找者無法用它來越過牆壁。
隨著環境變得越來越複雜,躲藏者學會了使用細長箱子建造更強大的“堡壘”。雖然OpenAI認為這將是最終的策略,但在遊戲進行到3.8億回合時,尋找者再次成功反擊,找出一種方法來跳到一個盒子上並利用動力在它上面“衝浪”,越過牆壁進入堡壘。
在最後階段,躲藏者學會在建造堡壘之前鎖定所有箱子,以防止“箱子衝浪”。
研究人員將這些不同策略的演變稱為“來自多智能體自動課程的緊急技能進展”。“自動課程”這一術語是今年由DeepMind創造的,適用於多個代理逐漸創造新任務以在特定環境中相互挑戰。OpenAI的研究人員認為,這個過程在自然選擇方面具有相似之處。
這項研究為啥很重要?
鑑於躲貓貓相對簡單的目標,通過競爭性自我遊戲訓練的多個代理學會了使用工具,並採用人類相關技能來獲勝。OpenAI認為,這為未來的智能代理開發和部署提供了一個有前景的研究方向。OpenAI正在開源其代碼和環境,以鼓勵在該領域進一步研究。
OpenAI的最終目標是構建能夠在一個通用系統中執行多項任務的人工通用智能(AGI)。雖然可能會有不同的目標,但OpenAI正在大力投資由大規模計算能力實現的強化學習研究。OpenAI最近與微軟簽署了一份價值10億美元的為期10年的計算合同。
躲貓貓遊戲研究也激發了OpenAI,因為隨著環境複雜性的增加,遊戲中的代理不斷地通過新策略自我適應新的挑戰。貝克表示:“如果擴展像這樣的流程,並將其放入更複雜的環境中,那麼你可能會得到足夠複雜的代理,以便為我們解決實際任務。”
挑戰在哪裡?
遊戲代理有時會表現出令人驚訝的行為。例如,躲藏者試圖完全逃離遊戲區域,直到研究人員對此施加懲罰。
其他挑戰可能歸因於模擬環境設計中的物理缺陷。例如,躲藏者了解到,如果他們在拐角處向牆壁推動斜坡,斜坡將由於某種原因穿過牆壁然後消失。這種“作弊”說明了算法的安全性如何在機器學習中發揮關鍵作用。研究人員說:“在它發生之前,你永遠不會知道。這類系統總是存在缺陷。我們所做的基本上是觀察,以便我們可以看到這種奇怪的事情發生,然後試著修復物理缺陷。”
原標題:玩躲貓貓遊戲AI學會攻防術