一种多智能体对抗动作预测方法及装置转让专利

申请号 : CN202010490881.5

文献号 : CN111723931B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 徐新海李晟泽张峰刘逊韵张帅李豪

申请人 : 中国人民解放军军事科学院战争研究院

摘要 :

本发明实施例提供一种多智能体对抗动作预测方法及装置,所述方法包括:确定多智能体对抗场景的计算图,计算图包括全局属性特征,以及各智能体的节点信息和关系信息;将计算图输入至对抗动作预测模型中,得到对抗动作预测模型输出的各智能体的执行动作信息;其中,对抗动作预测模型是基于样本计算图,以及样本计算图中各样本智能体的样本执行动作信息训练得到的;对抗动作预测模型用于融合全局属性特征以及各智能体的节点信息和关系信息,以更新各智能体的节点信息,并基于更新后的节点信息,确定各智能体的执行动作信息。本发明实施例提供的方法及装置,有效地表征了多智能体对抗场景的信息,实现了对可变维度的多智能体特征的有效处理。

权利要求 :

1.一种多智能体对抗动作预测方法,其特征在于,包括:步骤一,确定多智能体对抗场景的计算图,所述计算图包括全局属性特征,以及各智能体的节点信息和关系信息;

步骤二,将所述计算图输入至对抗动作预测模型中,得到所述对抗动作预测模型输出的各智能体的执行动作信息,具体公式为:式中, 为第i个智能体的当前节点特征, 为第i个智能体的上一节点特征, 为第i个智能体为被动智能体rk的汇聚关系特征,u为全局属性特征, 为节点更新神经网络,θl为该神经网络的超参数, 为该神经网络的权值,ReLU为该神经网络的激活函数,CONCAT为向量拼接函数;

其中,所述对抗动作预测模型是基于样本计算图,以及所述样本计算图中各样本智能体的样本执行动作信息训练得到的;

所述对抗动作预测模型用于融合所述全局属性特征以及各智能体的节点信息和关系信息,以更新各智能体的节点信息,并基于更新后的节点信息,确定各智能体的执行动作信息;

所述对抗动作预测模型的损失函数是基于各智能体的执行动作回报值、当前时刻执行动作的效用估计值、下一时刻执行动作的效用估计值以及衰减系数确定的,损失函数的具体公式如下:

式中,r为执行动作回报值,γ为衰减系数, 为第i个智能体下一时刻的执行动作效用估计值, 为第i个智能体当前时刻的执行动作效用估计值,t为当前时刻,t+1为下一时刻;

并且,步骤二具体包括:

编码层:将所述计算图中各智能体的节点信息和关系信息输入至所述对抗动作预测模型的编码层,得到所述编码层输出的各智能体的初始节点特征和初始关系特征,其中,编码层中初始节点特征的确定公式如下:初始关系特征的确定公式如下:

融合层:将各智能体的初始节点特征和初始关系特征,以及所述全局属性特征输入至所述对抗动作预测模型的融合层,得到所述融合层输出的各智能体的预测节点特征,其中,各智能体的预测节点特征为融合层中各智能体的节点特征最后一次迭代更新得到的各智能体更新后的节点特征;

解码层:将任一智能体的预测节点特征输入至所述对抗动作预测模型的解码层,得到所述解码层输出的所述任一智能体的执行动作信息,其中,解码层的具体公式如下:

2.根据权利要求1所述的多智能体对抗动作预测方法,其特征在于,所述融合层包括多个串联的融合子层;

所述将各智能体的初始节点特征和初始关系特征,以及所述全局属性特征输入至所述对抗动作预测模型的融合层,得到所述融合层输出的各智能体的预测节点特征,具体包括:将上一融合子层更新的各智能体的上一节点特征和上一关系特征,以及所述全局属性特征输入至当前融合子层,得到当前融合子层输出的各智能体的当前节点特征和当前关系特征;

其中,首个融合子层的输入为各智能体的初始节点特征和初始关系特征,以及所述全局属性特征;各智能体的预测节点特征为最末融合子层输出的各智能体的当前节点特征。

3.根据权利要求2所述的多智能体对抗动作预测方法,其特征在于,所述将上一融合子层更新的各智能体的上一节点特征和上一关系特征,以及所述全局属性特征输入至当前融合子层,得到当前融合子层输出的各智能体的当前节点特征和当前关系特征,具体包括:将上一融合子层更新的各智能体的上一节点特征和上一关系特征,以及所述全局属性特征输入至当前融合子层的关系更新层,得到所述关系更新层输出的各智能体的当前关系特征;

将任一智能体为被动智能体时的当前关系特征输入至当前融合子层的关系汇聚层,得到所述关系汇聚层输出的所述任一智能体的汇聚关系特征;

将所述任一智能体的汇聚关系特征和上一节点特征,以及所述全局属性特征输入至当前融合子层的节点更新层,得到所述节点更新层输出的所述任一智能体的当前节点特征。

4.根据权利要求1至3任一项所述的多智能体对抗动作预测方法,其特征在于,所述将所述计算图输入至对抗动作预测模型中,得到所述对抗动作预测模型输出的各智能体的执行动作信息,之后还包括:

基于各智能体的执行动作信息控制各智能体执行动作,并基于动作执行后的各智能体的节点信息和关系信息,更新所述计算图。

5.根据权利要求1至3任一项所述的多智能体对抗动作预测方法,其特征在于,所述节点信息包括智能体的速度信息和/或位置信息,所述关系信息包括智能体之间的距离信息和/或威胁程度信息。

6.一种多智能体对抗动作预测装置,其特征在于,包括:计算图确定模块,用于确定多智能体对抗场景的计算图,所述计算图包括全局属性特征,以及各智能体的节点信息和关系信息;

对抗动作预测模块,用于将所述计算图输入至对抗动作预测模型中,得到所述对抗动作预测模型输出的各智能体的执行动作信息,具体公式为:式中, 为第i个智能体的当前节点特征, 为第i个智能体的上一节点特征, 为第i个智能体为被动智能体rk的汇聚关系特征,u为全局属性特征, 为节点更新神经网络,θl为该神经网络的超参数, 为该神经网络的权值,ReLU为该神经网络的激活函数,CONCAT为向量拼接函数;

其中,所述对抗动作预测模型是基于样本计算图,以及所述样本计算图中各样本智能体的样本执行动作信息训练得到的;

所述对抗动作预测模型用于融合所述全局属性特征以及各智能体的节点信息和关系信息,以更新各智能体的节点信息,并基于更新后的节点信息,确定各智能体的执行动作信息;

所述对抗动作预测模型的损失函数是基于各智能体的执行动作回报值、当前时刻执行动作的效用估计值、下一时刻执行动作的效用估计值以及衰减系数确定的,损失函数的具体公式如下:

式中,r为执行动作回报值,γ为衰减系数, 为第i个智能体下一时刻的执行动作效用估计值, 为第i个智能体当前时刻的执行动作效用估计值,t为当前时刻,t+1为下一时刻;

并且,对抗动作预测模块,具体包括:编码层子模块,用于将所述计算图中各智能体的节点信息和关系信息输入至所述对抗动作预测模型的编码层,得到所述编码层输出的各智能体的初始节点特征和初始关系特征,其中,编码层中初始节点特征的确定公式如下:初始关系特征的确定公式如下:

融合层子模块,用于将各智能体的初始节点特征和初始关系特征,以及所述全局属性特征输入至所述对抗动作预测模型的融合层,得到所述融合层输出的各智能体的预测节点特征,其中,各智能体的预测节点特征为融合层中各智能体的节点特征最后一次迭代更新得到的各智能体更新后的节点特征;

解码层子模块,用于将任一智能体的预测节点特征输入至所述对抗动作预测模型的解码层,得到所述解码层输出的所述任一智能体的执行动作信息,其中,解码层的具体公式如下:

7.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至5任一项所述的多智能体对抗动作预测方法的步骤。

8.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1至5任一项所述的多智能体对抗动作预测的步骤。

说明书 :

一种多智能体对抗动作预测方法及装置

技术领域

[0001] 本发明涉及人工智能技术领域,尤其涉及一种多智能体对抗动作预测方法及装置。

背景技术

[0002] 多智能体对抗主要研究如何驱动智能体编队内部成员有效完成与敌方的对抗任务,例如智能体编队在接收某一区域防守任务指令(包括区域范围、成员数量、任务目标等)
和编队成员属性基础上,驱动该编队对进入该区域的敌方目标进行对抗。由此可知,多智能
体对抗问题实际上也是一种典型的多智能体协作问题,其核心是对编队内智能体进行协同
决策。深度强化学习是实现多智能体协同决策的手段之一,在具体应用时,对于不同的任务
指令,任务区域、任务时间、编队成员数量和成员属性是动态变化的,因此,需要神经网络模
型的数据输入维度能够随着智能体特征的变化而改变。
[0003] 现有的基于深度强化学习的多智能体动作预测方法,对于可变维度的智能体特征的处理方法主要包括三种:第一种是使用常规的全连接神经网络,预估可能的最大特征维
度,并以该输入维度确定神经网络结构;第二种是使用卷积神经网络,将多智能体环境转变
为类似图像的数据结构,以固定的维度对智能体特征进行学习;第三种是使用循环神经网
络,通过智能体特征的相互叠加来实现对可变特征的学习。上述三种方法在处理多智能体
对抗问题时均缺乏足够的灵活性,计算冗余度较高,无法满足多智能体对抗时针对不同任
务的通用性要求,无法对可变维度的智能体特征进行有效处理。

发明内容

[0004] 本发明实施例提供一种多智能体对抗动作预测方法及装置,用以解决现有的多智能体动作预测方法无法对可变维度的智能体特征进行有效处理的技术问题。
[0005] 第一方面,本发明实施例提供一种多智能体对抗动作预测方法,包括:
[0006] 确定多智能体对抗场景的计算图,所述计算图包括全局属性特征,以及各智能体的节点信息和关系信息;
[0007] 将所述计算图输入至对抗动作预测模型中,得到所述对抗动作预测模型输出的各智能体的执行动作信息;
[0008] 其中,所述对抗动作预测模型是基于样本计算图,以及所述样本计算图中各样本智能体的样本执行动作信息训练得到的;
[0009] 所述对抗动作预测模型用于融合所述全局属性特征以及各智能体的节点信息和关系信息,以更新各智能体的节点信息,并基于更新后的节点信息,确定各智能体的执行动
作信息。
[0010] 可选地,所述将所述计算图输入至对抗动作预测模型中,得到所述对抗动作预测模型输出的各智能体的执行动作信息,具体包括:
[0011] 将所述计算图中各智能体的节点信息和关系信息输入至所述对抗动作预测模型的编码层,得到所述编码层输出的各智能体的初始节点特征和初始关系特征;
[0012] 将各智能体的初始节点特征和初始关系特征,以及所述全局属性特征输入至所述对抗动作预测模型的融合层,得到所述融合层输出的各智能体的预测节点特征;
[0013] 将任一智能体的预测节点特征输入至所述对抗动作预测模型的解码层,得到所述解码层输出的所述任一智能体的执行动作信息。
[0014] 可选地,所述融合层包括多个串联的融合子层;
[0015] 所述将各智能体的初始节点特征和初始关系特征,以及所述全局属性特征输入至所述对抗动作预测模型的融合层,得到所述融合层输出的各智能体的预测节点特征,具体
包括:
[0016] 将上一融合子层更新的各智能体的上一节点特征和上一关系特征,以及所述全局属性特征输入至当前融合子层,得到当前融合子层输出的各智能体的当前节点特征和当前
关系特征;
[0017] 其中,首个融合子层的输入为各智能体的初始节点特征和初始关系特征,以及所述全局属性特征;各智能体的预测节点特征为最末融合子层输出的各智能体的当前节点特
征。
[0018] 可选地,所述将上一融合子层更新的各智能体的上一节点特征和上一关系特征,以及所述全局属性特征输入至当前融合子层,得到当前融合子层输出的各智能体的当前节
点特征和当前关系特征,具体包括:
[0019] 将上一融合子层更新的各智能体的上一节点特征和上一关系特征,以及所述全局属性特征输入至当前融合子层的关系更新层,得到所述关系更新层输出的各智能体的当前
关系特征;
[0020] 将任一智能体为被动智能体时的当前关系特征输入至当前融合子层的关系汇聚层,得到所述关系汇聚层输出的所述任一智能体的汇聚关系特征;
[0021] 将所述任一智能体的汇聚关系特征和上一节点特征,以及所述全局属性特征输入至当前融合子层的节点更新层,得到所述节点更新层输出的所述任一智能体的当前节点特
征。
[0022] 可选地,所述对抗动作预测模型的损失函数是基于各智能体的执行动作回报值、当前时刻执行动作的效用估计值、下一时刻执行动作的效用估计值以及衰减系数确定的。
[0023] 可选地,所述将所述计算图输入至对抗动作预测模型中,得到所述对抗动作预测模型输出的各智能体的执行动作信息,之后还包括:
[0024] 基于各智能体的执行动作信息控制各智能体执行动作,并基于动作执行后的各智能体的节点信息和关系信息,更新所述计算图。
[0025] 可选地,所述节点信息包括智能体的速度信息和/或位置信息,所述关系信息包括智能体之间的距离信息和/或威胁程度信息。
[0026] 第二方面,本发明实施例提供一种多智能体对抗动作预测装置,包括:
[0027] 计算图确定模块,用于确定多智能体对抗场景的计算图,所述计算图包括全局属性特征,以及各智能体的节点信息和关系信息;
[0028] 对抗动作预测模块,用于将所述计算图输入至对抗动作预测模型中,得到所述对抗动作预测模型输出的各智能体的执行动作信息;
[0029] 其中,所述对抗动作预测模型是基于样本计算图,以及所述样本计算图中各样本智能体的样本执行动作信息训练得到的;
[0030] 所述对抗动作预测模型用于融合所述全局属性特征以及各智能体的节点信息和关系信息,以更新各智能体的节点信息,并基于更新后的节点信息,确定各智能体的执行动
作信息。
[0031] 第三方面,本发明实施例提供一种电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如第一方面所述
的多智能体对抗动作预测方法。
[0032] 第四方面,本发明实施例提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如第一方面所述的多智能体对抗动作预测方
法。
[0033] 本发明实施例提供的多智能体对抗动作预测方法及装置,通过确定多智能体对抗场景的计算图,有效地表征了多智能体对抗场景的信息。通过将计算图输入至对抗动作预
测模型中,使得各智能体之间共享模型参数,实现了对可变维度的多智能体特征的有效处
理,同时简化了模型结构,提升了特征融合的能力。通过对抗动作预测模型融合全局属性特
征以及各智能体的节点信息和关系信息,以更新各智能体的节点信息,有利于己方智能体
编队协同决策,以实现对抗任务。

附图说明

[0034] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发
明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根
据这些附图获得其他的附图。
[0035] 图1为本发明实施例提供的多智能体对抗动作预测方法的流程示意图;
[0036] 图2为本发明另一实施例提供的多智能体对抗动作预测方法的流程示意图;
[0037] 图3为本发明实施例提供的多智能体对抗动作预测装置的结构示意图;
[0038] 图4为本发明实施例提供的电子设备的结构示意图。

具体实施方式

[0039] 为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是
本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员
在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0040] 图1为本发明实施例提供的多智能体对抗动作预测方法的流程示意图,如图1所示,本发明实施例提供的多智能体对抗动作预测方法包括:
[0041] 步骤110,确定多智能体对抗场景的计算图,计算图包括全局属性特征,以及各智能体的节点信息和关系信息。
[0042] 具体地,智能体是指一个具有自适应、自治能力的硬件、软件或其他实体,例如机器人、无人机和游戏人物等,多智能体是由一系列相互作用的智能体构成,内部的各智能体
通过相互通信、合作、竞争等方式,完成单个智能体不能完成的复杂的、大规模的任务。多智
能体对抗场景是指多智能体组成的智能体编队与敌方进行对抗的场景,例如游戏中的作战
场景,在多智能体对抗场景中,己方智能体编队需要协同决策完成与敌方的对抗任务,例如
防守某一区域,抵御敌方对该区域的攻陷。
[0043] 基于多智能体对抗场景,以单个智能体为节点,以智能体之间的关系为边构造多智能体对抗场景对应的计算图,计算图包括全局属性特征,以及各智能体的节点信息和关
系信息。其中,全局属性特征可以用于表征多智能体对抗场景的环境信息、任务信息等,计
算图中一个节点(即智能体)对应一个节点信息,节点信息用于表征智能体的属性,节点信
息可以包括智能体的速度信息和/或位置信息,一条边对应一个关系信息,关系信息用于表
征该条边连接的两个智能体之间的关系,例如敌对关系、竞争关系、保护关系等,关系信息
可以包括智能体之间的距离信息和/或威胁程度信息,每一条边连接的两个智能体包括一
个主动智能体和一个被动智能体。
[0044] 步骤120,将计算图输入至对抗动作预测模型中,得到对抗动作预测模型输出的各智能体的执行动作信息;
[0045] 其中,对抗动作预测模型是基于样本计算图,以及样本计算图中各样本智能体的样本执行动作信息训练得到的;
[0046] 对抗动作预测模型用于融合全局属性特征以及各智能体的节点信息和关系信息,以更新各智能体的节点信息,并基于更新后的节点信息,确定各智能体的执行动作信息。
[0047] 具体地,在得到多智能体对抗场景对应的计算图之后,将计算图包含的全局属性特征,以及各智能体的节点信息和关系信息输入至对抗动作预测模型,对抗动作预测模型
用于融合全局属性特征,以及各智能体的节点信息和关系信息,以更新各智能体的节点信
息,并基于更新后的节点信息,输出各智能体的执行动作信息。其中,各智能体的执行动作
信息用于控制各智能体执行的动作,执行动作信息可以包括对应智能体的执行动作,还可
以包括执行动作的效用估计值。
[0048] 本发明实施例中,通过对抗动作预测模型融合全局属性特征以及各智能体的节点信息和关系信息,并据此更新各智能体的节点信息,使得各智能体更新后的节点信息不仅
考虑了各智能体自身状态,而且考虑了多智能体对抗场景的环境、任务,以及各智能体与其
他智能体之间的关系。在此基础上,基于更新后的节点信息,得到的各智能体的执行动作信
息有利于己方智能体编队协同决策,以实现对抗任务。
[0049] 通过同一对抗动作预测模型对各智能体进行处理,各智能体之间共享模型参数,简化了模型的结构,提升了模型特征融合的能力,同时在实时对抗态势快速变化时,共享模
型参数能够支持计算图中全局属性特征,以及各智能体节点信息和关系信息的快速变更,
以实现对抗动作预测模型对可变维度的多智能体特征的有效处理。其中,对抗动作预测模
型可以为神经网络模型,相应地,模型参数可以为神经网络权值。
[0050] 在执行步骤120之前,还可以预先训练得到对抗动作预测模型,具体可通过如下方式训练得到对抗动作预测模型:首先,收集样本计算图,以及样本计算图中各样本智能体的
样本执行动作信息。随即,将基于样本计算图,以及样本计算图中各样本智能体的样本执行
动作信息输入至初始模型进行训练,从而得到对抗动作预测模型。
[0051] 本发明实施例提供的多智能体动作预测方法,通过确定多智能体对抗场景的计算图,有效地表征了多智能体对抗场景的信息。通过将计算图输入至对抗动作预测模型中,使
得各智能体之间共享模型参数,实现了对可变维度的多智能体特征的有效处理,同时简化
了模型结构,提升了特征融合的能力。通过对抗动作预测模型融合全局属性特征以及各智
能体的节点信息和关系信息,以更新各智能体的节点信息,有利于己方智能体编队协同决
策,以实现对抗任务。
[0052] 基于上述实施例,该多智能体对抗动作预测方法中,步骤120具体包括:
[0053] 步骤121,将计算图中各智能体的节点信息和关系信息输入至对抗动作预测模型的编码层,得到编码层输出的各智能体的初始节点特征和初始关系特征。
[0054] 具体地,编码层用于对计算图中各智能体的节点信息和关系信息进行编码,得到各智能体的初始节点特征和初始关系特征。
[0055] 本发明实施例以及后续实施例均以对抗动作预测模型为神经网络模型进行说明,编码层中初始节点特征的确定公式如下:
[0056]
[0057] 式中, 为第i个智能体的初始节点特征,vi为第i个智能体的节点信息,为编码层中针对节点特征进行编码的的神经网络,θfirst为该神经网络的超参数,
为该神经网络的权值,ReLU为该神经网络的激活函数,编码层可以基于MLP(Multi‑
layer Perceptron,多层感知机)构建。
[0058] 编码层中初始关系特征的确定公式如下:
[0059]
[0060] 式中, 为第k条边的初始关系特征,ek为第k条边的关系信息, 为编码层中针对关系特征进行编码的神经网络,θfirst为该神经网络的超参数, 为该神经网
络的权值,ReLU为该神经网络的激活函数。
[0061] 步骤122,将各智能体的初始节点特征和初始关系特征,以及全局属性特征输入至对抗动作预测模型的融合层,得到融合层输出的各智能体的预测节点特征。
[0062] 具体地,融合层用于融合各智能体的初始节点特征和初始关系特征,以及全局属性特征,以更新各智能体的节点特征,并输出各智能体的预测节点特征。其中,各智能体的
预测节点特征为融合层中各智能体的节点特征最后一次迭代更新得到的各智能体更新后
的节点特征。
[0063] 步骤123,将任一智能体的预测节点特征输入至对抗动作预测模型的解码层,得到解码层输出的任一智能体的执行动作信息。
[0064] 具体地,解码层用于对任一智能体的预测节点特征进行动作映射,并输出任一智能体的执行动作信息。
[0065] 解码层的具体公式如下:
[0066]
[0067] 式中,v′i为第i个智能体的预测节点特征,qi为第i个智能体的执行动作信息,为解码神经网络,θlast为该神经网络的超参数, 为该神经网络的权值,SOFTMAX
为softmax函数,解码层可以基于MLP构建。
[0068] 基于上述任一实施例,该多智能体对抗动作预测方法中,融合层包括多个串联的融合子层,步骤121具体包括:
[0069] 步骤1211,将上一融合子层更新的各智能体的上一节点特征和上一关系特征,以及全局属性特征输入至当前融合子层,得到当前融合子层输出的各智能体的当前节点特征
和当前关系特征;
[0070] 其中,首个融合子层的输入为各智能体的初始节点特征和初始关系特征,以及全局属性特征;各智能体的预测节点特征为最末融合子层输出的各智能体的当前节点特征。
[0071] 具体地,融合层包括多个串联的融合子层,多个融合子层可以为结构相同的神经网络。针对多个串联的融合子层,每一融合子层均可以作为当前融合子层执行上述步骤
1211的操作。
[0072] 假设当前融合子层为多个融合子层中的任意一层,将上一融合子层更新的各智能体的上一节点特征和上一关系特征,以及全局属性特征输入至当前融合子层,由当前融合
子层对各智能体的节点特征和关系特征进行进一步的更新,并输出进一步更新得到的各智
能体的节点特征和关系特征,作为下一融合子层的输入,而且每一融合子层的输入均包含
全局属性特征。
[0073] 首个融合子层为多个串联的融合子层中第一个融合子层,当前融合子层为首个融合子层时,由于首个融合子层不存在上一融合子层,首个融合子层的输入为各智能体的初
始节点特征和初始关系特征,以及全局属性特征。最末融合子层为多个串联的融合子层中
最后一个融合子层,将最末融合子层更新得到的各智能体的节点特征作为各智能体的预测
节点特征。
[0074] 本发明实施例提供的多智能体动作预测方法,通过多个串联的融合子层,对各智能体的节点特征和关系特征进行迭代更新,以确定各智能体的预测节点特征,充分考虑了
各智能体与多智能体对抗场景以及其他智能体的关系,有利于己方智能体编队协同决策,
以实现对抗任务。
[0075] 基于上述任一实施例,该多智能体对抗动作预测方法中,步骤1211具体包括:
[0076] 步骤12111,将上一融合子层更新的各智能体的上一节点特征和上一关系特征,以及全局属性特征输入至当前融合子层的关系更新层,得到关系更新层输出的各智能体的当
前关系特征。
[0077] 具体地,关系更新层用于更新各智能体的关系特征,第l层融合子层的关系更新层的具体公式如下:
[0078]
[0079] 式中, 为第k条边的当前关系特征, 的第k条边的上一关系特征, 为第k条边的被动智能体rk的上一节点特征, 为第k条边的主动智能体sk的上一节点特征,u
为全局属性特征, 为第l层融合子层的关系更新神经网络,θl为该神经网络的超参数,
为该神经网络的权值,ReLU为该神经网络的激活函数,CONCAT为向量拼接函数,关系更
新层可以基于MLP构建。
[0080] 步骤12112,将任一智能体为被动智能体时的当前关系特征输入至当前融合子层的关系汇聚层,得到关系汇聚层输出的任一智能体的汇聚关系特征。
[0081] 具体地,关系汇聚层用于汇聚智能体为被动智能体的关系特征,第l层融合子层的关系汇聚层的具体公式如下:
[0082]e→v
[0083] 式中, 为第i个智能体为被动智能体rk的汇聚关系特征,g 为关系汇聚函数,为第i个智能体为被动智能体rk的当前关系特征集合,mi为第i个智能体为被动
智能体rk的当前关系特征的数量。作为优选,关系汇聚函数可以为求和函数SUM。
[0084] 步骤12113,将任一智能体的汇聚关系特征和上一节点特征,以及全局属性特征输入至当前融合子层的节点更新层,得到节点更新层输出的任一智能体的当前节点特征。
[0085] 具体地,节点更新层用于更新各智能体的节点特征,第l层融合子层的节点更新层的具体公式如下:
[0086]
[0087] 式中, 为第i个智能体的当前节点特征, 为第i个智能体的上一节点特征,为第i个智能体为被动智能体rk的汇聚关系特征,u为全局属性特征, 为节点更新神
经网络,θl为该神经网络的超参数, 为该神经网络的权值,ReLU为该神经网络的激活函
数,CONCAT为向量拼接函数,节点更新层可以基于MLP构建。
[0088] 本发明实施例中,每一融合子层包括依次连接的关系更新层、关系汇聚层和节点更新层,通过关系更新层更新各智能体的关系特征,关系汇聚层将智能体为被动智能体的
关系特性进行汇聚,节点更新层基于各智能体的汇聚关系特征,更新各智能体的节点特征,
使得各智能体更新后的节点特征不仅考虑了各智能体自身状态,而且考虑了多智能体对抗
场景的环境、任务,以及各智能体与其他智能体之间的关系,有利于己方智能体编队协同决
策,以实现对抗任务,各智能体之间共享模型参数,降低了模型调参的难度,提升了特征融
合的能力。同时在汇聚关系特征的过程中,去除了特征间的顺序相关性,提升了对抗动作预
测模型对不同任务的适应性。
[0089] 基于上述任一实施例,该多智能体对抗动作预测方法中,对抗动作预测模型的损失函数是基于各智能体的执行动作回报值、当前时刻执行动作的效用估计值、下一时刻执
行动作的效用估计值以及衰减系数确定的。
[0090] 具体地,对抗动作预测模型可以是基于深度强化学习方法训练得到的,在训练过程中,利用深度强化学习方法逼近计算当前时刻执行动作的效用估计值,得到当前时刻执
行动作的效用估计值的近似值,进而计算该近似值与当前时刻执行动作的效用估计值的差
值,此处差值越小,则对抗动作预测模型计算得到的当前时刻执行动作的效用估计值更精
确。
[0091] 基于各智能体的执行动作回报值、当前时刻执行动作的效用估计值、下一时刻执行动作的效用估计值以及衰减系数确定对抗动作预测模型的损失函数。损失函数的具体公
式如下:
[0092]
[0093] 式中,r为执行动作回报值,γ为衰减系数, 为第i个智能体下一时刻的执行动作效用估计值, 为第i个智能体当前时刻的执行动作效用估计值,t为当前时刻,t+1为
下一时刻。
[0094] 基于上述任一实施例,该多智能体对抗动作预测方法中,步骤120之后还包括:
[0095] 基于各智能体的执行动作信息控制各智能体执行动作,并基于动作执行后的各智能体的节点信息和关系信息,更新计算图。
[0096] 具体地,在得到各智能体的执行动作信息之后,各智能体按照执行动作信息执行相应的动作,各智能体执行动作之后,多智能体对抗场景发生变化,各智能体的节点信息和
关系信息也随之变化,基于动作执行后的各智能体的节点信息和关系信息,对变化后的多
智能体对抗场景对应的计算图进行更新,以实现多智能体与环境的动态交互。
[0097] 在完成计算图的更新后,可以基于更新后的计算图执行下一时刻的对抗动作预测。
[0098] 基于上述任一实施例,图2为本发明实施例提供的多智能体动作预测方法的流程示意图,如图2所示,首先确定多智能体对抗场景的计算图,并将计算图输入至对抗动作预
测模型,对抗动作预测模型中编码层基于计算图的各智能体的节点信息和关系信息,以及
全局属性特征,确定各智能体的初始节点特征和初始关系特征。对抗动作预测模型中融合
层基于各智能体的初始节点特征和初始关系特征,以及全局属性特征,通过多个串联的融
合子层对各智能体的节点特征的关系特征进行迭代更新,输出得到各智能体的预测节点特
征。对抗动作预测模型中解码层对各智能体的预测节点特征进行动作映射,得到各智能体
的执行动作信息。各智能体按照执行动作信息执行相应的动作,基于动作执行后的各智能
体的节点信息和关系信息,对计算图进行更新,以实现与环境的动态交互。
[0099] 本发明实施例中,各智能体在对抗动作预测模型中处理流程是相同的,且各智能体共享模型参数,简化了模型的结构,提升了模型特征融合的能力,同时在实时对抗态势快
速变化时,共享模型参数能够支持计算图中全局属性特征,以及各智能体节点信息和关系
信息的快速变更,以实现对抗动作预测模型对可变维度的多智能体特征的有效处理。
[0100] 基于上述任一实施例,本发明实施例以游戏作战场景为例对本发明实施例提供的多智能体动作对抗预测方法进行说明。在该对抗场景中,对抗双方分别为红方和蓝方,假设
红方包括四个成员,蓝方包括两个成员,该对抗场景中存在预设规则:若某一成员被敌方两
个或两个以上成员包围,则该成员被消灭,该对抗场景对应的计算图的全局属性特征包括
的环境信息为红方领土区域范围,任务信息为消灭进入红方领土的蓝方成员,计算图中节
点信息为每一成员的位置,关系信息为六个成员中任意两个成员之间的距离和威胁程度,
红方或蓝方成员之间的威胁程度为0,红方成员与蓝方成员之间的威胁程度为1。将该对抗
场景对应的计算图输入至对抗动作预测模型,输出得到各个成员的执行动作信息。基于上
述任务信息,对抗动作预测模型输出得到的红方成员的执行动作信息可以为红方四个成员
分为两组,分别移动包围一名蓝方成员。
[0101] 基于上述任一实施例,图3为本发明实施例提供的多智能体动作预测装置的结构示意图,如图3所示,本发明实施例提供的多智能体动作预测装置包括:
[0102] 计算图确定模块310,用于确定多智能体对抗场景的计算图,所述计算图包括全局属性特征,以及各智能体的节点信息和关系信息;
[0103] 对抗动作预测模块320,用于将所述计算图输入至对抗动作预测模型中,得到所述对抗动作预测模型输出的各智能体的执行动作信息;
[0104] 其中,所述对抗动作预测模型是基于样本计算图,以及所述样本计算图中各样本智能体的样本执行动作信息训练得到的;
[0105] 所述对抗动作预测模型用于融合所述全局属性特征以及各智能体的节点信息和关系信息,以更新各智能体的节点信息,并基于更新后的节点信息,确定各智能体的执行动
作信息。
[0106] 本发明实施例提供的多智能体动作预测装置,通过确定多智能体对抗场景的计算图,有效地表征了多智能体对抗场景的信息。通过将计算图输入至对抗动作预测模型中,使
得各智能体之间共享模型参数,实现了对可变维度的多智能体特征的有效处理,同时简化
了模型结构,提升了特征融合的能力。通过对抗动作预测模型融合全局属性特征以及各智
能体的节点信息和关系信息,以更新各智能体的节点信息,有利于己方智能体编队协同决
策,以实现对抗任务。
[0107] 基于上述任一实施例,该多智能体对抗动作预测装置中,对抗动作预测模块320具体包括:
[0108] 编码子模块321,用于将所述计算图中各智能体的节点信息和关系信息输入至所述对抗动作预测模型的编码层,得到所述编码层输出的各智能体的初始节点特征和初始关
系特征;
[0109] 融合子模块322,用于将各智能体的初始节点特征和初始关系特征,以及所述全局属性特征输入至所述对抗动作预测模型的融合层,得到所述融合层输出的各智能体的预测
节点特征;
[0110] 解码子模块323,用于将任一智能体的预测节点特征输入至所述对抗动作预测模型的解码层,得到所述解码层输出的所述任一智能体的执行动作信息。
[0111] 基于上述任一实施例,该多智能体对抗动作预测装置中,融合子模块322包括多个串联的融合子层,融合子模块322具体用于:
[0112] 将上一融合子层更新的各智能体的上一节点特征和上一关系特征,以及所述全局属性特征输入至当前融合子层,得到当前融合子层输出的各智能体的当前节点特征和当前
关系特征;
[0113] 其中,首个融合子层的输入为各智能体的初始节点特征和初始关系特征,以及所述全局属性特征;各智能体的预测节点特征为最末融合子层输出的各智能体的当前节点特
征。
[0114] 本发明实施例提供的多智能体动作预测装置,通过多个串联的融合子层,对各智能体的节点特征和关系特征进行迭代更新,以确定各智能体的预测节点特征,充分考虑了
各智能体与多智能体对抗场景以及其他智能体的关系,有利于己方智能体编队协同决策,
以实现对抗任务。
[0115] 基于上述任一实施例,该多智能体对抗动作预测装置中,所述将上一融合子层更新的各智能体的上一节点特征和上一关系特征,以及所述全局属性特征输入至当前融合子
层,得到当前融合子层输出的各智能体的当前节点特征和当前关系特征,具体包括:
[0116] 将上一融合子层更新的各智能体的上一节点特征和上一关系特征,以及所述全局属性特征输入至当前融合子层的关系更新层,得到所述关系更新层输出的各智能体的当前
关系特征;
[0117] 将任一智能体为被动智能体时的当前关系特征输入至当前融合子层的关系汇聚层,得到所述关系汇聚层输出的所述任一智能体的汇聚关系特征;
[0118] 将所述任一智能体的汇聚关系特征和上一节点特征,以及所述全局属性特征输入至当前融合子层的节点更新层,得到所述节点更新层输出的所述任一智能体的当前节点特
征。
[0119] 基于上述任一实施例,该多智能体对抗动作预测装置中,所述对抗动作预测模型的损失函数是基于各智能体的执行动作回报值、当前时刻执行动作的效用估计值、下一时
刻执行动作的效用估计值以及衰减系数确定的。
[0120] 基于上述任一实施例,该多智能体对抗动作预测装置还包括:
[0121] 环境交互模块330,用于基于各智能体的执行动作信息控制各智能体执行动作,并基于动作执行后的各智能体的节点信息和关系信息,更新所述计算图。
[0122] 图4为本发明实施例提供的电子设备的实体结构示意图,如图4所示,该电子设备可以包括:处理器401、通信接口402、存储器403和通信总线404,其中,处理器401,通信接口
402,存储器403通过通信总线404完成相互间的通信。处理器401可以调用存储器403中的逻
辑指令,以执行如下方法:确定多智能体对抗场景的计算图,计算图包括全局属性特征,以
及各智能体的节点信息和关系信息;将计算图输入至对抗动作预测模型中,得到对抗动作
预测模型输出的各智能体的执行动作信息;其中,对抗动作预测模型是基于样本计算图,以
及样本计算图中各样本智能体的样本执行动作信息训练得到的;对抗动作预测模型用于融
合全局属性特征以及各智能体的节点信息和关系信息,以更新各智能体的节点信息,并基
于更新后的节点信息,确定各智能体的执行动作信息。
[0123] 此外,上述的存储器403中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本
发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以
软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以
使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施
例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,
Read‑Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种
可以存储程序代码的介质。
[0124] 另一方面,本发明实施例还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各实施例提供的方法,例如包括:
确定多智能体对抗场景的计算图,计算图包括全局属性特征,以及各智能体的节点信息和
关系信息;将计算图输入至对抗动作预测模型中,得到对抗动作预测模型输出的各智能体
的执行动作信息;其中,对抗动作预测模型是基于样本计算图,以及样本计算图中各样本智
能体的样本执行动作信息训练得到的;对抗动作预测模型用于融合全局属性特征以及各智
能体的节点信息和关系信息,以更新各智能体的节点信息,并基于更新后的节点信息,确定
各智能体的执行动作信息。
[0125] 以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单
元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其
中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性
的劳动的情况下,即可以理解并实施。
[0126] 通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上
述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该
计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指
令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施
例或者实施例的某些部分所述的方法。
[0127] 最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可
以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;
而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和
范围。