集群机器人空间协作行为模型构建方法综述
2022-08-16武文亮周兴社
赵 月,沈 博,武文亮,周兴社
西北工业大学 计算机学院,西安710129
随着机器人技术的发展和社会需求的进一步提高,机器人的应用领域不断扩展。在机器人的许多新的应用领域,例如复杂产品装配、无人机自主作业、快递物流分拣、深海生物勘探等,多机器人通过协作可以完成单个机器人难以完成甚至无法完成的复杂任务,集群机器人应运而生。
集群机器人在个体机器人不断进化的基础上,重点考虑个体之间有机协作以及群体及其环境的交互。集群机器人能否表现出期望的群体行为及相应的智能特性,以及在不同的群体规模和运行环境下,如何准确评估群体系统能力并预测其行为,是集群机器人行为分析研究的重点。
对真实的集群机器人进行实物验证,成本高昂且耗时较长。而模拟仿真的集群机器人实验虽然运行较快,但是当集群机器人中的个体机器人与其他个体或者环境交互,特别是当机器人试图在实际任务和不受控制的环境中执行复杂任务时,无法连续观察不断变化的个体对群体行为的影响。此外,随着集群机器人规模的不断扩大,模拟仿真的运行效率也受到限制,无法反映真实集群机器人的行为及其可扩展性。不同于实物实验验证和模拟仿真,数学建模提供了一种补充方法。建模是系统行为的抽象化表示,通过模型构建,抽象出集群机器人行为的关键特征,揭示其群体活动机理,可快速有效地预测行为演化,评估其性能变化。与仿真与真实的实验验证相比,建模有助于开发人员深入了解集群机器人行为的基本特征和内在机理,以有效支撑集群机器人系统优化设计与高效评估。
1 集群机器人及其空间协作行为
1.1 集群机器人
集群机器人的设计灵感主要来自于对蚂蚁、蜜蜂、大雁等群居动物行为的观察与启发,是一种分布式多机器人系统。在集群机器人中,个体能够在物理环境中自主感知并行动,个体之间通过协作从而产生复杂的群体智能行为。
集群机器人可由同构或异构的机器人构成。同构的集群机器人中,每一个机器人结构与能力相同,均能完成任何其他机器人的任务,集群机器人能够灵活且鲁棒地适应多种任务。异构机器人群体由具有不同设计或功能的机器人组成,这些机器人功能互补多样,可有效地协作完成某些特定任务。利用集群异构可执行需要专业能力的任务。
集群机器人最终目标是在动态可变、真实复杂的环境中活动,执行预定任务。根据活动空间可分为水下(如无人潜艇)、水上(如无人船)、地面(如无人车)和空中(如无人机)以及空间(如月球车)等集群机器人。依据应用领域可分为工业、农业、家用等集群机器人。
集群机器人具有以下特点:
(1)局部感知。在复杂的工作任务及多变的工作环境下,集群机器人需要通过协调或协作完成个体机器人无法或难以完成的任务,以实现共同的目标。群体中个体机器人仅具有局部感知及与相邻通信的能力,只能获得关于环境和集体活动的局部信息,无法获得全局信息。个体并不知道群体中的机器人数量,也不知道全局目标。只能通过与其他个体或它们所处的环境交互来收集信息,并传播到整个集群机器人系统,群体根据这些信息做出决策。
(2)自主组织。集群机器人可以通过自主更新其结构组织使群体能够自主适应任务或环境变化,通过个体机器人协作实现任务优化分配,在添加或删除个体时自动更新其拓扑结构。自主组织是机器人协作结果,个体之间正负反馈相互作用,从而协调所有机器人使群体具有某种特定组织行为。
(3)分布控制。集群机器人的行为协调是分布式的,即个体之间通过协调,决定群体行为统一变化。分布式计算复杂性可以独立于群体规模,同时也减少了与集中处理相关的延迟和实时性等问题,避免了集中分析可能产生的计算过载。
集群机器人的主要优势是可变环境条件下的灵活性、适应个体故障的鲁棒性以及不同群体规模的可扩展性。
(1)灵活性。群体中的个体能够协调自身行为以适应不同环境和各种任务。在集群机器人中,个体具有独立性和自主性,能够解决给定的子问题,自主地推理和规划并选择适当的策略,以特定的方式影响环境。局部通信和分布式控制使得多个自主机器人通过协作和信息共享也可完成复杂任务。
(2)鲁棒性。集群机器人中的个体故障可被另一个个体快速替换。单个或几个机器人的故障并不意味着群体任务失败,不会严重影响群体全局任务执行。集群机器人的感知、执行与协调是分散的。群体某一特定部分的破坏不会使其停止运作。因此,集群机器人对环境中的扰动、局部个体的失效和故障并不敏感,具有强鲁棒性。
(3)可扩展性。集群机器人的分布式协调机制可确保群体在不同规模下运行,易于扩展。允许个体动态加入或离开群体。系统结构不经更新,参数不必修改,即可适应不同的群体规模。
集群机器人呈现出的灵活性、鲁棒性、可扩展性等特点,在军用与民用各类场景得到广泛应用。集群机器人可通过团队合作,低成本、高效率地完成任务,对未来社会将产生巨大影响,可以有效提高人们的生活质量,提升工农业及国防现代化水平。集群机器人研究与应用不仅可推动群体智能理论进步,也为其技术落地提供驱动力。因此,国内外学术与科研机构已开展较多集群机器人研究,在理论和实践方面均取得重要进展。
1.2 集群机器人空间协作行为
群体行为研究始于对生物群体(如蚂蚁、蜜蜂等)行为的观察。群居生物的集体常表现出超越个体的智能行为。随着群体智能的发展,群体行为的含义远远超出了对生物仿生行为的理解。在集群机器人中,群体行为是指多个自主运动体作为一个整体,通过个体与个体间及个体与环境间的交互与协作过程,涌现出的整体行为。
集群机器人空间组织行为指集群机器人在其运行空间的自主运动,通过群体中各机器人在环境中协同合作而完成某种任务的行为,包括群体聚集、群体分散、群体编队、群集运动、群体运输、群体搜索、群体导航等。更复杂的群体行为,如群体觅食、围捕、搜索救援等,均由这些行为组合而成。
(1)群体聚集。群体聚集即对一定数量的自治个体发生聚集现象,这是一种基本的群体行为,同时也是众多集群机器人系统应用的一个重要基础。诸多集群机器人的应用场景均需分散的个体机器人聚集行动。
(2)群体分散。群体分散是指群体中的个体互相远离使距离最大化,以覆盖尽可能多的区域,但个体之间仍需保持在彼此的通信范围内。群体分散是群体聚集的反向行为,对大面积区域进行监测、覆盖等都需要集群机器人进行群体分散行动。
(3)群体编队。图案形成是指机器人之间保持特定的距离,按照一定的形状对自身进行排列以便组成所需图形模式。其中形状可以是预先定义的图案,也可以是通过与邻近机器人和环境的局部交互以自组织、自适应方式形成。例如,在空间中按照一定的优先关系,有序排列成链路为其他机器人导航,方便其他机器人完成指定序列任务,完成下水道、管道、隧道或狭窄通道的监视和勘测。
(4)群集运动。群集运动是相互作用的个体模拟陆地上兽群的奔跑、天空中鸟群的聚集飞行等行为所构成的一种群体行为,所有个体都保持相同的运动模式,以相同的速度运动,并且保持群体内的凝聚力。群集行为中,个体之间存在相对运动,宏观上以群的方式在空间中移动。
(5)群体运输。群体运输是指多个机器人协调动作,按照明确的方向将物体移向目标区域,如集群机器人的典型实验——推箱子,将特定物体从原始地点运送到目标地点。真实场景中,参与救援行动的群体将物体运送到安全地点,在此过程中需要不断判断距离和速度,并避让障碍物体等。
(6)群体搜索。群体搜索是指群体在特定环境中协同导航进行探索,完成获取环境概况、搜索对象、监视环境或建立通信网络等任务。群体搜索中,核心问题是集群机器人如何有效地穿越未知的、不可预测的极端环境区域。一般来说,寻找目标和觅食均可看作是搜索任务,因此群体搜索应用广泛,包括行星探索、围猎目标、应急救援等。
(7)群体导航。群体导航是指集群机器人基于地图,实现从起始点前进到目标点的过程。群体导航一般需要有环境和定位的信息,根据这些信息就可以得知目标点以及感知的障碍物信息进行路径规划。群体导航是集群机器人领域的一项重要任务,可分为两类:全局导航和局部导航。在全局导航中,应具备环境的先验知识。在局部导航中,机器人可以使用配备的传感器自主决定或控制其运动和方向。
1.3 集群机器人空间协作行为建模方法
集群机器人以个体机器人能力为基础,目标是在没有中央控制节点和全局信息的限制条件下实现系统级的群体协调。然而,在分布式环境下,个体无法获得全局信息,纯粹的局部合作有时并不能保证系统目标的实现及性能的最优,群体行为难以预测。建模可以描述和预测集群机器人的整体行为。
集群机器人可以在微观与宏观两个不同的层次建模,大多数集群机器人建模方法关注宏观或微观一个层次。微观建模根据系统行为定义个体之间及个体与环境之间的交互规则,更关注个体的局部特征,可以刻画一些细节的局部行为,具有较高的精度。微观建模通常需要从初始化的群体中抽取样本或降维,才能获得统计上有意义的结果,但是这导致了较高的计算需求。个体简单的局部规则和复杂的全局属性之间的关系是间接的,需要根据具体的系统级目标设计局部规则,从而保证系统层面行为。宏观建模更为抽象,往往忽略个体的局部特征,通常选取能够代表系统行为的状态平均量,通过简化环境中的交互作用和抽象行为建立模型。宏观建模将各个体参数与群级别的动力学联系起来,可以快速并且容易捕捉到全局的定性特征,从而产生更具解释力的描述。使用宏观模型,可以直接评估参数的影响,通常可以直观地对集群机器人的全局动力学进行分析。
随着集群机器人系统研究的不断深入,集群机器人行为建模近年来受到学术界的普遍重视,研究人员已经提出了多种不同的建模方法。本文依据建模方法机理要素,将其分为图论、仿生模型、动力学模型以及学习模型,如图1 所示,并在以下章节分别阐述。
图1 集群机器人空间协作行为模型构建方法Fig.1 Modeling method of spatial cooperative behavior of swarm robots
2 图论
图是由若干给定的顶点及连接两顶点的边所构成的图形,通常用来描述某些事物之间的某种特定关系。有限状态机和马尔可夫链都是有向图。
2.1 图
(1)方法概述
图论是以图为研究对象,图论中的图是由若干给定的点及连接两点的线所构成的图形,用点代表事物,用连接两点的线表示相应两个事物间的关系。图可以是无向图,每个边相关联的两个点之间没有方向。图也可以是有向的,边从一个点指向另一个点。
在集群机器人空间协作领域,如果将环境模型建模为图,图由点和边表示,机器人的路径即从图中某个顶点到达另一个顶点所经过的路径,在实际应用中可以理解为从某点出发抵达目标点所经过的路线。
(2)应用实例
建立环境模型是求解集群机器人路径问题的基础和前提。目前应用比较广泛的建模方法有栅格法、可视图法和自由空间法等。栅格法以栅格为单位记录环境信息,环境被量化成具有一定分辨率的栅格,栅格的大小直接影响着环境信息,存储量的大小、规划时间的长短,是影响路径规划效果的重要因素,且随栅格数的增加,算法复杂度急剧增加。因此,栅格法不适用于障碍物比较密集、环境空间相对狭窄而实时规划要求高的路径规划问题。可视图法和自由空间法建立的环境模型为几何数据模型,矢量数据有严密的数据结构,可以建立事物之间的拓扑关系,能够描述空间关系,但数据结构复杂、数据更新困难。3D 地图和其对应的部分栅格地图如图2所示。
图2 3D 地图和其对应的部分栅格地图Fig.2 3D map and a part of corresponding grid map
图的优点是,可以用矩阵代数中的各种运算来研究图的结构特征及性质。经过环境建模之后,集群机器人路径问题就相应地转换成在图中求解路径的问题。目前已经为集群机器人平台开发了广泛的基于图论的搜索算法,其中大多数集中在最短路径问题上,如Dijkstra、A*、Floyd 和SPFA(shortest path faster algorithm)等。
Dijkstra 实质是广度优先搜索,可以保证搜索的节点一定是从起点开始到当前的最小距离的路径,可准确获取全局最优路径。但是Dijkstra不知道目标节点的位置,它必须向所有方向扩展,因此空间复杂度和时间复杂度都比较高,且所处理的图中不能有负权边。Dijkstra也可以用在3D 环境中进行搜索。
A*算法加入了目标节点的信息,提升了搜索效率。但是该算法计算量大,内存占用多,且由于自身算法的局限性使得搜索出来的路径并非最优。当目标点很多时,如果不要求获得具体路径而只比较路径长度时,Dijkstra算法会成为更好的选择。
Floyd 偏向多源最短路径求解,用邻接矩阵存储,可以处理负边权,但不能处理负环。Floyd 能够求出任意两个节点的最短路径。Floyd 和Dijkstra 两种方法的时间复杂度相同,但Floyd 形式上更简易。
SPFA 算法通常用于求含负权边的单源最短路径,以及判断负权环,在随机图上的优势明显。为了避免最坏情况的出现,在正权图上应使用效率更高的Dijkstra算法。
如果以集群机器人个体或网络中的移动传感器为节点,图论可用于表征个体之间信息交互关系和状态。机器人占据图的点,机器人之间的距离或通信状态为有向图的边,通过设计距离反馈率来约束集群机器人的空间位置关系。
(3)适用场景
图在集群机器人中得到了广泛的应用,如编队、围捕、避障、导航、覆盖等。在解决两点间最短距离问题上尤具优势,具有实时重规划性能突出、算法最优性较好的特点,在动态环境中广泛适用,但所需的计算和存储资源通常较多。
2.2 有限状态机
(1)方法概述
有限状态机(finite state machine,FSM)对事物运行规律进行抽象,表示有限个状态,以及状态之间的转移。有限状态机是一种用来进行系统行为建模的工具,描述对象在其生命周期内所经历的状态序列,处理各种事件和状态切换,以及响应来自外界的各种事件。
(2)应用实例
集群机器人的空间协作行为通常很容易建模为有限状态机。FSM 是描述系统顺序行为的强大工具,有助于将问题划分为更小的单元,同时提供对过程的清晰和全局概述,其输出不仅取决于输入,还取决于机器人当前状态或计划执行阶段(例如机器人是向前还是向后)。FSM 被广泛用于集群机器人的宏观和微观建模,通常将机器人的几个相关的动作或行为看作单一的状态来粗化模型,表示状态之间的转换。
在使用概率有限状态机(probabilistic finite state machine,PFSM)进行集群机器人空间协作行为微观建模时,其核心思想是将集群机器人行为描述为一系列随机事件。每个机器人由PFSM 表示,状态的转换取决于机器人之间、机器人与环境之间的交互概率。概率由某些协作特性或系统实验计算得出,也可使用固定的转移概率值。切换到新状态的概率通常与机器人的当前状态有关。在群体聚集行为中,机器人随机游走,当机器人发现到其他机器人时,可根据有限范围内的机器人数量决定是否加入该群体。处于某个群体中的机器人也可以以一定概率离开该群体,继续随机行走。在PFSM 建模中,概率可以简单地定为一个固定值,在群体搜索中,如图3 所示,PFSM 定义了六种不同状态之间的变化,分别为暂停、转弯、搜索、前往目标、返回、行走,机器人在有限的范围内进行通信。
图3 集群机器人搜索中的有限状态机Fig.3 Finite state machine in swarm robot search
在宏观模型中,单个PFSM 直接描述整个机器人群体,其中每个状态代表特定时间步内的平均队友数。如使用PFSM 为集群机器人搜索建模时,状态机中有搜索、收集目标、返回等固定状态,每个状态表示处于该状态的个体平均数量。在群体搜索建模中,文献[10]将其建模为一个三态PFSM,将搜索简化为扩散、搜索和目标处理。在集群机器人围捕中,基于FSM 原理可建立机器人状态转换的FSM 模型,机器人在其运动周期内的每一次实时策略选择的过程,以及各种运动状态的选择与转换策略,均可用FSM 描述。
(3)适用场景
FSM 易于理解,可读性和可维护性高。如果需要添加更多状态,只需声明新的状态转移方法。FSM代表了一种使用简单构造部件来形成强大系统的方法。同时,FSM 使系统的后续更改和诊断变得容易。如果要修改FSM,通常只在单点进行,修改不影响输出设置。FSM 容易测试。如果机器人发生故障,通常很容易检测到是在什么状态下发生的,因此可以显著高效地执行重复性任务。
理论上,FSM 根据集群机器人的不同状态切换不同的策略,实现多状态的同步切换。但将导致系统严重依赖于状态的识别精度,FSM 难以保证切换过程中控制量的连续性,容易使系统处于不稳定或临界稳定状态。且该方法可扩展性较差,对大规模群体进行微观建模,将面临状态空间爆炸。
FSM 在集群机器人中应用广泛,可以用于集群机器人聚集、搜索、编队等空间协作行为建模。PFSM建模特点是通过概率来确定状态,可用于集群机器人随机行为的表达,不依赖于数学函数。
2.3 马尔可夫链
(1)方法概述
马尔可夫链是一组具有马尔可夫性质的离散随机变量的集合。随机变量的条件概率满足如下关系:
如果第时刻上的取值依赖于且仅依赖于第-1时刻的取值,即马尔可夫链。服从马尔可夫性质的系统,其未来状态只取决于当前状态而不是过去,仅根据输入和当前执行的动作来决定未来的动作,这些系统也可以表示为马尔可夫过程。时间和状态都是离散的马尔可夫过程称为马尔可夫链。
形式上,马尔可夫链可以看成一个概率状态机,以一定的概率在各个状态之间跳转。马尔可夫链是一个基于随机过程的状态机,随机过程是描述不确定系统的基础。马尔可夫链允许无限的状态空间,其转换由概率描述,转移概率只能取决于当前状态。马尔可夫链中的转换是概率性的而不是确定性的,这意味对时刻的状态并不确定。
(2)应用实例
马尔可夫不确定理论可以解决满足马尔可夫性质的集群机器人在不确定性环境下的感知、规划和学习等问题。在预测方面,对于不确定因素的估计,马尔可夫模型可使用经验概率来创建初始的概率分布、状态转移矩阵,从而对具体的集群机器人空间协作行为开展进一步的研究。利用时不变齐次的马尔可夫链对无人机(unmanned aerial vehicle,UAV)路径规划问题建模,如图4所示,其中为状态转移概率。
图4 马尔可夫链对无人机路径规划问题建模Fig.4 UAVs path planning based on Markov chain
集群机器人根据马尔可夫性可表达为:
(,)为集群在时刻机器人数的分布,那么+Δ时的分布为(,+Δ),则边缘密度概率为:
从这个方程中可以看出集群机器人在各状态下其数量随着时间的变化而变化,从中可以观察系统的动态变化。马尔可夫链也可以转换成一个差分方程或微分方程组,主要用于跟踪每个状态下机器人的平均数量,总结平均状态转换。
在集群机器人中,每个机器人个体的状态空间可用马尔可夫链表示。利用马尔可夫链可引导集群机器人达到期望的空间分布,将马尔可夫链的转移概率的副本发给每个机器人,每个机器人都将其位置作为马尔可夫链的统计进行实时传播。假设每个机器人都知道自己的位置,并且移动到马尔可夫链所指示的位置,群体作为一个整体收敛到期望的稳态分布,表现出涌现行为。在群体覆盖行为中,覆盖环境复杂多变,个体携带的传感器存在精度误差,局部的可观测性和环境存在不确定性。马尔可夫链建模集群机器人的动态覆盖,覆盖过程的不确定性可与个体的速度、通信范围和模型参数相结合。
近年来,马尔可夫链与增强学习被应用于航迹的在线实时规划,集群机器人空间协作行为形式复杂,且需要在线实时更新调整,静态的传统规划方法并不适合动态不确定的场景,马尔可夫链为不确定性规划提供了具有理论支撑的形式化描述手段。在航迹规划中,任务及环境是完全可观的,可以利用状态转移逐步进行区域的探索和预测,通过机器学习来提高集群机器人处理复杂未知环境的能力,保证规划的可执行性。
(3)适用场景
马尔可夫链在集群机器人空间协作行为建模中得到了广泛应用,例如群体聚集、群体覆盖、避障等。马尔可夫链根据历史数据分析总结出变化规律,实际使用的主要是状态和概率。马尔可夫链是概率模型,每一个时间点的观测值体现为状态值,所谓状态值即某一个类别的概率。马尔可夫链是研究离散事件动态系统状态空间的重要模型,适用于集群机器人空间按协作行为中基于序列的过程,如时间序列、状态序列。
3 仿生模型
许多科学家从生物中寻求新的用于人造系统的灵感,从生物进化的机理中发展出适合于现实世界复杂问题优化的模型。这些模型主要基于仿生原理,因此称此类模型为仿生模型。
3.1 蚁群、粒子群和模拟退火优化模型
(1)方法概述
近些年来,常见的仿生优化模型主要有蚁群优化(ant colony optimization,ACO)、粒子群优化(particle swarm optimization,PSO)、模拟退火(simulated annealing,SA)等。ACO、PCO 和SA 模型简单易于实现,也是目前应用最为广泛的仿生优化模型。ACO源于对蚁群觅食行为的研究。ACO 通过正反馈、分布式协作寻找最优路径,常用来解决最短路径问题。Dorigo 等提出了三种不同的信息素增量模型,分别为Ant-Cycle、Ant-Quantity 和Ant-Density 模型。Ant-Cycle 利用全局信息更新路径上的信息素量,且该方法有很多的改进研究。Ant-Quantity和Ant-Density使用局部信息。PSO 源于对鸟群捕食行为的研究。基于PSO 的常见模型有惯性权重PSO 模型、带收缩系数的PSO模型、Bare Bones Particle Swarm模型。SA概念来自统计力学,是一种受金属退火启发的迭代搜索模型。
(2)应用实例
在对实际的ACO 进行建模的过程中,需要关注蚁群中个体的建模问题、信息素的更新机制,以及整个蚁群的内部机制。信息素的更新方式有两种:一种是挥发,所有路径上的信息素以一定的比率减少。另一种是信息素的增强,给蚂蚁走过的路径增加信息素。信息素的蒸发机制使得蚂蚁对过去的寻优历史有一定的遗忘度。如图5,在机器人路径规划中,机器人在网格上行走,并释放信息素,网格中的值代表信息素强度,红色的虚线为机器人的路径。ACO 的信息更新公式为:
图5 基于ACO 的路径规划Fig.5 Path planning based on ACO
其中,Δτ(,a)表示蚂蚁在时刻,位于状态时,选择行动a的路径信息素增量:
其中,为信息素强度,L为转化后的路径长度。
PSO 通过初始化一群随机粒子,再迭代、进化找到最优解。每个粒子不断改变自己在搜索空间的速度,通过局部最优位置和全局最优位置更新自己。PSO 的更新公式为:
其中,在维空间中,第个粒子的速度为V=(v,v,…,v),位置为X=(x,x,…,x)。为权重,、为0 到1 之间的随机数,、为学习因子,p是粒子的局部最优解,p是全局最优解。
SA 是一种概率技术,用于逼近给定函数的全局最优解。一般用于优化问题的搜索空间是离散的情况。在固定时间内找到全局最优解,SA 比梯度下降等方法更具优势。
ACO、PSO 和SA 在集群机器人的应用是一个新的组合优化问题,其中应用最广的是群体导航中的路径规划问题。通常,全局的路径规划是在已知环境中进行的。传统的路径规划通常假设环境是完全已知的,并且多数考虑静态环境中工作。而局部的路径规划相对复杂,因为环境可能是部分未知的、完全未知的,或是动态环境,在机器人运行期间路径会发生改变,已知环境下的静态障碍物的避障研究已经趋于成熟,但未知环境下的动态障碍物环境避障仍然是一项挑战。集群机器人共享同一工作空间寻找路径,在完成共同任务时,机器人要避免与障碍物碰撞,个体相互干扰,同时还要避免死锁。考虑到不同类型的机器人、环境、动态或静态障碍物等对群体导航的影响,关键问题在于找出最短路径,同时又要避免与其他机器人或障碍物碰撞。由于集群机器人路径规划的复杂性,同时需要考虑满足多目标,通常视其为NP-hard 问题。在大型复杂环境中,仿生模型被广泛用于路径规划问题。为了实现这些目标,ACO 通过和不同的模型构建新的混合模型来解决集群机器人的路径规划。人工势场和ACO 在实验环境下解决了碰撞问题。遗传算法和A*算法与ACO的结合对死锁问题有了明显的改善。模糊逻辑嵌入ACO 中可实时收敛,并且可达到局部最优。文献[22]用PSO 模型研究了异构水下航行器路径规划和协同目标打击的问题。文献[23]提出了PSO 的改进方法,并进行集群机器人的路径规划。SA 成功应用于机器人的3D 路径规划,在没有雷达威胁的情况下,SA 可以在更短的时间内解决无人集群的路径规划问题。
(3)适用场景
群体导航是蚁群和粒子群模型主要的应用。该模型在机器清洁、灭火、编队等场景有广泛应用。除了路径规划外,ACO、PSO 和SA 也广泛应用于群集运动、避障、编队等集群机器人行为。ACO 和PSO 模型不存在中心控制,天然并行性使之适用于分布式计算,并且具有强鲁棒性、操作简单、易于实现、易与其他算法结合等优点,能处理大型的搜索空间,且容易发现全局最优解。已经有学者建立了ACO、PSO 的数学模型,其有效性在一些实验中已得到证明,在实际的集群机器人中也有应用。SA 模型可灵活搜索,可扩展性强,可用于求解集群机器人中复杂的非线性优化问题,但也存在收敛需要多次迭代、模型性能对初始值及参数较敏感等缺点。群体表现出来的复杂行为是通过简单个体的交互过程涌现出来的智能,具有自组织性。这些模型能有效地解释应用于复杂环境的集群机器人空间协作行为特性,且其性能的优劣有理论保证。ACO、PSO 和SA 模型优点与适用场景见表1。
表1 ACO、PSO 和SA 建模方法对比Table 1 Comparison of ACO,PSO and SA modeling methods
3.2 蜜蜂聚集模型
(1)方法概述
蜜蜂聚集(BEECLUST)算法受蜜蜂行为的启发,蜜蜂在36 ℃的温度下可形成聚集。这种聚集行为源于个体与个体的相互作用,大多数的个体几乎是随机移动的,并没有能力将自己定位在最佳温度点上。在蜜蜂聚集中,个体在搜索空间随机移动,当两个或多个个体碰撞或接触时,个体停下来对该点进行测量,测量该点的适度值(如亮度、温度、声音等),根据测量结果在规定的时间内等待,测量值越高,等待时间越长,最终聚集在搜索空间中高舒适区域。
(2)应用实例
蜜蜂聚集模型已经在集群机器人空间协作行为模型中使用。如图6 中的集群机器人在理想情况下,所有机器人都是直线运动的。机器人通过传感器探测前方的物体,如果没有相关的信号,机器人随机转动并继续前进保持直线运动。如果检测到信号,机器人会假设前面的物体是另一个机器人,停止运动,然后测量局部亮度,亮度越高,它在那个地方等待的时间就越长。等待时间过后,机器人继续转动,再前进保持直线运动。蜜蜂聚集模型使得一个群体聚集在某个环境特征(如亮度、温度、声音等)的适度值高的地点。
图6 蜜蜂聚集模型Fig.6 BEECLUST model
Wahby 等基于蜜蜂聚集模型提出自适应变体的模型,该模型可以自动适应任何光照条件。在蜜蜂模型中有不同的蜜蜂类型,如随机游走的蜜蜂、负责目标发现的蜜蜂、追随着墙移动的蜜蜂和不动的蜜蜂,也会影响群体决策。一般情况下,蜜蜂聚集模型只测量一种适度值,在部分研究中,也研究了多适度值对集群机器人行为的影响。
蜜蜂聚集模型本质上是吸引群体聚集在某个特定点,在群体聚集中应用较广。欧盟支持的COCORO项目中,水下机器人群使用蜜蜂聚集模型在特定的位置进行聚集。蜜蜂聚集模型还被应用于污染定位与清理,机器人上的传感器测量机器人轮子下的化学品强度,通过跟踪化学品的踪迹,机器人将向化学品泄漏量最高的区域聚集,找出泄漏的源头,机器人将聚集在化学品浓度高的区域执行净化任务。
蜜蜂聚集不仅是一种用于聚集行为的模型,由于它能够区分不同的环境条件,被认为是一种强大而可靠的勘探工具,可用于机器人探测任务。此外,蜜蜂聚集模型还可用于无人机编队,将搜索空间表示为二维网格,集群机器人使用蜜蜂聚集模型为无人机生成飞行路线。
(3)适用场景
在蜜蜂聚集模型中,个体之间随机移动,不必知道自己的位置,彼此检测碰撞测量并进行乘法运算,这样简单的处理会减少个体所需的硬件,从而缩小个体总体大小和电源需求,也不需要内存。蜜蜂聚集模型不需要群体之间的通信,因此与通信半径、协议或带宽无关,不仅能够在同构的集群机器人中稳定运行,而且还适用于具有不同策略的异构集群机器人。特别是当环境中存在某些温度、光照等特征与其他区域不同的特殊区域时,使用蜜蜂聚集模型,这些特殊区域将对群体行为形成指引信号,群体向该区域运动,产生聚集行为。
4 动力学模型
人工势场法和SCA(separation,cohesion,alignment)模型中的个体都被视为物理粒子,在个体与个体之间存在力的作用而产生了一些群体行为。微分也可用于表示集群机器人系统的动态特性。
4.1 人工势场法
(1)方法概述
人工势场法的基本思想是,在个体之间存在虚拟的排斥力和吸引力,群体中每个个体根据势场梯度的方向,由虚拟的吸引力和斥力的合力引导进行运动。长期以来,研究人员一直致力于对群体行为的理解和建模。一种被研究人员所普遍接受的观点是,群体之间的相互作用可能是简单的吸引排斥力或复杂的相互作用力的组合,是个体之间的长距离吸引和短距离排斥相互作用的结果。
(2)应用实例
人工势场法已应用于集群机器人聚集的建模方法中。各种各样的人工势函数被用于群体聚集中:
其中,()为相互作用的势函数,和是作用在连接第个机器人和第个机器人直线方向吸引力和排斥力的值。
人工势场是自动执行集群机器人覆盖的主要方法之一,机器人将利用彼此之间的虚拟力在区域内运动。人工势场也常用来引导群体分散。虚拟的恒定引力、边界力、Lennard-Jones 分子力等物理学中的运动力学和分子力学,这些理论也可引导无人机分散运动。人工势场也常用于多无人机编队,无人机集群可在人工势场的作用下调整飞行速度和方向,在保持稳定的编队队形的同时,通过控制排斥力作用保持最小距离,避免碰撞以确保与编队内其他成员保持安全飞行间隔,通过人工势场的方法可使无人机群构成多种图案,形成预设的规则结构的队伍。
人工势场可以引导集群机器人避障。在船舶群的区域跟踪控制中,通过环境中的目标点引力势场和障碍物斥力势场以实现避障。对于动态障碍物,黄东晋等采用人工势场和相对速度障碍物结合的方法进行避障,再使用弹簧系统使群体队形在避障过程中尽可能保持队形的整体稳定。
人工势场的标准方法是以吸引势函数和排斥势函数的混合负梯度作为输入。标准方法的一个缺点是吸引和排斥存在局部平衡的时刻,即复合矢量力场消失,机器人在这种情况下可能被困在某个位置。为了解决这个问题,研究人员证明了群体中的成员可以聚集成一个超球体,超球体的质心为群体质心。利用极限函数将多机器人系统封闭在曲面结构中,通过调整参数可以控制群体的形状和程度,以及群体成员之间的相对距离。这种方法可有效用于建模机器人集群的形成、避障和集群运动。在这种方法中,微观层次关注每个机器人的轨迹和机器人之间的距离,群体层次只考虑与整个群体有关的任务。
针对人工势场的集群机器人研究中,并不局限于单纯的排斥力和吸引力,额外的辅助力可使群朝特定方向移动,形成线性或旋转等期望的群体运动模式。文献[46]将吸引力定义为相对位置的吸引力和相对速度的吸引力,斥力定义为位置和速度的负梯度。一般情况下,这种修正使得群体运动的收敛速度更快。人工势场函数形式多样,针对不同的集群机器人场景可进行修改。
(3)适用场景
人工势场法定义了主体间的相互作用,通常用于集群机器人在空间中的运动问题,如覆盖、分散、编队等。人工势场法在保持群体聚集性方面具有良好的稳定性,只由一个单一的引斥力数学规则就可以模拟群体智能行为,易于理解,也可以与其他动力学模型一起使用,同时还有反应快速、计算简单以及实时性强等优点,被广泛用于集群机器人空间协作行为中。人工势场法的缺点是,势函数可能有局部极小值。在集群机器人中,人工势场法对传感器有严格的要求,不适应于使用简单传感器(如红外等)的集群机器人,简单传感器在环境中难以获取位置信息。因此人工势场法实现难度大,成本高。
4.2 SCA 模型
群集行为研究方面的突出代表Reynolds 在其Boid模型中提出了SCA 规则。SCA 规则原用于描述粒子群运动:(1)分离(separation),即每个个体受到其邻域内的其他个体的排斥力的矢量和,避免和附近的个体碰撞。(2)聚合(cohesion),即每个个体受到其邻域内的其他个体的吸引力的矢量和,以保持整个团队的紧凑。(3)速度一致(alignment),即让每个个体与其邻域内的其他个体的平均速度保持一致,最终使整个团队的速度趋于一致。Reynolds 通过仿真证明了当群体中所有个体都遵循这三条原则时,个体将聚集在一起以共同的速度运动,且群体中个体不会碰撞。以下主要分析Vicsek 模型、Cucker-Smale模型、Couzin 模型等代表性的SCA 模型。
(1)方法概述
①Vicsek 模型
Vicsek 等人基于SCA 规则提出了一个简单的离散时间模型——Vicsek 模型。在Vicsek 模型中,一组粒子有个,在×正方形区域中运动。每个粒子具有相同的绝对速度,粒子的初始位置和方向是随机分布的。每个粒子的运动方向由其邻域内所有粒子的平均方向决定。在时间时,第个粒子的位置和方向按照下列规则更新:
其中,||·||是欧氏距离,是传感器半径,Δθ是白噪音。在个体密度和噪声值超过临界值时,个体运动从无序变为有序。
②Cucker-Smale模型
Cucker-Smale(C-S)模型中个体受到其他个体的速度影响,这种影响用权重a来表示,表示个体之间的相互作用强度,这一相互作用在近处保持稳定,在远处衰减。a与个体、之间的距离相关:
其中,为系统参数。位置更新函数如下:
在C-S 模型中速度更新代替了Vicsek 模型中的角度更新:
Cucker 证明了当<1/2 时,群体会收敛到一个共同的速度,然而当≥1/2 时,只有某些特殊的初始位置、速度分布可以让群体的速度收敛。在一定的条件下,系统实现同步,发生群集行为。
③Couzin 模型
在Couzin 模型中,个体在原点中心处,由内而外并将其周围空间依次划分为三个区域:排斥区域(zone of repulsion,zor)、一致区域(zone of orientation,zoo)、吸引区域(zone of attraction,zoa),分别对应群体中的分离、聚合、速度一致,如图7 所示。Couzin 模型可以改变zor、zoo 和zoa 的大小。优先级最高的为zor 区域。如果在zor 区域中出现了其他个体,那么将受到zor区域个体排斥,下一时刻速度为:
图7 Couzin 模型Fig.7 Couzin model
其中,c、c表示位置矢量,表示位于个体的zor区域内的其他个体的数量。如果在zor 区域没有其他个体,那么个体对zoo 和zoa 区域的个体产生作用。对于zoo 区域的个体:
对于zoa区域的个体:
、为个体位于zoo、zoa 的数量,v为的速度矢量。个体会尽力与方向区域中其他个体的飞行速度保持一致,并且尽力靠近zoa区域中的其他个体。
(2)应用实例
国内外相关领域有较多重要的SCA 规则模型的研究成果。对于Vicsek 模型,一方面,有研究人员从图论的角度对其进行了研究,利用图论的知识分析了图的连通性,建立信息传递网络,证明了关于同步的充分条件;另一方面也有研究人员从初始参数的角度进行研究,通过限制初始参数使系统同步。还有部分针对加快同步速度的研究,如基于视线方向的有限视场角对原有模型进行了修正,真实的生物必须不断地转动头部或眼睛,观察邻居在其他方向的运动,修正后的模型更接近生物世界。李玉剑等的研究证明了存在一个最佳的视野角,使系统最快地达到方向同步。
Wang 等根据Vicsek 和Couzin 模型生成的仿 真数据,利用遗传选择规则和基于遗传规则这两个层次的自组织规则对三种群体(高度并行群体、动态并行群体和环面群体)进行建模。Vicsek 团队提出了一个可调的群集模型,根据排斥力、速度一致、与障碍物的作用等给出了期望速度,在这个研究中定义了6 个评价函数,加权得出最终的评价函数,使用进化算法优化参数。
在C-S 模型下,研究人员展开了大量的相关分析,如在时间延迟的情况下,碰撞场景、共识机制等对群集的影响。Ma 等在C-S 模型中使用有限时间控制法研究了集群机器人的碰撞行为,导出了群集时间上界的数学表达式。Canale 等在一个多agent系统上验证了C-S 模型的鲁棒性。
SCA 规则模型主要用于无人机或一些飞行器的群集。Vicsek 团队使用了30 个无人机进行了实验。这些无人机没有任何中央控制,无人机在GPS 噪声、通信延迟等故障环境下均可稳定飞行,在有障碍物或无障碍物的封闭空间中可保持稳定、无碰撞地集体运动。欧洲空间局的Darwin 计划将C-S 模型用于多个太空探测器组成编队,这些太空探测器分布于月球轨道上,实施探测任务。
(3)适用场景
Vicsek 模型具有简单直观的局部规则,个体运动可以表现出从随机到同步的某种相变。在以上SCA规则模型中,Vicsek 模型中的假设是在二维空间内,而Couzin 模型更满足实际群体情况,建立在三维空间中。与Boid 模型相比,Couzin 模型在行为规则和算法上更为简单,方便分析。目前,已有大量关于Boid 模型和Vicsek 模型的研究,在系统模型分析和优化上的工作已经比较充分。Couzin 模型当前的研究工作还较为有限,其中存在的一些系统性能等相关问题还没有充分地讨论,相关的优化策略较少。
在一定条件下C-S 模型可以转换成Vicsek 模型,C-S 模型与Vicsek 模型的主要区别在于:Vicsek 模型是基于局部规划的影响,而C-S 模型考虑的则是全局影响。表2 从建模维度、模型粒度、模型特点三方面对SCA 模型进行对比。
表2 SCA 模型对比Table 2 SCA model comparison
4.3 微分方程
典型的集群机器人空间协作行为使用的微分方程有速率方程、扩散方程、Langevin 和Fokker-Planck方程等。
(1)方法概述
速率方程是一种基本的宏观概率模型。将描述集群机器人概率密度演化的主方程进行宏观平均,即可得到平均量动力学的速率方程。速率方程并不需要知道每个机器人的精确轨迹,而是通过推导得到集群机器人行为的平均量动力学模型。集群机器人在其行为方面均显示出不同程度的不确定性,使用速率方程进行建模,集群机器人可以看作是一个随机系统,状态代表了集群机器人要完成一个任务所需要的一系列行为,一个状态可以包括一个或多个行为。
(2)应用实例
Lerman 等使用速率方程对集群机器人觅食过程进行建模。群体觅食由多个群体空间协作行为组成。机器人为了搜索目标食物,在搜索场中四处游荡,躲避障碍物。发现目标后,机器人将从搜索状态过渡到拾取状态,最后过渡到归位状态。这些个体的行为是随机的。根据马尔可夫的性质,集群机器人在+1 时刻的状态取决于时刻的状态,用条件概率写概率密度函数得:
转换速率为:
则在状态的机器人分布:
上述即速率方程。等式右边第一项描述的是从其他状态转换到状态而导致的占用数n的增加,而第二项描述从状态转换到其他状态的损失。
对一个集群机器人空间协作行为进行速率方程分析的前提是集群机器人系统可以看作一个随机系统,并且该系统满足马尔可夫性质。速率方程在集群机器人的成功应用表明集群机器人空间协作行为模型可以通过加入随机项而进行扩展。速率方程是一种将微观模型转化为宏观模型的系统方法,需要考虑定义集群机器人中所有的状态及状态之间的转换,对于每个状态,模型中都有一个动态变量和一个描述变量随时间如何变化的速率方程。
(3)适用场景
速率方程已被应用于集群机器人行为建模的研究中,如聚集行为、棒料抽取实验和觅食,可有效分析集群机器人行为的动态性,描述平均量的动力学。
速率方程可以表示环境变量、控制变量以及时间的复杂非线性函数的概率值。速率方程的主要限制是,很难对空间和时间进行建模,对空间的位置表达有限,不适用于依赖于个体位置的场景。在使用速率方程时,如果需要时间关系的描述,通常将时间假定为离散型。
(1)方法概述
扩散方程描述了由扩散控制的物理量的时空变化,是一个偏微分方程。
1952 年,图灵用一个反应扩散模型刻画了生物体表面图案的形成机理,揭示了自然形态的化学本质:
其中,和是和两种图案形成有关的化学物质,D∇和D∇表示化学物质的自由扩散,D和D为扩散系数,(,) 和(,) 分别表示和的生成率。图灵把形态发生看作是激活和抑制因子之间的相互作用,通过一个激活因子、一个抑制因子以及不同扩散系数即可实现自组织。这些模式可以表明个体在组织中的空间位置以及它们的相关行为等。反应扩散方程式(26)右端的非线性项给予了群体可形成的模式丰富的自由度。
(2)应用实例
图灵的反应扩散模型在集群机器人应用中对应的个体浓度变化可由下式表示:其中,分子作为激活剂,分子作为抑制剂,每一个机器人都跟踪自身的和浓度,并传送给相邻的机器人,两个分子之间的相互作用被配置成一个激活-抑制网络,为反应系数。
在Slavkov 等人的实验中,如图8 所示,小型机器人Kilobots 有一个彩色LED,当激活剂浓度高于阈值时,LED 的绿色被激活。LED 的颜色在最高电平显示为绿色,电平逐渐降低,颜色也对应地变为青色、蓝色和紫色。电平非常低时,LED 被关闭。机器人从激活因子值低的区域向高值的区域移动,在接近最高值,即绿色LED 时停止,这样就会在绿色LED 周围产生聚集。而运动过程中,浓度不断变化,这种持续不断的组织运动和模式适应,最终使群体形成了一种图案。通过改变参数,可以控制群体机器形成斑点、条纹或反转斑点等图案类型,参数的变化会触发不同的图灵模式,并在真实集群机器人中也观察到了类似的模式。
图8 集群机器人的反应扩散模型Fig.8 Reaction diffusion model of swarm robots
利用图灵形态发生原理组织集群机器人形成均匀分布的群体形状,群体的鲁棒性和自适应性也得到了证实。除了反应扩散方程,对流反应扩散方程也经常被用于集群机器人的行为建模。
(3)适用场景
扩散方程在集群机器人中得到了广泛的应用,如群体覆盖、避障、聚集和图案形成。在集群机器人中,空间图案也可以由局部自组织的如对流反应扩散方程控制。
扩散方程有很强的实际背景,在物理学、化学、生物化学、生态学、神经学等系统科学等领域中均有应用,可以应用于任何初始的群体分布,瞬态现象最终都将达到稳态或长期平衡值。扩散方程可对集群机器人完整时变过程进行建模。
(1)方法概述
随机微分方程和偏微分方程可用来创建空间模型。经典的方法是基于一个随机微分方程(Langevin方程)和一个偏微分方程(Fokker-Planck 方程)的模型。
Langevin 方程是描述粒子在流体中运动的随机微分方程,是一个介观模型(介于微观和宏观之间)。从微观方法角度来说,Langevin 方程的确定性部分模拟了受个体行为影响的确定性运动,而随机部分则模拟了个体与其他个体、个体与环境的相互作用。
(2)应用实例
Langevin 方程可以模拟个体的运动:
式中,是漂移,是向量,表示方向信息;是扩散系数,是标量;定义了不确定进程。可以定义为:
式中定义了位场的上升梯度。Langevin 方程是用于模拟布朗运动的方法,在集群机器人中用其描述集群机器人的轨迹。
对于宏观方法,Fokker-Planck 方程可以用来描述整个群体的动力学,模拟环境中所有个体状态(例如位置或速度等)概率密度函数的时间演化。
式中,是单个粒子在位置和时间的概率密度。Fokker-Planck 方程描述一维空间中粒子概率分布的时间演化,在集群机器人空间协作行为建模中可以视为集群机器人的密度。
集群机器人在空间和时间域中的行为是有界的。当目标概率密度足够规则时,在给定的有限时间内,只考虑有界向量场作为控制参数,Fokker-Planck 方程也是可控的。
(3)适用场景
群体聚集、非周期环境群体探索、群体运输和群集运动等集群机器人空间协作行为都是基于异质空间的。Langevin 和Fokker-Planck 方程可对这些群体行为进行显式的空间表示。
针对Fokker-Planck 方程计算量大的问题,可通过机器学习方法来解决。机器学习中使用了具有低计算复杂度的在线梯度下降方法进行训练,形成了Fokker-Planck 方程的近似解。
Fokker-Planck 方程的优点是,原则上它可以用来模拟任何集群机器人行为。缺点是Fokker-Plank方程解析求解难度较大,同时通信方面建模难度较大。
三种微分方程模型粒度、特点对比见表3。
表3 微分方程对比Table 3 Comparison of differential equations
5 学习模型
从个体行为到群体行为的演变过程往往极其复杂,以至于无法预测。集群机器人可通过群体行为学习来实现问题求解,群体中的每个成员通过学习它自身的经验和其他成员的经验来不断地改变搜索方向。
5.1 人工进化
(1)方法概述
人工进化基于变化和选择原则,以整体的方式来建模集群机器人空间协作行为特征。不同于其他基于数学或物理的建模方法,进化法本质上是基于生物遗传和自然选择机理,与生物界中物种进化的情况类似,集群机器人能够在不同的代中进化自己的行为,并完成给定的任务。人工进化已经发展成为研究集群机器人空间协作行为的一种重要工具。通常使用进化法对神经网络的参数进行调节,从参数的初始值开始,使用适应度函数评估群体因个体行为而产生的群体行为,迭代执行机器人实验,但是目前适应度函数主要依靠专业人员的经验。对于复杂的任务也很难设计出能够表达行为目标的有效适应度函数。
(2)应用实例
神经网络是用于人工进化机器人的一种常见类型。在图9 的集群机器人聚集中,每个机器人由神经网络控制。神经网络的输入是传感器的测量值,在机器人周围有15 个红外测距传感器、1 个扬声器和4个定向麦克风。图中使用单层神经网络作为控制器,有12 个输入神经元,4 个连接到麦克风,8 个连接到红外传感器;3 个输出神经元控制机器人的执行,1 个控制扬声器,2 个控制机器人的轮子。随机初始化若干群体成员,每个种群成员编码一个控制器,评估控制器的适应度。新种群是由当前种群中的一个精英群体,加上通过交叉变异选择的组而获得的新控制器。
图9 人工进化中的神经网络Fig.9 Neural network in artificial evolution
集群机器人可以看作是多目标优化问题,多目标优化关注的是优化多个可能相互冲突的目标。Triann 等首次将多目标优化的思想用于进化集群机器人中的棒料抽取实验和导航等群体行为。聚集行为也可以描述为一个优化问题,基于进化计算的集群机器人控制器由粒子群优化算法求解。
近年来,人们对在线进化的兴趣再度升温。在线进化使集群机器人能够学习新任务,并在任务执行过程中适应不断变化的环境。例如,一种在线学习的新颖方法odNEAT可以在聚集、趋光性、导航和避障等集群机器人行为中展示出高度的容错能力,能够在出现故障的情况下适应并学习新的行为。在线进化的主要优点是,如果环境或任务要求发生变化,集群机器人可以修改自己的行为以应对新的环境。
(3)适用场景
集群机器人的一个关键的技术挑战是行为的综合控制。相邻机器人之间以及机器人与环境之间的相互作用,从而产生全局的、集体的自组织行为。研究者需要能够理解个体机器人交互和集群机器人行为属性之间的关系。人工进化可以帮助集群机器人建立微观到宏观行为的联系,基于宏观群体级行为的需求,人工进化迭代地调节每个机器人的参数和微观规则。
人工进化可用于协调运动、链形成、群体运输、觅食、分散、环境监测等。集群机器人在物理系统上实现具有很大的挑战性。成功进化的控制器可能在仿真中表现良好,但在实际集群机器人中表现较差。
集群机器人在人工进化中易陷入局部最优解。解决这个问题的一种方法是采用多样性维护技术,例如在群体聚集行为中,新颖性搜索明确地搜索新的行为,可引导进化和规避收敛到局部最优。还有利用行为分解的方法,将不同的演化行为结合起来,以产生能够执行整个任务的更复杂的控制器。
人工进化是支撑集群机器人空间协作行为建模的强大工具,但是会受到过度拟合的影响。进化过程中需要大量评估才能找到合适的控制器,通常需要多代,且涉及的不是一个而是多个机器人的仿真,这些个体的生命可能持续数年甚至数十年。模拟特定数量的机器人以进化群体行为的另一个问题是,进化过程中使用确切数量的机器人,这意味着无法保证集群机器人的可扩展性。如果在整个进化过程中模拟不同的种群规模,将花费更多的模拟时间。
5.2 强化学习模型
(1)方法概述
将机器人个体抽象为智能体,这些智能体具有自主与学习特性,集群机器人就成为了多智能体系统,其空间协作行为可为多智能体学习模型,个体通过与环境进行交互来获取奖励值并学习改善自己的行为策略,从而获得该环境下最优策略的过程,即多智能体强化学习(multi-agent reinforcement learning,MARL)。MARL 模型是指在数据上运行之后创建的机器学习模型。
多智能体强化学习有两种不同的方法:独立学习和合作学习。独立学习将多智能体的学习问题简化为单个智能体的学习问题。单智能体学习算法可以直接应用于多智能体环境,并且可伸缩性强,不会受到个体数量的影响。深度确定性策略梯度(deep deterministic policy gradient,DDPG)、异步优势演员评论家(asynchronous advantage actor-critic,A3C)和信赖域策略优化(trust region policy optimization,TRPO)等算法可通过独立学习的方式,使用参数共享扩展到多智能体领域,这些方法对MARL 领域做出了早期贡献。
然而,单智能体强化学习面临的一个主要问题是环境的动态非平稳性,这不符合传统强化学习的收敛条件,马尔可夫性不再成立。个体策略的变化可能会影响其他个体的奖励,从而影响其他个体的最优策略,无法通过仅仅改变个体自身的策略来适应动态不稳定的环境。尽管存在这些缺点,但独立学习模型在一些多智能体环境中也有良好的表现。
合作学习考虑到了其他个体,观察其他个体的行为进行策略估计,如集中训练分散执行的范式,在训练期间共享信息,执行时仅以本地观察和本地策略选择操作为条件,训练算法以集中的方式运行,执行时以分散的方式进行。如多智能体深度确定性策略梯度(multi-agent deep deterministic policy gradients,MADDPG)、反事实思维多智能体策略梯度(counterfactual multi-agent policy gradients,COMA)、多智能体近端策略优化(multi-agent proximal policy optimization,MAPPO)等。MADDPG 通过使用一个智能体联合状态和联合行动函数来扩展DDPG。如图10,Critic根据估计的Q 值和实际的Q 值进行训练,执行时Actor 根据Critic 的反馈来更新策略,选择一个动作,为智能体的策略集合。COMA 使用一个反事实基线,比较当前的动作与默认的动作,这个默认的动作称为基线,COMA 以此解决回报分配的问题。
图10 MADDPG 的集中训练分散执行Fig.10 Centralized training and decentralized execution of MADDPG
(2)应用实例
OpenAI Gym 和Unity ML Agents 等工具提供了标准化的界面,并允许将游戏和模拟器转换为学习环境,MPE(multi-agent particle environment)、星际争霸、Mujoco、Neural MMO 等环境已经成为MARL 最流行的实验平台。许多集群机器人复杂的现实问题,可以表述为MARL 问题,近年来已经出现大量相关应用文章,如集群机器人的群集、无人机集群对抗、多车辆通过十字路口等。
为防止多机器人碰撞的案例中,研究人员使用了MADDPG 算法为每个机器人建立了由Actor 网络和Critic 网络组成的神经网络。Actor 网络通过将相应机器人的状态作为输入来返回机器人的当前操作。基于环境信息和所有代理的动作信息,Critic 网络返回动作值函数。
(3)适用场景
强化学习侧重研究智能体为了最大限度地提高累积奖励而如何基于环境行动。MARL 是人工智能领域的研究热点,研究的是多个具有自主决策能力的智能体在环境中进行连续决策的优化问题,在一些游戏场景中,MARL 的反应已经超过了人类。单智能体强化算法可以很容易地应用于集群机器人环境,有较强的可伸缩性,但是行动空间、状态空间也会随着个体的数量呈指数增长,高方差特性是单智能体强化学习模型推广到多智能体的重要挑战。
MARL 结合博弈论的研究基础解决多智能体连续决策与优化问题成为了新的研究领域。MARL 并不稳定,且模型和训练方法很难推广到新的任务。现有的联合行动学习也需要大量的计算资源来学习最优策略,这阻碍了MARL 在集群机器人等系统中的应用,且其性能还没有像单代理方法那样得到深入的研究。同时,可伸缩性问题阻碍了MARL 在大规模集群机器人系统中的应用。
表4 从建模方法、模型粒度、适用场景、模型特点、建模难度五方面对以上具有重要作用的集群机器人空间协作行为建模方法进行了对比分析。
表4 各建模方法对比Table 4 Comparison of modeling methods
6 总结与展望
集群机器人研究目标是构建鲁棒、可扩展和灵活的复杂自主智能系统,理解集群机器人行为并获得期望的执行结果是其基础。而模型是系统行为或其部分属性的形式化描述。随着集群机器人技术及其应用的进一步发展,集群机器人空间协作行为建模将更凸显其重要性。集群机器人空间协作行为建模研究从不同角度已取得了一些重要成果,本文分析总结了集群机器人空间协作行为的现有主流建模方法,不同建模方法有不同的能力,且适用不同的场景,本文对此进行了较为全面的比较和评论。未来集群机器人的理论研究将更加深入,系统设计更加优化,领域应用更加广泛,集群机器人协同行为建模研究也将随之深化和扩展。本文认为以下几方面应予以关注和深入研究:
(1)群体行为跨学科综合模型。集群机器人具有鲜明的多学科交叉与融合特点,系统设计不仅涉及机电一体化、嵌入式计算、无线通讯、自适应控制、人工智能等,而且其协作行为以动力学、社会学、认知科学、组织理论为基础。例如,群体中的个体合作、竞争等行为,以博弈论为基础分析和构建相应行为模型,分析集群机器人行为的可能性和局限性。因此,汲取和融合不同学科的理论、知识、工具,推动形成新的集群机器人行为模型,会是一种创新研究的具体体现。
(2)适应规范通用的元模型。虽然已提出一些适应集群机器人某一特定行为或应用场景的行为模型,并在典型集群机器人场景中得到应用,但目前还缺乏这些具体模型的规范。元模型作为模型的模型,有助于揭示集群机器人模型的普适性与规范性。再则,群体从简单规则的作用中形成了复杂的智能模式,这种智能涌现难以从低层的个体描述预测。已有建模方法通常与具体的集群机器人行为关联紧密,各个具体行为模型之间是否有共有元素或存在某种联系,也是集群机器人空间协作行为元模型有待深入研究的问题。
(3)可定制的工程化模型。若将已有的面向具体领域或场景的行为模型建成自主体行为源模型范例库,当一具体集群机器人需要建模时,则可从源范例库中检索之前已有模型,找到与目标范例相匹配的源范例建立所需的模型,对其稍加修改后便可得到所需的模型。这需借鉴软件工程的原则与方法,例如可重构建模框架、可定义的建模语义、模型检查以及属性驱动等,据此构建行为源模型范例,不仅可提高集群机器人行为建模质量,降低成本,改进模型,还可加速集群机器人行为建模的规范化发展。
(4)数据与知识双驱动的智能模型。集群机器人活动过程中产生大量状态与行为数据,适时通过感知元件获得这些数据,将其运用到集群机器人行为模型优化或分析过程,即成为数据驱动。该方式通过实现集群机器人行为解空间的大范围覆盖和探索,从规模化数据中持续学习和进化群体行为,以有效补充提升数学模型的精确性。面向特定应用领域的集群机器人,其集群协作行为及其演化依赖于应用领域机理知识。未来随着个体机器人智能行为不断提升,群体智能行为的随机涌现也与领域机理知识密切关联。因此,知识驱动不仅可简化集群机器人行为建模,避免群体行为状态空间爆炸,而且与数据驱动结合,可实现未来集群机器人行为的智能模型构建。
(5)集群机器人行为模型形式化验证。目前,已有部分集群机器人空间协作行为模型,通过模型检验器得到形式化验证,例如可使用UPPAAL 对集群机器人的路径规划和导航进行验证。进一步,可面向集群机器人行为建模需求,扩展已有模型检验器的验证能力,也可对集群机器人更多行为模型开展形式化验证,以保障模型的正确性与完备性。