方法介紹
該智能體由一個低級技能庫和一個高級控制器組成。低級技能庫專注於乒乓球的某個特定方面,例如正手上旋球、反手瞄準或正手發球。除了包含訓練策略,該研究還在線下和線上收集和存儲有關每個低級技能的優勢、劣勢和局限性的信息。而負責協調低級技能的高級控制器會根據當前遊戲統計數據、技能描述選擇最佳技能。
此外,該研究還收集了少量的人類和人類對打的比賽數據,作為初始任務條件的種子,數據集包括位置、速度和旋轉的信息。然後使用強化學習在模擬環境中訓練智能體,並採用一些現有技術,將策略無縫部署到真實硬件中。
該智能體與人類一起對打以生成更多訓練數據,隨著機器人的持續學習,遊戲標準變得越來越複雜,以此讓智能體學習越來越複雜的動作。這種混合的"模擬-現實"循環創建了一個自動教學,使機器人的技能隨著時間的推移不斷提高。
分層控制
分層控制主要包含以下部分:
- 乒乓球打法:高級控制器(HLC,high-level controller)首先決定使用哪種打法(正手還是反手);
- 調整:根據與對手比賽中的統計數據,在線維護每個HLC的偏好(H值);
- 選擇最有效的技能:HLC根據調整後的H值對入圍的LLC進行抽樣;
- 更新:H值和對手統計數據會持續更新,直至比賽結束。
結果
研究者將該智能體與29名不同水平的乒乓選手進行了對比,選手包括初學者、中級、高級和高級+技能。人類選手按照標準乒乓球規則與機器人進行了三場比賽,但由於機器人無法發球,因此規則稍作修改。
面對所有對手,機器人贏得了45%的比賽(match)和46%的單局勝利(game)。按照技能水平細分,機器人贏得了與初學者的所有比賽,輸掉了與高級和高級+選手的所有比賽,贏得了55%與中級選手的比賽。這表明該智能體在乒乓球回合中達到了中級人類選手的水平。
機器人打不過高級玩家的原因在於物理和技術的限制,包括反應速度,相機感應能力,旋轉處理等,這是很難在模擬環境中準確建模的。
與機器人對打,也很吸引人
研究參與者表示,他們非常享受與機器人一起對打,並在"有趣"和"吸引人"方面給予了機器人很高的評價。他們也一致表示"非常願意"再次與機器人對打。在自由時間裡,他們平均在5分鐘的時間裡與機器人玩了4分06秒。
機器人不擅長下旋球
技能最好的參與者提到,機器人不擅長處理下旋。為了測試這一觀察結果,研究人員根據球的旋轉繪製了機器人的著陸率,根據結果可以看到,機器人在面對更多的下旋球時,著陸率大幅下降。這一缺陷部分是由於機器人在處理低球時,為了避免與桌子碰撞導致的,其次是實時確定球的旋轉確實很難。