乒乓球AI機(jī)器人贏了人類!正反手靈活轉(zhuǎn)換,擦網(wǎng)球高球都能接,專業(yè)教練:達(dá)到中級選手水平
谷歌DeepMind出品
白交 西風(fēng) 發(fā)自 凹非寺
量子位 | 公眾號 QbitAI
巴黎奧運(yùn)會乒乓球團(tuán)體賽如火如荼,谷歌機(jī)器人申請出戰(zhàn)——
首個達(dá)到人類競技水平的機(jī)器人Agent發(fā)布!
你看一個沒留神,就贏了專業(yè)教練一個球!

正反手快速轉(zhuǎn)換,連續(xù)進(jìn)攻也是不在話下~

面對一些突發(fā)戰(zhàn)術(shù),比如長球高球擦網(wǎng)球,也能沉穩(wěn)應(yīng)對。

實(shí)際測試中,機(jī)器人實(shí)時適應(yīng)不同選手風(fēng)格,最終贏下了與初學(xué)者的所有比賽,同中級玩家對打也有55%的勝率。
小小乒乓球,拿下!
與它對陣的美國乒乓球明星Barney J. Reed給予了高度評價:超出預(yù)期,這個機(jī)器人已經(jīng)達(dá)到中級水平。
看完它的表現(xiàn),網(wǎng)友們紛紛表示:可以買嗎?想要。



遭遇戰(zhàn)也能從容應(yīng)對
乒乓球是一項對體力和戰(zhàn)略、技巧等各方面綜合要求很高的運(yùn)動,人類也往往要經(jīng)過多年訓(xùn)練才能掌握。
因此,不同于像象棋、圍棋這種純戰(zhàn)略游戲,對于機(jī)器人而言,乒乓球成為考驗(yàn)其綜合能力的重要基準(zhǔn),比如高速運(yùn)動、實(shí)時的精準(zhǔn)控制、戰(zhàn)略決策、系統(tǒng)設(shè)計等等。
舉個例子,面對球的不同落點(diǎn),機(jī)器人需要快速移動位置;面對明顯的出界球,機(jī)器人應(yīng)該選擇不接。

團(tuán)隊找到了29個不同技能水平的乒乓球運(yùn)動員進(jìn)行了比賽,包括初學(xué)者、中級、高級和高級以上。
人類與機(jī)器人進(jìn)行了3場比賽,比賽遵循標(biāo)準(zhǔn)乒乓球規(guī)則。(不過由于機(jī)器人無法發(fā)球,整場由人類來發(fā)球)
在此之前,其實(shí)也有相應(yīng)的乒乓球機(jī)器人研究,此次谷歌機(jī)器人的特別之處在于,它能夠同從未見過的人類進(jìn)行全面的競技對決。

人類的各種打球風(fēng)格,它都能快速適應(yīng)。
比如看這位選手,比賽剛開局機(jī)器人明顯還在適應(yīng)過程中,人類以9比2的大比分擊敗機(jī)器人。

但就在下一局之后,機(jī)器人明顯熟悉了對手風(fēng)格,始終在緊緊追著比分。雙方打得也是有來有往。

最終在所有對手中,機(jī)器人贏得了所有初學(xué)者比賽,在與中級選手的比賽中勝率為55%。

雖然目前機(jī)器人還沒有辦法戰(zhàn)勝高級選手,但在人類的各種反饋中,可以看到,大家都很樂意同這個機(jī)器人玩耍。

小小乒乓球,如何拿下?
在介紹方法前,先來看一眼乒乓球機(jī)器人的硬件配置。
主體采用的是6自由度的瑞士公司ABB 1100機(jī)械臂,裝置在兩個Festo直線導(dǎo)軌上,使其能夠在平面內(nèi)移動。橫向移動導(dǎo)軌長4米,縱向移動導(dǎo)軌長2米。
機(jī)械臂上裝配了一個3D打印的球拍手柄和一個覆蓋短顆粒膠皮的球拍。

就是這么個小登西,是如何學(xué)會打乒乓球的?
總結(jié)來說,使用了結(jié)合強(qiáng)化學(xué)習(xí)和模仿學(xué)習(xí)的混合訓(xùn)練方法。
團(tuán)隊設(shè)計了分層和模塊化的策略架構(gòu),Agent包括一個低級技能庫(LLC)和一個高級控制器(HLC)。

LLC是一組專門的策略,每個策略都經(jīng)過訓(xùn)練來執(zhí)行特定的乒乓球技能,如正手擊球、反手擊球、發(fā)球等。這些LLC使用CNN架構(gòu),通過仿真環(huán)境中的進(jìn)化策略算法進(jìn)行訓(xùn)練。
訓(xùn)練過程采用了從真實(shí)世界收集的球狀態(tài)數(shù)據(jù)集,以確保模擬環(huán)境與真實(shí)環(huán)境的一致性。
而HLC負(fù)責(zé)在每次來球時選擇最合適的LLC。
包含多個組件:風(fēng)格策略,用于選擇正手或反手;旋轉(zhuǎn)分類器,用于識別來球的旋轉(zhuǎn)類型;LLC技能描述符,描述每個LLC的能力;一組啟發(fā)式策略,用于根據(jù)當(dāng)前情況shortlist候選LLC。
HLC還使用在線學(xué)習(xí)的LLC偏好來適應(yīng)對手的特點(diǎn)和彌補(bǔ)仿真到現(xiàn)實(shí)的差距。

具體來說,團(tuán)隊先是收集了少量人類比賽數(shù)據(jù),設(shè)置初始化任務(wù)條件,然后用強(qiáng)化學(xué)習(xí)在模擬環(huán)境中訓(xùn)練一個Agent,再將策略零樣本部署到真實(shí)世界中。
其中使用MuJoCo物理引擎精確模擬球和機(jī)器人動力學(xué),包括空氣阻力、Magnus效應(yīng)等,還設(shè)計處理了上旋球“校正”,通過在仿真中切換不同的球拍參數(shù)來模擬真實(shí)世界中的上旋和下旋效果。
在Agent和人類不斷對打的過程中,可以生成更多的訓(xùn)練任務(wù)條件,并重復(fù)訓(xùn)練-部署。
機(jī)器人技能逐漸提升,比賽也逐漸變得復(fù)雜,但仍基于現(xiàn)實(shí)世界的任務(wù)條件。機(jī)器人收集完數(shù)據(jù),還能發(fā)現(xiàn)其能力的不足,隨后通過在模擬環(huán)境中持續(xù)訓(xùn)練來彌補(bǔ)這些缺陷。
通過這種方法,機(jī)器人的技能可以在模擬與現(xiàn)實(shí)相結(jié)合的循環(huán)過程,自動迭代改進(jìn)。

此外,這個機(jī)器人還能追蹤對手的行為和打法來適應(yīng)不同的對手,比如對手傾向于將球打回桌子的哪一。
由此能夠嘗試不同的技巧,監(jiān)控自己的成功率,并實(shí)時調(diào)整策略。

在和人類對打?qū)嶒?yàn)中,團(tuán)隊也發(fā)現(xiàn)這個機(jī)器人有個弱點(diǎn):不擅長處理下旋球。
按照對球旋轉(zhuǎn)的估計,繪制機(jī)器人的上臺率圖,結(jié)果當(dāng)面對更多下旋球時,其上臺率顯著下降。

研究人員表示,機(jī)器人在處理弧線低且接近球桌的球時,為避免撞擊到球桌,很難處理好,而且在實(shí)時確定球的旋轉(zhuǎn)類型上也存在局限。
搞乒乓球機(jī)器人,谷歌不是第一次
研究機(jī)器人打乒乓球,谷歌很久前就開始了。團(tuán)隊相關(guān)研究還有一籮筐:

比如谷歌之前的i-Sim2Real研究中,訓(xùn)練的機(jī)器人與人類打球,最多可連續(xù)打340次不落地,相當(dāng)于連續(xù)打了4分鐘+。

其他團(tuán)隊也有過乒乓球機(jī)器人,比如這樣嬸兒的,還能發(fā)球:

以及像日本國家隊和中國臺灣的隊伍,也都有拿機(jī)器人來陪練自家奧運(yùn)選手。
那么有小伙伴就疑惑了,跟谷歌此次發(fā)布的機(jī)器人有什么區(qū)別?
有網(wǎng)友給出了解釋:
谷歌這次是關(guān)于AI Agent,通過視頻輸入來工作,而非預(yù)編程算法。


所以,什么時候能看到跟咱們國家隊對打?(Doge)
項目主頁:
https://sites.google.com/view/competitive-robot-table-tennis/home?utm_source&utm_medium&utm_campaign&utm_content&pli=1
參考鏈接:
[1]https://x.com/GoogleDeepMind/status/1821562365931855970
[2]https://x.com/arankomatsuzaki/status/1821360354653344190
[3]https://x.com/lgraesser3/status/1547942995139301376
[4]https://www.reddit.com/r/singularity/comments/1en8vrg/google_deepminds_aipowered_robot_plays_table/
[5]https://www.youtube.com/watch?v=u3L8vGMDYD8




