多代理路径寻找(Multi-agent path finding/MAPF)已在人工智能、机器人、理论计算机科学和实际操作研究中得到大量的研究。本文讨论了在将MAPF方法推广到实际场景时出现的问题与解决这些问题的四个研究方向。我们强调的是解决这些问题的重要性,而不是为MAPF问题的标准模型开发更快的方法。
一、引言
多代理路径寻找(MAPF,也叫多代理寻径)在人工智能、机器人、理论计算机科学和实际操作研究中得到大量的研究。(标准)MAPF的任务是为多个代理(agent)找到在给定图(graph)中从其当前顶点(vertices)到其目标而不与其它代理发生碰撞的路径,同时优化成本函数(cost function)。现有的 MAPF 使用的方法包括:从可满足性减少问题(reductions to problems from
satisfiability)、整数线性规划(integer linear programming)、回答集编程(answer set programming)[Yu and LaValle, 2013b; Erdem et al., 2013; Surynek, 2015]、最优/有限次优(optimal,bounded-suboptimal)或次优搜索方法(suboptimal search method)[Silver, 2005; Sturtevant and Buro, 2006; Ryan, 2008; Wang and Botea, 2008; Standley, 2010; Standley and Korf, 2011; Wang and Botea, 2011; Luna and Bekris, 2011; Sharon et al., 2013; de Wilde et al., 2013; Barer et al., 2014; Goldenberg et al., 2014; Wagner and Choset, 2015; Boyarski et al., 2015; Sharon et al., 2015]。
我们最近研究了将 MAPF 推广到实际场景时出现的各种问题,包括 Kiva(Amazon Robotics)仓库系统[Wurman et al., 2008](图1)和自动飞行器牵引车[Morris et al., 2016]。这些问题可以分为两个一般问题:
为 MAPF 问题的标准模型开发更快的方法是不够的,因为在许多实际情况下,可以利用新的结构或需要新的问题模型。
仅将 MAPF 或其新的模型作为组合优化问题进行研究是不够的,因为所产生的 MAPF 解决方案也需要执行。
我们从不同的角度讨论了解决这两个问题的四个研究方向:
1.在许多实际的多代理系统中,在为所有代理找到最佳路径之前,代理先被划分成组(team),然后给每个组分配特定的目标,每个代理需要从所在的组中被指定一个目标。我们已经为不同组的代理制定了组合目标分配和路径查找(TAPF/target assignment and path finding)问题来解决这个困难。我们还开发了一个最佳 TAPF 方法,它可以扩展到几十个组和数百个代理[Ma and Koenig, 2016]。
2.在许多实际的多代理系统中,代理是匿名的(可交换的),但是它们的有效载荷是非匿名的(不可交换的),并且需要被传递给给定的目标。代理通常可以在这样的系统中交换其有效载荷。作为第一次尝试,我们设计了包裹交换机器人路由(package-exchange robot routing/PERR)问题,以解决更多一般化的(允许有效载荷转移的)运输问题[Ma et al., 2016]。在这篇文章中,我们还证明了近似最优 MAPF 解的困难性(复杂度)。
3.在许多实际的多代理系统中,代理运动(agent motions)的一致性和代理运动的结果可预测性是重要的(特别是在由人和代理共享的工作空间中),但是现有的 MAPF 方法没有考虑这一点。我们已经分两个阶段探索了给定 MAPF 例子的问题结构:在第一阶段,我们开发了一种为代理寻找路径的方案,其中包含了由用户提供的许多带边缘的高速公路(highways),这个方案达到了代理运动的一致性和可预测性[Cohen et al., 2015];在第二阶段,我们开发了自动生成高速公路的方法[Cohen et al., 2016]。
4.MAPF 的灵感主要来源于多机器人系统的导航或运动规划模块。然而,MAPF 解决方案的最优性或有限次优性不一定意味着它们的鲁棒性,特别是考虑到现实中机器人不完美的规划执行(plan-execution)能力。我们开发了一个框架,它能有效地后期处理(postprocesses)MAPF 方法的输出,用于创建一个可以由实际的多机器人系统执行的规划执行安排。
为了将 MAPF 方法推广到实际的场景,我们现在展示这些研究方向的实用性,以证明解决这两个问题与开发更快的 MAPF 问题的标准模型方法一样重要(甚至更重要)。
二、代理组的目标分配和路径查找(TAPF)的组合
一般来说,是按照代理所在的每个组分配目标。代理先被划分到组中,然后每个代理需要从所在的组中被指定一个目标,以便得到代理从当前顶点到其目标的路径来优化成本函数。例如,在 Kiva 仓库系统中,将存储舱从仓库搬运到新存储位置的驾驶单元(drive unit)会形成一个组,因为它们中的每一个需要被分配一个可用的存储位置。以前的 MAPF 方法假设存在目标分配程序,使得每个代理预先被分配一个目标,但是为了实现最优性,我们建立了 TAPF 模型,它整合了目标分配和路径寻找问题并且为它们定义了一个共同的目标。在 TAPF 中,代理被分到各组中,每个组的目标数量与该组中的代理数量相同。TAPF 的任务是将目标分配给代理,并规划代理从当前顶点到其目标的不会发生碰撞的路径,使得每个代理恰好移动到其所在组的一个目标,从而组中的所有目标被访问,且最大完成时间(当所有代理已经到达其目标并停止移动时的最早时间步长)被最小化。组中的每个代理都可以被分配到所在组的目标,并且同一组中的代理因此是可交换的。然而,不同组中的代理不可交换。TAPF 可以被视为(标准)MAPF 和 MAPF 的匿名变体的一般化:
·来自 TAPF的(标准)MAPF 结果,如果每个组仅由一个代理组成,则组的数量等于代理的数量。目标到代理的分配是预先确定的,因此代理是非匿名的(不可交换的)。
·如果只有一个组(包含所有代理),则 MAPF 的匿名变量(也称为目标不变的 MAPF)来自 TAPF。代理可以被分配任何目标,因此是可交换的。它可以在多项式时间内用基于流的 MAPF 方法(flow-based MAPF method)得到最优解[Yu and LaValle, 2013a; Turpin et al., 2014].
当前最先进的最优 TAPF 方法——称为基于碰撞的最小成本流(Conflict-Based Min-Cost Flow)[Ma and Koenig, 2016]——结合了搜索和基于流的 MAPF 方法。它可以推广到几十个组和数百个代理。
三、MAPF 的包裹交换机器人路由(PERR)和新的复杂度计算结果
代理通常是匿名的,但携带被分配目标的有效载荷(包裹),因此是非匿名的。例如,在 Kiva 仓库系统中,驾驶单元是匿名的,但是它们携带的存储舱被分配了存储位置,因此是非匿名的。如果每个代理都携带一个包裹,则该问题相当于(标准)MAPF。实际上,包裹通常可以在代理之间传递,这导致更一般的运输问题,例如,带有换乘的乘客共享乘车[Coltin and Veloso, 2014]和在办公室中使用机器人的包裹递送[Veloso et al., 2015]。我们已经将 PERR 作为理解这些问题的第一步[Ma et al., 2016]。在 PERR 中,每个代理运载一个包裹,相邻顶点中的任何两个代理可以交换其包裹,并且每个包需裹要被递送到给定目标。PERR 因此可以被视为(标准)MAPF 的改进版:
·PERR 中的包裹可以被视为在(标准)MAPF 中的自己移动的代理。
·允许在相邻顶点中的两个包裹在 PERR 中交换它们的顶点,但是在相邻顶点中的两个代理不允许在(标准)MAPF 中交换它们的顶点。
K-PERR 是 PERR 的一般化,其中包裹被分成 K 个类型,并且相同类型的包裹是可交换的。因为在 TAPF 中,代理被分到组中,并且同一团队中的代理是可交换的,所以 K-PERR 可以被视为对 K 个组的 TAPF 的改版,同样的原理,PERR 可以被视为(标准)MAPF 的改版。我们已经证明了近似最佳 PERR 和 K-PERR 解的困难性(对于K≥2)。我们的研究的一个推论是:在任何因子小于4/3内的最大完工时间最小化,近似 MAPF 和 TAPF 是 NP-hard 的,即使是只有两个团队的 TAPF。我们还证明了向 MAPF 添加交换操作不会在理论上减少其复杂度,但使得 PERR 比 MAPF 更容易解决。由此产生的在不同的实际场景中的连续问题:「一个有很多包裹的代理」产生经典的农村邮递员问题(rural postman problem);「代理与包裹一样多」产生 MAPF、TAPF 或 PERR。了解这两个极端问题有助于我们解决一般问题,正如其它许多真实世界任务的要求一样。
四、探索问题的结构和运动的可预测性
代理与人共享工作空间,它们运动的一致性和其运动结果的可预测性对于人类的安全是重要的,因此不考虑现有的 MAPF 方法。这促使我们探索给定的 MAPF 例子的问题结构,并设计一个激励代理沿着用户提供的边缘(edge)集合(称为高速公路)移动的方案[Cohen et al., 2015]。我们在简单的膨胀方案(inflation scheme)的背景下使用基于经验图(experience graph)的高速公路[Phillips et al., 2012]的想法,以导出新的启发值(heuristic values),这个值用来激励 MAPF 方法返回包括高速公路边缘的路径,这种方法能够避免代理之间的迎面碰撞(head-to-head collisions),并实现其运动的一致性和可预测性。例如,在 Kiva 仓库系统中,我们可以沿着存储位置之间的狭窄通道设计高速公路,如图2中的箭头所示。我们已经在模拟的 Kiva 仓库系统中证明,这样的高速公路能够显著加速 MAPF 方法,同时保持期望的 MAPF 解决方案成本的有限次优性。 TAPF 和 PERR 例子的问题结构也可以利用相同的方法。在可行性研究中,我们还开发了与用户提供公路相媲美的自动生成公路的方法。
五、解决不完美的规划执行能力
最先进的 MAPF 或 TAPF 方法可以在合理的计算时间内为数百个代理找到最佳的或者在用户提供的次优性保证下的不会发生碰撞的路径。它们甚至在杂乱而紧凑的环境中也能正常工作,如Kiva 仓库系统。然而,代理通常具有不完美的规划执行能力,并且不能完美地同步它们的运动,这可以导致频繁的重新规划并浪费时间。因此,我们提出了一个框架,使用一个简单的时间网络来有效地后期处理 MAPF 解决方案并创建一个规划执行安排,这适用于非完整机器人(non-holonomic robot),考虑到它们的最大的平移和旋转速度,提供了一个机器人之间安全距离和松弛边界(定义为最新和最早进入时间的地点的差异)的保证,以缓解不完美的规划执行并避免在许多情况下的时间密集的重新规划[Honig ¨ et al., 2016]。这个框架已经在仿真和真实机器人中得到评估。TAPF 和 PERR 方法也可以在同一框架中应用。未来工作中要解决的问题包括增加用户提供的安全距离、额外的运动约束、不确定性规划和重新规划。
六、结论
我们讨论了四个研究方向,以解决当将 MAPF 方法推广到实际场景中和探索问题结构或现有 MAPF 方法时出现的问题。我们的目标是为在 MAPF 领域工作的研究人员指出有趣的研究方向。