這款超火的遊戲,AI只用4小時,秀出人類花1年才達到的水平

尋夢新聞LINE@每日推播熱門推薦文章,趣聞不漏接❤️

加入LINE好友

  

  蕭簫 發自 凹非寺
量子位 報導 | 公眾號 QbitAI

操控一輛賽車,在空中帶球射門,需要練習多長時間?

這款超火的遊戲,AI只用4小時,秀出人類花1年才達到的水平 遊戲 第1張

通常來說,一名普通玩家要達成這樣的水平,至少要練習上一年時間。

這是一款國外很火的遊戲《火箭聯盟》 (Rocket League),玩家會操作一輛賽車,利用各種辦法將球「踢」進門。

然而,現在已經有人開發出了一個基於深度強化學習的賽車遊戲環境RoboLeague。通過環境訓練的賽車,不僅能看準時機射門:

這款超火的遊戲,AI只用4小時,秀出人類花1年才達到的水平 遊戲 第2張

還在4小時的訓練後,就能長時間顛球,保證車和球都不落地:

這款超火的遊戲,AI只用4小時,秀出人類花1年才達到的水平 遊戲 第3張

這個RoboLeague,一下子在Reddit炸出了2.7k的熱度。

這款超火的遊戲,AI只用4小時,秀出人類花1年才達到的水平 遊戲 第4張

有網友調侃,看到這些比自己玩得好的「AI選手」,總會讓他感覺很挫敗。

這款超火的遊戲,AI只用4小時,秀出人類花1年才達到的水平 遊戲 第5張

那麼,這個賽車遊戲環境,究竟優秀在哪裡?

  比已有的遊戲環境更好用

事實上,這並不是第一個基於《火箭聯盟》做出的遊戲環境。

這款超火的遊戲,AI只用4小時,秀出人類花1年才達到的水平 遊戲 第6張

有網友很快指出,此前已有支持用自定義賽車玩《火箭聯盟》的RLBot,效果挺不錯。

在RLBot中,同樣允許玩家用自己編寫的代碼來控制賽車。

而且,玩家能通過遊戲場景的反饋,對代碼進行反覆調試,最終做出想要的機器人賽車。

這款超火的遊戲,AI只用4小時,秀出人類花1年才達到的水平 遊戲 第7張

事實上,作者在訓練強化學習模型前,並非沒有考慮過RLBot。

畢竟,這個框架支持各種語言,讓玩家能編寫出想要的機器人賽車。

這款超火的遊戲,AI只用4小時,秀出人類花1年才達到的水平 遊戲 第8張

然而,在嘗試過RLBot後,作者還是決定基於Unity引擎,自己開發一個遊戲環境。

主要有3點原因:

  • 基於Unity引擎打造的環境,能夠自己創建想要的遊戲場景。
  • 此外,在RLBot中,基於實時數據訓練AI模型的速度,其實並不快。而如果遊戲再大點,在RLBot中訓練可能就會出現問題了。
  • 自己創建的遊戲環境,可以並行訓練遊戲中的多個實例。相比之下,RLBot基於《火箭聯盟》搭建,只能同時玩1場遊戲,無法並行訓練。
  • 那麼,在RoboLeague環境中,如何訓練出這樣一個「聰明的」智能體?

      基於強化學習,訓練出智能體

    在訓練之前,先來了解一下,《火箭聯盟》中大致有些什麼規則,玩家又是怎麼射門的。

    這款超火的遊戲,AI只用4小時,秀出人類花1年才達到的水平 遊戲 第9張

    整體來說,這是一個玩家通過控制賽車,來進球射門的遊戲。

    其中,這裡面的賽車和球,符合一些物理規則:

    球具有彈性,可以從地面/牆壁反彈、受摩擦力和重力影響
    賽車在地面可以加速制動,在空中的控制也符合物理條件
    賽車的輪子具有某種黏力,可以在牆壁上運動不脫落下來

    而《火箭聯盟》中的一些高級玩家,通常會想辦法讓自己和球不落地,完成空中帶球射門。

    但要達到這樣的水平,不僅要對場地有足夠的了解,操作水平也必須在線。

    這其中,作者利用了強化學習中的「獎勵機制」,來告訴智能體應該怎麼做。

    智能體並不需要基於先驗知識完成操作,而會通過嘗試各種隨機行為,試圖達成「獎勵機制」的要求。

    而作者給出的唯一一個獎勵機制,就是保證賽車和球不落地,即「活著」。

    因為只要不落地,空中帶球的條件就完成了大半。

    這款超火的遊戲,AI只用4小時,秀出人類花1年才達到的水平 遊戲 第10張

    在反覆嘗試後,智能體發現,只要讓賽車盡可能垂直豎在空中,同時保持顛球的穩定,就能保證「活著」。

    也正是在這樣的獎勵機制下,只用4個小時(約50M次運行),賽車就完成了自己的目標。

    如果想要讓智能體完成更龐雜的任務,如空中帶球射門等,也只需要找到對應的獎勵機制,利用強化學習訓練就能達成。

    目前,作者已經將RoboLeague開源。

    也就是說,如果你想要訓練出符合自己要求的深度強化學習模型,那麼用這個遊戲環境,就能進行訓練。

      關於作者

    作者@Roboserg,並未透露自己的真實姓名,不過此前,他已經做出了很多利用強化學習訓練出來的小型遊戲實驗。

    例如,在各種球的撞擊下保持平衡的飛機:

    這款超火的遊戲,AI只用4小時,秀出人類花1年才達到的水平 遊戲 第11張

    又或者,兩個球之間的「足球」比賽:

    這款超火的遊戲,AI只用4小時,秀出人類花1年才達到的水平 遊戲 第12張

    據作者透露,他接下來還會計劃開發一款穿越飛環的遊戲。

    這款遊戲會訓練智能體穿過飛環,真正做到和大神玩家的操作無異。

    說不定,作者甚至真能用強化學習,訓練出一整個網站的小遊戲來?

    程式:
    https://github.com/roboserg/RoboLeague

    參考鏈接:
    https://www.reddit.com/r/MachineLearning/comments/klbvaw/p_doing_a_clone_of_rocket_league_for_ai/
    https://rlbot.org/
    https://unity.com/cn/products/machine-learning-agents

    — 完 —

    量子位 QbitAI · 頭條號簽約

    關註我們,第一時間獲知前沿科技動態

    >這款超火的遊戲,AI只用4小時,秀出人類花1年才達到的水平

    About 尋夢園
    尋夢園是台灣最大的聊天室及交友社群網站。 致力於發展能夠讓會員們彼此互動、盡情分享自我的平台。 擁有數百間不同的聊天室 ,讓您隨時隨地都能找到志同道合的好友!