24岁浙大毕业生教双足机器人Cassie 蹲伏走路和载重走路!应用于“最后一公里快递”和灾后搜救
当机器人遇见强化学习,会碰出怎样的火花?
一名叫 Cassie 的机器人,给出了生动演绎。
图 | Cassie(来源:受访者)
最近,24 岁的中国南昌小伙李钟毓和其所在团队,用强化学习教 Cassie 走路 ,目前它已学会蹲伏走路和载重走路等。
(来源:受访者)
相关论文以 《双足机器人鲁棒参数化运动控制的强化学习》(Reinforcement Learning for Robust Parameterized Locomotion Control of Bipedal Robots)为题,已被机器人国际学术顶会 ICRA 收录。
图 | 相关实验(来源:受访者)
通过强化学习,它能自己走路,并能进行自我恢复。在现实世界中,通过反复试验来训练大型机器人会很危险,为解决这些问题,李钟毓所在小组使用了两个不同的仿真环境。
图 | 室内试验(来源:受访者)
研究中,一个虚拟版本的 Cassie,通过与环境交互产生的大量数据,来学习稳定的步态。
习得的步态控制器,被转移到名为 SimMechanics 的第二个仿真环境中进行验证,该环境有更高的准确性,可用以模拟现实世界的物理过程,但是会减慢仿真运行速度。
而通过使用在仿真环境中学习的步态控制器,Cassie 能非常平稳地行走,且无需进行任何额外微调。它不仅能像人类一样前后左右地走,还能蹲着走,也能承受意料之外的负载,更能从强行推动造成的失稳状态中恢复过来。
比如,在测试期间,Cassie 损坏了它右腿的两个电机,但它仍能调整其步行策略、并进行适应。
▍机器人如何更鲁棒?答案是强化学习
Cassie 是李钟毓所在的 Hybrid Robotics Group 实验室、从美国 Agility Robotics 公司买来的,它大概有一米多高,内部拥有十个电机,以及二十个自由度。
图 | 实验中的 Cassie(来源:受访者)
据他介绍,Cassie 于 2017 年首次开始出售,他从 2019 年开始接触,目前已经研究两年有余。
买来后,其主要用于测试和验证不同算法,如控制算法和导航控制算法等。在李钟毓这里,Cassie 更像是一个研究平台。
事实上,足式机器人的核心正是控制算法。研究中,李钟毓主要使用 Python 进行编程,主体代码由其所在小组搭建,剩余一部分基于其他学者的开源代码。
由于是二足机器人,算法控制上会更难。而该研究的创新点在于,用强化学习的方法,得到控制二足机器人步态的算法,相比传统基于模型的算法,性能可得到显著提升。
图 | 鲁棒性测试(来源:受访者)
由此带来的鲁棒性也比较强,怎么推它都不会倒,即便在几乎快要摔倒的情况下,也能快速恢复稳定状态,这也是业内首次展示出二足机器人如此稳定的性能。
在强化学习之前,传统基于模型的方法,需要很多时间和技巧给机器人做建模,尤其对于二足机器人而言,一旦其自身性质和周围环境发生改变,比如电机坏了、地面摩擦力有变化,模型很有可能就会失效。
其次,对于双足式的机器人系统,其非线性非常高,并且由于是高自由度的混合系统,每一次踏步都会受到地面冲击力,因此很难获得精确模型。
图 | 室外实验(来源:受访者)
而要想做一个实时控制算法,就要使用相对完整的动力学模型。但是,即便具备好的模型,部署在非常高自由度的非线性系统上,也很难做到较快的实时计算。
因此,使用传统方法时,很多学者都会做出权衡取舍,比如往往用简化模型来做控制算法。
这样做出的算法有两个缺点:一是无法完整利用动力学模型,无法充分发挥机器人系统的灵敏性;二是基于模型的算法,一旦超过其稳定区域,算法就会轻易崩溃。
而强化学习的优点在于,通过相对完整的机器人动力系统,Cassie 在仿真环境反复尝试后,就能获得大量和环境交互的数据,从而学会用稳定步态行走。
图 | 本次研究的核心:基于强化学习的步态控制器(来源:受访者)
如上图所示,这是本次研究提出的基于学习的步行控制器,控制器的输入包括所期望的步态参数、期望的转弯偏航速度、由期望的步态参数解码的参考步态、一段时间内的观察到的机器人状态以及控制器的输出。
另据悉,控制器可输出十个电机的期望位置,通过低通滤波器(LPF)后,可被发送到各个关节处的 PD 控制器产生期望的电机力矩。
▍两大创新,让 Cassie 可模仿各种步态
李钟毓告诉 DeepTech,该研究主要有两大创新点。
第一个创新点,在于采用了步态库,里面有各种各样不同的步行速度和步行高度的步态,比如有 1 米每秒的前进速度、0.3 米每秒的侧向行走速度、和 0.7 米的步行高度下的步态。这样就能在步态库中各取所需,从而让机器人模仿不同的参考步态,同时还能追踪参考步态的速度和步行高度。
通过步态库,在训练中使用神经网络所代表的控制器,就能控制不同的步行速度和步行高度,比如往前或者往后。此外,不同步态之间还可实现来回切换。
此外,步态库还能提供更多参考动作,Cassie 在仿真学习时,就能见到各种步态,同时还能学会在各种动作下保持平衡。
如下图所示,Cassie 滑了一跤,几乎差点摔倒,但在用安全绳把自己拉起来后,它能迅速恢复稳定步态,这个能力是前所未有的,而且李钟毓也并未就该能力,专门训练过它。
图 | Cassie 的步态(来源:受访者)
也就是说,这是 Cassie 通过在训练中模仿各种步态,并让自己从不同步态的过渡中“自摸学会”的能力,这在大部分基于模型控制算法的机器人身上很难实现。
试想一下,如果机器人自己倒在地上,没有人扶它,无论对它自己还是对周围人都非常危险。
第二个创新点在于,结合了机器人的历史输入和输出,从而实现对 Cassie 和其所在环境的在线系统辨识。
这样,控制器就能让 Cassie 适应不同的环境, 比如不同地面的摩擦力。
(来源:受访者)
测试中,Cassie 的两个电机坏了,但它仍能快速适应系统变化。再比如,把不同重物放在 Cassie 身上,即便拉着后面的安全架,它也能迅速适应这种变化。
据悉,该研究由李钟毓所在的、由 Prof. Koushil Sreenath 带领的课题组,和伯克利大学 Prof. Sergey Levine、以及 Prof. Pieter Abbeel 两个课题组合作。
李钟毓所在的小组,专注于机器人和控制算法领域,其他两个小组则是强化学习方面的专家。此外,该工作的成功也离不开团队成员程旭欣、Xue Bin Peng、Glen Berseth 的共同努力。
▍可应用于灾后搜救和快递 “最后一公里”
相比其他机器人,Cassie 有更大的运动空间,因为人类社会的环境,主要围绕人类需求而建造。而二足控制算法,能让 Cassie 在人类环境中更好地运动比如爬楼梯,这也是轮式机器人无法实现的。
具体应用中,当发生地震时,Cassie 能在塌房中做救援工作;或者在 “最后一公里” 的快递中,在此之前先用快递车运送到固定地方,但因为收件人一般在室内,这时 Cassie 就能替代快递小哥,把快递当面送给用户。
(来源:受访者)
此外,Cassie 这类二足机器人,形态上和人类相似,人类也更倾向于和它们做更好的交互,比如可以给其设计富有感情的动作,冷冰冰的机器也能变得更有温度。
李钟毓之前的论文 《动画Cassie:一个可读的动力学机器人角色》(Animated Cassie:A Dynamic Relatable Robotic Character), 首次用动画软件给 Cassie 设计了富有表情的动作,并使用基于模型的轨迹优化的算法,设计出来的动作能让 Cassie 在现实世界中复现出来,上述论文也入选了 IROS 2020 最佳娱乐应用论文。
图 | 相关论文(来源:受访者)