现代制造业中,我们日常使用的大部分产品都由机器人生产——多自由度机械臂沿着传送带排列,上演着精确同步的视觉盛宴。这些动作通常需要人工编程,耗费数百至数千小时。谷歌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的表现非常接近人工工程师的水平。它并没有比人类做得更好——只是更快地提供了答案。
团队还在四台Panda机器人处理铝制工件的现实物理设置上测试了RoboBallet计划,其效果与模拟中一样好。但Lai表示,它不仅能加快机器人编程过程。
灵活性提升
根据DeepMind团队的说法,RoboBallet还能让我们设计更好的工作单元。"因为它运行速度非常快,设计师可以几乎实时尝试不同的布局以及机器人的不同放置或选择,"Lai表示。这样,工厂工程师就能准确了解通过在工作单元中添加另一台机器人或选择不同类型的机器人可以节省多少时间。RoboBallet还能动态重新编程工作单元,当一台机器人出现故障时,让其他机器人接替工作。
尽管如此,在RoboBallet进入工厂之前,仍有一些问题需要解决。"我们做了几个简化假设,"Lai承认。首先是障碍物被分解为立方体。工件本身也是立方体。虽然这在某种程度上代表了工厂中的障碍物和设备,但许多可能的工件具有更有机的形状。"最好用更灵活的方式表示它们,如网格图或点云,"Lai说。然而,这可能会导致RoboBallet惊人的速度下降。
另一点是,Lai实验中的机器人是相同的,而现实世界的工作单元中,机器人团队通常各不相同。"这就是为什么现实世界的应用需要针对特定应用类型进行额外的研究和工程,"Lai说。但他补充说,当前的RoboBallet已经考虑到此类适应性设计——可以轻松扩展以支持它们。一旦完成,他希望这将使工厂更快且更加灵活。
"系统需要提供工作单元模型、工件模型以及需要执行的任务列表——基于这些信息,RoboBallet将能够生成完整的计划,"Lai表示。
技术突破与实际应用
RoboBallet的核心突破在于其独特的图神经网络架构,能够有效处理多机器人系统中的复杂关系。传统的机器人规划方法往往将任务分配、调度和运动规划作为独立问题处理,导致效率低下。而DeepMind的团队将这三个问题统一在一个框架中,通过图结构建模机器人、任务和障碍物之间的复杂关系。
在实际应用中,RoboBallet展现出显著优势。首先,它大幅缩短了编程时间。传统方法需要人工编写数千行代码,而RoboBallet可以在几秒钟内生成完整的工作计划。其次,它提高了生产效率,通过优化任务分配和运动路径,减少了机器人空闲时间和等待时间。第三,它增强了系统的容错能力,能够在机器人故障时快速重新分配任务,保持生产连续性。
未来发展与挑战
尽管RoboBallet取得了显著进展,但要实现全面工业应用仍面临一些挑战。首先是复杂形状的处理能力。当前系统主要基于立方体表示障碍物和工件,限制了其在具有不规则形状环境中的应用。开发更灵活的表示方法,如点云或网格图,将是未来研究方向。
其次,异构机器人系统的支持。现实工厂中,不同类型、不同能力的机器人经常协同工作。扩展RoboBallet以支持这种多样性,需要更复杂的图结构和算法优化。
最后,实时适应能力。尽管系统可以重新规划以应对机器人故障,但如何适应生产任务的变化、新产品类型的引入等动态环境,仍需进一步研究。
行业影响与前景
RoboBallet的出现标志着制造业自动化进入新阶段。随着劳动力成本上升和个性化需求增加,工厂需要更灵活、更高效的自动化解决方案。这项技术有望帮助制造商实现小批量、多品种的生产模式,快速响应市场变化。
同时,它也为人机协作开辟了新可能。通过将人类工程师从繁琐的编程任务中解放出来,RoboBallet使他们能够专注于更高价值的创新设计和优化工作,促进人机协作的良性循环。
随着技术的不断成熟和扩展,RoboBallet有望成为未来智能工厂的标准配置,推动制造业向更加智能化、柔性化的方向发展,为全球制造业转型升级提供强大动力。