小白蚁机器人如何将功补过?
编者注:
来源:《science》
原作者:JustinWerfel,1*KirstinPetersen,1,2RadhikaNagpal1,2
编译:机器人大讲堂(汤信雅、潘月)
导语:复杂的系统总是由许许多多独立的零件组成,而每个零件的简单功能组合起来却能产生巨大的能量。已知独立零件的功能从而预测它们组合起来发挥的作用是一件困难的事情,反之,已知集体作用的结果,逆推每个零件的作用更是难上加难。受白蚁的启发,我们提出了一个多智能体建筑系统,用来解决上文所述的逆推问题:用户指定所需的结构,系统可自动生成低级结构的模型,再由独立的攀爬机器人来完成结构的制造。大量的机器人只需使用局部传感,通过环境共享来分工合作。我们用三个机载遥感自主攀爬机器人演示这个方法。这项工作推进了那些能实现特定的人性化设计的复杂系统的建造。
相较于人类工程建设的精心规划和严密组织,在团队中工作的动物们则更加分散灵活。最著名的例子是白蚁:一个群落中有上百万只具有独立行为能力的个体,能建造出远超出自己身形大小的精巧复杂的结构。这些自然界的杰作启发我们设想通过类似的原理,与独立的“代理”合作,在他们对局部问题的反应的指导下,建立复杂的大型工程。这个系统使在灾区或外星等对人类危险的环境下的工程建设成为可能。
模仿白蚁工作原理设计自动化建设系统需要有设计复杂系统所需的集体行为的能力(例如,生产用户指定的特定建筑结构)。由独立“代理者”构成的复杂系统的标志是从他们的联合行动中产生的意想不到的集体行为结果,若依据每个“代理者”即每个系统组件的工作原理,这个最终结果并不容易预测。同样,如果想得到一个特定的集体行为,大体上也没有已知的办法去解析其各个组件的工作原理。
我们为用户指定结构的自动化建设提出了一个分散多智能体系统,从而为复杂系统设计提供了解决方案。任意数量的独立机器人遵循同样一套能共同产生用户需要的特定结构的简单、局部工作原理,这些工作原理产生于最终目标结构的高层次表现,为该结构的准确完成提供可靠保证。取自社会性昆虫的自然原理能用来解决设计复杂系统工程所面临的挑战——尤其是通过对共享环境的操作和感知的间接协调,还有制约可能结果空间的行为规律——这些都让分析和处理更加容易。我们首先提出这项工作的理论基础,其次完成了三个独立的机器人展示自动化建筑制造的物理实现。机器人个体的独立性反对针对单个或多个机器人自动化建设的集中检测与控制。能提供全球计算体系与精确定位信息的集中式系统在效率和运行的灵活性方面占有优势。相反,功能的分散化利于更大的可扩展性(无可能超荷的协调系统)和坚固性(没有一个可能失败的点)。
让我们区分两种类型的构建流程。在许多可能的系统轨迹都指向确保的相同最终状态的情况下,一个系统才可能产生预设的结果。或者,过程中的变化可能会导致结果的变化,而最终状态已经可以在构建过程中确定。如果重新运行该进程,结果也能改变。在人类的建设活动中,单个建筑的建造属于第一类进程:执行进程的顺序可能会发生变化,但最终的结果却能与蓝图相符。而城市的发展属于第二类进程,所有决定都在前期决策中完成,因此可能会导致截然不同的结果。这里,我们着眼设计结果已经固定的进程,但也展示我们的系统如何被用来生产随机器人的构建而变化的结构。
我们设计这个系统的动机相对简单:使仅具有有限能力的独立机器人,使用单一的预制建筑材料(固体“砖”),能够自主建造一大类重要结构。我们需要机器人能向前、向后移动,向上、向下爬行一块砖的高度;拿起一块砖头并移动,并在其自身的高度将砖块砌进墙内。机器人能够用砖块建造楼梯以便向上移动。机器人仅能局部感知,只能探测到到最近的砖块和其他机器人,而得不到远距离机器人总体结构与行为的实时状态信息。机器人仅仅通过直接检查来获取某处砖块的信息,而在它们离开之后,由于其它机器人对此处结构的修改,刚刚获得的信息就已经“过时”了。由修成网格的方形砖块形成的结构,使机器人可以跟踪它们周围的相对运动。一块作为建立群连续结构的起始点的砖块提供了一个独特的地标。我们从这个经典的、从昆虫中获取灵感的理念——协同机制中寻找方法,其中,所有通过共享环境联合操纵的交流都是隐性的,而不是显式的广播或是“代理者”间一对一的交流。特别的,我们关注于定性的协同机制,其中所有的行动都是由性质不同的刺激所引发的,比如建筑材料的不同安排。为响应砖块的现有配置,我们系统中的机器人为结构添砖加瓦。在这样做时,他们遵循的规则必须以这样一种方式构建:尽管结构中其他部分的信息已经过时、且不考虑其它机器人的数量与其行动的顺序和时间,目标结构都必须正确完成。就像一个种群中的所有昆虫遵循一致的行为模式,或其他动物服从种内社会公约一样,所有的机器人遵循相同规则的事实有助于对机器人经常会遇到并且必须能够处理的可能状况的限制避免以及结果约束。
为了确保预设的结果,机器人的工作原理基于检测到的砖结构加上目标结构的静态内部展示。用户提供所需的最终结构的图片或其他高阶表示,并指定那些位置最终需被砖块填充。离线编译步骤能将其转化为“结构路径”表示,并提供个位置的机器人运动指示——从某种意义上说,这很像交通规则。机器人按照一套固定的简单的规则,即静态结构路径表示与其他相同的任意目标结构;这些保证了结构的增长与机器人的能力保持一致。规则依赖于局部可得的信息,保持机器人在结构中自由移动和并行的能力,并防止在一个机器人的行为干扰其它机器人时出现锁死及其他故障。机器人的行为反应:它们不预先计划它们的行动,因为这在分散的多机器人模式下是合适的——否则,当一个机器人开始执行特定的任务时,它可能会发现这个任务在它到达之前已经被完成了。结构路径表示详细规定了一套路径,使机器人通过结构布局时充分考虑到它们的行为限制。尤其是,所有的路径都从一个起始点开始,一次只需向上或向下爬行最多一块砖头的高度。结构路径为机器人在每两个相邻站点间的行进指定了固定的方向,离开结构以后,机器人绕其做严格的逆时针运动。这一方向的规定缓解了拥挤的交通流,确保建筑物料及时运到正在被建造的结构处(这样能避免机器人走大量的弯路,比如满载机器人给空载机器人的离开让路);同时也能通过结构增长的规律使局域规则确保全局不变量的保有。路径可以拆分和合并,机器人可能有不止一种离开或进入某一点的方式。可能的路径的多样性,有助于系统利用的群的并行。编译器执行递归搜索,以识别一组符合这些要求的没有循环的路径,或确定该路径不存在。
机器人个体重复以下程序:拿着砖块的机器人围绕建筑结构运动,直到到达起始点;爬上建筑结构、沿规定路径行进,并追踪起点的某相对位置;将砖块加在周围环境满足固定几何要求的任意空位;继续遵循结构路径;获得新的砖块。这些规则可以保证目标结构的成功实现,并且证明没有任何中间状态需要机器人执行超越其能力的任务——尤其是向上或向下爬行多于一块砖的距离、把一块砖放在比它自己更高或更低的位置,或者把一块砖正好卡在另外两块之间(这是一个精度要求很高的机械操作)。因为在这个物理循环中,每个机器人都受前一个机器人的影响,所以机器人间的直接合作非常有限。由于机器人可以采取多种可能的路径通过一个结构,因此构建进程可有多种方式。
除了这种能产生预设结构的方法,相同的机器人可以使用不同的局域规则,建立一种细节从制造过程中产生的结构。使用相同规则建立起来的多种结构有相同的本质特征,但细节殊异。例如,这样一套规则可以用来生成一个建筑群的随机街道规划图。一种基于上述规则建立的一个混合系统:从一组预设建筑类型中随机选择的一些建筑被放在随机确定长度的道路末尾。机器人再次使用协同机制协调它们的行动:例如,砖的特殊结构暗示哪一种建筑类型应被建造在给定道路的末尾。
为了证明这样一个分散式多机器人系统建设的可行性,我们提出了硬件装置方面的可行证明。设计步骤的选取由机器人必须执行的必要原始操作完成:从贮存区取出砖块;将砖块放在面前的空缺处;检测附近的机器人;在进入结构以后,前进一个单位(同时保持在同一水平高度或向上、向下爬行一砖的距离)或向左(右)转90度;离开结构以后,绕其周长做圆周运动。为了能够运动,我们给机器人配备了轮状腿,因为根据经验,这个装置有利于机器人的攀爬运动。每个机器人都配备了:七个主动式红外传感器,用来检测砖和地面的黑白图案从而进行路线导航;一个加速度计,用来记录上坡和下坡的倾斜角;能将砖块上下移动的手臂,其使用弹簧夹将砖块牢固夹持;五个超声波声纳装置,使每个机器人测量、保持其与结构外围的距离,并检测到附近同样使用声纳的机器人。机器人的足迹(17.5cm×11.0cm)小于砖的大小,有利于其在一块砖头那么宽的墙上运动、操作。砖块(21.5cm×21.5cm×4.5cm)由发泡聚氨酯泡沫塑料制成,具有自对准连接的物理特性。
该硬件系统演示了多个同时活跃而独立的机器人通过完全机载传感执行全算法的过程。增页展示了全自动机器人如何制造不同的用户指定结构:将砖块添加在结构中或地面上,爬过已建造的结构,并适应其它机器人的存在与运动,并且除了添加贮存区的砖块之外无需人为干预。该方法的反应性可以通过外部对机器人建造的结构施加的变化得到证明。移动机器人处理连续而嘈杂的真实世界所用的许多方法都是对不确定性的概率建模,而我们的系统是使用精心设计的硬件有效地通过离散机器人的行动来建造结构。传感器的反馈和与机器人匹配的功能砖保证了简单的控制之下结果的合理可靠性。理想行为下的微小偏差可被补偿程序与机械的被动特性校正,例如,在某结构顶部的位置误差既能通过机器人对它们与砖块相对位置的检查得到调整,也能通过引导机器人保持在误差范围的砖面凹口得到校正。尽管将这个研究模型扩展到一个完整的生产系统还需要解决许多额外的工程难题,但我们的工作也表明了物理硬件能够让离散化的理论充分代表连续的现实。
这项工作提供了一个复杂工程系统的例子:多个自动机器人遵循简单的局域规则,并共同实现一个特定的理想结果。我们的方法受益于社会性昆虫的启发——从多智能体系统中的相同程序以及利用环境作为一种隐性协调的手段中产生的对规律的开发利用——才让所有结果成为可能。在我们设计复杂系统的能力方面,未来的进步将有利于我们设计像大自然一样工作的系统的能力,这个系统将由大量功能简单的可更换零件组成,尽管单个零件作用不大,但是集合起来将能发挥巨大的作用。
本文为机器人大讲堂翻译团队编译
转载请联系: zhangchuanyan88@139.com