中国科技核心期刊      中国指挥与控制学会会刊     军事装备类重点期刊
武器与信息系统

融合先验知识的异构多智能体强化学习算法研究

  • 周佳炜 ,
  • 孙宇祥 ,
  • 薛宇凡 ,
  • 项祺 ,
  • 吴莹 ,
  • 周献中
展开
  • 南京大学, 江苏 南京 210093
†周献中(1962—),男,教授。

周佳炜(1997—),男,硕士,研究方向为智能信息处理与智能系统。

孙宇祥(1990—),男,博士,助理研究员。

Office editor: 张培培

收稿日期: 2022-08-22

  修回日期: 2022-09-16

  网络出版日期: 2023-06-12

Heterogeneous multi-Agent reinforcement learning algorithm integrating Prior-knowledge

  • ZHOU Jiawei ,
  • SUN Yuxiang ,
  • XUE Yufan ,
  • XIANG Qi ,
  • WU Ying ,
  • ZHOU Xianzhong
Expand
  • Nanjing University, Nanjing 210093, China

Received date: 2022-08-22

  Revised date: 2022-09-16

  Online published: 2023-06-12

摘要

近年来,基于深度强化学习的机器学习技术突破性进展为智能博弈对抗提供了新的技术发展方向。针对智能对抗中异构多智能体强化学习算法训练收敛速度慢,训练效果差异大等问题,提出了一种先验知识驱动的多智能体强化学习博弈对抗算法PK-MADDPG,构建了双重Critic框架下的MADDPG模型。该模型使用了经验优先回放技术来优化先验知识提取,在博弈对抗训练中取得显著的效果。论文成果应用于MaCA异构多智能体博弈对抗全国竞赛,将PK-MADDPG算法与经典规则算法的博弈对抗结果进行比较,验证了所提算法的有效性。

本文引用格式

周佳炜 , 孙宇祥 , 薛宇凡 , 项祺 , 吴莹 , 周献中 . 融合先验知识的异构多智能体强化学习算法研究[J]. 指挥控制与仿真, 2023 , 45(3) : 99 -107 . DOI: 10.3969/j.issn.1673-3819.2023.03.015

Abstract

In recent years, the breakthrough of machine learning based on deep reinforcement learning provides a new development direction for intelligent game confrontation. In order to solve the problems of slow convergence speed and great difference in training effect of heterogeneous multi-agent reinforcement learning algorithm in intelligent confrontation, this paper proposes a priori knowledge-driven multi-agent reinforcement learning game antagonism algorithm PK-MADDPG, and constructs a MADDPG model under the framework of double Critic. The model uses the experience first replay technique to optimize the prior knowledge extraction, thus achieving remarkable results in the training of game confrontation. In the national competition of MaCA heterogeneous multi-agent game confrontation, the paper compares the game confrontation results of PK-MADDPG algorithm with classical rule algorithm, and verifies the effectiveness of the algorithm proposed in this paper.

目前,基于深度强化学习的机器学习方法受到越来越多的关注,更多的游戏通过训练智能体的方式与人类进行人机对抗,典型代表有在围棋领域获得成功的AlphaGo以及在游戏《星际争霸》人机对抗赛中获得成功的AlphaStar等,越来越多的研究将深度强化学习方法融入RTS游戏领域[1-3]。如Ye D尝试利用改进的PPO算法训练王者荣耀游戏中的英雄AI,取得了较好的训练效果[4]。Silver D设计了一种基于强化学习算法的训练框架,不需要游戏规则以外的任何人类知识,可以让AlphaGo自己训练,同样达到了很高的智能性[5]。Barriga N利用深度强化学习技术和监督策略学习改善RTS游戏的AI性能,取得了击败游戏内置AI的成果[6]。大数据和人工智能技术加速运用于战略问题研究,战略博弈推演的智能化特征凸显[7-8]。研究表明,人工智能在智能博弈对抗与推演方面受到广泛关注,并在近年成为研究热点[9-11]。但是,对宽泛条件下的收敛问题以及收敛速度问题,仍然缺乏有效的解决方法,特别是在对抗方面,采用强化学习算法使其具有高水平的智能性仍是当前研究的难点。
本文分析了当前主流且成熟的多智能体强化学习算法,将先验知识与强化学习算法相结合,解决了强化学习算法在多智能体对抗训练初期效果一般且不能快速收敛的问题,提升了多智能体博弈对抗中的算子智能性,同时,在实验平台中进行仿真实验,结果表明,PK-MADDPG在MaCA多智能体博弈平台训练效果与收敛速度方面均有提升。

1 基础理论

1.1 强化学习

强化学习属于机器学习中的一类,是利用求解Bellman方程以解决交互问题[12],进而改善效果并最终达到预期效果的一种学习方式。强化学习使得智能体最终形成一种策略,在达成目的的同时使获得的奖励值最大化[13]。Littman在20世纪90年代提出了以马尔科夫决策过程(Markov Decision Process, MDP)为框架的多智能体强化学习,将强化学习的思想和算法应用到多智能体系统中,通常需考虑智能体间的竞争、合作等关系[14-15]。马尔科夫过程是强化学习的基础模型,通过状态与动作建模,描述智能体与环境的交互过程[16]。一般地,MDP是由4个元素构成的元组<S,A,R,T>表示[17]:
1)S为有限状态空间(State Space),包含Agent在环境中所有的状态;
2)A为有限动作空间(Action Space),包含Agent在每个状态下可采取的所有动作;
3)R为奖赏函数(Reward Function), R s s ' a表示Agent在状态s下执行动作a,然后Agent与环境交互转移到状态s'下获取的奖励;
4)T为环境的状态转移函数(State Transition Function), P s s ' a=P S t + 1 = s ' S t = s , A t = a表示在状态s下执行动作a,并转移到状态s'的概率。
在MDP中,Agent与环境交互如图1所示。
图1 强化学习与环境交互示意图

Fig.1 Schematic diagram of interaction between reinforcement learning and environment

Agent从环境中感知当前状态st,从动作空间A中选择能够获取的动作at;执行at后,环境给予Agent相应的奖赏信号反馈rt+1,并以一定概率转移到新的环境状态st+1,等待Agent做出下一步新的决策[18]。智能体在同环境交互时具有不确定性:一处是在状态s处选择什么样的动作,用策略π a | s表示Agent的某个策略(即状态到动作的概率分布),另一处则是环境本身产生的状态转移概率 P s s ' a,强化学习目标是找到一个最优策略π*,使得它在任意状态s和任意时间步骤t都能够获得最大的长期累积奖赏,即
π*=argmaxπ Eπ k = 0 γ k r t + k s t = s
其中,Eπ表示策略下的期望值,γ 0,1为折扣率(Discount Rate),k为后续时间周期,rt+k表示Agent在时间周期 t + k上获得的即时奖赏。
V* s= m a x π Eπ k = 0 γ k r t + k s t = s
Q* s , a= m a x π Eπ k = 0 γ k r t + k s t = s , a t = a

1.2 MADDPG算法

Multi-agent Deep Deterministic Policy Gradient (MADDPG)算法是一种应用在多智能体强化学习中的训练算法,由Open AI研究人员提出[19]。作为DDPG (Deep Deterministic Policy Gradient)的延伸,MADDPG算法基于Actor-Critic架构,可应用于连续动作空间,有如下特征:
1)通过学习得到最优策略,在应用时,仅借助局部信息就能给出最优动作;
2)无需构建环境的动力学模型以及智能体间特殊通信需求;
3)该算法可用于合作关系多智能体,同时适用于竞争关系多智能体。
MADDPG算法采用集中式训练,分布式执行的方式。训练时采用集中式学习训练Critic与Actor,使用时Actor只需知道局部信息即可执行[20]。同时,对每个智能体训练多个策略,并基于所有策略的整体效果进行优化,以提高算法的稳定性和鲁棒性。该算法网络结构与更新方式如图2所示。
图2 MADDPG算法网络结构与更新方式

Fig.2 MADDPG algorithm network structure and update method

MADDPG算法采用了类似DQN的双网络结构,Actor和Critic都拥有target和eval两个网络组成[21],在训练过程中,只有Actor和Critic的eval网络进行实际的参数训练,而target网络只需要在一定训练迭代次数后,通过eval网络进行参数拷贝即可,这种设计使得MADDPG算法能够保持比较稳定的参数更新效果。

2 PK-MADDPG

2.1 PK-MADDPG算法

为加快训练收敛,提升训练效果,本文对MADDPG进行改进,对其结构进行优化,形成基于先验知识和强化学习的PK-MADDPG(Prior Knowledge-Multi-Agent Deep Deterministic Policy Gradient)。
在PK-MADDPG的奖赏函数设计上,本文考虑算子特征与全局目标问题,从个体回报与全局回报两方面进行奖赏函数设置,根据每个回合的对抗结果设置奖赏函数。若训练过程中每一步未获得奖励,容易导致稀疏奖励,影响算法收敛,本文根据不同个体类型在对抗过程中的动作选择给予奖励,优化训练的收敛。为防止智能体在探索过程中陷入局部最优,在全局回报中加入智能体推演回合消耗,获胜前,每多一个回合都会接收惩罚。具体奖励回报如表12所示。
表1 个体回报定义

Tab.1 Individual reward definition

序号 单位类型 分类 含义 分数
1 攻击单元 攻击合理性回报 攻击动作合法 5
2 攻击动作非法 -5
3 探测回报 探测到探测单元 5
4 探测到攻击单元 5
5 攻击结果回报 打击探测单元成功 15
6 打击探测单元失败 -15
7 打击攻击单元成功 10
8 打击攻击单元失败 -10
9 被击毁回报 攻击单元被击毁 -10
10 被击毁回报 探测单元被击毁 -10
11 探测单元 探测回报 探测到探测单元 5
12 探测到攻击单元 5
13 通用 存活回报 每步存活 2
表2 全局回报定义

Tab.2 Global reward definition

序号 意义 分数
1 胜利 100
2 失败 -100
3 平局 0
4 推演回合消耗 -90
针对强化学习训练收敛问题,本文融入先验知识进行经验优先回放。对于先验知识和强化学习的融合,本文对领域专家经验数据和强化学习行动序列数据分别进行构建。把领域专家经验数据转化为对应的状态-行动序列存储到经验池中,并计算得出先验知识QF值。针对领域专家经验数据从历史胜率、敌我双方相对实力、我方兵力三个因素考虑,进行加权求和,并定义了获胜回合数、总回合数、相对实力和兵力构成(侦察机数量、战斗机数量、导弹数量与敌方单位数量),以此来计算领域专家经验数据的Q值。具体计算公式如下:
f r o u n d s w i n , r o u n d s a l l , d e t e c t o r , f i g h t e r , m i s s i l e , e n e m y = ω 1 * k r o u n d s w i n , r o u n d s a l l + ω 2 * g f i g h t e r , m i s s i l e , e n e m y + ω 3 * h d e t e c t o r , f i g h e r , i = 1 3 ω i = 1
其中,k ·,g ·,h ·分别表示历史胜率、敌我双方相对实力与我方兵力构成,roundswin,roundsall表示获胜回合数与比赛总合数。基于MADDPG算法的状态-行动序列也存储到经验池中,同样可以拟合出QP值。在推演过程中,每个固定step对QFQP值进行比较,选择较大的Q值所对应的动作进行执行。
除此之外,本文也对经验提取机制进行优化。在实现经验回放过程中,将先验知识存入经验池,根据随机优先级和重要性采样原理等进行经验抽样,以此计算优先值。利用随机优先级进行经验抽取可解决数据间的强相关性以及丢弃将来可能有用的经验等问题,同时,通过重要性采样的修正作用抑制由非均匀采样带来的误差。随机优先级与重要性采样系数如下:
P i= p i α k p k α
wi= 1 N · 1 P i β
其中,P i表示随机优先采样的概率,pi>0表示优先级,指数α决定使用多少优先级,α=0时对应均匀分布;wi表示重要性采样权重。根据求出的优先值生成最小batch,传入MADDPG算法进行动作选择。通过与环境交互生成训练数据,并将数据存入经验池中进行知识更新。经验池划分到部分内存空间,设定内存空间的大小,把分配的数组数据依次传入并存储。当存储空间大于内存空间时,剔除之前的数据,同时不断提取batch size大小的数据传入学习模块进行策略网络更新,从而降低loss函数。通过上述方式,实现先验知识的融入与经验回放,提高MADDPG算法的训练效果。具体流程如图3所示。
图3 先验知识优先回放过程

Fig.3 Prior knowledge priority playback process

针对结构调整,本文构建了双重Critic框架的MADDPG,同时最大化Global Reward和Local Reward,使得策略选择向着使全局和局部Critic最大化的方向进行。在此基础上,使用双延迟深度确定性策略梯度更新Local Critic网络,并使用经验优先回放来优化先验知识提取,以此解决动作价值函数过拟合问题。如图4所示,整个流程中,每个Agent均构建一个Actor和Local Critic,每个Agent的Actor进行动作输出和状态输出,存入Replay Buffer中。Critic网络从各自的Replay Buffer中提取对应的先验知识,反向更新各自的Actor。通过构建整体的Global Replay Buffer提取信息用以训练Global Critic,再反向指导各Actor提高训练效果。PK-MADDPG训练优化使目标沿着全局和局部均最大化的方向,避免可能出现的局部最优问题,同时可以利用TD3等方式进一步优化先验知识提取,解决过拟合等问题。
图4 MADDPG模型改进

Fig.4 MADDPG model improvement

2.2 PK-MADDPG训练流程

基于Tensorflow和Gym两个框架对改进的PK-MADDPG算法进行训练时,在与环境交互中,可利用MaCA环境获取回报值。训练基于对抗进行,将改进的PK-MADDPG智能体作为红方,规则智能体作为蓝方,具体对抗流程如下:
1)初始化蓝方规则智能体,初始化并获取地图尺度、探测单元和攻击单元数量,实例化状态信息重构对象obs_convert,设定网络输出动作空间维度为6(每个探测单元2个动作,每个攻击单元4个动作),构造动作空间结构action_space_n和状态空间结构obs_shape_n。
2)根据action_space_n(动作空间)、obs_shape_n (状态空间)以及各类单元数量,实例化训练器trainers,并调用U.initialize()初始化网络结构和参数。
3)实例化Tensorflow存储器对象saver,用于保存和读取网络参数。
4)初始化total_reward用于存放各类单元回报值,初始化胜利计数常量,用于记录训练过程中红蓝双方各自胜利次数。
5)对于每一个episode:
①从环境获取初始状态 O = O 1 , O 2 , , O N,使用obs_convert对原始状态S进行处理,得到训练所需状态组织red_obs_dict,记为X
②对于每一个step:
a)对于每一个Agent,根据重构后的状态信息,使用rule对象进行基于规则的行为决策(探测单元动作&攻击单元动作)。随后依次调用各Agent对应的trainer产生各自的动作。若是探测单元,则取输出动作的前两位;若是攻击单元,则取输出动作的后四位。之后判断基于rule的决策是否可行,若可行,则将rule决策作为最终动作,否则,采用基于trainer的动作。最终使用的决策记为ai,并收集所有Agent的决策行为组成 a = a 1 , a 2 , , a N
b)将 a 作为环境的输入完成单个step推演,获取每个Agent的回报值 r = r 1 , r 2 , , r N和新的观测状态O',经过obs_convert重构后得到新的状态组织,记为X'
c)判断各个智能体是否存活,是否到达边界以及是否航向角度发生变化,并根据这些因素对相应智能体的回报值进行修改。
d)判断环境是否终止,由于一轮推演结束后才会输出双方round_reward,若终止,则判断双方round_reward高低,并将低的一方各单元reward减去round_reward,高的一方单元reward加上round_reward
e)保存 X , r , a , X '到经验池D中,用于训练神经网络;
f)对本次step产生的双方的reward进行汇总,便于后续输出reward均值。
g)对每一个Agent调用preupdate()函数和update()函数,根据从经验池中取得的样本对其神经网络进行参数更新。
h)判断是否满足step终止条件,如果满足,那么结束本次训练,并转5)开始新一轮训练,同时更新红蓝双方胜利次数。
i)判断是否满足保存模型条件,如果满足,则进行模型保存操作,同时输出截至当前回合中红蓝双方胜利次数信息、各Agent的信息、reward均值信息以及所用时间。

2.3 决策机制

作战单元决策是基于综合规则和多智能体强化学习算法制定的。在实际对抗中,根据当前状态信息,首先使用基于规则的算法进行决策,如果规则算法决策无效,则切换到强化学习算法进行决策,Agent行为根据每次所选的决策采取适用于当前对抗态势的行动。整体思路如图5所示。
图5 决策生成机制

Fig.5 Decision generation mechanism

3 MaCA环境

3.1 环境概述

MaCA(Multi-agent Combat Arena)是由国内某重点实验室发布的多智能体对抗算法研究、训练、测试和评估环境,可支持作战场景和规模自定义,智能体数量和种类自定义,智能体特征和属性自定义,支持智能体行为回报规则和回报值自定义等[23]。MaCA提供了一个电磁空间对抗的多智能体实验环境,环境中预设了两种智能体类型:探测单元和攻击单元。探测单元可模拟L、S波段雷达进行全向探测,支持多频点切换[23];攻击单元具备侦察、探测、干扰、打击等功能,可模拟X波段雷达进行指向性探测,模拟L、S、X频段干扰设备进行阻塞式和瞄准式电子干扰,支持多频点切换,攻击单元还可对对方智能体进行导弹攻击,同时具有无源侦测能力,可模拟多站无源协同定位和辐射源特征识别。
MaCA环境为研究利用人工智能方法解决大规模多智能体分布式对抗问题提供了很好的支撑,专门面向多智能体深度强化学习开放了RL-API接口[23]。环境支持使用Python语言进行算法实现,并可调用Tensorflow、Pytorch等常用深度学习框架。

3.2 MaCA环境与算法交互关系

MaCA环境支持红蓝双方智能算法在设定地图场景中进行对抗博弈,最终进行对抗的算法可以是基于规则直接实现的,也可以是基于强化学习等方法训练后得到的模型,环境中预先制定了简单的基于规则实现的对抗算法。设计MaCA环境的主要目的是促进多智能体强化学习方法在智能对抗领域的研究与应用。强化学习算法与环境交互过程可以分为两个阶段:一是训练阶段,通过收集算法与环境交互的实时数据更新模型参数;二是训练完成之后通过调用训练好的模型与其他对手进行对抗。

4 先验知识说明

本文结合MaCA对抗的任务特点,参照专业选手采取的行动策略,设计规则算法,同时将其作为先验知识的补充和完善。规则算法中针对不同作战动作的策略设计详见攻击策略、干扰频点设置策略及躲避策略。为提高算法训练的适应性,本文重构了从仿真对抗环境获取的原始态势。

4.1 具体先验知识设计

4.1.1 攻击策略

对于处在我方任何攻击单元攻击范围以外的敌方单元,我方将比较战机间的相对距离,由距敌最近的我方空闲攻击单元进行追踪。同时,限制追踪同一敌方的我方攻击单元数量,以保证追踪的有效性和剩余攻击资源的充足性。
对于处在攻击范围内的敌方单元,统筹分配我方空闲的作战单元,具体原则如下:
1)尽可能地攻击在我方攻击范围之内的所有敌方单元;
2)攻击任务分配采用基于优化的贪心算法实现;
3)为节约弹药,对同一敌方单元进行攻击时,限定我方攻击单元的数量;
4)为提高导弹命中率,扩大侦察单元雷达照射范围,指引在途任务的单元完成相关动作任务;
5)为提高命中率,在发动攻击时调整我方攻击航向,保持正面接敌。

4.1.2 干扰频点设置策略

考虑敌方雷达频点具有周期性变化规律,干扰频点策略主要采用在线学习预测方式,包括学习过程与预测过程两部分。
学习过程从进入推演开始贯穿整个推演过程。其具体过程如下:
1)获取某敌机雷达频点的变化,以三个连续时间点内的变化情况作为样本;
2)按时序组合前两个频点作为特征,预测并存储第三个频点的概率分布[22]
预测过程是从推演的第二轮起,直至整个推演过程结束。在预测过程中,统计每次预测结果与实际结果的相同次数,从而得出预测过程中的算法成功率。预先设定成功率阈值(默认0.95),通过比较成功率来判断预测模块的结果是否有效[22],然后决定后续对抗中是否使用获得的预测结果。具体判断方式如下:
1)若预测成功率高于阈值,则表明学习过程和预测过程的结果与敌方雷达频点的变化具有相同规律,可使用预测的结果;
2)若低于阈值,则表明学习过程和预测过程的结果与敌方雷达频点变化的规律不同,故不可使用预测的结果,且将干扰模式设置为阻塞式干扰。

4.1.3 躲避策略

我方算子侦察获取敌方算子在连续两个step的态势信息,计算出敌方算子可能机动的航向,结合上一个step中我方算子的信息,推算敌方算子追踪我方算子时可能采取的航向等信息。根据推测结果,调度我方相应的侦察单元与无攻击能力的攻击单元做出躲避动作。

4.2 状态信息重构

为了更好地适应训练,本文对仿真对抗环境获取的原始态势进行重构,包括探测单元态势重构与攻击单元态势重构。

4.2.1 探测单元态势重构

本文分别对异构环境中我方所具有的2个探测单元进行状态信息组织,具体如下。
1)我方基本属性:该算子存活状态、X坐标、Y坐标、航向、雷达状态以及雷达频点;
2)友方基本信息:与友方另一探测单元的距离、与友方所有攻击单元的距离;
3)敌方基本信息:与雷达发现的所有敌方单元的距离。

4.2.2 攻击单元态势重构

异构环境中我方10个攻击单元的状态信息组织如下。
1)我方基本属性:算子存活状态、X坐标、Y坐标、航向、雷达状态、雷达频点、干扰雷达状态、干扰雷达频点、远程导弹数量以及中程导弹数量;
2)友方基本信息:与友方所有探测单元的距离、与友方其他存活攻击单元的距离;
3)敌方基本信息:与雷达主动观测到的敌方单元的距离、与干扰雷达被动观测到的敌方单元的距离、敌方单元的方向以及敌方单元的雷达频点。

5 实验仿真设计

5.1 配置及运行说明

MaCA环境适用于Linux 64-bit 、Mac OS及windows10 x64操作系统,通过Pycharm进行Python环境配置,使用Tensorflow强化学习框架。在MaCA根目录中运行相关py文件,将其“Work Directory”均设置为MaCA根目录。

5.2 超参数设计

强化学习的actor与critic神经网络均使用两个隐藏层,每个隐藏层包含64个全连接神经元。训练过程中使用的超参数如表3所示。
表3 超参数设置

Tab.3 Hyperparameter setting

序号 参数 默认值
1 最大round数量 500
2 每个round中最大step数量 3 000
3 神经网络学习率 0.02
4 回报折扣率 0.95
5 batch size 1 024
6 隐藏层神经元数量 64
7 每保存一次模型的间隔round数 200

5.3 MaCA环境仿真

5.3.1 异构多智能体环境设置

本文基于MaCA环境开展实验仿真,分析融合规则算法的深度强化学习MADDPG算法在多智能体博弈对抗中的实际使用效果。MaCA支持红蓝双方多智能体在设定的地图场景中进行博弈对抗,在异构地图中对战双方各拥有12个不同属性的攻击单元和探测单元,探测单元具备侦察和探测功能,攻击单元具备侦察、探测、干扰和打击等功能,具体信息如表4所示。红蓝双方作战单元接敌开始对抗,当一轮对战符合结束规则时,本轮结束并进行胜负判定。若一方被全部击毁,判定另一方完胜;若双方导弹存量为0或达到最大step,判定剩余作战单元数量多的一方获胜;若双方作战单元全部被击毁,判定为平局。当双方导弹存量为0或达到最大step时,双方存活作战单元数量相同的情况下,也判定为平局。MaCA异构多智能体环境中红蓝双方作战单元与侦察单元初始配置情况如图6所示。
表4 MaCA异构多智能体单元属性

Tab.4 Properties of MaCA heterogeneous multi-agent unit

类型 速度 雷达波段 频点数目 干扰频段 干扰频段数目 近程导弹数量 远程导弹数量 类型数量
探索单元1 1 0 20 1
探索单元2 1 1 20 1
攻击单元1 3 2 10 2 10 4 2 8
攻击单元2 3 2 10 0 10 4 2 1
攻击单元3 3 2 10 1 0 4 2 1
图6 MaCA异构多智能体地图

Fig.6 MaCA heterogeneous multi-agent map

5.3.2 实验结果与分析

本文利用基于先验知识和强化学习的PK-MADDPG算法与MADDPG算法、基准规则算法进行胜率比较分析。首先,对基准规则算法进行实验,将红蓝双方智能体均基于规则算法进行博弈对抗;将MADDPG算法用于红方,基准规则算法用于蓝方算法,获取强化学习算法在异构多智能体环境中的效果;然后,将PK-MADDPG作用于红方智能体,将基准规则算法作用于蓝方智能体,验证本文算法在实验中的实际效果。比较3类实验在博弈对抗500局中的胜率,实验胜率结果如图7~10所示,红蓝双方对抗获胜次数如表5~8所示。从实验结果中发现,MADDPG算法较传统规则算法能提高博弈对抗胜率,但在实验初期收敛较慢;而PK-MADDPG算法的Agent胜率提高效果明显,在利用先验知识的情况下能够使训练收敛较快,红方使用PK-MADDPG算法对抗蓝方规则算法时,胜率维持在90%以上。同时,在实验中,将PK-MADDPG与MADDPG算法进行对比可知:1)在同样对抗基准规则AI下,曲线在100回合左右时,PK-MADDPG算法胜率经平稳增长逐步达到收敛,MADDPG算法仍存在较明显波动,收敛速度和效果均有欠缺;2)在PK-MADDPG与MADDPG直接对抗时,PK-MADDPG的胜率优于MADDPG。这表明本文设计的融合规则算法的MADDPG算法能有效提高多智能体对抗博弈的智能性。
图7 base rule (red)与base rule (blue)对抗胜率图

Fig.7 The winning rate of base rule (red) and base rule (blue)

图8 MADDPG(red)与base rule(blue)对抗胜率图

Fig.8 The winning rate of MADDPG (red) and base rule (blue)

图9 PK-MADDPG (red)与base rule (blue) 对抗胜率图

Fig.9 The winning rate of PK-MADDPG (red) and base rule (blue)

图10 PK-MADDPG(red)与base rule(blue)对抗胜率图

Fig.10 The winning rate of PK-MADDPG (red) and base rule (blue)

表5 base rule与base rule获胜次数比较

Tab.5 The compare of winning times between base rule and base rule

算法 获胜次数 回合数
base rule (red) 256 500
base rule (blue) 210 500
表6 MADDPG与base rule获胜次数比较

Tab.6 The compare of winning times between MADDPG and base rule

算法 获胜次数 回合数
MADDPG(red) 355 500
base rule (blue) 150 500
表7 PK-MADDPG与base rule获胜次数比较

Tab.7 The compare of winning times between PK-MADDPG and base rule

算法 获胜次数 回合数
PK-MADDPG(red) 463 500
baserule (blue) 35 500
表8 PK-MADDPG与MADDPG获胜次数比较

Tab.8 The compare of winning times between PK-MADDPG and MADDPG

算法 获胜次数 回合数
PK-MADDPG(red) 305 500
MADDPG(blue) 196 500

6 结束语

本文针对强化学习算法在多智能体对抗博弈中训练收敛过慢,以及智能体对抗特定规则下智能体胜率较低的问题,提出了一种先验知识与强化学习结合的多智能体博弈对抗算法PK-MADDPG,并在MaCA异构多智能体环境中对该算法进行实验,验证了算法的智能性。其中,引入规则算法解决了强化学习算法在多智能体对抗初期收敛速度较慢且博弈效果较差的问题,同时保留了强化学习自我探索能力,使得智能体在现有规则策略的基础上进一步优化对抗过程,提高了整体奖励值。在该领域中,我们尝试和探索了多智能体博弈对抗,在传统规则算法的基础上,利用先验知识融合强化学习算法,降低了异构多智能体复杂度高状态多变情况下规则算法设计的难度,进一步提高了推演对抗过程的智能性。
强化学习算法MADDPG在星际争霸、Atari等多个游戏平台上实现应用,充分体现了MADDPG算法较强的可适用性,具有一定的泛化性。本文基于先验知识和强化学习算法提出的PK-MADDPG在MaCA平台得到实验验证,较传统强化学习算法和一般规则算法具有优越性。
[1]
PANG Z J, LIU R Z, MENG Z Y, et al. On reinforcement learning for full-length game of StarCraft[J]. Proceedings of the AAAI Conference on Artificial Intelligence, 2019, 33(1): 4691-4698.

DOI

[2]
SILVER D, HUANG A, MADDISON C J, et al. Mastering the game of Go with deep neural networks and tree search[J]. Nature, 2016, 529(7587): 484-489.

DOI

[3]
张振, 黄炎焱, 张永亮, 等. 基于近端策略优化的作战实体博弈对抗算法[J]. 南京理工大学学报, 2021, 45(1): 77-83.

ZHANG Z, HUANG Y Y, ZHANG Y L, et al. Battle entity confrontation algorithm based on proximal policy optimization[J]. Journal of Nanjing University of Science and Technology, 2021, 45(1): 77-83.

[4]
YE D H, LIU Z, SUN M F, et al. Mastering complex control in MOBA games with deep reinforcement learning[J]. Proceedings of the AAAI Conference on Artificial Intelligence, 2020, 34(4): 6672-6679.

DOI

[5]
SILVER D, SCHRITTWIESER J, SIMONYAN K, et al. Mastering the game of Go without human knowledge[J]. Nature, 2017, 550(7676): 354-359.

DOI

[6]
BARRIGA N A, STANESCU M, BESOAIN F, et al. Improving RTS game AI by supervised policy learning, tactical search, and deep reinforcement learning[J]. IEEE Computational Intelligence Magazine, 2019, 14(3): 8-18.

[7]
吴曦, 孟祥林, 杨镜宇. 下一代战略博弈推演系统研究[J]. 系统仿真学报, 2021, 33(9): 2017-2024.

DOI

WU X, MENG X L, YANG J Y. Study on next-generation strategic wargame system[J]. Journal of System Simulation, 2021, 33(9): 2017-2024.

DOI

[8]
王泊涵, 吴婷钰, 李文浩, 等. 基于多智能体强化学习的大规模无人机集群对抗[J]. 系统仿真学报, 2021, 33(8): 1739-1753.

DOI

WANG B H, WU T Y, LI W H, et al. Large-scale UAVs confrontation based on multi-agent reinforcement learning revoke[J]. Journal of System Simulation, 2021, 33(8): 1739-1753.

DOI

[9]
曾贲, 房霄, 孔德帅, 等. 一种数据驱动的对抗博弈智能体建模方法[J]. 系统仿真学报, 2021, 33(12): 2838-2845.

DOI

ZENG B, FANG X, KONG D S, et al. A data-driven modeling method for game adversity agent[J]. Journal of System Simulation, 2021, 33(12): 2838-2845.

DOI

[10]
SCHRITTWIESER J, ANTONOGLOU I, HUBERT T, et al. Mastering Atari, Go, chess and shogi by planning with a learned model[J]. Nature, 2020, 588(7839): 604-609.

DOI

[11]
BARRIGA N, STANESCU M, BURO M. Combining strategic learning with tactical search in real-time strategy games[J]. Proceedings of the AAAI Conference on Artificial Intelligence and Interactive Digital Entertainment, 2021, 13(1): 9-15.

DOI

[12]
KONG D P, CHANG T Q, HAO N, et al. Multi attribute index processing method of ground combat target threat assessment[J]. Acta automatica Sinica (S1874-1029), 2021, 47 (1): 161-172.

[13]
ZHONG S, TAN J, DONG H S, et al. Modeling-learning-based actor-critic algorithm with Gaussian process approximator[J]. Journal of Grid Computing, 2020, 18(2): 181-195.

DOI

[14]
LITTMAN M L. Reinforcement learning improves behaviour from evaluative feedback[J]. Nature, 2015, 521(7553): 445-451.

DOI

[15]
杜威, 丁世飞. 多智能体强化学习综述[J]. 计算机科学, 2019, 46(8): 1-8.

DOI

DU W, DING S F. Overview on multi-agent reinforcement learning[J]. Computer Science, 2019, 46(8): 1-8.

DOI

[16]
李天宇. 基于强化学习的云计算资源调度策略研究[J]. 上海电力学院学报, 2019, 35(4): 399-403.

LI T Y. Research on cloud computing resource scheduling strategy based on reinforcement learning[J]. Journal of Shanghai University of Electric Power, 2019, 35(4): 399-403.

[17]
刘威, 张东霞, 王新迎, 等. 基于深度强化学习的电网紧急控制策略研究[J]. 中国电机工程学报, 2018, 38(1): 109-119, 347.

LIU W, ZHANG D X, WANG X Y, et al. A decision making strategy for generating unit tripping under emergency circumstances based on deep reinforcement learning[J]. Proceedings of the CSEE, 2018, 38(1): 109-119, 347.

[18]
SUTTON R S, BARTO A G. Reinforcement learning: an introduction[M]. 2nd ed. Boston: MIT Press, 2018.

[19]
KIM B, PARK J, PARK S, et al. Impedance learning for robotic contact tasks using natural actor-critic algorithm[J]. IEEE Transactions on Systems, Man, and Cybernetics Part B, Cybernetics: a Publication of the IEEE Systems, Man, and Cybernetics Society, 2010, 40(2): 433-443.

DOI

[20]
桂熙. 基于MADDPG算法的多智能体协同控制研究[D]. 武汉: 武汉纺织大学, 2020.

GUI X. Research on multi-agent cooperative control based on MADDPG algorithm[D]. Wuhan: Wuhan Textile University, 2020.

[21]
LOWE R, WU Y, TAMAR A, et al. Multi-agent actor-critic for mixed cooperative-competitive environments[EB/OL]. 2017: arXiv: 1706.02275. https://arxiv.org/abs/1706.02275

[22]
李渊, 徐新海. 基于组合训练的规则嵌入多智能体强化学习方法[J]. 计算机应用研究, 2022, 39(3): 802-806.

LI Y, XU X H. Embedding rules intomultiagent reinforcement learning based on iterative training[J]. Application Research of Computers, 2022, 39(3): 802-806.

[23]
中国电子科技集团, Multi-agent Combat Arena (MACA)[EB/OL]. (2021)[2021-03-17]. https://github.com/cetc-tfai/maca.

文章导航

/