一种基于群体博弈的多智能体交互方法及系统与流程

文档序号:30514155发布日期:2022-06-25 02:46阅读:302来源:国知局
一种基于群体博弈的多智能体交互方法及系统与流程

1.本发明涉及计算机应用技术领域,尤其涉及一种基于群体博弈的多智能体交互方法、系统及计算机可读存储介质。


背景技术:

2.现实世界中的许多问题(例如多机器人控制、无人机集群、自动驾驶等)都包含多个智能体之间的复杂交互。多个智能体都希望在交互的过程中能够在复杂的环境中学习到最优策略。非合作型多智能体强化学习一般指智能体在与环境交互过程中仅优化各自目标的场景。在这一场景中,每个智能体都追求最大化自身奖励。如何能够使智能体学习到没有动力去改变自身当前策略的均衡策略是当前多智能体强化学习领域的一个充满挑战性的研究课题。现有的解决方案通常采用基于均衡的多智能体强化学习框架来促使多智能体在每一个阶段博弈中都采用均衡策略。该学习框架以q学习(q-learning,是一种与模型无关的强化学习算法,以马尔科夫决策过程为理论基础)为基础,首先将多智能体之间的交互建模成为一个随机博弈,然后在随机博弈的每一个状态下计算对应正则博弈的均衡策略,并根据选中的均衡策略更新智能体的q函数(用来表征智能体状态动作组合好坏程度的函数)。
3.上述基于均衡的学习框架虽然在理论上能够促使智能体收敛到均衡策略,但也存在着一定的缺点,即有的基于博弈的多智能体强化学习算法多采用具有高计算复杂度的精确均衡点来对q函数进行更新。例如,经典的nash-q算法(是将minimax-q算法从零和博弈扩展到多人一般和博弈的算法,在合作性均衡或对抗性均衡的环境中能够收敛到纳什均衡点)采用精确纳什均衡来进行策略更新,ce-q算法采用精确的相关均衡来进行策略更新等。由于精确均衡的计算复杂度会随着智能体个数的增加而急剧增加,现有的方法不能够很好的适用于有多个智能体存在的环境中。
4.因此,现有技术还有待于改进和发展。


技术实现要素:

5.本发明的主要目的在于提供一种基于群体博弈的多智能体交互方法、系统、系统及计算机可读存储介质,旨在解决现有技术的方法不能够很好的适用于有多个智能体存在的环境中的问题。
6.为实现上述目的,本发明提供一种基于群体博弈的多智能体交互方法,所述基于群体博弈的多智能体交互方法包括如下步骤:
7.初始化智能体强化学习所需的预设参数,初始化智能体的q表,并初始化学习周期;
8.获取常微分方程的求解阈值,并将常微分方程的求解阈值进行衰减处理;
9.初始化系统状态,采用贪婪策略选取智能体的联合动作;
10.每个智能体执行所选取的动作,并接收观测样本和奖励;
11.构建基于智能体的q表的群体博弈,利用基于继承的bnn群体博弈动态算法求解近似均衡策略;
12.智能体基于得到的期望奖励更新q表。
13.所述的基于群体博弈的多智能体交互方法,其中,所述智能体基于得到的期望奖励更新q表,之后还包括:
14.判断当前系统状态是否为终止状态;
15.若当前系统状态不为终止状态,则将当前系统状态转移到下一系统状态;
16.若当前系统状态为终止状态,则判断当前学习周期是否达到最大学习周期;
17.若当前学习周期未达到最大学习周期,则更新学习周期迭代器;
18.若当前学习周期达到最大学习周期,则结束当前流程。
19.所述的基于群体博弈的多智能体交互方法,其中,所述预设参数包括学习率、折扣因子和探索因子;
20.所述初始化智能体强化学习所需的预设参数,初始化智能体的q表,并初始化学习周期,具体包括:
21.初始化学习率、折扣因子和探索因子,初始化常微分方程的求解阈值,初始化智能体的q表为零,并初始化学习周期e;
22.其中,所述学习率用于控制强化学习的学习速度;所述折扣因子表示智能体当前动作所产生的未来奖励对当前q表更新的影响程度;所述探索因子表示智能体在访问过的状态下尝试新动作的概率;智能体的q表用于表示智能体的不同状态动作对所对应的长期期望回报;学习周期e的取值范围为1、2、...、n
eps
,其中n
eps
代表最大的训练周期数目。
23.所述的基于群体博弈的多智能体交互方法,其中,所述获取常微分方程的求解阈值,并将常微分方程的求解阈值进行衰减处理,具体包括:
24.获取常微分方程的求解阈值,将求解阈值进行衰减δe=κδ
e-1
,其中,δe表示学习周期e的常微分方程的求解阈值,δ
e-1
表示学习周期e-1的常微分方程的求解阈值,κ表示衰减因子。
25.所述的基于群体博弈的多智能体交互方法,其中,所述初始化系统状态,采用贪婪策略选取智能体的联合动作,具体包括:
26.定义系统状态为智能体当前所观测到的环境状态,初始化系统状态s=s
ini

27.采用贪婪策略选取智能体的联合动作a,联合动作a表示多个智能体的动作集合;以概率ε为每个智能体随机选取联合动作,以概率(1-ε)为智能体选取使q值最大的联合动作,其中,ε表示0到1之间的随机数。
28.所述的基于群体博弈的多智能体交互方法,其中,所述每个智能体执行所选取的动作,并接收观测样本和奖励,具体包括:
29.每个智能体执行所选取的动作,并收到观测样本(s,a,ri,s

),其中,ri代表智能体i从环境中收到的奖励,s

表示下一个系统状态。
30.所述的基于群体博弈的多智能体交互方法,其中,所述构建基于智能体的q表的群体博弈,利用基于继承的bnn群体博弈动态算法求解近似均衡策略,具体包括:
31.在下一个系统状态s

下构建基于智能体q值的正则博弈:
[0032][0033]
其中,表示智能体i的动作空间,qi(s

)表示智能体i的q函数在下一个状态s

下的值,表示所有智能体的集合;
[0034]
将基于智能体q值的正则博弈构建成相应的群体博弈,群体博弈由两个回报函数来表征:
[0035][0036][0037]
其中,表示种群状态为x(s)时,智能体i对应的元智能体中选择第k个纯策略的元智能体所得到的回报;表示智能体i对应的种群得到的平均回报;i和j表示智能体的下标;k表示智能体纯策略的下标;a-i
表示除了智能体i以外的所有智能体的策略,表示a-i
的取值空间;qi(s,k,a-i
)表示智能体i在系统状态为s,智能体i选择第k个纯策略,其他智能体的联合策略为a-i
时对应的q值;表示系统状态为s时,智能体j对应的种群中选择纯策略aj的元智能体的比例;表示系统状态为s时,智能体i对应的种群中选择第k个纯策略的元智能体的比例;
[0038]
利用基于继承的bnn群体博弈动态算法求解s

状态下的近似均衡策略:
[0039][0040]
其中,f
bnn
表示求解常微分方程的迭代函数,x
*
(s

)表示系统状态s

所对应的智能体的均衡策略;
[0041]
待求解的常微分方程表示为:
[0042][0043]
其中,表示对τ的导数,表示智能体智i对应的种群
中选择第k个纯策略的元智能体得到的超出汇报,表示智能体i对应的种群中选择第l个纯策略的元智能体得到的超出汇报。
[0044]
所述的基于群体博弈的多智能体交互方法,其中,所述智能体基于得到的期望奖励更新q表,具体包括:
[0045]
每个智能体得到在s

状态下的期望奖励θi(s

),并利用期望奖励更新q表为:
[0046]
qi(s,a)=(1-α)qi(s,a)+α[ri+γθi(s

)];
[0047]
其中,qi(s,a)表示智能体i和状态动作对(s,a)所对应的q值,α表示学习率,ri表示智能体i的奖励,γ代表折折扣因子;
[0048]
当环境的状态被智能体的当前动作所改变,将系统状态s转为下一系统状态s


[0049]
此外,为实现上述目的,本发明还提供一种系统,其中,所述系统包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的基于群体博弈的多智能体交互程序,所述基于群体博弈的多智能体交互程序被所述处理器执行时实现如上所述的基于群体博弈的多智能体交互方法的步骤。
[0050]
此外,为实现上述目的,本发明还提供一种计算机可读存储介质,其中,所述计算机可读存储介质存储有基于群体博弈的多智能体交互程序,所述基于群体博弈的多智能体交互程序被处理器执行时实现如上所述的基于群体博弈的多智能体交互方法的步骤。
[0051]
本发明公开了一种基于群体博弈的多智能体交互方法及系统,用以解决多智能体系统中均衡策略求解复杂度与系统性能之间难以权衡的问题,例如可以促进自动驾驶中车辆路径规划和路网协同等应用的发展。首先,将非合作型多智能体强化学习中每一个阶段的正则博弈建模成群体博弈,在该群体博弈中,每个智能体被扩展成一群“元智能体”,每个元智能体是实际智能体选取某种纯策略状态下时的一种数学抽象,单个智能体的混合策略则由一群元智能体选取可用纯策略的比例所表示,然后,利用群体博弈中均衡策略能够通过求解常微分方程得到这一理论保证,系统高效地计算每个状态对应的均衡策略,并通过设计两个加速机制来控制均衡复杂度和精度之间的权衡。
[0052]
本发明通过将群体博弈引入多智能体强化学习框架,智能体的均衡策略可以由求解一系列常微分方程得到,由于常微分方程的求解精度是可控的,本发明提出的多智能体交互方法及系统实现了均衡策略的求解精度和求解速度之间更好的权衡;实验结果表明,本发明提出的多智能体交互系统在多个智能体环境中比现有的基于多智能体强化学习系统有着更好的性能。
附图说明
[0053]
图1是本发明基于群体博弈的多智能体交互方法的较佳实施例的流程图;
[0054]
图2是本发明基于群体博弈的多智能体交互方法的较佳实施例中基于群体博弈的多智能体交互系统策略更新流程图;
[0055]
图3是本发明基于群体博弈的多智能体交互方法的较佳实施例中群体博弈构成示意图;
[0056]
图4是本发明基于群体博弈的多智能体交互方法的较佳实施例中基于群体状态演进的q表更新示意图;
[0057]
图5为本发明系统的较佳实施例的运行环境示意图。
具体实施方式
[0058]
为使本发明的目的、技术方案及优点更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0059]
本发明较佳实施例所述的基于群体博弈的多智能体交互方法,如图1和图2所示,所述基于群体博弈的多智能体交互方法包括以下步骤:
[0060]
步骤s10、初始化智能体强化学习所需的预设参数,初始化智能体的q表,并初始化学习周期。
[0061]
具体地,所述预设参数包括学习率、折扣因子和探索因子;初始化学习率、折扣因子和探索因子,初始化常微分方程的求解阈值,初始化智能体的q表(也称q函数)为零,并初始化学习周期e。
[0062]
其中,所述学习率用于控制强化学习的学习速度;所述折扣因子表示智能体当前动作所产生的未来奖励对当前q表更新的影响程度;所述探索因子表示智能体在访问过的状态下尝试新动作的概率;智能体的q表用于表示智能体的不同状态动作对所对应的长期期望回报;学习周期e的取值范围为1、2、...、n
eps
,其中,n
eps
代表最大的训练周期数目。
[0063]
步骤s20、获取常微分方程的求解阈值,并将常微分方程的求解阈值进行衰减处理。
[0064]
具体地,获取常微分方程的求解阈值,将求解阈值进行衰减δe=κδ
e-1
,其中,δe表示学习周期e的常微分方程的求解阈值,δ
e-1
表示学习周期e-1的常微分方程的求解阈值,κ表示衰减因子。
[0065]
步骤s30、初始化系统状态,采用贪婪策略选取智能体的联合动作。
[0066]
具体地,定义系统状态为智能体当前所观测到的环境状态(通常由环境的一组特征定义),初始化系统状态s=s
ini
;直至s变为系统终止状态s
term
(例如当前游戏结束)。
[0067]
采用贪婪策略选取智能体的联合动作a,联合动作a表示多个智能体的动作集合;以概率ε为每个智能体随机选取联合动作,以概率(1-ε)为智能体选取使q值最大的联合动作,其中,ε表示0到1之间的随机数。
[0068]
步骤s40、每个智能体执行所选取的动作,并接收观测样本和奖励。
[0069]
具体地,每个智能体执行所选取的动作,并收到观测样本(s,a,ri,s

),其中,ri代表智能体i从环境中收到的奖励,s

表示下一个系统状态;其中,奖励在不同的环境中有不同的定义,例如在自动驾驶中奖励可以定义为某十字路口的拥堵程度。
[0070]
步骤s50、构建基于智能体的q表的群体博弈,利用基于继承的bnn群体博弈动态算法求解近似均衡策略。
[0071]
具体地,在下一个系统状态s

下构建基于智能体q值的正则博弈:
[0072][0073]
其中,表示智能体i的动作(即纯策略)空间,qi(s

)表示智能体i的q函数在下
一个状态s

下的值,表示所有智能体的集合;由于奖励ri无法代表智能体i的长期期望回报,本发明采用的智能体的q函数作为正则博弈中的回报函数进行均衡求解。
[0074]
将基于智能体q值的正则博弈构建成相应的群体博弈,群体博弈由两个回报函数来表征:
[0075][0076][0077]
其中,表示种群状态为x(s)时,智能体i对应的元智能体中选择第k个纯策略的元智能体所得到的回报;表示智能体i对应的种群得到的平均回报;i和j表示智能体的下标;k表示智能体纯策略的下标;a-i
表示除了智能体i以外的所有智能体的策略,表示a-i
的取值空间;qi(s,k,a-i
)表示智能体i在系统状态为s,智能体i选择第k个纯策略,其他智能体的联合策略为a-i
时对应的q值;表示系统状态为s时,智能体j对应的种群中选择纯策略aj的元智能体的比例;表示系统状态为s时,智能体i对应的种群中选择第k个纯策略的元智能体的比例;
[0078]
利用基于继承的bnn(brown-von neumann-nash,布朗-冯诺伊曼-纳什)群体博弈动态算法求解s

状态下的近似均衡策略:
[0079][0080]
其中,f
bnn
表示求解常微分方程的迭代函数,x
*
(s

)表示系统状态s

所对应的智能体的均衡策略;
[0081]
待求解的常微分方程表示为:
[0082][0083]
其中,表示对τ的导数,表示智能体智i对应的种群中选择第k个纯策略的元智能体得到的超出汇报,表示智能体i对应的种群中选择第l个纯策略的元智能体得到的超出汇报。
[0084]
步骤s60、智能体基于得到的期望奖励更新q表。
[0085]
具体地,每个智能体得到在s

状态下的期望奖励θi(s

),并利用期望奖励更新q表为:
[0086]
qi(s,a)=(1-α)qi(s,a)+α[ri+γθi(s

)];
[0087]
其中,qi(s,a)表示智能体i和状态动作对(s,a)所对应的q值,α表示学习率,ri表示智能体i的奖励,γ代表折折扣因子;
[0088]
当环境的状态被智能体的当前动作所改变,将系统状态s转为下一系统状态s

,即环境的状态被智能体的当前动作所改变,转移到新的系统状态s


[0089]
进一步地,如图2所示,在智能体基于得到的期望奖励更新q表之后,判断当前系统状态是否为终止状态;若当前系统状态不为终止状态,则将当前系统状态转移到下一系统状态,并继续跳转到每个智能体执行所选取的动作,并接收观测样本和奖励及接下来的流程;若当前系统状态为终止状态,则判断当前学习周期是否达到最大学习周期;若当前学习周期未达到最大学习周期,则更新学习周期迭代器,并继续跳转到将常微分方程的求解阈值进行衰减处理及接下来的流程;若当前学习周期达到最大学习周期,则结束当前流程。
[0090]
如图3所示,一个种群社会通常包含多个种群,而每个种群又由多个元智能体构成,每个元智能体可以从其所对应的智能体的可选动作中选取个动作作为它的策略,整个种群中元智能体选取不同策略的比例代表了相应智能体的混合策略。
[0091]
如图4所示,通过引入群体博弈,本发明可以通过群体状态演进的方式找到每个状态下的智能体的均衡策略,通过调整进化迭代的次数,可以得到每个状态下的近似均衡。
[0092]
本发明的主要目的是提供一种基于群体博弈的多智能体交互方法及系统,其主要特点是不精确求解每个阶段博弈的均衡策略,而是以相对较低的计算复杂度求得近似均衡,通过设计常微分方程求解加速机制,实现均衡复杂度和均衡精度的最优权衡,以及多智能体系统的最优性能。
[0093]
进一步地,本发明还可以修改多智能体强化学习环境的定义方式,包括状态、动作和奖励。换用其他的群体动态算法求解阶段博弈对应的均衡策略,与本发明采用相同的博弈论强化学习框架进行智能体策略更新。修改常微分方程求解阈值初始化方式及更新方式。修改常微分方程求解初始值更新方式。
[0094]
进一步地,如图5所示,基于上述基于群体博弈的多智能体交互方法和系统,本发明还相应提供了一种系统,所述系统包括处理器10、存储器20及显示器30。图5仅示出了系统的部分组件,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。
[0095]
所述存储器20在一些实施例中可以是所述系统的内部存储单元,例如系统的硬盘或内存。所述存储器20在另一些实施例中也可以是所述系统的外部存储设备,例如所述系统上配备的插接式硬盘,智能存储卡(smart media card,smc),安全数字(secure digital,sd)卡,闪存卡(flash card)等。进一步地,所述存储器20还可以既包括所述系统的内部存储单元也包括外部存储设备。所述存储器20用于存储安装于所述系统的应用软件及各类数据,例如所述安装系统的程序代码等。所述存储器20还可以用于暂时地存储已经输出或者将要输出的数据。在一实施例中,存储器20上存储有基于群体博弈的多智能体交互程序40,该基于群体博弈的多智能体交互程序40可被处理器10所执行,从而实现本技术
中基于群体博弈的多智能体交互方法。
[0096]
所述处理器10在一些实施例中可以是一中央处理器(central processing unit,cpu),微处理器或其他数据处理芯片,用于运行所述存储器20中存储的程序代码或处理数据,例如执行所述基于群体博弈的多智能体交互方法等。
[0097]
所述显示器30在一些实施例中可以是led显示器、液晶显示器、触控式液晶显示器以及oled(organic light-emitting diode,有机发光二极管)触摸器等。所述显示器30用于显示在所述系统的信息以及用于显示可视化的用户界面。所述系统的部件10-30通过系统总线相互通信。
[0098]
在一实施例中,当处理器10执行所述存储器20中基于群体博弈的多智能体交互程序40时实现如上所述基于群体博弈的多智能体交互方法的步骤。
[0099]
本发明还提供一种计算机可读存储介质,其中,所述计算机可读存储介质存储有基于群体博弈的多智能体交互程序,所述基于群体博弈的多智能体交互程序被处理器执行时实现如上所述的基于群体博弈的多智能体交互方法的步骤。
[0100]
综上所述,本发明基于群体博弈的多智能体交互方法及系统与现有技术相比具有如下优点:
[0101]
(1)、与现有的基于均衡的多智能体系统相比,本发明通过将群体博弈引入到阶段博弈的均衡策略求解当中,实现了对均衡求解速度和求解精度之间权衡的控制,增加了均衡求解的灵活性,提高了多智能体系统的整体性能。
[0102]
(2)、与现有的群体博弈均衡策略求解方法相比,本发明提出的利用继承和可控阈值的思想来加快相同系统状态的下的均衡求解速度。具体来说,由于常微分方程的求解速度依赖于初始值和求解阈值,当智能体连续两次访问相同系统状态时,本发明利用上一次访问求得的均衡状态作为第二次访问的初始值。该机制与现有的群体动态性求解均衡方法相比,提高了的均衡求解速度,进一步增加了整个多智能体系统的可拓展性。
[0103]
(3)、现有的基于均衡的多智能体强化学习方式为将每个智能体作为单独个体,本发明提出的将智能体的q函数作为每个阶段博弈中智能体的回报函数,并将每个阶段下的正则博弈等效成群体博弈。每个种群又分成多个“元智能体”,每个智能体的行为由“元智能体”的集体行为来表征。这使得本发明所提出的系统可以利用求解常微分方程得到智能体在每个阶段博弈中的均衡策略,降低了均衡求解的复杂度,实现了复杂度和性能之间更好的权衡。
[0104]
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个......”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
[0105]
当然,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关硬件(如处理器,控制器等)来完成,所述的程序可存储于一计算机可读取的计算机可读存储介质中,所述程序在执行时可包括如上述各方法实施例的流程。其中所述的计算机可读存储介质可为存储器、磁碟、光盘等。
[0106]
应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术人员来说,可
以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1