波士顿动力CTO谈机器人研发细节:摔跟头是好事
2023-08-07 11:30 来源:机器人大讲堂
据科技网站IEEE Spectrum报道,近期,IEEE Spectrum以YouTube热议的机器人跌倒视频为起点,采访了敏捷机器人和波士顿动力的三位机器人研发专家。三位研发专家详细解释了公众关心的机器人跌倒原因及研发人员的态度。
此前,波士顿动力公司发布的机器人跌倒视频在YouTube上广为流传。公众对机器人跌倒持有不同的态度,部分公众只当作搞笑视频,部分公众则对机器人研发人员工作的可靠性提出质疑。
敏捷机器人公司(Agility Robotics)首席机器人官Jonathan Hurst、客户体验主管Bambi Brewer和波士顿动力公司(Boston Dynamics)首席技术官Aaron Saunders则在此次采访中对公众疑问作出回应。三位机器人研发专家的讨论以机器人跌倒为中心,主要包括了解机器人跌倒的原因,以及面对不同类型的原因,研发人员所采取的解决措施。
图中从左到右依次为Jonathan Hurst、Bambi Brewer和Aaron Saunders
在采访中,三位机器人研究人员均表示,人们无需对机器人跌倒过度紧张。一方面,机器人跌倒是机器人研究过程中的重要一环,通过机器人跌倒的速度、角度及场景等,研究机器人跌倒的原因,并更新系统算法,设置相应的跌倒保护机制等。
另一方面,对于部分意外失误,研究人员进行了分情况讨论:如果失误场景值得学习,那么研究人员应回溯意外发生场景,并不断优化机器人;如果失误仅是意外或者在合理范围内,那么研究人员会继续原有的研究进程。
图为Youtube视频中机器人在比赛中跌倒的视频截图
此外,对于公众的关注,三位研发人员也表示,公众可以用平常心看待机器人跌倒。对于机器人研发人员而言,机器人跌倒是研发过程中的常事。尤其在研发过程中,机器人暴露的问题越多越好。如果一款机器人产品将面向公众发布,研发人员也会尽可能在研发前期解决各项问题,向公众发布一款安全成熟的机器人产品。
以下为此次采访的汇总:
▍一、对于机器人跌倒,公众倾向于围观,而研究人员倾向于纠错
问题一:为什么人们对机器人跌倒反应如此强烈?
Jonathan Hurst:人们会发布宠物或孩子的有趣视频,比如宠物做出了一些你很认同的反应等。当它是一个通常不会这样做的机器人时,这就更有意思了。因此,当Digit看起来像是“我厌倦了做这项工作”并倒下时,人们会说“机器人我懂你”。但是当人们对机器人跌倒习以为常的时候,人们的新鲜感就没了。
Bambi Brewer:制造机器人的专家花了很多时间试图展示机器人最好的一面。机器人的移动方式看起来是机械性的重复。所以公众看到机器人跌倒的时候会觉得很有趣,因为公众更习惯的是机器人一板一眼的动作。
图为机器人跌倒
问题二:机器人跌倒和人类跌倒有何不同?
Jonathan Hurst:我现在对机器人的看法就像一个两岁半的孩子。他们比成年人更频繁地跌倒,这并不严重。机器人有时会磕到膝盖,有时会打破一些东西。但我认为,这是一个学习的过程,最终这些机器人会比人类更不易跌倒。但以物理学的角度而言,机器人跌倒的频率可能与人们的频率相似。
但是谈到物理学时,这实际上意味着机器人能够拥有超人的能力。机器人可以拥有接近人类的力量和速度,所以你可以用机器人承担更大的风险。
也就是说,我不在乎机器人是否会坏。但我们会在乎人是否会受伤。
问题三:你认为人形机器人以非人类的方式跌倒或许是人们对这些视频反应如此强烈的部分原因吗?
Aaron Saunders:当人类跌倒时,我们会伸出四肢,试图保护我们的头部。但是机器人可以比人类更好地处理某些类型的冲击和力。机器人跌倒时脸先着地是一个很好的例子,它看起来似乎很糟,但实际上可能并不坏。
▍二、在研究人员眼中,机器人跌倒是机器进步的契机
问题四:你的机器人跌倒有多正常?
Aaron Saunders:我们在Atlas上所做的几乎所有努力都是为了突破极限。我们不会规避跌倒,因为机器人没有跌倒意味着我们没有彻底了解机器的性能和它的问题。在我们的开发工作中,它一直在跌倒,这一方面因为我们的实验压力,另一方面因为实验环境仍然风险较小。所以,我们没有公开发布Atlas。
而对于Spot来说,跌倒可能是一种更大的风险,因为已经对外发布了。每周,我们的内部测试Spot车队都会步行约2公里,我们也将它们放在不同的测试单元中,例如在岩石上、格栅上、越过障碍物以及湿滑的地板上行走。我们希望对所有这些东西进行稳健性测试,并尝试将跌倒的情况降至最低。
图为波士顿动力公司研究人员调试Atlas机器人
问题五:你的机器人跌倒后会有什么样的后果?
Jonathan Hurst:Digit就是为了跌倒而设计的。这就是它有手臂的原因之一——以便在跌倒中幸存下来。当我们第一次设计机器人时,我们曾设想机器人或许在某个时候会掉下来,那我们如何保护它?我们曾计算需要多少填充物才能抵消电子元件的冲击力。事实证明,我们需要几英寸的填充物,导致Digit最终看起来像米其林人。
让Digit安全减速的唯一现实方法是添加一对手臂样的附件。Digit的手臂的设计目的即为在它跌倒时进行减速缓冲。
问题六:在你的开发过程中,什么时候你会想让机器人正常行走?
Aaron Saunders:当我们在重点研究其他事项时,我们会期待机器人可以正常行走。
为了让机器人成功跳跃和着陆,我们需要开发能够适应机器人整体重量和动力学的控制算法。这不再是仔细衡量机器人迈出的每一步,而是以一种非常强大的方式协调机器人整体移动的重量。因此,当Atlas能够跳跃和跑酷时,它也让行走变得更容易。几周前,我们有一位新团队成员重新将我们用于跑酷的最新控制算法应用到我们的常设算法中。通过这些新算法,我们看到机器人处理外部干扰的能力有了很大的提升。如果有人推机器人,这个新的控制算法能够思考并推理机器人即将出现的所有动态,从而Atlas在反应方面取得了巨大的进步。
问题七:机器人的跌倒,有多少是失误,有多少值得学习?
Jonathan Hurst:我们一直在寻找可以消除的错误。Digit在ProMat(美国芝加哥国际物流展)的崩溃就是其中之一。在那种情况下,研究人员确实不应该设置紧急停止。
Bambi Brewer:跌倒是有人提交错误或查看日志的点。这样技术人员就可以试图弄清楚发生了什么,以及如何确保它不会再次发生。在ProMat,Digit手臂上的编码器出了问题,现已完成更新。这个错误以前从未发生过。现在如果再次发生这种情况,机器人的手臂将冻结,并且机器人将保持直立。
Aaron Saunders:我们非常清楚Spot的能力,包括它在什么情况下可能会跌倒,机器人在跌倒后可能会做什么,以及它将如何恢复站立。Spot能够在跌落后不会断裂,并从跌倒中站起来。显然,我们也处理过一些极端的情况。曾有一位工业客户,要求Spot穿过肥皂地板。这基本等于人在冰上行走,这对任何人来说都是一个挑战。因此,我们的控制团队在我们的实验室中设置了一个湿滑的环境,即在塑料上使用食用油,然后在此环境下不断测试Spot。控制团队想出了如何检测滑倒并适应机器人步态的解决办法,跌倒的次数逐渐减少。
对于Atlas来说,跌倒次数减少通常发生在我们关心的部分之后。我们在那里学到的是跌倒之前出了什么问题。如果我们正在研究新动作,比如Atlas的空中技巧,那么我们当然要做大量的工作来弄清楚为什么会跌倒。但是,如果我们只是在实验室里走来走去,然后出现一些失误,那么不必紧张。我们可以让它重新站起来,重置,然后继续实验。
我们不怕跌倒,也不用担心机器人会坏掉。我们的机器人经常跌倒。很久以前,我们就决定,我们要制造可以跌倒但不会断裂的机器人。如果你能完成把你的机器人反复推向失败的循环,研究故障发生的原因,并修复它,你就会进步,直到机器人不再跌倒。但是,如果你造一台永不跌倒的机器人,那么你将永远无法学会让你的机器人不跌倒。
问题八:如果机器人知道它即将坠落,它能做些什么来保护自己,保护周围的人?
Jonathan Hurst:当你知道自己即将跌倒时,人会采取一些策略。如果一个人抱着婴儿从楼梯上摔下来,他们会有直觉和本能来拯救婴儿,即使这可能伤害自己。我们可以设计我们的机器人做同样的事情,让在它掉落时保护周围的人。
Bambi Brewer:除了机器人安全跌倒之外,我们还需要向人们宣传一个非常明确的观点:不要试图帮助机器人,只需退后,让机器人自然跌倒。
Jonathan Hurst:还有就是要尽早跌倒。如果人不确定自己能否保持平衡,人可能会迈出一步来尝试纠正,然后朝向一个不受控制的方向前进。所以当机器人开始失去平衡时,我们可以设置算法要求机器人原地跌倒。
Aaron Saunders:在控制系统内部我们设置了报警机制,当机器人开始做控制器没有要求它做的事情时,即触发报警。例如机器人处于错误的速度或角度。如果机器人可能跌倒,我们将运行另一个控制器阻止其跌倒,例如摆动手臂、移动上半身或者将腿伸出。如果失败了,还有最后一个控制器。最后一个控制器是设置机器人姿势和关节刚度的状态,以确保最小化它对自己和外部造成的伤害。对于不同机器人和不同类型的跌倒,我们设置的程序也是不同的。如果你仔细看过Atlas跌倒的视频,你可能会看到机器人把自己塞进一个小球里。这是程序设置的形状和关节强度,有助于机器人减轻冲击的同时保护周围的物体。
然而,有时这些跌倒的发生是因为机器人断裂。对于Atlas,我们肯定有断裂的情况。在这一点上,我还没有好的答案。
▍三、用平常心看待机器人跌倒
问题九:下次有人形机器人跌倒的视频上热门时,你希望观看该视频的人知道什么?
Jonathan Hurst:如果Digit倒下了,我希望人们知道,这对机器人工程师来说是常事。
Bambi Brewer:我想让人们知道,当机器人在真正世界上做真实的事情时,意想不到的事情会发生。你会看到一些跌倒,但这也是机器人学习在现实环境中长时间跑步的一部分。这是意料之中的,这表明你没有在表演。
Aaron Saunders:我认为人们应该认识到,设备时有故障是正常的。设备可以改进,并且随着时间的推移,设备也会不断迭代。因此,当人们看到这些故障时,这可能是机器人从未经历过的情况。他们应该知道我们正在收集所有的故障信息,不断改进和迭代机器人,他们现在看到的并不代表未来机器人发布最终状态。那一次的机器人故障仅代表了那时的技术所处的位置。
我认为我们应当平衡对机器人的任务要求和期望值。人们想要一个执行新任务的机器人,如果机器人一旦出现失败,他们就会非常紧张。如果我们希望机器人能不断执行新的任务,不断迭代,丰富我们的生活,成为我们的工具,我们就需要依靠时间来不断训练它的能力。因为这是新兴技术,而不是既定技术。
人们不需要对机器人跌倒过于紧张,当然,我们也会努力让我们的机器人安全可靠。
图为波士顿动力公司Atlas机器人
▍结语:机器人研发需要直面每一次跌倒
以Atlas机器人为例,在2016年面世时,它走路踉踉跄跄,到后来经逐步迭代改进后,Atlas可以完成一次完美的跑酷。期间Atlas也有各种失败,比如因为腿部液压管爆裂而摔倒等等。面对这些失败,Atlas的工程师说,机器人失败是最奇妙的部分之一,每一次失败都有机会让机器人变得更好、更强大。所以在不断的跌倒、修复与调试之后,Atlas才能完成一次近乎完美的跑酷。
从公众角度来看,公众对机器人跌倒的讨论似乎也对机器人投射了类似人的情感,而不是仅视为冷冰冰的机器,所以会衍生诸多讨论。从研究人员角度出发,绝大部分机器人的失误都可以发掘原因,对机器人进行调试与改进。只有做好基础研发,机器人产业才能持续健康发展。