正在春晚舞台上的机器人表演《武 BOT》征服了海内外网友,不过机器人还不是真正的武林高手,它只是执行了一段写好的程序。 一旦环境里多了一个台阶,或者武台稍微有点滑,这套「武术」兴许立马就会变成「摔跤」。 不过到明年春晚,可能就不是这样了。 同样是在今年春晚亮相的银河通用机器人,最近联合清华大学、北京大学,以及上海期智研究院和上海人工智能实验室的联合团队,发布了一项具身智能的最新研究视频,视频在 X 上快速获得了一百多万观看。 马斯克看了都在评论区回复 Yeah,认可体育项目的 AlphaGO 时刻正在来临,Karpathy 更是直呼这是 AI,是 AI 生成的。 上下滑动查看更多内容,Zhikai Zhang 和 Yunrui Lian 是这项工作的联合一作,目前是清华交叉信息研究院研究生在读, 非常有意思的一点是,虽然这个项目来自清华和银河通用,但他们在现实中大显身手时,使用的机器人却是来自宇树的 G1 人形机器人。 视频里,宇树 G1 站在真实的网球场上,双膝微屈,紧接着一个迅猛的滑步,精准挥拍,将一颗时速超过 15 m/s 的网球死死击回对手半场。 就像 Karpathy 说的一样,这看起来很像一段 AI 生成的仿真视频,也像是提前写好脚本的摆拍,但事实是,视频里的机器人真的在和人类选手进行多回合的拉扯。 一般来说,网球运动中,球速往往在 15-30 m/s 之间,而球与球拍的接触时间仅仅只有极短的几毫秒。 球来源的不确定性,让预先编程动作指令的方式不可行,而球的快速运动,又让人类带上 VR 眼镜实时遥控的方案实效,等我们用 VR 眼镜看清球的轨迹,再挥动手柄传达指令,球大概早就飞出界了。 LATENT 系统,Learns Athletic humanoid TEnnis skills from imperfect human motioN daTa,从不完美的人类运动数据中学习运动型人形网球技能。 也就是说,宇树 G1 完全是靠自己的 AI 模型在瞬间自主做出的物理决策,在和人类选手打网球。 这项研究可以说是具身智能领域突破性的进展,其中除了宇树 G1 的硬件能力,更关键的是团队设计的一套名为 LATENT 的训练系统,这套系统展示了机器人训练路径里的新可能:训练顶级 AI,不一定需要完美无瑕的数据。 🔗 论文&项目链接:https://zzk273.github.io/LATENT/ 逼疯机器人的「15 平米网球场」 从物理控制的精细度和动态响应的极限上来看,让机器人打网球,大概比无人驾驶还要难实现。 传统的物理 AI,训练思路都是放在真实环境里「模仿学习」。对于机器人训练,也就是让人类穿上全身动捕服,在真实的网球场上打个几天几夜,然后把数据喂给 AI,让机器人照葫芦画瓢。 但研究团队发现这套方案根本行不通。网球场太大了,全身动捕设备在如此大的范围内、面对如此剧烈的多回合运动,极难捕捉到那些细微且高精度的手腕动作。想要一份「完美」的网球动捕数据,成本相当之高。 于是,LATENT 团队采取了一种极其讨巧,甚至有点反直觉的策略。 他们没有去租昂贵的标准网球场,而是在一个只有 3m x 5m 的局促空间里搭建了动捕系统,这个面积比真实的网球场小了 17 倍。 在这个小房间里,他们找了 5 位业余网球爱好者,随性地录制了 5 个小时的碎片化动作,正手挥拍、反手挥拍、侧滑步、交叉步……没有完整的比赛和复杂的战术配合,全是一些基础的网球动作切片。 将动作捕捉器获取的动作,生成的球轨迹可视化 研究团队自己也承认,这些数据是不完美的。一方面因为人类和机器人的身体结构不同,再加上捕捉难度,挥拍时的手腕动作全是误差,有较大的不精确。 另一方面,这些动作切片根本没有教机器人「如何在合适的时机使用这些动作去赢下一球」,算不上一套完整的训练数据。 告别完美数据崇拜 就是拿着这样一套数据,LATENT 系统是怎么教会视频里的宇树 G1 打网球的。 问题的核心,在于 LATENT 的控制架构。首先是「手腕动作解耦」,即将两种运动分开处理,既然动捕数据里的手腕动作都是错的,那就干脆不要了。 在训练底层追踪器时,研究人员直接移除了控制右手腕(拿球拍那只手)的信号,甚至还故意给手腕加上随机的干扰力。这样一来,底层系统就学会了无论手腕怎么晃,我的下半身都要保持绝对的平衡和敏捷。 接着是高层策略网络,它会同时下达两道命令:一道给身体,负责漂亮的跑位;另一道直接接管右手腕,负责精准的击球微调。 机器人网球对打仿真环境 之前 5 个小时破碎的动作数据,被提炼成了一本「人类网球动作大字典(潜在动作空间)」。现在的高层策略网络就像查字典一样,遇到什么飞球,就在字典里翻找合适的滑步或挥拍动作拼凑起来去接球。 但 AI 为了赢球是不择手段的。具体来说,如果我们只给机器人定一个「把球打回去」的目标,它为了得分,可能会在那本字典里,把滑步和跳跃强行结合,跑动中疯狂切换不同的动作,呈现出一种极其诡异、抽搐的鬼畜步法。 为了保证机器人的动作像人类一样优雅自然,团队设计了一个名为「潜在动作屏障(LAB)」的机制。这就好比给 AI 画了一个无形的圈,允许你在圈内自由探索击球策略,但无法做出一些不符合物理规律的动作。 这套系统在模拟器上的表现也很不错,正手接球成功率 96.52%,反手高达 82.10%,前场和后场覆盖率分别达到 86.35% 和 89.80%。 实验结果对比,经典方法 PPO 和 MotionVAE 在这项任务上完全失效。其中 SR(Success Rate 成功率),越高越好,代表机器人能不能把球成功打回目标区域。DE(Distance Error,距离误差)越低越好,代表球落地的位置离目标点有多近,也就是打得准不准。Smth(平滑度),越低越好,测量的是关节加速度。数值越低,说明机器人的动作越像人类一样自然丝滑,而不是在原地鬼畜抽搐 。Torque(关节扭矩),越低越好,代表机器人发了多大的力。数值低意味着它懂得如何发力,这能帮助机器人省电且不伤电机。 在模拟器里打得再好,那也是纸上谈兵。真到了现实世界,一阵微风、一点球拍的重量误差,都有可能让机器人当场摔个狗啃泥。 为了完成这惊险的从模拟到现实,研究团队在模拟器里设置了大量的「动态随机化」,例如随机改变机器人的质量和重力中心,随机改变网球的质量、弹跳系数,甚至给球加上随机的空气阻力等。 更有意思的是,现实中捕捉高速网球的摄像头总会有延迟和噪点。为了应对这种情况,团队在系统中引入了「观察噪声」,系统不看球的瞬时速度,而是利用一个四帧的滑动窗口来计算平均速度,从而过滤掉延迟的观测误差。 在纯模拟环境的「左右互搏」中,两台机器人甚至能连续对拉 25 个回合。 模拟不同的球击事件 在真实的测试中,Unitree G1 走上真实球场的那一刻,一切都显得游刃有余。面对随机位置、随机速度的发球,这台机器人能够熟练运用正反手,灵活在前后场穿梭,稳稳地将球回到对手半场。 真实场景实验结果,研究进行了 20 场连续的人机对抗赛,来评估 LATENT 系统在真实网球比赛中的回球性能,每场比赛中球的初始位置和速度都是随机的。对于每个成功回球,会记录其落点位置,将其归类为前场或后场区域,并分析正手和反手击球的使用情况。 需要注意的是,在真实环境的测试中,LATENT 并不是靠调用机器人头部自带的视觉传感器,来判断球的位置。这台机器人高度需要场地里的「光学动作捕捉系统」。 他们在机器人的底座上贴满了反光标记,把底座当成一个刚体,通过场馆里的动捕系统来实时估算它在全局的三维 6D 姿态。以及网球也裹上了反光贴纸,它的空间位置和飞行轨迹能被外部的光学系统来捕捉,然后再把数据喂给机器人的 AI 大脑。 团队也提到,下一步的改进方向就是引入主动视觉,让机器人真正用自己的「眼睛」,去死死盯住那颗时速 15 米/秒的网球,还有多智能体训练框架。 虽然可以像无人驾驶一样,用雷达、各种传感器和摄像头的冗余来填补准确的底线;但人形机器人在高动态的体育竞技场上,或许只能选择给自己减负。 不敢说今天它能在网球场上赢分,明天就能走进千家万户,去应对那些充满未知与混乱的真实生活场景。但是这种粗糙的、片段化的、充满噪音的廉价数据,现在也能训练出一个像是自动驾驶般的网球机器人,进入生活或许真的不会太远。 有网友说,类似这样的技术最后可能会让网球训练变得更便宜、更普及。一些美国顶尖青少年网球选手的家庭每年可能要花费 10 万美元,用于一对一的教练指导。 有了这套系统,其中一部分训练可以实现自动化,尤其是用于重复性的基本技能练习,就像新一代的网球发球机一样。 还有网友评论说,所以就连体力劳动现在也要完蛋了吗…… 未来,如果机器人真能进军所有的体育项目,奥运会大概是这个样子。 图片来源:X@AbundanceVsWar