本发明涉及多智能体强化学习,尤其涉及一种基于置换偏置与对比解码的智能体动作预测方法、系统、终端及计算机可读存储介质。
背景技术:
1、多智能体强化学习(marl,multi-agent reinforcement learning)领域多采用值分解方法和集中式训练分布式执行框架(ctde,centralized training withdecentralized execution),并在解决marl任务中存在的指数增长的观测空间和动作空间问题以及难探索问题上取得了一定进展。ctde框架下,训练阶段可以利用编码了所有智能体和敌人信息的全局状态,而在测试阶段则完全依赖于智能体自身的局部观测,这导致了训练阶段和测试阶段之间存在信息不对等的问题。
2、多智能体转换器(mat,multi-agent transformer)方法将transformer(转换器)架构引入到多智能体系统中,将多智能体系统建模为一个多智能体动作序列预测任务,虽然解决了ctde面临的训练和测试阶段信息不对等的问题以及值分解方法的信息交互问题,但是仍旧面临着多智能体维度灾难问题。另外,大模型领域存在llm(large languagemodel,大语言模型)幻觉问题,将这一现象类比转移到多智能体任务中,在多智能体任务中,由于联合动作空间的大小可能比llm中的词表空间更大,使用transformer结构生成动作时,模型很可能面临着类似的幻觉问题。
3、因此,现有技术还有待于改进和发展。
技术实现思路
1、本发明的主要目的在于提供一种基于置换偏置与对比解码的智能体动作预测方法、系统、终端及计算机可读存储介质,旨在解决现有技术中使用mat进行多智能体强化学习时,存在多智能体维度灾难、模型面临着类似llm的幻觉,导致模型生成的信息不准确、对于目标智能体动作的预测精度不够的问题。
2、为实现上述目的,本发明提供一种基于置换偏置与对比解码的智能体动作预测方法,所述一种基于置换偏置与对比解码的智能体动作预测方法包括如下步骤:
3、构建策略生成模型,获取训练数据,所述训练数据包括智能体的局部观测向量和动作序列,其中,所述策略生成模型包括encoder模块和decoder模块;
4、将所述局部观测向量输入到所述encoder模块进行嵌入,得到局部观测向量的嵌入表示,将局部观测向量的嵌入表示进行排序和变换处理,得到具有观测置换不变性的智能体观测集合,将具有观测置换不变性的智能体观测集合进行编码,得到智能体的观测表示,根据所述观测表示得到观测的智能体状态值函数,并将所述观测表示传递给所述decoder模块;
5、并将所述动作序列输入到所述decoder模块进行嵌入,得到所述动作序列的嵌入表示,将所述动作序列的嵌入表示进行排序,将排序后的动作序列的嵌入表示和所述encoder模块传递来的所述观测表示进行解码,得到隐向量,将所述隐向量进行变换处理,得到具有动作置换性的智能体动作集合,将所述具有动作置换性的智能体动作集合进行对比探索解码,得到智能体的执行动作;
6、根据所述智能体状态值函数以及所述执行动作计算出总损失函数,根据所述总损失函数对所述策略生成模型进行更新,直至所述总损失函数收敛,得到目标模型;
7、获取电子竞技游戏中的目标智能体,将所述目标智能体的局部观测向量输入到所述目标模型进行计算,预测出所述目标智能体的动作,根据所述目标智能体的动作控制所述目标智能体的行为。
8、可选地,所述的基于置换偏置与对比解码的智能体动作预测方法,其中,所述encoder模块包括:第一嵌入层、第一排序层、输入置换不变网络、编码层和多层感知机层;
9、所述decoder模块包括:第二嵌入层、第二排序层、解码层、输出置换同变网络和对比解码网络。
10、可选地,所述的基于置换偏置与对比解码的智能体动作预测方法,其中,所述将所述局部观测向量输入到所述encoder模块进行嵌入,得到局部观测向量的嵌入表示,将局部观测向量的嵌入表示进行排序和变换处理,得到具有观测置换不变性的智能体观测集合,具体包括:
11、将多个智能体分别对应的所述局部观测向量的维度嵌入到所述第一嵌入层进行维度统一,得到多个局部观测向量的嵌入表示;
12、将多个局部观测向量的嵌入表示输入到所述第一排序层进行智能体维度上的排序,得到多个排序后观测;
13、构造第一超网络,将每个所述排序后观测输入到所述输入置换不变网络中,通过所述第一超网络为每个所述排序后观测的实体生成网络层权重,对多个所述排序后观测的实体的网络层权重进行累加求和得到具有观测置换不变性的智能体观测集合。
14、可选地,所述的基于置换偏置与对比解码的智能体动作预测方法,其中,所述将具有观测置换不变性的智能体观测集合进行编码,得到智能体的观测表示,根据所述观测表示得到观测的智能体状态值函数,并将所述观测表示传递给所述decoder模块,具体包括:
15、将具有观测置换不变性的智能体观测集合输入到所述编码层的五层transformerencoder模块进行编码,得到多个智能体的观测表示,并将多个所述观测表示传递给所述decoder模块以计算隐向量;
16、将所述观测表示通过所述多层感知机层进行计算,得到观测的智能体状态值函数。
17、可选地,所述的基于置换偏置与对比解码的智能体动作预测方法,其中,所述将所述动作序列输入到所述decoder模块进行嵌入,得到所述动作序列的嵌入表示,将所述动作序列的嵌入表示进行排序,将排序后的动作序列的嵌入表示和所述encoder模块传递来的所述观测表示进行解码,得到隐向量,具体包括:
18、将多个智能体分别对应的所述动作序列嵌入到所述第二嵌入层进行维度统一,得到多个所述动作序列的嵌入表示;
19、将多个所述动作序列的嵌入表示输入到所述第二排序层进行智能体维度上的排序,得到多个排序后的动作序列的嵌入表示;
20、获取从所述encoder模块传递来的多个所述观测表示,将多个排序后的动作序列的嵌入表示和所述encoder模块传递来的多个所述观测表示输入到所述解码层的五层transformer encoder模块进行解码,得到多个隐向量。
21、可选地,所述的基于置换偏置与对比解码的智能体动作预测方法,其中,所述将所述隐向量进行变换处理,得到具有动作置换性的智能体动作集合,将所述具有动作置换性的智能体动作集合进行对比探索解码,得到智能体的执行动作,具体包括:
22、构造第二超网络,将每个所述隐向量输入到所述输出置换同变网络中,通过所述第二超网络为每个所述隐向量的实体生成网络层权重,对多个所述隐向量的实体的网络层权重进行累加求和得到具有动作置换性的智能体动作集合;
23、获取所述解码层的五层transformer encoder模块中前四层transformerencoder模块的中间输出,将所述中间输出与第五层transformer encoder模块输出的所述隐向量进行对比探索解码,得到智能体的执行动作。
24、可选地,所述的基于置换偏置与对比解码的智能体动作预测方法,其中,所述根据所述智能体状态值函数以及所述执行动作计算出总损失函数,具体包括:
25、根据所述智能体状态值函数计算所述encoder模块的损失函数
26、
27、其中,φ表示encoder模块的网络参数,表示encoder模块更新后的网络参数,n表示智能体的数量,t表示训练数据的最大限制长度,m表示智能体的序数,t表示训练数据的序数,r(ot,at)表示智能体在观测ot下采取动作at所获得的奖励,γ表示控制奖励信号权重的折扣因子,表示第t+1个训练数据的第m个智能体的状态值函数,表示第t个训练数据的第m个智能体的状态值函数,表示第t个训练数据的第m个智能体的观测表示,表示第t+1个训练数据的第m个智能体的观测表示;
28、根据所述执行动作计算所述decoder模块的损失函数
29、其中,at表示在时间步t时的全局优势函数,θ表示decoder模块的网络参数,θ'表示decoder模块更新后的网络参数,clip(·)表示clip算法,∈表示clip算法的裁剪系数,表示新旧智能体策略的概率分布比值,表示第m个智能体的新策略,表示第m个智能体的旧策略,表示接受所有智能体的观测,代表接受第1到m-1的智能体的执行动作,表示在接受所有智能体观测和1到m-1的智能体的执行动作的基础上,第m个智能体通过新策略选取动作at的概率分布,表示在接受所有智能体观测和1到m-1的智能体的执行动作的基础上,第m个智能体通过旧策略选取动作at的概率分布;
30、根据所述encoder模块的损失函数和所述decoder模块的损失函数计算出总损失函数
31、
32、此外,为实现上述目的,本发明还提供一种基于置换偏置与对比解码的智能体动作预测系统,其中,所述基于置换偏置与对比解码的智能体动作预测系统包括:
33、模型构建模块,用于构建策略生成模型,获取训练数据,所述训练数据包括智能体的局部观测向量和动作序列,其中,所述策略生成模型包括encoder模块和decoder模块;
34、第一训练模块,用于将所述局部观测向量输入到所述encoder模块进行嵌入,得到局部观测向量的嵌入表示,将局部观测向量的嵌入表示进行排序和变换处理,得到具有观测置换不变性的智能体观测集合,将具有观测置换不变性的智能体观测集合进行编码,得到智能体的观测表示,根据所述观测表示得到观测的智能体状态值函数,并将所述观测表示传递给所述decoder模块;
35、第二训练模块,用于将所述动作序列输入到所述decoder模块进行嵌入,得到所述动作序列的嵌入表示,将所述动作序列的嵌入表示进行排序,将排序后的动作序列的嵌入表示和所述encoder模块传递来的所述观测表示进行解码,得到隐向量,将所述隐向量进行变换处理,得到具有动作置换性的智能体动作集合,将所述具有动作置换性的智能体动作集合进行对比探索解码,得到智能体的执行动作;
36、损失函数计算模块,用于根据所述智能体状态值函数以及所述执行动作计算出总损失函数,根据所述总损失函数对所述策略生成模型进行更新,直至所述总损失函数收敛,得到目标模型;
37、目标智能体行为预测模块,用于获取电子竞技游戏中的目标智能体,将所述目标智能体的局部观测向量输入到所述目标模型进行计算,预测出所述目标智能体的动作,根据所述目标智能体的动作控制所述目标智能体的行为。
38、此外,为实现上述目的,本发明还提供一种终端,其中,所述终端包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的基于置换偏置与对比解码的智能体动作预测程序,所述基于置换偏置与对比解码的智能体动作预测程序被所述处理器执行时实现如上所述的基于置换偏置与对比解码的智能体动作预测方法的步骤。
39、此外,为实现上述目的,本发明还提供一种计算机可读存储介质,其中,所述计算机可读存储介质存储有基于置换偏置与对比解码的智能体动作预测程序,所述基于置换偏置与对比解码的智能体动作预测程序被处理器执行时实现如上所述的基于置换偏置与对比解码的智能体动作预测方法的步骤。
40、本发明中,构建策略生成模型,包括encoder模块和decoder模块,获取局部观测向量和动作序列,将局部观测向量输入encoder模块进行处理,得到智能体的观测表示,并将观测表示传递给decoder模块,根据观测表示得到观测的智能体状态值函数;将动作序列输入到decoder模块与观测表示一起进行解码,得到隐向量,将隐向量进行变换得到具有动作置换性的智能体动作集合,将具有动作置换性的智能体动作集合进行对比探索解码,得到执行动作,根据智能体状态值函数和执行动作计算总损失函数,得到目标模型,使用目标模型预测目标智能体的行为。本发明提高了对于目标智能体动作的预测精度。
1.一种基于置换偏置与对比解码的智能体动作预测方法,其特征在于,所述基于置换偏置与对比解码的智能体动作预测方法包括:
2.根据权利要求1所述的基于置换偏置与对比解码的智能体动作预测方法,其特征在于,所述encoder模块包括:第一嵌入层、第一排序层、输入置换不变网络、编码层和多层感知机层;
3.根据权利要求2所述的基于置换偏置与对比解码的智能体动作预测方法,其特征在于,所述将所述局部观测向量输入到所述encoder模块进行嵌入,得到局部观测向量的嵌入表示,将局部观测向量的嵌入表示进行排序和变换处理,得到具有观测置换不变性的智能体观测集合,具体包括:
4.根据权利要求3所述的基于置换偏置与对比解码的智能体动作预测方法,其特征在于,所述将具有观测置换不变性的智能体观测集合进行编码,得到智能体的观测表示,根据所述观测表示得到观测的智能体状态值函数,并将所述观测表示传递给所述decoder模块,具体包括:
5.根据权利要求4所述的基于置换偏置与对比解码的智能体动作预测方法,其特征在于,所述将所述动作序列输入到所述decoder模块进行嵌入,得到所述动作序列的嵌入表示,将所述动作序列的嵌入表示进行排序,将排序后的动作序列的嵌入表示和所述encoder模块传递来的所述观测表示进行解码,得到隐向量,具体包括:
6.根据权利要求5所述的基于置换偏置与对比解码的智能体动作预测方法,其特征在于,所述将所述隐向量进行变换处理,得到具有动作置换性的智能体动作集合,将所述具有动作置换性的智能体动作集合进行对比探索解码,得到智能体的执行动作,具体包括:
7.根据权利要求6所述的基于置换偏置与对比解码的智能体动作预测方法,其特征在于,所述根据所述智能体状态值函数以及所述执行动作计算出总损失函数,具体包括:
8.一种基于置换偏置与对比解码的智能体动作预测系统,其特征在于,所述基于置换偏置与对比解码的智能体动作预测系统包括:
9.一种终端,其特征在于,所述终端包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的基于置换偏置与对比解码的智能体动作预测程序,所述基于置换偏置与对比解码的智能体动作预测程序被所述处理器执行时实现如权利要求1-7任一项所述的基于置换偏置与对比解码的智能体动作预测方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有基于置换偏置与对比解码的智能体动作预测程序,所述基于置换偏置与对比解码的智能体动作预测程序被处理器执行时实现如权利要求1-7任一项所述的基于置换偏置与对比解码的智能体动作预测方法的步骤。
