[0001]
本发明涉及群体智能系统中个体运动轨迹和状态的预测技术,具体为一种数据驱动的群体智能交互关系推断与演化计算方法。
背景技术:[0002]
许多自然界和社会领域中的复杂过程,如社交网络、物理系统等,可以看成是由个体之间的交互而形成的群体智能系统。揭示群体智能系统中潜在的交互作用,并以此分析个体到群体的智能涌现机理,学习系统的动态演化规则,可以使我们可以更好地理解、预测和控制群体系统的行为。
[0003]
然而在许多情况下,我们仅能观察到群体系统的时序状态信息,而个体的交互关系和动态演化规则是未知的。一些研究人员探索了从可观察的数据中建模隐式交互关系并学习动态演化规则,例如使用消息传递函数(van steenkiste等人在iclr2018会议)或注意力机制(watters等人在nips2017会议)等。
[0004]
相比于建模隐式交互关系,对显式交互关系进行建模可以更清晰地揭示交互行为与群体系统智能涌现及动态演化之间的关系。kipf等人在icml2018会议中提出了一种神经关系推断模型nri,该模型采用变分自编码器框架,以一种无监督的方式共同学习群体系统的显式交互关系和动态演化规则。然而,nri模型存在三处不足。第一,它独立地建模个体之间的显式交互关系,而没有考虑这些交互关系彼此之间的共存性,尽管alet等人在nips2019会议中提出整体考虑所有交互关系并通过模块化元学习迭代地改进预测来解决此问题,但是此方法需要付出十分昂贵的计算代价。第二,为了强调交互关系对群体系统演化的影响,nri模型预测了未来多个时刻的状态,但这也导致了误差的累积并阻碍模型准确地学习演化规则。第三,在没有先验知识的帮助下,群体系统的规模和复杂性的增加会使nri模型建模交互关系愈发困难。
技术实现要素:[0005]
本发明的目的是提供一种数据驱动的群体智能交互关系推断与演化计算方法,使用高效消息传递机制的图神经网络来进行神经关系推断,引入结构先验知识来提升交互关系的建模效果,准确预测群体智能系统中个体运动轨迹和状态。
[0006]
本发明数据驱动的群体智能交互关系推断与演化计算方法,包括:
[0007]
s1、通过具有关系交互机制的编码器模型,从群体智能系统的n个对象在t个时刻可观测轨迹数据x中建模交互关系的分布;
[0008]
s2、从步骤s1中离散的交互关系分布中采样出交互关系类型的特征向量;
[0009]
s3、通过具有时空消息传递机制的解码器模型,根据可观测轨迹数据x和交互关系类型的特征向量,学习动态演化规则并计算群体智能系统的未来状态;
[0010]
s4、引入交互关系的对称性作为结构先验知识,即在损失函数中加入正则项来实施软约束;
[0011]
s5、多次训练模型参数直至收敛,获得损失函数值最小的模型作为最终模型;最终模型根据对象的历史轨迹数据,推断出对象之间的交互关系,进而预测对象的运动轨迹和群体智能系统的未来状态。
[0012]
与现有技术相比,本发明技术方案的有益效果是:
[0013]
1、本发明引入关系交互机制来捕获不同个体之间的依赖关系,联合建模群体系统中的交互关系,大幅度提高了个体之间的交互关系建模的准确性,并基于交互关系进行演化计算,准确预测群体智能系统中个体运动轨迹和状态。
[0014]
2、本发明引入交互关系对称性作为结构先验知识,改善了在更复杂群体智能系统的交互关系建模效果。
[0015]
3、本发明引入时空消息传递机制来利用群体系统历史状态,增强对系统演化规则的学习效果,减缓多时刻预测带来的误差累积。
附图说明
[0016]
图1为本发明的计算方法流程图;
[0017]
图2为本发明的模型结构示意图。
具体实施方式
[0018]
下面结合附图和实施例对本发明的技术方案做进一步的说明,但本发明的实施方式不限于此。
[0019]
实施例
[0020]
本发明引入一种关系交互机制来捕获不同交互关系之间的共存依赖关系,同时引入时空消息传递机制来利用群体系统的历史信息。除此之外,本方法还引入了结构先验知识来辅助建模交互关系。本方法采用变分自编码器框架,其中编码器负责建模交互关系,解码器负责学习系统演化规则。
[0021]
本发明通过物理系统仿真数据集进行评估,具体使用了三种类型的物理系统仿真数据集,分别为弹簧连接粒子springs、带电粒子charged和相位耦合振kuramoto数据集。每种类型的物理系统又可划分为由5个对象组成的群体智能系统和由10个对象组成的群体智能系统。所有数据集都包含5万个训练样本,以及1万个验证和测试样本。
[0022]
本发明中问题的定义为:对于群体智能系统的交互关系建模及演化规则学习问题,用表示群体智能系统的n个对象(即n个个体)在t个时刻的可观测轨迹数据,如个体的位置和速度,其中表示第i个对象的轨迹序列,i=1,...,n,用表示所有n个对象在t时刻的状态信息。该问题的目标是,根据上述可观测轨迹数据x,推断出潜在的交互关系z,结合学习到的演化规则来计算群体系统的未来m个时刻的状态
[0023]
本发明是一种数据驱动的群体智能交互关系推断与演化计算方法,是一种深度学习方法。如图1、2所示,对于输入的物理仿真系统对象轨迹数据,使用具有关系交互机制的编码器模型来建模系统的交互关系的分布,然后采用gumbel-softmax技巧从分布中采样得到交互关系类型向量,根据此系统的交互关系类型向量和轨迹数据,使用具有时空消息传递机制的解码器模型学习系统的动态演化规则,并计算群体智能系统的未来状态,如个体
的运动轨迹等。
[0024]
本实施例具体包括如下步骤:
[0025]
s1:使用具有关系交互机制的编码器模型,从可观测轨迹数据x中建模交互关系的分布;
[0026]
在步骤s1中,输入模拟物理系统的对象轨迹数据至编码器模型,编码器模型使用基于消息传递机制的神经网络学习得到交互关系隐向量,再通过关系交互机制来捕获不同关系之间的依赖性,联合建模系统的交互关系的分布。
[0027]
本步骤s1的具体过程为:
[0028]
s11:以每个对象的轨迹i=1,...,n,作为其在全连接图中的相应节点的特征,使用基于消息传递机制的图神经网络,为每对对象生成交互关系隐向量,计算公式如下:
[0029][0030]
h
(i,j)
=f
e
([h
i
,h
j
])
[0031]
其中h
j
表示对象j的嵌入特征向量,f
v
、f
e
是使用图神经网络实现的映射,h
(i,j)
为交互关系隐向量;
[0032]
s12:根据步骤s11得到的交互关系隐向量,使用基于序列模型(如循环神经网络、卷积神经网络等)的关系交互机制来捕获交互关系之间的依赖关系,从而进行交互关系的联合建模,得到融合了依赖关系的边缘特征向量。
[0033]
关系交互机制分为两个子操作,分别为同一对象的关系交互建模和不同对象的关系交互建模。具体计算公式如下:
[0034][0035][0036]
其中分别为应用于同一对象的所有关系和不同对象的关系之间的关系交互操作,mean(
·
)为平均池化运算。
[0037]
s13:根据步骤s12得到的融合了依赖关系的边缘特征向量,建模交互关系的分布,计算公式如下:
[0038][0039]
其中z
ij
为一个one-hot向量,表示对象i和j之间交互关系类型。
[0040]
s2:使用gumbel-softmax方法从步骤s1中离散的交互关系分布中采样出交互关系类型的特征向量;
[0041]
本步骤s2中,由于直接从离散分布中采样是不可微分的过程,本方法使用了gumbel-softmax采样技巧,通过连续函数模拟了离散分布的可微分采样过程,计算公式如下:
[0042]
[0043]
其中为前述one-hot向量z
ij
的连续近似,亦称为交互关系类型的特征向量;其中g为从耿贝尔分布gumbel(0,1)中采样的随机向量,τ为控制平滑程度的超参数;符号表示将交互关系类型的特征向量定义为softmax(([e
(i,j)
,e
j
]+g)/τ)。
[0044]
s3:使用具有时空消息传递机制的解码器模型,根据可观测轨迹数据和交互关系类型的特征向量,学习动态演化规则并计算群体智能系统的未来状态;
[0045]
本步骤s3中,将步骤s1输入系统的对象轨迹数据集和步骤s2得到的交互关系类型的特征向量,输入具有时空消息传递机制的解码器模型,先使用关系级时空消息传递机制融合历史关系隐状态来生成当前时刻的关系隐状态,然后使用对象级时空消息传递机制融合历史对象隐状态来生成当前时刻的对象隐状态,最后使用全连接层输出当前时刻的系统对象状态变化量,与当前的系统对象状态相加即可得到下一时刻的系统对象状态。多次重复本步骤s3可以预测群体智能系统中未来多个时刻的对象状态。
[0046]
本实施例中,步骤s3的具体过程为:
[0047]
s31:根据可观测轨迹数据x和步骤s2得到的交互关系类型的特征向量使用基于序列模型(如循环神经网络、卷积神经网络等)的关系级别的时空消息传递机制来计算关系隐状态,公式如下:
[0048][0049][0050]
其中为使用神经网络实现的映射;stblock
edge
为时空消息传递算子,可捕获历史关系隐状态的相关性;表示历史关系隐状态,表示当前关系隐状态;和分别表示对象i和j在当前时刻的状态,表示当前时刻对象i对对象j的交互作用。
[0051]
s32:使用基于序列模型(如循环神经网络、卷积神经网络等)的对象级别的时空消息传递机制来计算对象隐状态,公式如下:
[0052][0053][0054]
其中stblock
node
为时空消息传递算子,可捕获历史对象隐状态的相关性;表示当前时刻其他对象对对象j交互作用的总和;表示历史对象隐状态,表示当前对象隐状态。
[0055]
s33:使用神经网络计算群体智能系统的未来演化状态,公式如下:
[0056][0057][0058][0059]
其中为一个多层感知机,用来得到当前时刻的状态改变量表示下一时刻状态的预测值;p
θ
表示下一时刻状态的分布,即均值为方差为σ2的正态分布。
[0060]
s34:演化计算群体智能系统未来多个时刻的预测值,得到群体智能系统的未来状
态,公式如下:
[0061][0062]
其中m表示未来m个时刻,表示t+m时刻状态的预测值。
[0063]
s4:引入交互关系的对称性作为结构先验知识,即在损失函数中加入正则项来实施软约束;
[0064]
本步骤s4中,正则项计算公式如下:
[0065][0066]
其中为步骤s13定义的交互关系的分布的乘积,为的辅助分布,满足用以对交互关系施加对称性约束,z是n个对象两两之间交互作用类型的全体,z
ij
是z的一个元素,表示对象i和j之间交互关系类型;kl[
·
||
·
]表示kl散度;λ是一个非负的超参数,用于控制正则项惩罚力度的大小。
[0067]
s5:多次训练模型参数直至收敛,获得损失函数值最小的模型作为最终模型。最终模型根据对象的历史轨迹数据,推断出对象之间的交互关系,进而预测对象的运动轨迹和变化趋势。
[0068]
具体为计算预测状态与数据集中系统未来多个时刻的真实状态的差异,得到损失函数值,使用adam优化方法调整模型参数。
[0069]
本实施例中,可重复上述步骤s1至步骤s5共500次,然后选取损失函数值最小的模型保存,并使用相应的测试数据集对最终模型进行测试并记录结果。除了物理系统外,该模型还可应用于城市交通系统中。在城市交通系统中,有车辆、行人等多种个体(即对象),个体之间相互影响,共同造成了复杂的交通现象;该模型可以通过这些个体的历史轨迹数据,如位置和速度,推断出车辆、行人之间的交互关系,进而预测它们的运动轨迹,并基于此预测交通流量及其变化趋势,为城市交通分析和引导提供支持。
[0070]
进一步地,步骤s5的多次训练过程中,损失函数为:
[0071][0072]
其中重构损失表示演化计算结果与实际状态的差距。最后使用计算得到的损失值进行反向传播更新模型参数。
[0073]
本方法使用两个评价指标进行衡量:
[0074]
1、acc(准确率):表示预测的交互关系与真实交互关系的重合度。准确率越高表示预测的交互关系越接近真实交互关系;
[0075]
2、mse(均方误差):表示演化计算的系统未来状态与真实未来状态的差距。最终实验结果如下表所示:
[0076]
表1:本方法在5个对象物理系统数据集与其他对比方法的acc(%)实验结果
[0077]
方法springschargedkuramotocorrelation52.455.862.8nri99.982.196.0modularmeta99.988.496.2本发明99.993.397.3
[0078]
表2:本方法在10个对象物理系统数据集与其他对比方法的acc(%)实验结果
[0079]
方法springschargedkuramotocorrelation50.451.459.3nri98.470.875.7modularmeta98.863.889.6本发明99.181.680.3
[0080]
表3:本方法在5个对象物理系统数据集与其他对比方法的mse实验结果
[0081][0082]
表4:本方法在10个对象物理系统数据集与其他对比方法的mse实验结果
[0083][0084]
由上述实验结果可知,本发明较其他方法有明显的提升。
[0085]
显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。