Transcription
主持人:好的。欢迎大家。今天非常荣幸能请到 Aaron Borger,他是 Orbital Robotics 的联合创始人兼首席执行官。他在航天领域做了大量工作,曾在 Blue Origin 公司参与 NASA 火箭上用于抛接球的机械臂项目。现在,他正在太空领域从事一些强化学习方面的工作。那么,请您开始吧。我们非常期待听到您的分享。
AARON BORGER:是的,谢谢。感谢大家的邀请。我是 Aaron Borger。我是 Orbital Robotics 的联合创始人兼首席执行官,我们是一家太空物流公司,致力于利用人工智能控制的机械臂捕获航天器,确定航天器的位置,以及如何为它们加油、维修、清除太空碎片等。
我从本科时期就开始这项工作,当时我们在亚轨道火箭上安装了机械臂,可以抛接球、方块、扳手等物体。我曾在 Blue Origin 工作了一段时间,之后攻读了专注于卫星服务的博士学位。
从长远来看,我们的愿景是将人类送离地球,并让他们迁移到月球、火星以及轨道空间站。但实现这一目标的第一步是我们需要机器人。我们需要大量的机器人来首先在月球上建造基础设施,并在轨道上建造大型空间站。
在座的各位都在地面上致力于解决这些最棘手的问题。在轨道上,情况略有不同,因为你必须确保无论发生什么,它都会发生。这在安全方面要求更高。
这是我们正在着手实现的一些更长远的愿景。我们正在开发自己制造的、符合航天标准的机械臂。然后,我们可以将其出售给任何拥有航天器并希望捕获、脱轨太空碎片或修复其他航天器的公司。
除此之外,我们还提供软件,以便他们能够确定航天器的位置,并操纵机械臂进行抓取。
我最初的工作是为这个载荷编写软件,它安装在一枚亚轨道火箭上,我们当时在太空中测试射频信号。这是我本科二年级的时候。这是一个很棒的入门项目。
之后,我参与了一些可以从这个系统中部署的机械臂项目。这些 3D 打印的部件展示了火箭的边缘。我还会展示另一张图片,上面有它们在火箭上的样子。但其理念是抓住一个球,把它拿出来,然后扔给另一个机械臂去接。
这其中的一些困难是,这是一个非常小的载荷,所以我们不得不手动制造自己的机械臂,而且作为一名本科生,我们还要修读 22 个学分。我当时还是研究生。所以很多工作都是在晚上完成的,我们只有一年的时间来完成。所以,在这么短的时间内,确实取得了很大的进展。
但与此同时,我们能够做到的是,利用深度强化学习来弄清楚如何捕捉物体。这是一个例子。我第一次尝试就成功了,所以我对此感到非常兴奋。
然后,这是从摄像机视角看到的。我们使用计算机视觉来确定物体的位置,然后如何捕捉它。这一切都是在模拟中使用深度强化学习进行训练的。右边的视频就是。你会看到它尝试了很多次,有时会失败。这就是使用深度强化学习时遇到的问题之一,很难做到 100% 完美。
你也可以看到,它就在火箭上。这是在发射升空之前。从这个项目中,我学到的很多东西就是弄清楚,深度强化学习很难做到 100% 的准确。
根据我在 Blue Origin 的一些工作经验,我曾为预测火箭发动机部件健康状况而进行人工智能机器学习研究,仅通过读取温度和压力传感器读数。但人们并不真正信任它,因为我们使用的是神经网络,而航天行业很多人非常看重 100% 的准确性。你不能——是的,它 95% 的时间都有效。但当你处理价值数百万美元的资产时,那 5% 的时间会造成巨大差异。
从那时起,我一直专注于如何保证我们能够使用神经网络并使其 100% 可靠地工作,完全确定性,而不是随机性。
这个视频还有一个很大的问题没有考虑到,我们称之为动态耦合。当你移动机械臂时,你的航天器也会移动。如果你试图用传统的逆运动学来抓取东西,而你的航天器却移开了,那将非常困难。
我们解决这个问题的一些方法是,我们可以学习传统逆运动学雅可比矩阵与末端执行器速度和每个关节速度之间的差异,然后考虑航天器对此的响应而产生的移动。
这个演示展示了我们可以为末端执行器提供速度指令,然后去抓取立方体。从那里,我们可以完全自动化,进行更多的运动规划轨迹优化,同时学习一些逆运动学。
这其中的另一个困难是,在模拟中可以做到,但在现实世界中,我们可能无法精确知道机械臂每个连杆的惯性参数。关节动力学并不完全完美。接触动力学也不完全完美,所以我们也必须考虑到这一点,这是核心问题。
我们解决这个问题的一些方法是,我们可以在模拟中进行训练,然后使用完全基于物理的模型,这样我们就能完全理解其动力学。将其发射到太空,稍微移动一下机械臂,然后去抓取一些物体,然后专注于学习轨道上收集的数据与我们用于训练的物理方程之间的差异。
这使得我们可以使用比完全从轨道收集的数据中学习整个动力学所需的数据少得多的数据。
这个视频也展示了这一点,我们在用于训练的动力学方程中添加了很多噪声。然后我们看看是否可以在模拟中进行调整。
这其中的另一部分是,所有这些视频都展示了静态的立方体或静态的航天器。但实际上,它们都在大量移动。所以我们接下来要解决的问题是轨道力学。
如果你有一个航天器在轨道上,然后是另一个航天器,如果你相对于这个航天器在更高的轨道上,你的速度实际上会更慢。如果你相对于航天器在较低的轨道上,你的速度会更快。所以我们也必须考虑到这一点。
这个视频展示了这一点。实际上,所有这些航天器都是蒙特卡洛模拟。所以所有这些航天器都由同一个神经网络控制。蓝色的箭头代表太阳能电池板,太阳能电池板的方向。我们需要将其指向太阳。而绿色的圆锥体是摄像头。所以我们正试图将其指向另一个立方体,同时确保我们不会离另一个立方体 100 米以内。
所以,我们都必须同时解决很多不同的优化问题。
有趣的一点是,这是由一个神经网络控制的。我们可以验证,在所有这些场景中,只要它从某个状态空间开始,我们就可以证明它将收敛到期望的行为,在这种情况下是:将太阳能电池板指向太阳,将摄像头指向另一个航天器,然后保持在某个安全区域内。
我们也可以将这项技术应用于多主体问题。这是一个对另一个航天器的检查。蓝色的圆圈是航天器上意想不到的位置。绿色的点是检查过的位置,所以我们可以协调所有这些不同的航天器来完成检查。
这同样由神经网络控制,我们可以证明,在仍然执行检查的情况下,我们可以最小化 delta-V,减少燃料消耗。
那么下一个问题是,当你在上面添加机械臂时会发生什么?这个视频展示了相同的技术,试图将末端执行器移动到期望的位置,同时考虑动态耦合。
所以很难看清——
观众:在上一张幻灯片中,我知道您正在浏览这些。
AARON BORGER:不,请说。
观众:如果您要深入探讨,可以暂停。但也许能稍微解释一下您是如何构建奖励的。它的目标是什么?
AARON BORGER:在这种情况下,奖励是 100% 的检查。所以我们希望所有这些点都变成绿色,都被检查过。但我们也希望最小化 delta-V 的使用。所以这就是你在顶部看到的内容。
观众:Delta-V 是什么?
AARON BORGER:Delta-V 就像燃料消耗。因为每个航天器,你只能改变你的速度一定的量。这就是 delta-V。
观众:我明白了。那么,当你有更多的航天器时,你可以将其推广到更多的航天器吗?
AARON BORGER:是的,正是如此。
观众:因为它为所有这三个生成了一个联合策略。
AARON BORGER:是的。它们都遵循相同的策略。
观众:哦,等等。所以每个代理只有一个策略,它们都遵循相同的策略。
AARON BORGER:是的,它们知道其他航天器的位置和速度。仅此而已。
观众:哦,有意思。所以它是这样解耦的。
AARON BORGER:是的。
观众:所以它们不是协调的。它们只是碰巧知道另一个在做什么。
AARON BORGER:正确。
观众:有意思。如果你对它们进行联合优化,它们会如何表现?它们会分散成金字塔形吗?
AARON BORGER:这是个好问题。是的,我还没有具体尝试过。但是的,这绝对是我们想进一步弄清楚的领域。
观众:我明白了。然后你还有空间——奖励是如何设置的?
AARON BORGER:每一步,它们都会收到奖励。因为这其中的另一个有趣之处是,如果你稀疏地提供奖励,就更难验证。我们关注的一些验证是基于李雅普诺夫的。所以我们想证明,只要奖励得到——实际上,我们更多地是使用成本而不是奖励,但我们想证明我们越来越接近这种稳定区域。
观众:酷。
AARON BORGER:关于这个还有其他问题吗?
观众:航天器的动力学是完全可控的吗?它们不是局部可控的小时间,而是完全全局可控的吗?
AARON BORGER:正确。是的,我们有 RCS,所以我们可以控制它的方向,然后你还有一个推进器。
观众:好的。明白了。
观众:所以假设这里的这些立方体,我只是在检查我的理解,它们是独立的,比如说围绕一个物体运行的机器人。如果一个立方体,橙色立方体失去了与另外两个的连接,会发生什么?
AARON BORGER:是的,这是我们正在开发的另一项技术。所以你失去了连接。你能以某种方式拥有一个安全椭圆,他们称之为。所以你想确保,如果你失去控制,你总是在一条不会与另一个航天器或你正在检查的航天器发生碰撞的轨迹上。
观众:我想,如果我理解正确的话,去中心化控制策略的一个优点是,如果其中一个停止工作,另外两个将继续覆盖。因为它们所知道的只是另一个的状态和全局覆盖。它们有一些神谕或全局覆盖的访问权限。
AARON BORGER:而且,这对于,比如说,一个试图避开你的航天器的航天器很有用。然后你可以预测它将移动到哪里,并且你的一个航天器始终处于一个可以继续检查的位置。
观众:我明白了。那么它如何推广到其他形状,比如凹面等等?
AARON BORGER:是的,所以这个,球体专注于离物体更远的地方。我们只想将我们的摄像头指向航天器上的每个点,例如。但实际上,航天器的形状可能完全不同。所以它可能有太阳能电池板。所以只要我们能绕着整个球体转,那么你就应该能够看到航天器上的每个点。
观众:我明白了。
AARON BORGER:然后下一个方面是,当我们加上机械臂时,我们也想确保我们能够控制它们并考虑这种动态耦合。所以我们控制着 ADCS。我们可以控制航天器的姿态。你可以看到,我们需要施加一个扭矩来抵消机械臂的移动。所以这同样由一个单一的神经网络控制。我们有定制的模拟器,可以考虑,基本上,动量守恒,也就是当机械臂移动时,航天器也会移动。所以我们可以将每个机械臂控制到期望的位置。然后我们也可以对这个进行蒙特卡洛模拟。所以我们想验证,当一个机械臂从任何随机位置开始时,所有关节都完全随机化,我们最终能否收敛到期望的位置。所以所有这些机械臂都试图移动到这个点。所有这些机械臂都试图移动到那个点。我们还没有碰撞避免功能,但我们也在努力添加它。
观众:我可以问个问题吗?
AARON BORGER:是的。
观众:它是如何前进的?
AARON BORGER:所以我们从一个初始速度开始,因为相对于其他航天器,你永远不会有零速度。而且我认为有趣的一点是,它们实际上以每小时 1000 英里的速度绕地球运行。但这就像你在车里一样,你没有意识到其他所有汽车也以每小时 90、80 英里的速度行驶。这完全是关于相对速度。
观众:是的,因为我认为,如果你在守恒动量,那么你的质心就不会移动,除非你有外部的落猫效应等等。所以这里,你有一些初始速度。
AARON BORGER:是的,一些初始速度。然后我们还可以控制推力。所以我们有推力或六自由度推进器。
观众:你那个上面有推进器。
AARON BORGER:是的。
观众:我明白了。它在红色立方体上?
AARON BORGER:是的。红色立方体将是我们的带推进器的航天器。
观众:明白了。
观众:那么你是如何确定相对于周围其他物体的速度的?你是使用视觉吗?
AARON BORGER:是的。这是个好问题。我会在两张幻灯片后讲到。
观众:我能问一个吗?所以你谈到减轻机械臂移动的影响。你利用它了吗?
AARON BORGER:是的。事实上,因为我们打算捕获的大多数航天器,比如说太空碎片,它们会翻滚。所以我们想找到一种方法,我们可以捕获航天器,很可能,我们可以移动一个机械臂,足够快地移动它,使我们的航天器开始旋转,匹配那个翻滚速度,然后继续捕获它。因为我们也想进行抓取生成,一旦我们固定了抓取,就很容易解除翻滚。所以是的,我们也在研究这个问题。
很多这方面的工作都在模拟中,但我们实际上有自己的机械臂。我们实际上在两周前就把它组装好了。所以我们只有基本的关节轨迹控制。这是我们的地面版本。但我们有一个符合航天标准的版本,就是这个机械臂。我们将在 2027 年初发射它。它将安装在一艘航天器上,进行机动,并执行基本的抓取和放置任务。
但为太空制造机械臂与在这里为地球制造机械臂非常不同。因为在这里,你不用担心大量的热约束。你没有辐射,而这些是我们必须担心的很多问题。所以其中一部分是,我们在每个关节都有处理器。我们还有一个板载的 NVIDIA Jetson,这样我们就可以使用我们的人工智能视觉处理以及神经网络执行。
观众:你们是如何加固你们的 Jetson 的,比如应对辐射和其他问题?
AARON BORGER:所以我们还有一些其他的处理器,它们是汽车级的。所以你会遇到单粒子翻转,基本上是辐射。你必须通过 ETC 检测到位翻转,或者我们可以有抗辐射内存板载,然后定期将其存储起来。所以如果你重置,你就可以收集它。
另一个方面是,当我们进行轨迹优化和运动规划时,我们需要进行规划,以便在任何时候,如果我们失去控制,因为我们的控制器正在重置,我们都不会处于碰撞路径上。所以这几乎就像我们不会让它完全防辐射,因为存在这样的处理器,但它们要价 20 万美元。所以对于任何想商业化的人来说,这都是不划算的。
观众:电机和其他电子设备呢?
AARON BORGER:电机,大部分情况下,你可以买到符合航天标准的版本,只要你能控制温度,使其不需要完美的温度。你可以为它们提供加热器。另一个方面是它们过热。这是我们目前正在解决的一些问题。
但你问到了视觉。你怎么知道其他物体在哪里。所以我现在就来谈谈。所以这个——等一下。好了。所以我们想使用分割,这样我们就无需针对物体进行训练,主要是因为在太空中获取物体图像非常昂贵,而且你不想收集你想要捕获的特定航天器或航天器的特定部件的图像。
另一方面,一些方法使用这些特定航天器的 CAD 模型,然后尝试生成 3D 点云并将其与航天器匹配。我们想使用这个。所以我们使用了一种少样本学习方法,你只需要视频的第一帧,就可以跟踪它。你实际上可以很容易地从热像仪中获得它。所以我们有串联的板载热像仪,这样我们就可以进行三角测量并进行深度估计。
但然后是少样本学习。你可以结合使用 CNN 和注意力机制,将第一帧与视频中的所有其他帧进行比较。所以我们可以考虑遮挡,我们可以考虑不同的光照变化。我们实际上已经在一些太空录像上测试过这个。这是几年前的。你很快就会看到一个胶囊出来,我们没有对这个胶囊进行训练。我们没有任何它的 CAD 模型。而且实际上,这个神经网络是在完全来自地球的物体上训练的。所以这是它第一次看到太空中的物体,在很多文献中,他们认为这是太空物体的分布外情况,但我们能够证明它显然不是。所以我们只需要一个关于物体位置的初始指示,然后我们就可以继续跟踪它。
是的。
观众:你如何给出初始指示?场景中可能有很多东西。它怎么知道要跟踪那个东西?
AARON BORGER:在这个演示中,有人说在这里跟踪。但实际上,我们有一个热像仪。假设你离得更远。只要你背对着地球,航天器就会是唯一与背景相比有热量的东西。
观众:关于这一点,为什么不直接使用热成像?热成像不是直接给你分割吗?
AARON BORGER:是的,但然后我们也想弄清楚它的方向。所以你想弄清楚,好的,航天器上的这个点,你可以开始做类似 SLAM 的方法,你说,好的,航天器上的这个点现在在这里旋转,然后我们可以从那里进行初始的六自由度姿态估计。
观众:如果物体占据了你的整个视场怎么办?
AARON BORGER:然后我们想开始跟踪物体上的特定组件,我们可以使用其他几种少样本学习方法。或者我们说,好的,我想训练它来跟踪所有螺丝,之类的。或者也许是一个对接端口,我们可以训练它来检测对接端口上的特定位置。
观众:当物体进入画面,然后又离开画面,然后再回来时,你有没有遇到什么问题?
AARON BORGER:不,我想——这个视频显示了吗?也许。我想这个视频显示你可以隐藏它,然后它又出现了。这主要是因为你只将当前帧与所有先前帧进行比较。所以它更多的是弄清楚这个物体看起来是什么样的。然后稍后,我看到,嘿,那个物体又出现在这些像素中了。
观众:你是否使用任何类型的导纳控制器之类的东西?因为比如说,你没有成功抓住物体,它只是挂在那里。手臂可能会因为身体的力而从主体上撕裂。所以你有没有,比如说,慢慢地闩上,如果它没有很好地抓住,它就会退后,然后在第二次或第三次尝试?
AARON BORGER:是的。你说我们有导纳控制器吗?
观众:是的。
AARON BORGER:所以我们正在为末端执行器添加力矩传感器。所以我们可以开始弄清楚,好的,你可能已经碰到了它。现在,你可以调整并正在研究控制它的策略。所以是的。
观众:所以你是在尝试训练一个非常通用的策略来抓取几乎任何东西,还是有特定的物体、材料、你想抓取的东西?
AARON BORGER:我想说我们想远离通用的基础模型。我们想远离通用的策略,因为我们想为非常具体的任务进行验证。例如,人们将花费 5000 万美元,这实际上是政府支付给公司提供航天器服务的价格。所以他们将花费这么多。我们将专注于为每个特定任务开发一个模型并为其量身定制。
所以这是一个我们正在开发的航天器示例。我们上面有机械臂。然后,实际上这个部件是设计用来连接哈勃望远镜的。所以哈勃望远镜是很久以前发射的,有几名宇航员亲自上去维修过它。但它实际上将在 2030 年、2031 年左右重返地球大气层。但我们需要在那之前捕获它,因为我们需要更多的 delta-V,因为如果你等到它离地球 200、100 公里时,就需要更多的燃料来提升它。
所以,在 2027 年、2028 年的时间范围内,我们将乘坐航天器,前往哈勃望远镜,将这些部件安装上去。那是一个星跟踪器。所以星跟踪器可以确定望远镜的姿态、方向。它有损坏的速率传感单元,基本上,它如何确定它的旋转速度,所以我们可以用这些星跟踪器来替换它。
我们实际上一直在与几位上去维修过它的宇航员以及 NASA 合作,试图说服他们我们需要拯救哈勃望远镜,部分原因是,当它落回地球时,有 1/240 的几率并非所有组件都会在大气层中烧毁。所以当它们撞击地面时,有 1/240 的几率会发生灾难。所以我们正在努力捕获它。
这是一个模拟示例。我们可以抓住这个——也许光线有点不对,但这个环叫做软捕获环。你可以上去,用机械臂捕获它,然后把它拉进来,然后提升它。
观众:所以如果你提升它,它的服务寿命会更长吗?
AARON BORGER:是的,他们估计如果我们提升它,它将再持续 15 到 20 年。而且望远镜还有大量的科学研究需要进行。
观众:所以你是否会拆卸那个载荷?比如,我猜我们会在这个视频中看到?
AARON BORGER:所以这个视频是在我们提出这个模型之前拍的——让我上去——这个模型。但是的,我们用机械臂抓住它,把它拉进来,提升它,然后把这个载荷留在那个软捕获装置上。它上面有夹子,可以夹住那个环,然后我们从中分离。基本上,在这里分离。
观众:那个有推进器吗?
AARON BORGER:这艘航天器有推进器。哈勃没有推进器,这也是我们需要提升它的部分原因。
观众:我明白了。那个小小的东西,它有燃料和其他东西吗?
AARON BORGER:是的。
观众:我有一个问题。所以当你说是抓住哈勃然后把它拉进来时,是有一个对接机制发生,还是你依赖于机械臂来——
AARON BORGER:所以这部分之所以如此复杂,是因为有一个对接组件。那就是那个软捕获机制。它是现在国际空间站上那个的前身,但目前,它没有另一侧,因为它建造得太早了。所以部分原因是我们用机械臂上去,因为 SpaceX 实际上也在考虑做一个类似的任务,但他们会在他们的龙飞船上载人。然后他们决定,让宇航员乘坐飞船上去维修会太昂贵了,不符合他们的目标。
观众:所以相关问题是,真正的问题是当你连接到它时,它就像一个刚性连接。
AARON BORGER:是的。
观众:当你上去抓住那个特定的环时,你整个周期都连接在那里,你就像一个背包?然后当它再次回来时,你可以再次提升它?
AARON BORGER:目标是我们将其提升然后放开,部分原因是我们的航天器上的燃料和我们的机械臂会增加动力学。它们有非常精确的指向,所以它们可以指向遥远的星星。所以我们会破坏动力学,基本上,让望远镜更难指向。所以我们需要释放。然后我们的航天器可以去服务另一艘航天器。是的。
观众:所以你期望对你将要服务的任何东西都有完美的模拟模型吗?还是你也必须考虑泛化到新的抓取类型和物体?
AARON BORGER:是的,这取决于这些航天器。很多它们都有所谓的发射适配器环,这是它在发射时需要与火箭连接的接口。所以它们都有相同的接口。只要我们能开发一个末端执行器来抓住它,那么我们就无需泛化到,基本上,任何形状的抓取。但其中一些可能尺寸不同,几何形状略有不同或已退化。所以我们仍然需要弄清楚在这个发射适配器环的哪个位置我们需要抓住。它也可能以不同的速率翻滚,所以我们需要弄清楚,根据它的翻滚速率,我们想如何抓住它。
但是的,所以我们不假设完美的 CAD 模型。我们也不假设完美的,基本上,我们的航天器的动力学模型。而且我们还需要对我们试图捕获的这些航天器进行一些系统识别。因为我们知道它的惯性参数。然后如果你试图捕获它,而它比你想象的更重,或者它的质量在航天器中分布不同,那么这也会搞砸你的抓取。
观众:我假设你把这个包裹放进火箭里。你是自己制造火箭,还是依赖另一家公司?
AARON BORGER:我们主要依赖 SpaceX、Blue Origin,甚至还有 Rocket Lab 和 Stoke 也在崛起。所以是的,肯定会依赖其他公司。
观众:所以如果问题,我想与风险相关,就是假设你接了一个服务合同,然后即使是人类完成的工作,也可能出现问题。有什么坏处?这会影响你吗?只是好奇。
AARON BORGER:是的。实际上,关于整个卫星服务有很多尚未解决的监管问题。其中一个就是,没有人真正确定如果你试图服务这颗卫星。如果出了问题怎么办?肯定有一些责任问题需要解决。但这也是为什么我们如此专注于我们需要保证它 100% 可靠地工作并经历所有场景。如果发生这种情况,我们该怎么办,以及性能下降。
所以,比如说,我们的一台组件坏了。我们如何在组件损坏的情况下仍然完成任务?
观众:这实际上是创业公司的优点,你可以承担风险。如果你输了,你就输了。但一家大公司会担心对他们现有业务的负面影响。
AARON BORGER:也有大公司在做这个,但他们也专注于政府合同和非常昂贵的航天器,他们可以这样做。这也是一个领域,我想你需要问这个问题,你是否需要使用人工智能和强化学习等等?他们不需要,因为他们有非常大的航天器。而且航天器的质量相对于机械臂来说很大。所以如果你有非常小的机械臂,然后你移动它们,那么你的航天器就不会移动太多。你的姿态控制系统可以处理。但如果你想降低成本,并且对小型公司来说实际上是商业上可行的,那么当你移动你的机械臂时,你得到的航天器质量更小,但你的航天器会移动。这就是为什么我们需要使用人工智能,这样我们就可以使用更少的质量并预测它将如何移动。
观众:另一个问题。所以当你移动一个机械臂来补偿另一个的运动时,你们是否计算过这是否比使用 RCS 组合更具成本效益?因为你也可以使用 RCS 来补偿动量。
AARON BORGER:是的。所以我想有几种不同的方法可以做到。一种是,你只使用正常的控制,比如传统的控制算法,逆运动学去抓取它,然后假设你的 ADCS 可以稳定你的基座并保持静止。这在你拥有非常大的航天器相对于你的机械臂时是有效的。一旦你试图做一个小得多的航天器,你就无法适当地调整 ADCS 来处理这个问题。所以是的,我认为这基本上回答了这个问题,是的,如果它很大,它就能工作。
观众:但你的机械臂是电动的,由太阳能供电,你可以再次收集,对吗?
AARON BORGER:是的。
观众:一旦没了就没了。
AARON BORGER:是的,而且有一些。所以你可以有反作用轮或控制力矩陀螺,它们只是在旋转。基本上,这也是电动的。但也有一些 RCS,你有推进器,你用推力来旋转它。这是一个有限的资源。但这也是为什么我们需要开发这项技术来捕获其他航天器,以便我们可以为它们加油,而不是将其视为有限资源。
观众:所以你谈到了更换处理器板。我想那是哈勃上的。它的设计——
AARON BORGER:哈勃或任何其他航天器。还有很多地方需要这样做。
观众:但它们的设计并不支持。
AARON BORGER:它们的设计不支持。新的升级甚至维修,轨道上的所有航天器,他们才刚刚开始说,嘿,也许我们应该设计成更容易维修。现在,它们都不是这样设计的。所以很多情况下,你必须通过射频通信,连接新的处理器,并且需要自己的电源。但即使有所有这些复杂性,与使用旧处理器相比,它仍然是值得的。
观众:所以你认为你不需要移除旧的。你只需要把它贴上去,它就能通信。哦,我明白了。这听起来更可行。
AARON BORGER:是的。
观众:当你与卫星制造商交谈时,你是否注意到他们建造卫星的方式有任何变化?也许使它们更易于服务或模块化,或者这是你试图向他们推销的东西?
AARON BORGER:有很多公司,Orbit Fab 是一个例子,它们正在建造可以安装在航天器上的加油接口。问题是,你将把它安装在一个今天发射的新航天器上,然后你必须等待 10 到 15 年才能对其进行服务。所以现在天空中所有的航天器,有数千个,都没有做好准备。所以我们正在解决今天需要解决的问题,而不是等待 15 年左右才能让一些接口变得有用。
这就是我准备的。但是的。
观众:我有一个问题。回到很多幻灯片,当你让策略进行全球覆盖,甚至比那张更早的那张。你提到你做了一些验证,以确保策略总是能在一定范围内工作。你是如何进行验证的?
AARON BORGER:很多这方面的内容,我不能说太多,因为它是一家公司 IPE,但它是基于李雅普诺夫稳定性。所以李雅普诺夫稳定性是,比如说你有一个系统。你有一个基于能量的价值函数。比如说,你有一个物体在这里。你有另一个物体。你想把这个物体移到这里。它从这里的一些状态空间开始,在这个分布的某个地方。只要你能证明它随着时间的推移越来越近,它最终会到达那里。即使它从这里开始,它也会越来越近。但你也可以证明,如果它以比某个速率更快的速度接近,渐近稳定,那么它将比某个时间更快地到达那里。如果它呈指数级地越来越近,你可以证明它会更快地到达那里。所以它是基于这个的。
观众:你说策略,我想大多数人想到策略,他们指的是你直接预测动作。而你的策略听起来,你更多的是在构建它。也许你在学习某个确定性函数或某个障碍函数。但有一些东西在幕后。
AARON BORGER:策略是基于神经网络的。
观众:是的,但它不像直接吐出一个动作。你构建它的方式有更多的结构。
AARON BORGER:稍微有点。我的意思是,我们确实会接收一个观察,吐出一个动作,然后我们需要检查这个动作,确保,一,它在物理能力范围内。然后也,比如说,即使我们已经训练它上来,抓住它。如果它移动得太快,然后说我们想向另一个航天器推得更用力,我们应该检查一下,说,这没有意义。这可能不安全。所以我们还需要做一些额外的检查。
观众:但如果你做了这些检查,而没有剩余的动作了,那么你的策略就不再有效了。
AARON BORGER:是的。
观众:你需要确保你有足够的有效动作,这是其中之一吗?即使它是一个随机策略,其中一个也必须满足你的约束。而且你必须能够找到它。
AARON BORGER:而且我们也想确保我们不使用随机策略。我们专注于确定性策略。所以我们不向动作添加随机化。我们提供输入,然后直接获取输出。
观众:如果其中一个不满足约束,你最终会怎么做?
AARON BORGER:很多时候,我们想有备用策略。所以我们进来了。出于某种原因,我们移动得太快了。然后我们有另一个策略说,减速。如果你移动得太快。如果那不起作用,那么我们就需要依赖一些传统的控制方法,但那些可以简单得多。我们不再需要在那时捕获航天器了。我们只是指向远离并推动。
观众:你会说你只训练确定性策略吗?这是在训练时,还是你只在评估时?
AARON BORGER:训练时也是。
观众:你如何探索?
AARON BORGER:探索是基于随机化我们开始的状态空间。
观众:但策略必须以你训练的方式进行探索。
AARON BORGER:所以。策略本身是确定性的,但我们仍然可以在输出上添加噪声来探索,如果输出略有不同会怎样?
观众:所以你说你做强化学习,因为 MPC 太慢了。但你也可以做 MPC,生成一系列轨迹,然后进行监督学习。为什么不这样做呢?你只是生成大量数据并进行监督学习,就像 RL 是件很麻烦的事。所以你应该避免 RL,当你能避免 RL 的时候。
AARON BORGER:从那里开始。
观众:我想知道为什么你不会采取这种策略。
AARON BORGER:嗯,我想部分原因在于,如果你试图将 MPC 用于航天器上的机械臂,你将不得不计算机械臂如何影响航天器,但还有接触动力学。
观众:但这是一个模拟器。只需进行基于采样的 MPC 或其他什么。你不需要做任何超出——模拟器为你做一切。
AARON BORGER:是的。我想,部分原因在于,当你用你的航天器靠近并试图捕获它时,你希望事先知道它会做什么,而不是试图弄清楚,好的,它是否会比我们过去看到的优化得略有不同。我知道很多火箭着陆,例如,它们使用 MPC。
观众:MPC 在这个时候。但你在模拟器里,你在模拟器里做 RL。所以你在训练时使用 MPC,如果你有一个信息量相当大的奖励函数,MPC 的效果非常好。
AARON BORGER:这是个好观点。
观众:这种技术是否普遍使用,可能就像 PC 一样?比如用 MPC 生成数据,然后模仿它。
AARON BORGER:我想问题可能在于,你如何证明它能 100% 可靠地工作?
观众:和你证明强化学习控制器一样。你可以用同样的李雅普诺夫稳定性来证明你的学习质量。
观众:所以知道你将如何抓取或者当你在太空中抓取这个物体时会发生什么,这是否就是重点?例如,如果你上去抓住它,并确定它以这个速度旋转,你知道你需要施加多少力来逆转这个速度或这个旋转?这是其中一个用例吗?
AARON BORGER:是的,部分原因在于,我们想进行抓取生成,以便我们可以轻松地解除翻滚。所以我们不想进行一个抓取,我们的手臂靠得很近,就像这样,因为那样很难解除航天器的翻滚。
你如何定义解除翻滚?是在哪个轴上?
主持人:是在所有轴上,角速度最小化到 0 或非常接近 0。
观众:所以你说你必须做一些系统识别,你可能暗示你在学习一些额外的校正到你的模拟器。或者你只是在学习哪些物理参数是正确的?你是在你的系统之上学习一个额外的世界模型吗?
AARON BORGER:是的,而且很多可能比你在地球上做的更简单。所以你可以学习一个多项式或一个矩阵,你可以将其应用于已经基于物理的模型。例如,你有一个惯性参数矩阵。它可能不完全准确或不完全精确。所以你可以学习另一个矩阵,将它们相乘,然后相乘后,最终矩阵就更准确了。所以有几种这样的方法。
观众:这比一开始就学习参数有什么好处吗?
AARON BORGER:大部分情况下,数据量更少。因为如果你已经对物理有了了解,那么在你发射它并尝试移动它,收集数据之后,你就不需要从头开始学习了。这需要更多的数据。
还有其他问题吗?
观众:让我们再次感谢 Aaron。
AARON BORGER:是的,感谢您的邀请。