在当今制造业中,我们日常使用的许多产品都由机器人制造——这些多自由度机械臂沿着传送带排列,上演着精确同步的机械芭蕾。所有这些动作通常需要人工编程,耗时可能达到数百甚至数千小时。现在,谷歌DeepMind团队开发了一种名为RoboBallet的AI系统,让制造机器人能够自主决定如何工作。
传统机器人编程的挑战
规划制造机器人如何高效完成任务实际上极难自动化。你需要同时解决任务分配和调度问题——决定哪个机器人应该按什么顺序执行哪个任务。这就像是旅行商问题的加强版。此外,还有运动规划的问题;你需要确保所有这些机械臂不会相互碰撞,也不会撞到周围的各种设备。
最终,你面临着无数种可能的组合,需要同时解决三个计算难题,而非仅一个。"有一些工具可以自动化运动规划,但任务分配和调度通常需要手动完成,"谷歌DeepMind的研究工程师Matthew Lai表示。"解决这三个问题的结合正是我们在工作中要攻克的难点。"
从旅行商问题到机器人协调
Lai的团队首先生成了所谓"工作单元"的模拟样本,这是机器人团队在制造产品上执行任务的区域。工作单元包含一个工件,即机器人要在其上工作的产品,在这种情况下,这是一个放置在桌子上由铝制支架构成的产品。桌子周围随机放置了最多八台Franka Panda机械臂,每台都有7个自由度,需要在工件上完成最多40项任务。每项任务都要求机械臂的末端执行器到达正确支架的正确位置2.5厘米范围内,从正确的角度接近,然后停留片刻静止不动。这个暂停模拟了实际工作过程。
为了增加难度,团队在每个工作单元中随机放置了机器人必须避开的障碍物。"我们选择最多八台机器人,因为这是在紧密排列机器人而不使它们相互阻挡的情况下,合理的最大数量,"Lai解释道。要求机器人在工件上执行40项任务也是团队认为能代表实际工厂需求的设定。
使用最强大的强化学习算法来处理这样的设置也将是一场噩梦。Lai和他的同事找到了一种解决方法,即将所有问题转化为图结构。
图神经网络处理复杂关系
在Lai的模型中,图由节点和边组成。机器人、任务和障碍物等被视为节点。它们之间的关系被编码为单向或双向边。单向边连接机器人与任务和障碍物,因为机器人需要了解障碍物的位置以及任务是否完成。双向边连接机器人彼此之间,因为每个机器人需要知道其他机器人在每个时间步的动向,以避免碰撞或重复任务。
为了读取和理解这些图,团队使用了图神经网络,这是一种人工智能,旨在通过沿着节点间连接的边传递消息来提取节点间的关系。这简化了数据,使研究人员能够设计一个专注于最重要事项的系统:找到完成任务同时避开障碍物的最有效方法。在单个Nvidia A100 GPU上对随机生成的工作单元进行几天训练后,这个名为RoboBallet的新型工业规划AI能够在几秒钟内为复杂且前所未见的环境规划出看似可行的轨迹。
最重要的是,它具有极佳的可扩展性。
计算复杂度的突破
将传统计算方法应用于复杂问题如工厂机器人管理的挑战在于,计算难度随着系统中项目数量的增加呈指数级增长。为一台机器人计算最优轨迹相对简单。为两台机器人做同样的事情要困难得多;当数量增加到八台时,问题实际上变得难以解决。
使用RoboBallet,计算复杂度也随着系统复杂度的增加而增长,但速度要慢得多。(计算量随任务和障碍物数量的增加呈线性增长,随机器人数量呈二次增长。)根据团队的说法,这些计算应该使系统在工业规模应用中变得可行。
然而,团队想要测试他们的AI产生的计划是否有效。为了验证这一点,Lai和他的同事在一些简化的工作单元中计算了最优的任务分配、调度和运动轨迹,并将其与RoboBallet的结果进行了比较。在执行时间方面——这可能是制造业中最重要的指标——AI的表现非常接近人类工程师的水平。它并没有比他们做得更好,只是提供了更快速的答案。
团队还在真实的物理设置中测试了RoboBallet的计划,即四台Panda机器人在一个铝制工件上工作,其效果与模拟中一样好。但Lai表示,它不仅能加快机器人编程过程。
优化工厂设计与故障恢复
根据DeepMind团队的说法,RoboBallet还能让我们设计更好的工作单元。"因为它运行速度极快,设计师几乎可以实时尝试不同的布局以及机器人的不同放置或选择,"Lai说。这样,工厂工程师就能准确了解通过在工作单元中添加另一台机器人或选择不同类型的机器人可以节省多少时间。RoboBallet可以做的另一件事是即时重新编程工作单元,当一台机器人发生故障时,允许其他机器人接替工作。
尽管如此,在RoboBallet进入工厂之前,仍有一些问题需要解决。"我们做了几项简化,"Lai承认。第一是将障碍物分解为立方体。工件本身也是立方体。虽然这在某种程度上代表了工厂中的障碍物和设备,但许多可能的工件具有更有机的形状。"用更灵活的方式表示它们会更好,比如网格图或点云,"Lai说。然而,这可能会导致RoboBallet惊人的速度下降。
另一个问题是Lai实验中的机器人是相同的,而在现实世界的工作单元中,机器人团队通常是异构的。"这就是为什么现实世界的应用需要针对特定类型的应用进行额外的研究和工程,"Lai说。但他补充说,当前的RoboBallet已经考虑了此类适应性——它可以轻松扩展以支持它们。一旦完成,他希望这将使工厂更快且更加灵活。
"系统需要获得工作单元模型、工件模型以及需要完成的任务列表——基于这些信息,RoboBallet将能够生成完整的计划,"Lai说。
技术创新与产业影响
RoboBallet代表了人工智能与制造业融合的重要突破。传统的机器人协调系统往往需要大量的人工干预和计算资源,而DeepMind的解决方案通过图神经网络实现了高效的多机器人协同。这一技术不仅能够显著提高生产效率,还能降低工厂对专业编程人员的依赖,使中小型企业也能享受到先进自动化技术带来的好处。
从产业角度看,RoboBallet的应用将推动制造业向更柔性、更智能的方向发展。工厂可以根据订单变化快速调整生产线配置,无需重新进行复杂的编程工作。当设备出现故障时,系统可以自动重新分配任务,最大限度地减少生产中断。这种灵活性对于应对市场变化和提高生产韧性至关重要。
未来发展与挑战
尽管RoboBallet取得了显著进展,但要实现大规模工业应用仍面临一些技术挑战。首先是异构机器人的支持问题。现实工厂中,不同类型、不同规格的机器人需要协同工作,这要求AI系统具备更强的适应性和通用性。DeepMind团队已经意识到这一点,并设计了可扩展的架构,但实际应用中仍需针对具体场景进行大量工程化工作。
其次是非结构化环境下的感知与决策能力。当前系统主要针对立方体障碍物和规则工件进行了优化,而实际工厂环境往往包含各种不规则形状的物体和动态变化的场景。提高系统在复杂环境中的鲁棒性是未来研究的重点方向之一。
最后是安全性与可靠性问题。在工业环境中,任何决策失误都可能导致严重的生产事故甚至人员伤害。因此,RoboBallet在实际部署前需要经过严格的安全验证和测试,确保其在各种异常情况下都能做出正确的反应。
结论
DeepMind的RoboBallet系统代表了人工智能在制造业应用中的前沿进展,它通过创新的图神经网络架构解决了多机器人协同中的核心难题。虽然仍面临一些技术挑战,但其展现出的高效性和可扩展性为未来智能制造提供了新的可能性。随着技术的不断完善和优化,我们有理由相信,AI驱动的机器人协作系统将逐步从实验室走向工厂,推动制造业进入一个更加智能、高效和灵活的新时代。