赵佳佳,刘 磊
(上海理工大学管理学院,上海 200093)
自然界中随处可见成群结队觅食的蚁群[1]、编队迁徙的鸟群[2]、洄游的鱼群[3-4]等,动物之间采用简单交互规则便能实现信息传递,这种自组织的涌现行为给人工集群复杂系统的灵活控制提供了有益参考。科学家通过对自然界生物的长期观察,研究出经典的生物启发交互算法,如Aoki 模型[5]、Vicsek 模型[6]和Couzin 模型[7]等,并通过简单自推进粒子(Self-propelled Particle,SPP)模型[8]仿真验证集群运动的组织协调性,进而应用于大规模人造集群系统的控制中[9-10]。
随着自动跟踪技术的发展,加之当前计算机技术为图像处理提供了足够算力[11],生物运动数据得以被大规模采集[12],集群运动的数据驱动建模更加便捷高效。在生物学和物理学领域,集群运动的研究重点集中在建模和仿真方面[13]。然而,传统的数据驱动建模多为人工设计,且强烈依赖于人类直觉和各种先验假设的数学模型结构[14],当面对真实生物运动数据时,传统的数学模型结构难以展现和解释集群运动的复杂行为。
近年来,以深度学习为代表的人工智能技术蓬勃发展,为复杂系统的集群研究提供了有效方案[15]。深度神经网络使集群运动数据交互模型的提取成为可能[16],但由于其具有臭名昭著的黑盒特性,使得进一步研究集群内部个体交互的信息传播路径变得十分困难。
目前,以Transformer 为代表的注意力机制逐渐成为深度学习领域的主流方法和研究热点。本文将注意力机制与生物集群行为相结合,通过分析真实鱼群运动数据,训练出泛化性能良好的可预测和解释复杂系统隐藏交互行为的深度注意力网络模型,并应用于真实鱼群运动研究与智能体仿真实验中,从而为实现更大规模的灵活分布式系统控制奠定基础。
复杂系统的行为数据大多表现为时间序列,序列模型便是为此类数据建模设计的。传统的循环神经网络[17](Recurrent Neural Network,RNN)虽然能够解决序列数据问题,但在处理长序列时存在严重的梯度消失和梯度爆炸问题。
为了减轻RNN 中的梯度消失现象,长短期记忆(Long Short-Term Memory,LSTM)网络[18]应运而生。LSTM 中添加了额外的隐含状态记忆序列信息,采用3 个门(输入门、遗忘门和输出门)控制当前时刻的输入对记忆的影响,调节各个单元间的信息流,有选择地加入新的信息给当前状态,防止梯度消失和梯度爆炸。LSTM 元胞结构模型如图1 所示。
首先,当前输入信息xt与上一时刻隐藏层输出ht-1通过Sigmoid 函数得到从遗忘门中丢弃的信息ft,表示为:
然后,根据需要更新的信息it与生成备选更新的内容通过输入门将旧元胞状态Ct-1更新为新元胞状态Ct,表示为:
最后,输入信息xt与上一时刻隐藏层的输出ht-1,通过Sigmoid 函数得到输出信息yt,新元胞状态Ct通过tanh 层与yt相乘得到当前时刻隐藏层的输出ht,表示为:
LSTM 目前已出现诸多变种,其中最实用的为门控递归单元(Gate Recurrent Unit,GRU),其将控制门的个数减少至2 个,使得模型收敛所需时间有所下降,且与原始LSTM 模型相比几乎没有性能损失。
注意力机制是一种模拟人脑注意力机制的模型[19],可将其看作是一个组合函数,通过计算注意力的概率分布,以突出某个关键输入对输出的影响[20]。注意力机制具有高效的信息筛选机制,结合该机制的编码——解码(Encod⁃er-Decoder)框架目前已广泛应用于自然语言理解、图像处理等领域[21-22]。
注意力机制通过对模型中不同关注部分赋予不同的权重,从中抽取出重要和关键信息,从而优化模型并作出更为准确的判断[20]。因此,注意力机制对于群体决策有重要作用,并且拥有更好的可解释性。
Transformer 采用按比例缩放的点积注意力,经过多层感知机(Multilayer Perceptron,MLP)层的向量Q(Query)、K(Key)、V(Value)需要先经过Mask 掩码操作再进行Softmax归一化。首先计算Q与K的转置点积,点积的几何意义即两个向量越相似,点积就越大,反之就越小。输出值即向量的加权和,具体计算公式为:
Fig.1 LSTM cellular structure model图1 LSTM 元胞结构模型
本文借鉴Transformer 模型,配合编码——解码网络,设计出符合鱼群运动规律的注意力网络模型。采用宏观鱼群运动数据训练模型,并利用该模型计算单体间的注意力数值,表征集群运动中的个体交互作用,从而为微观交互与宏观功能之间搭建起可解释的桥梁。
采用体型较小且具有集群属性的红鼻剪刀鱼(Hemi⁃grammus rhodostomus)作为实验观察对象,利用idTracker软件录制5 条鱼在半径为25cm 的圆形实验平台内集群运动的视频,并从中提取鱼群运动轨迹。
红鼻剪刀鱼具有加速转向——直线滑行的游泳模式[13],将其轨迹分解为一系列决策与滑行交替运动的过程,即红鼻剪刀鱼受邻居鱼与环境影响调整运动决策,改变自身朝向并同时加速,紧接着有一个直线滑行的降速过程,以此循环,最终获得60 312 个决策时刻。
利用决策数据建立注意力模型。首先将智能体决策的输入观测变量编码为高维向量,设计针对鱼群运动的注意力层;然后将每个智能体的自身信息与其他邻居的注意力加权信息联合,得出单体间的注意力强度;最后使用高斯神经网络[13]作为解码器,以模仿单体决策输出的随机性,从而构建具有概率输出的注意力网络模型。
注意力网络模型整体架构如图2 所示,分为解码器、注意力机制、解码器3 个部分。采用3 个编码器对单体的状态向量进行编码,构建Transformer 计算注意力所需的3个高维向量:键值K、查询Q 和值V,以进行后续多头注意力计算。编码器的输入状态包括两智能体之间的距离dij、焦点单体观察邻居的视角ψij、焦点单体与邻居的航向角差δϕij。注意力网络的输入为编码信息的集合,因此其输入层节点个数为编码器输出层的两倍,为使注意力网络更好地学习到注意力效果,设置两个隐藏层。
通过考察焦点单体的查询Qi与邻居值向量Vj的匹配程度计算焦点单体对邻居的注意力权重,以确定两智能体之间的交互强度。由于鱼群运动系统的交互作用具有不连续的非对称性,常用的加性注意力算法以及带有缩放的点积注意力[19]等均无法应对鱼群系统的复杂性。因此,为使单智能体高效跟随最有影响力的邻居,注意力权重wij的计算需要先对编码信息进行组合掩码操作,并应用SELU激活函数进行非线性处理,以达到良好的集群运动效果,注意力权重的计算公式为:
利用注意力权重wij加权平均邻居值向量Vj,然后联合焦点单体的值向量Vi获得解码器的高维空间状态输入oij,表示为:
Fig.2 Attention network model overall architecture图2 注意力网络模型整体架构
解码器包含两个状态变量信息,分别为焦点智能体直线滑行距离li和航向角度改变δϕi。为实现高斯网络输出,输出值分别为li、δϕi的均值与决策方差。由于鱼类群体包含顺时针和逆时针两种相反的运动航向信息,δϕi的处理需要两倍于li的高斯神经网络解码层。注意力网络模型整体训练结构如表1所示。
Table 1 Attention network model architecture表1 注意力网络模型结构
采用获取的60 312 个决策时刻作为实验数据,进一步处理得到13 494 条实验数据,其中训练集包含9 527 条记录,测试集包含3 967 条记录。为消除量纲影响,对训练数据进行归一化处理。采用PyTorch 深度学习框架编写网络模型,训练程序使用NVIDIA GeForce RTX 3080 GPU 处理器进行加速。设置一次训练的样本量(batch size)为1 024,利用Adam 优化器进行训练,训练次数为300 轮,学习率为0.000 5。
采用负对数似然(Negative Log-Likelihood,NLL)损失函数之和判定多元高斯分布的均值μ和方差σ的训练精度,表示为:
采用5 条鱼的实验数据训练注意力网络模型,然后将该实验数据输入到训练后的模型中,比较模型输出决策与真实鱼群实验决策的概率密度函数(Probability Density Function,PDF)曲线,其中真实鱼类单体决策采用实线表示,注意力网络模型输出决策采用虚线表示。结果见图3。
Fig.3 Comparison of gliding distance and heading angle between model training and real fish experiment图3 模型训练与真鱼实验滑行距离、航向角改变比较
图3A 显示注意力网络模型训练的决策距离分布与真鱼实验类似,图3B 显示模型输出的航向角变化决策与训练数据具有相同的峰值位置,然而曲线明显陡峭,原因在于模型学习了鱼群数据的共性信息,忽略了特性信息,滤除了部分决策随机性。
为验证注意力网络模型应用于集群复杂系统中的有效性,设计了由Python 和LabView 高级语言联合编写的多智能体仿真平台。图4(彩图扫OSID 码可见)仿真结果表明,在1min 内智能体便可以从初始的分散状态逐渐聚合为稳定的紧凑集群,该瞬态过程也说明了本文模型具有较强的集群聚合特性。
Fig.4 Aggregation process of multi-agent simulation图4 多智能体运动仿真聚合过程
本文将生物集群行为与注意力机制相结合,提出针对真实鱼群运动数据的注意力模型,并将所提模型的仿真效果与真实鱼类的滑行距离、航向角变化进行比较。实验结果表明,本文模型与真实鱼类的宏观运动特性高度一致,可应用于复杂集群系统的研究中。然而,该模型虽然初步实现了多智能体集群运动,但其泛化能力并未展现,下一步将尝试将该模型运用于大规模智能体仿真实验中,以实现机器人的智能控制。