System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种基于策略蒸馏的多智能体强化学习训练方法技术_技高网

一种基于策略蒸馏的多智能体强化学习训练方法技术

技术编号:41148754 阅读:5 留言:0更新日期:2024-04-30 18:15
本发明专利技术公开了一种基于策略蒸馏的多智能体强化学习训练方法,包括建立基于Transformer的中心化执行者‑评论家网络、去中心化策略网络和经验重放缓存池;获取每个智能体的状态和奖励,基于局部观测以及前序智能体动作,得到每个智能体的value值和第一对数动作概率值;采用混合采样策略,生成动作,并存入经验重放缓存池;从经验重放缓存池中取出数据,依序采用GAE方法和PPO算法,更新网络的参数;生成第二对数动作概率值;构建策略蒸馏的损失函数,采用双向策略蒸馏方法,同时更新中心化执行者网络和去中心化策略网络的参数。本发明专利技术通过将中心化执行和分布式执行结合起来,使得该方法即保证了实时性,同时也有较好的性能。

【技术实现步骤摘要】

本专利技术属于计算机软件,尤其是一种基于策略蒸馏的多智能体强化学习训练方法


技术介绍

1、多智能体系统是现实生活中常见的抽象模型,多智能体强化学习也是强化学习研究之中的热点问题。多智能体强化学习由于多个智能体同时使用强化学习算法进行策略更新,每个智能体的动作都会对环境状态造成影响,所以多智能体强化学习普遍较单智能体强化学习算法更加不稳定。目前行业内普遍使用的算法分为中心化执行的方法以及分布式化执行的方法:

2、中心化执行是将所有的智能体的信息汇总到一个中心化的智能体之中,由中心化智能体进行统一调度规划,再将要执行的动作传递回每个动作的执行器上。执行器依照中心化智能体的指令进行相应的动作。该方法可以有效利用全局信息,且可以对每个智能体的信息进行统筹规划,所以其性能较好。但是由于其需要等所有全部指令安排完毕后才可执行,使得该方法的实时性不好。同时,其需要执行器与中心化智能体之间需要构建相应的通信机制也使得该方法的实际应用十分有限。

3、分布式执行是每个智能体在执行时仅依据本地的局部观测量,并通过本地的网络进行推理决策。该方法仅使用局部观测信息即可,不需要进行通信机制的构建,也没有信息同步所产生的时间开销,其部署的简便性以及响应的实时性较好。但是由于该类方法中的智能体决策时无法利用全局信息以及其他智能体的决策信息,所以其性能普遍较中心化执行的方法差。


技术实现思路

1、专利技术目的:提供一种基于策略蒸馏的多智能体强化学习训练方法,以解决现有技术存在的上述问题。</p>

2、技术方案:一种基于策略蒸馏的多智能体强化学习训练方法,包括如下步骤:

3、s1、建立基于transformer的中心化执行者-评论家网络、去中心化策略网络和经验重放缓存池,并进行初始化;

4、s2、获取每个智能体的状态和奖励,状态包括全局状态和局部观测,将局部观测输入中心化执行者-评论家网络,得到每个智能体的value 值和第一中心化对数动作概率值;将局部观测输入去中心化策略网络,得到第一去中心化对数动作概率值;

5、s3、基于第一中心化对数动作概率值和第一去中心化对数动作概率值,采用混合采样策略,生成动作,将每个智能体的状态、奖励、动作和value 值存入经验重放缓存池;重复步骤s2至步骤s3,同时记录时间步,直到达到预定的时间步阈值;

6、s4、从经验重放缓存池中取出数据,依序采用gae 方法和ppo 算法,更新中心化执行者网络、评论家网络、去中心化策略网络的参数;

7、s5、基于更新后的参数和取出的数据,分别从中心化执行者网络和去中心化策略网络中生成第二中心化对数动作概率值和第二去中心化对数动作概率值;

8、s6、基于第二中心化对数动作概率值和第二去中心化对数动作概率值,构建策略蒸馏的损失函数,采用双向策略蒸馏方法,同时更新中心化执行者网络和去中心化策略网络的参数。

9、根据本申请的一个方面,步骤s1具体为:

10、s11、基于transformer 架构,构建中心化执行者-评论家网络,包括编码层和解码层,以及两个预测头,两个预测头分别用于输出 value 值和对数动作概率值;

11、s12、基于两层线性层构成的多层感知器网络,构建去中心化策略网络;

12、s13、构建经验重放缓存池,用于存储智能体的信息,包括状态、动作和奖励;

13、s14、采用正交初始化和 gelu 激活函数,对基于transformer的中心化执行者-评论家网络和去中心化策略网络的参数进行初始化,同时对经验重放缓存池进行初始化。

14、根据本申请的一个方面,步骤s2具体为:

15、s21、启动环境,获取环境中每个智能体的状态和奖励,状态包括全局状态、局部观测;

16、s22、将局部观测输入中心化执行者-评论家网络的编码层,得到编码层网络的隐层表示;

17、s23、将多智能体的马尔可夫决策过程展开建模为序列扩展的马尔可夫决策过程,基于序列扩展的马尔可夫决策过程,采用自回归的方式获取前序智能体的动作,将隐层表示和前序智能体的动作和输入中心化执行者-评论家网络的解码层,得到解码层网络的输出表示;

18、s24、将解码层网络的输出表示分别输入到两个预测头中,得到每个智能体的value 值和第一中心化对数动作概率值;

19、s25、将局部观测输入去中心化策略网络,得到第一去中心化对数动作概率值。

20、根据本申请的一个方面,步骤s3具体为:

21、s31、将第一中心化对数动作概率值和第一去中心化对数动作概率值进行softmax 变换,得到每个智能体的动作概率分布;

22、s32、基于第一中心化对数动作概率值和第一去中心化对数动作概率值,将环境分为中心化环境和去中心化环境,按照中心化环境和去中心化环境的比例随机选择环境;

23、s33、基于选择的环境,从每个智能体的动作概率分布中采样,得到动作;

24、s34、将每个智能体的状态、奖励、动作和value 值组成转移元组,存入经验重放缓存池;

25、s35、根据得到的动作,更新环境的状态,得到下一个时间步的状态和奖励,同时记录时间步;

26、s36、判断时间步是否达到预定的时间步阈值,如果是,则结束采样,否则,继续执行步骤 s2 和步骤 s3。

27、根据本申请的一个方面,步骤s4具体为:

28、s41、从经验重放缓存池中取出转移元组,采用gae方法,根据转移元组中每个智能体的奖励和value值,计算每个智能体的回报和优势;

29、s42、采用ppo 算法,根据每个智能体的回报和优势,构建损失函数,更新中心化执行者网络、评论家网络、去中心化策略网络的参数。

30、根据本申请的一个方面,步骤s5具体为:

31、s51、基于取出的转移元组,提取其中每个智能体状态的全局状态和局部观测;

32、s52、基于更新后的参数,将全局状态和局部观测分别输入到中心化执行者网络和去中心化策略网络中,得到第二中心化对数动作概率值和第二去中心化对数动作概率值。

33、根据本申请的一个方面,步骤s6具体为:

34、s61、采用kl 散度,计算中第二中心化对数动作概率值和第二去中心化对数动作概率值之间的差异,作为策略蒸馏的损失函数;

35、s62、根据策略蒸馏的损失函数,采用双向策略蒸馏方法,同时更新中心化执行者网络和去中心化策略网络的参数,得到训练好的中心化执行者网络和去中心化策略网络;

36、s63、执行训练好的中心化执行者网络和去中心化策略网络,得到最优策略。

37、根据本申请的一个方面,还包括:

38、s7、使用训练好的去中心化策略网络和环境进行交互,对最优策略的性能进行评估。

39、根据本申请本文档来自技高网...

【技术保护点】

1.一种基于策略蒸馏的多智能体强化学习训练方法,其特征在于,包括如下步骤:

2.根据权利要求1所述的基于策略蒸馏的多智能体强化学习训练方法,其特征在于,步骤S1具体为:

3.根据权利要求2所述的基于策略蒸馏的多智能体强化学习训练方法,其特征在于,步骤S2具体为:

4.根据权利要求3所述的基于策略蒸馏的多智能体强化学习训练方法,其特征在于,步骤S3具体为:

5.根据权利要求4所述的基于策略蒸馏的多智能体强化学习训练方法,其特征在于,步骤S4具体为:

6.根据权利要求5所述的基于策略蒸馏的多智能体强化学习训练方法,其特征在于,步骤S5具体为:

7.根据权利要求6所述的基于策略蒸馏的多智能体强化学习训练方法,其特征在于,步骤S6具体为:

8.根据权利要求7所述的基于策略蒸馏的多智能体强化学习训练方法,其特征在于,还包括:

9.根据权利要求8所述的基于策略蒸馏的多智能体强化学习训练方法,其特征在于,步骤S7具体为:

【技术特征摘要】

1.一种基于策略蒸馏的多智能体强化学习训练方法,其特征在于,包括如下步骤:

2.根据权利要求1所述的基于策略蒸馏的多智能体强化学习训练方法,其特征在于,步骤s1具体为:

3.根据权利要求2所述的基于策略蒸馏的多智能体强化学习训练方法,其特征在于,步骤s2具体为:

4.根据权利要求3所述的基于策略蒸馏的多智能体强化学习训练方法,其特征在于,步骤s3具体为:

5.根据权利要求4所述的基于策略蒸馏的多智能体强化学...

【专利技术属性】
技术研发人员:罗正昕张希程健徐波
申请(专利权)人:中科南京人工智能创新研究院
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1