浙江大学学报(工学版), 2024, 58(3): 480-491 doi: 10.3785/j.issn.1008-973X.2024.03.005

计算机技术

两方零和马尔科夫博弈策略梯度算法及收敛性分析

王卓, 李永强,, 冯宇, 冯远静

1. 浙江工业大学 信息工程学院,浙江 杭州 310000

Policy gradient algorithm and its convergence analysis for two-player zero-sum Markov games

WANG Zhuo, LI Yongqiang,, FENG Yu, FENG Yuanjing

1. School of Information Engineering, Zhejiang University of Technology, Hangzhou 310000, China

通讯作者: 李永强,男,副教授. orcid.org/0000-0002-9345-943X. E-mail: yqli@zjut.edu.cn

收稿日期: 2023-04-13  

基金资助: 国家自然科学基金资助项目(62073294);浙江省自然科学基金资助项目(LZ21F030003).

Received: 2023-04-13  

Fund supported: 国家自然科学基金资助项目(62073294);浙江省自然科学基金资助项目(LZ21F030003).

作者简介 About authors

王卓(1998—),男,硕士生,从事多智能体强化学习与博弈论研究.orcid.org/0009-0007-3778-8523.E-mail:2112103098@zjut.edu.cn 。

摘要

为了解决基于策略的强化学习方法在两方零和马尔科夫博弈中学习效率低下的问题, 提出同时更新双方玩家策略的近似纳什均衡策略优化算法. 将两方零和马尔科夫博弈问题描述为最大最小优化问题, 针对参数化策略, 给出马尔科夫博弈的策略梯度定理, 并通过近似随机策略梯度的推导, 为算法实施提供可行性基础. 通过比较分析不同的最大最小问题梯度更新方法, 发现额外梯度相较于其他方法具有更好的收敛性能. 基于这一发现, 提出基于额外梯度的近似纳什均衡策略优化算法, 并给出算法的收敛性证明. 在Oshi-Zumo游戏上, 使用表格式softmax参数化策略以及神经网络作为参数化策略, 验证不同游戏规模场景下算法的有效性. 通过对比实验, 验证算法相对于其他方法的收敛性和优越性.

关键词: 两方零和马尔科夫博弈 ; 强化学习 ; 策略优化 ; 额外梯度 ; 纳什均衡 ; 神经网络

Abstract

An approximate Nash equilibrium policy optimization algorithm that simultaneously updated the policy of both players was proposed, in order to resolve the problem of low learning efficiency of the policy-based reinforcement learning method in the two-player zero-sum Markov game. The two-player zero-sum Markov game problem was described as a maximum-minimum optimization problem. The policy gradient theorem of the Markov game was given for the parameterized policy, and it provided a feasibility basis for algorithm implementation through the derivation of the approximate stochastic policy gradient. Different gradient update methods for the maximum-minimum problem were compared and analyzed, and it was found that the extragradient had better convergence performance than other methods. An approximate Nash equilibrium policy optimization algorithm based on the extragradient was proposed based on this finding, and the convergence proof of the algorithm was given. The tabular softmax parameterized policy and the neural network were used as parameterized policy on the Oshi-Zumo game, to verify the effectiveness of the algorithm in different game scale scenarios. The convergence and superiority of the algorithm compared to other methods were verified through comparative experiments.

Keywords: two-player zero-sum Markov game ; reinforcement learning ; policy optimization ; extragradient ; Nash equilibrium ; neural network

PDF (1535KB) 元数据 多维度评价 相关文章 导出 EndNote| Ris| Bibtex  收藏本文

本文引用格式

王卓, 李永强, 冯宇, 冯远静. 两方零和马尔科夫博弈策略梯度算法及收敛性分析. 浙江大学学报(工学版)[J], 2024, 58(3): 480-491 doi:10.3785/j.issn.1008-973X.2024.03.005

WANG Zhuo, LI Yongqiang, FENG Yu, FENG Yuanjing. Policy gradient algorithm and its convergence analysis for two-player zero-sum Markov games. Journal of Zhejiang University(Engineering Science)[J], 2024, 58(3): 480-491 doi:10.3785/j.issn.1008-973X.2024.03.005

两方零和博弈(two-player zero-sum game)是博弈论中最基本的, 同时也是最常见的博弈模型之一. 其特点是一个玩家获得的收益必然等于另一个玩家所失去的收益, 即参与博弈的2个玩家的收益之和为零. 此类博弈问题近年来引起了经济、交通、军事等各个领域的高度重视, 其中一些应用效果取得了里程碑式的突破, 如针对完全信息围棋博弈的AlphaGo[1], 非完全信息回合制扑克博弈的Pluribus[2].

纳什均衡 (Nash equilibrium) [3] 是博弈论中的一个重要概念. 在均衡状态下, 任何玩家都不能仅通过更改自己的策略来获得更多的收益[4]. 现有研究中, 通常根据博弈特征与信息完备性的差异将两方零和博弈分为扩展式博弈(extensive-form game)和马尔科夫博弈(Markov game). 马尔科夫博弈(Markov games)被视为马尔科夫决策过程(Markov decision process, MDP)在博弈场景中的推广, 适用于描述完全信息、同时移动博弈. 其特点为在博弈过程中, 下一步的状态只依赖于当前状态, 而不依赖于之前的状态. 从原理上, 多智能体博弈强化学习方法可以分为2类: 基于值函数方法和基于策略方法. 对于两方零和马尔科夫博弈, 基于值函数方法旨在找到最优值函数, 并由其获取相应的平稳纳什均衡策略. 在状态转移概率未知的情况下, Littman[5]通过历史数据近似估计Bellman算子, 提出Minimax-Q学习, 将单智能体强化学习的Q学习算法[6]扩展到两方零和马尔科夫博弈. 对于大规模问题, 为了解决维度灾难, Fan等[7-9]将函数逼近思想引入Minimax-Q, 利用函数逼近对值函数进行近似, 但基于值函数的方法收敛速度较慢. 神经网络作为强大的非线性函数逼近器, 具有自动学习特征的能力, 使用神经网络对值函数和策略进行近似可以从原始数据中学习到适合问题的特征表示, 从而有效地解决大规模问题中维度灾难的问题.

基于策略的策略梯度方法在MDP中具有最先进的性能[10-11]. 在策略参数化的设定下, 寻找零和马尔科夫博弈的纳什均衡解通常表述为非凸非凹的极大极小优化问题[12-13]. Daskalakis等[14]探讨在多智能体竞争性环境中, 如何使用独立策略梯度方法(independent policy gradient, IPG)来训练多个智能体的策略, 以实现博弈最优解的学习. Nouiehed等[15]提出的嵌套梯度下降方法(nested gradient descent method)通过交替地对每个玩家的策略进行梯度下降来逐步逼近博弈的纳什均衡点, 与IPG(该方法中每个智能体的策略被看作是独立的)相类似, 两者本质都是单智能体强化学习方法. 在纳什均衡的基础上, Fiez等[16]提出双时间尺度算法(two-timescale algorithm), 其中追随者使用梯度博弈更新规则, 而不是精确的最佳响应策略, 该算法已被证明收敛于Stackelberg均衡. 然而, 该均衡只对应于零和博弈的单边均衡解, 并且无法分析同时移动博弈的收敛性. Perolat等[17]针对同时移动博弈, 将演员-评论家网络(Actor-Critic network)与虚拟博弈相结合, 提出基于样本平均策略的算法并解决了虚拟博弈算法中的收敛问题. 然而,在每轮迭代时都须求解一方的最佳响应策略, 因此对计算资源的消耗也是巨大的.

针对上述方法的不足, 本研究基于额外梯度法[18]提出双方玩家同时进行策略梯度更新的两方零和马尔科夫博弈策略优化算法. 1)基于参数化策略, 提出马尔科夫博弈策略梯度定理, 并进行了严格证明. 2)将回报作为状态动作价值函数的无偏估计, 基于额外梯度法提出马尔科夫博弈的策略梯度算法, 并证明该算法可以收敛到近似纳什均衡. 3)针对大规模的Oshi-Zumo游戏, 采用神经网络作为参数化策略, 验证了算法的有效性.

1. 两方零和马尔科夫博弈

1.1. 问题描述

两方零和马尔科夫博弈问题可以用一个五元组来描述[19], 定义如下:

$ \left( {O,U,W,p(s' ,r|s,a,b),\gamma } \right). $

式中:$O$表示状态空间;$U$表示玩家1的动作空间;$W$表示玩家2的动作空间; $p(s' ,r|s,a,b):O \times U \times W \to \varDelta (O \times {\bf{R}})$表示在任意联合动作$(a,b) \in U \times W$下, 从任意状态$s \in O$转移到状态$s' \in O$, 且玩家1获得奖励$r \in {\bf{R}}$, 玩家2获得奖励$ - r$的概率; γ为折扣因子, $\gamma \in (0,1.0]$. 玩家1、2的动作分别通过随机策略$ \pi(a \mid s): O \rightarrow \varDelta(U) $$\mu (b|s):O \to \varDelta (W)$来选择. 每个时刻t, 玩家1、2根据当前环境的状态St分别同时选择动作AtBt${S_t} \in O$, ${A_t} \sim \pi ( \cdot |{S_t})$, ${B_t} \sim \mu ( \cdot |{S_t})$; 联合动作送入环境中执行, 环境按照概率分布$p$进行状态转移并给出奖励, 即${S_{t+1}}, {R_t} \sim p( \cdot , \cdot |{S_t},{A_t},{B_t})$, 玩家1的奖励为${R_t}$, 玩家2的奖励为$ - {R_t}$. 回报, 即长期累积奖励, 定义为

$ {G_t} = \sum\nolimits_{k = t}^{{{T}}-1} {{\gamma ^{k - t}}{R_k}} . $

式中:T为终止时刻.

给定联合策略$(\pi ,\mu )$, 状态价值函数$ {V_{\pi ,\mu }}(s): O \to {\bf{R}} $和状态动作价值函数$ {Q_{\pi ,\mu }}(s,a,b):O \times U \times W\to {\bf{R}} $都定义为期望回报, 即

$ {V_{\pi ,\mu }}(s) = {E_{{A_k} \sim \pi ,{B_k} \sim \mu ,\left( {{S_{k+1}},{R_k}} \right) \sim p,k = t,t+1, \cdots }}\left[ {{G_t}|{S_t} = s} \right], $

$ \begin{split} {Q_{\pi ,\mu }}(s,a,b) =& {E_{{A_{k+1}} \sim \pi ,{B_{k+1}} \sim \mu ,\left( {{S_{k+1}},{R_k}} \right) \sim p,k = t,t+1, \cdots }} \\ &\left[ {{G_t}|{S_t} = s,{A_t} = a,{B_t} = b} \right]. \end{split} $

在上述设定下, 玩家1的目标是最大化期望回报, 而玩家2的目标是最小化期望回报. 在马尔科夫博弈中,每个玩家的回报不仅仅与自己的策略有关, 还取决于其他玩家的策略, 因此马尔科夫博弈最优策略的定义与MDP最优策略的定义有本质差异. 马尔科夫博弈的最优策略通常用纳什均衡来描述,最佳响应策略[20]和纳什均衡策略[21]的定义如下.

定义1 两方零和博弈最佳响应策略. 给定玩家2策略$\mu $, 如果玩家1的策略没有比${\pi ^b}$更好的, 那么称${\pi ^b}$为最佳响应策略, 即

$ {V}_{{\pi }^{b},\mu }(s)\geqslant {V}_{\pi ,\mu }(s),\;\;\forall \pi ,s\in O. $

相反地, 给定玩家1的策略$\pi $, 玩家2的最佳响应策略${\mu ^b}$满足

$ {V}_{\pi ,{\mu }^{b}}(s)\leqslant{V}_{\pi ,\mu }(s),\;\;\forall \mu ,s\in O. $

定义2 两方零和博弈纳什均衡策略. 如果2个玩家的策略${\pi ^*}$${\mu ^*}$都是对方的最佳响应策略, 则$\left( {{\pi ^*},{\mu ^*}} \right)$为纳什均衡联合策略, 即

$ {V}_{\pi ,{\mu }^{*}}(s)\leqslant{V}_{{\pi }^{*},{\mu }^{*}}(s)\leqslant{V}_{{\pi }^{*},\mu }(s),\;\;\forall \left(\pi ,\mu \right),s\in O. $

博弈双方处于纳什均衡中,意味着任何玩家都不能仅通过更改自己的策略来获得更多的奖励, 因此纳什均衡可以被视为“对最佳反应的最佳反应”. 对于整个博弈过程来说, 纳什均衡联合策略即为两方零和马尔科夫博弈的最优策略. 在两方零和博弈中, 始终存在着纳什均衡解, 其等价于一个最大最小问题的优化解[22], 即

$ {V^ * }(s) = {V_{{\pi ^ * },{\mu ^ * }}}(s) = \mathop {\max }\limits_\pi \mathop {\min }\limits_\mu \;{V_{\pi ,\mu }}(s) = \mathop {\min }\limits_\mu \mathop {\max }\limits_\pi \;{V_{\pi ,\mu }}(s). $

因此, 将纳什均衡的求解过程转化为上述最大最小问题的优化过程.

1.2. 贝尔曼方程

为了描述不同时刻以及不同价值函数之间的关系, 为后续证明提供理论依据, 提出以下引理.

引理1 对于两方零和博弈, 给定联合策略$(\pi ,\mu )$, 当前时刻状态价值函数与当前时刻状态动作价值函数之间关系的贝尔曼方程为

$ {V_{\pi ,\mu }}(s){\text{ = }}\sum\limits_{\left( {a,b} \right) \in U \times W} {\pi (a|s)\mu (b|s){Q_{\pi ,\mu }}(s,a,b)} . $

当前时刻状态动作价值函数与下一时刻状态价值函数之间关系的贝尔曼方程为

$ {Q_{\pi ,\mu }}(s,a,b) = \sum\limits_{s',r} {p(s' ,r|s,a,b)} \times \left( {r+\gamma {V_{\pi ,\mu }}(s')} \right). $

证明: 将式(3)所示的状态价值函数的定义展开, 结合式(4)可以得到

$ \begin{split} {V_{\pi ,\mu }}(s) = & {E_{{A_k} \sim \pi ,{B_k} \sim \mu ,\left( {{S_{k+1}},{R_k}} \right) \sim p,k = t,t+1, \cdots }}\left[ {{G_t}|{S_t} = s} \right] = \\ &{E_{{A_t} \sim \pi ,{B_t} \sim \mu }} \cdot \\& \left[ {{E_{{A_{k+1}} \sim \pi ,{B_{k+1}} \sim \mu ,\left( {{S_{k+1}},{R_k}} \right) \sim p,k = t,t+1, \cdots }}\left[ {{G_t}|{S_t} = s,{A_t},{B_t}} \right]} \right] = \\ &{E_{{A_t} \sim \pi ,{B_t} \sim \mu }}\left[ {{Q_{\pi ,\mu }}(s,{A_t},{B_t})} \right] = \\ &\displaystyle\sum_{\left( {a,b} \right) \in U \times W} {\pi (a|s)\mu (b|s){Q_{\pi ,\mu }}(s,a,b)} .\\[-5pt]\end{split} $

将回报$ {R _t} $的定义(式(2))代入式(4), 展开可得

$\begin{split} &{Q_{\pi ,\mu }}(s,a,b) =\\&\quad{E_{{A_{k+1}} \sim \pi ,{B_{k+1}} \sim \mu ,\left( {{S_{ k+1}},{R_k}} \right) \sim p,k = t,t+1, \cdots }} \left[ {{G_t}|{S_t} = s,{A_t} = a,{B_t} = b} \right] = \\ &\quad {E_{{A_{k+1}} \sim \pi ,{B_{k+1}} \sim \mu ,\left( {{S_{k+1}},{R_k}} \right) \sim p,k = t,t+1, \cdots }} \\&\quad\left[ {[{R_t}+\gamma ({G_{t+1}}|{S_{t+1}})]|{S_t} = s,{A_t} = a,{B_t} = b} \right] = \\ &\quad {E_{\left( {{S_{t+1}},{R_t}} \right) \sim p}}[{E_{{A_{k+1}} \sim \pi ,{B_{k+1}} \sim \mu ,\left( {{S_{k+2}},{R_{k+1}}} \right) \sim p,k = t,t+1, \cdots }} \\&\quad[{R_t}+\gamma ({G_{t+1}}|{S_{t+1}})]|{S_t} = s,{A_t} = a,{B_t} = b]. \\[-3pt]\end{split}$

对式(12)中的第2项求期望就等于下一时刻的状态价值函数:

$ \begin{split} &{Q_{\pi ,\mu }}(s,a,b)= \\&\quad {E_{\left( {{S_{t+1}},{R_t}} \right) \sim p}}\left[\left[{R_t}+\gamma {V_{\pi ,\mu }}({S_{t+1}})\right]|{S_t} = s,{A_t} = a,\right.\\&\quad {B_t} = b\big]= \displaystyle\sum_{s',r} {p(s' ,r|s,a,b)} \times \left( {r+\gamma {V_{\pi ,\mu }}(s')} \right). \end{split} $

2. 马尔科夫博弈的策略梯度

为了实现纳什均衡策略的求解, 考虑参数化的策略$ {\pi _{{\theta}} }(a|s) $${\mu _{{\phi}} }(b|s)$, 其中${{\theta}} $${{\phi}} $为可调参数, 玩家的目标是最大化自己的期望回报, 因此考虑指标函数

$ J({{\theta}} ,{{\phi}} ) = {V_{{\rho _0}}}({\pi _{{\theta}} },{\mu _{{\phi}} }) = \sum\limits_s {{\rho _0}(s)} {V_{{\pi _{{\theta}} },{\mu _{{\phi}} }}}(s). $

式中:${\rho _0}$为初始状态的概率分布. 那么, 博弈问题(式(1))可以转化为如下最大最小问题:

$ \mathop {\max }\limits_{{\theta}} \mathop {\min }\limits_{{\phi}}\; J({{\theta}} ,{{\phi}} ). $

为了利用梯度法求解式(15), 须得到策略梯度, 即$J({{\theta}} ,{{\phi}} )$分别关于参数${{\theta}} $${{\phi}} $的梯度. 将MDP的策略梯度扩展到两方零和马尔科夫博弈问题(式(1)),定理如下.

定理1 对于两方零和马尔科夫博弈问题(式(1))和参数化的联合随机策略$({\pi _{{\theta}} },{\mu _{{\phi}} })$, 式(14)定义的指标函数$ J({{\theta}} ,{{\phi}} ) $分别关于参数${{\theta}} $${{\phi}} $的梯度为

$ \left.\begin{gathered} {\nabla _{{\theta}} }J = {E_{S \sim {\rho _{{\pi _{{\theta}} },{\mu _{{\phi}} }}},A \sim {\pi _{{\theta}} },B \sim {\mu _{{\phi}} }}}\left[ {\frac{{{\nabla _{{\theta}} }{\pi _{{\theta}} }(A|S)}}{{{\pi _{{\theta}} }(A|S)}}{Q_{{\pi _{{\theta}} },{\mu _{{\phi}} }}}(S,A,B)} \right], \\ {\nabla _{{\phi}} }J = {E_{S \sim {\rho _{{\pi _{{\theta}} },{\mu _{{\phi}} }}},A \sim {\pi _{{\theta}} },B \sim {\mu _{{\phi}} }}}\left[ {\frac{{{\nabla _{{\phi}} }{\mu _{{\phi}} }(B|S)}}{{{\mu _{{\phi}} }(B|S)}}{Q_{{\pi _{{\theta}} },{\mu _{{\phi}} }}}(S,A,B)} \right]. \\ \end{gathered}\right\} $

式中: ${\rho _{{\pi _{{\theta}} },{\mu _{{\phi}} }}}:O \to \varDelta (O)$为联合策略$ ({\pi _{{\theta}} },{\mu _{{\phi}} }) $下状态的稳态分布概率.

证明: 首先考虑玩家1的策略参数${{\theta}} $, 对式(9)两边求导得到

$ {\nabla _{{\theta}} }{V_{{\pi _{{\theta}} },{\mu _{{\phi}} }}}(s){\text{ = }}\sum\limits_{a,b} {{\nabla _{{\theta}} }\left[ {{\pi _{{\theta}} }(a|s){\mu _{{\phi}} }(b|s){Q_{{\pi _{{\theta}} },{\mu _{{\phi}} }}}(s,a,b)} \right]} , $

$ \begin{split} {\nabla _{{\theta}} }&V_{{{\pi} _{{\theta}} } ,{\mu _{{\phi}} }}(s) =\sum\limits_{a,b} {[{\nabla _{{\theta}} }{\pi _{{\theta}} }(a|s){\mu _{{\phi}} }(b|s){Q_{{\pi _{{\theta}} },{\mu _{{\phi}} }}}(s,a,b)} + \\&{\pi _{{\theta}} }(a|s){\mu _{{\phi}} }(b|s){\nabla _{{\theta}} }{Q_{{\pi _{{\theta}} },{\mu _{{\phi}} }}}(s,a,b)]. \end{split} $

结合式(10), 式(18)中的第2项,可以得到

$\begin{split} {\pi _{{\theta}} }&(a|s){\mu _{{\phi}} }(b|s){\nabla _{{\theta}} }{Q_{{\pi _{{\theta}} },{\mu _{{\phi}} }}}(s,a,b) = \\& {\pi _{{\theta}} }(a|s){\mu _{{\phi}} }(b|s){\nabla _{{\theta}} }\sum\limits_{s',r} {p(s' ,r|s,a,b)} \times \left( {r+\gamma {V_{{\pi _{{\theta}} },{\mu _{{\phi}} }}}(s')} \right) = \\& \gamma {\pi _{{\theta}} }(a|s){\mu _{{\phi}} }(b|s)\sum_{s'} {p(s' |s,a,b)} \times {\nabla _{{\theta}} }{V_{{\pi _{{\theta}} },{\mu _{{\phi}} }}}(s').\\[-10pt]\end{split} $

对于式(19)中$ {\nabla _{{\theta}} }{V_{{\pi _{{\theta}} },{\mu _{{\phi}} }}}(s') $, 按照式(18)、(19)计算方式向下一时刻展开,可以得到

$ \begin{split} {\nabla _{{\theta}} }&{V_{{\pi _{{\theta}} },{\mu _{{\phi}} }}}(s){\text{ = }}\sum\limits_{a,b} {{\nabla _{{\theta}} }{\pi _{{\theta}} }(a|s){\mu _{{\phi}} }(b|s){Q_{{\pi _{{\theta}} },{\mu _{{\phi}} }}}(s,a,b){\text+}} \\ &\gamma \sum\limits_{a,b} {{\pi _{{\theta}} }(a|s){\mu _{{\phi}} }(b|s)\sum\limits_{s'} {p(s' |s,a,b)} } \times \\ &\sum\limits_{a',b'} {{\nabla _{{\theta}} }{\pi _{{\theta}} }(a'|s'){\mu _{{\phi}} }(b'|s'){Q_{{\pi _{{\theta}} },{\mu _{{\phi}} }}}(s',a',b'){\text+}} \\& {\gamma ^2}\sum\limits_{a,b} {{\pi _{{\theta}} }(a|s){\mu _{{\phi}} }(b|s)\sum\limits_{s'} {p(s' |s,a,b)} } \times \\& \sum\limits_{a',b'} {{\pi _{{\theta}} }(a'|s'){\mu _{{\phi}} }(b'|s')} \sum\limits_{s''} {p(s''|s',a',b')} {\nabla _{{\theta}} }{V_{{\pi _{{\theta}} },{\mu _{{\phi}} }}}(s''). \\\end{split}$

$ p\left( {s \to x,t,{\pi _{{\theta}} },{\mu _{{\phi}} }} \right) $定义为在联合策略$ ({\pi _{{\theta}} },{\mu _{{\phi}} }) $下经过t步由状态s转移到状态$x \in O$的概率分布. 状态s转移0步仍然为状态s, 因此其转移概率为1.0, 则式(20)中的第1、2项可以分别改写为

$ \begin{split} \sum\limits_{a,b} &{{\nabla _{{\theta}} }{\pi _{{\theta}} }(a|s){\mu _{{\phi}} }(b|s){Q_{{\pi _{{\theta}} },{\mu _{{\phi}} }}}(s,a,b)}= \\ &\sum\limits_x {{\gamma ^0}} p\left( {s \to x,0,{\pi _{{\theta}} },{\mu _{{\phi}} }} \right) \times \\ &\sum\limits_{a,b} {{\nabla _{{\theta}} }{\pi _{{\theta}} }(a|s){\mu _{{\phi}} }(b|s){Q_{{\pi _{{\theta}} },{\mu _{{\phi}} }}}(s,a,b)}, \end{split} $

$ \begin{split} \gamma \sum\limits_{a,b} &{{\pi _{{\theta}} }(a|s){\mu _{{\phi}} }(b|s)\sum\limits_{s'} {p(s' |s,a,b)} } \times \\&\sum\limits_{a',b'} {{\nabla _{{\theta}} }{\pi _{{\theta}} }(a'|s'){\mu _{{\phi}} }(b'|s'){Q_{{\pi _{{\theta}} },{\mu _{{\phi}} }}}(s',a',b')} = \\ & \sum\limits_{s'} \gamma \sum\limits_{a,b} {{\pi _{{\theta}} }(a|s){\mu _{{\phi}} }(b|s)} p(s' |s,a,b) \times \\&\sum\limits_{a',b'} {{\nabla _{{\theta}} }{\pi _{{\theta}} }(a'|s'){\mu _{{\phi}} }(b'|s'){Q_{{\pi _{{\theta}} },{\mu _{{\phi}} }}}(s',a',b')}= \\&\sum\limits_{s'} \gamma p\left( {s \to s',1,{\pi _{{\theta}} },{\mu _{{\phi}} }} \right) \times \\ &\sum\limits_{a',b'} {{\nabla _{{\theta}} }{\pi _{{\theta}} }(a'|s'){\mu _{{\phi}} }(b'|s'){Q_{{\pi _{{\theta}} },{\mu _{{\phi}} }}}(s',a',b')} = \\ & \sum\limits_x \gamma p\left( {s \to x,1,{\pi _{{\theta}} },{\mu _{{\phi}} }} \right) \times \\ &\sum\limits_{a',b'} {{\nabla _{{\theta}} }\left[{\pi _{{\theta}} }(a'|x){\mu _{{\phi}} }(b'|x){Q_{{\pi _{{\theta}} },{\mu _{{\phi}} }}}(x,a',b')\right]} .\end{split} $

式(20)结尾处的$ {\nabla _{{\theta}} }{V_{{\pi _{{\theta}} },{\mu _{{\phi}} }}}(s'') $可以一直向下一时刻展开, 因此当其向下一时刻展开直到终止状态时, 式(20)可以化简为

$ \begin{split} {\nabla _{{\theta}} }{V_{{\pi _{{\theta}} },{\mu _{{\phi}} }}}(s) =& \sum\limits_x {\sum\limits_{t = 0}^T {{\gamma ^t}p\left( {s \to x,t,{\pi _{{\theta}} },{\mu _{{\phi}} }} \right)} } \times \\&\sum\limits_{a,b} {{\nabla _{{\theta}} }{\pi _{{\theta}} }(a|x){\mu _{{\phi}} }(b|x){Q_{{\pi _{{\theta}} },{\mu _{{\phi}} }}}(x,a,b)} . \end{split} $

通过上述推导, 可以计算式(14)中指标函数的梯度:

$ \begin{split} {\nabla _{{\theta}} }J({{\theta}} ,{{\phi}} ) =& \displaystyle\sum_{{s_0}} {{\rho _0}({s_0})} {\nabla _{{\theta}} }{V_{{\pi _{{\theta}} },{\mu _{{\phi}} }}}({s_0}) = \\ &\displaystyle\sum_s {\displaystyle\sum_{{s_0}} {{\rho _0}({s_0})\sum\nolimits_t {{\gamma ^t}} p\left( {{s_0} \to s,t,{\pi _{{\theta}} },{\mu _{{\phi}} }} \right)} }\times \\& \displaystyle\sum_{a,b} {{\nabla _{{\theta}} }{\pi _{{\theta}} }(a|s){\mu _{{\phi}} }(b|s){Q_{{\pi _{{\theta}} },{\mu _{{\phi}} }}}(s,a,b)} . \\[-5pt]\end{split} $

式中: $ \sum\nolimits_{{s_0}} {{\rho _0}({s_0})\sum\nolimits_t {{\gamma ^t}} p\left( {{s_0} \to s,t,{\pi _{{\theta}} },{\mu _{{\phi}} }} \right)} $表示联合策略$ ({\pi _{{\theta}} },{\mu _{{\phi}} }) $下状态s的稳态分布概率, 即${\rho _{{\pi _{{\theta}} },{\mu _{{\phi}} }}}\left( s \right)$.

$ \begin{split} &{\nabla _{{\theta}} }J({{\theta}} ,{{\phi}} ) = \sum\limits_s {{\rho _{{\pi _{{\theta}} },{\mu _{{\phi}} }}}\left( s \right)\sum\limits_{a,b} {{\pi _{{\theta}} }(a|s){\mu _{{\phi}} }(b|s)} } \times \\ &\qquad\frac{{{\nabla _{{\theta}} }{\pi _{{\theta}} }(a|s)}}{{{\pi _{{\theta}} }(a|s)}}{Q_{{\pi _{{\theta}} },{\mu _{{\phi}} }}}(s,a,b) = \\&\qquad {E_{S \sim {\rho _{{\pi _{{\theta}} },{\mu _{{\phi}} }}},A \sim {\pi _{{\theta}} },B \sim {\mu _{{\phi}} }}} \left[ {\frac{{{\nabla _{{\theta}} }{\pi _{{\theta}} }(A|S )}}{{{\pi _{{\theta}} }(A|S )}}{Q_{{\pi _{{\theta}} },{\mu _{{\phi}} }}} (S,A,B)} \right] .\;\end{split} $

$ {\nabla _{{\phi}} }J({{\theta}} ,{{\phi}} ) $的证明同理, 定理1证毕.

由定理1可以得到两方零和马尔科夫博弈中2个玩家策略梯度, 从而可以利用梯度方法求解该最大最小优化问题(式(15)). 由状态动作价值函数的定义(式(4)), 可知回报$ {G_t} $$ {Q_{{\pi _{{\theta}} },{\mu _{{\phi}} }}}({S_t},{A_t},{B_t}) $的无偏估计, 因此给出如下推论.

推论1 对于两方零和马尔科夫博弈问题(式(1))和参数化的联合随机策略$({\pi _{{\theta}} },{\mu _{{\phi}} })$, 式(14)定义的指标函数$ J({{\theta}} ,{{\phi}} ) $关于参数${{\theta}} $${{\phi}} $的梯度分别为

$ \left.\begin{split} {\nabla _{{\theta}} }J =& {E_{{S_t} \sim {\rho _{{\pi _{{\theta}} },{\mu _{{\phi}} }}},{A_k} \sim {\pi _{{\theta}} },{B_k} \sim {\mu _{{\phi}} },({S_{k+1}},{R_k}) \sim p,k = t, \cdots ,T}}\left[ {\frac{{{\nabla _{{\theta}} }{\pi _{{\theta}} }({A_t}|{S_t})}}{{{\pi _{{\theta}} }({A_t}|{S_t})}}{G_t}} \right], \\ {\nabla _{{\phi}} }J =& {E_{{S_t} \sim {\rho _{{\pi _{{\theta}} },{\mu _{{\phi}} }}},{A_k} \sim {\pi _{{\theta}} },{B_k} \sim {\mu _{{\phi}} },({S_{k+1}},{R_k}) \sim p,k = t, \cdots ,T}}\left[ {\frac{{{\nabla _{{\phi}} }{\mu _{{\phi}} }({B_t}|{S_t})}}{{{\mu _{{\phi}} }({B_t}|{S_t})}}{G_t}} \right]. \end{split}\right\} $

证明: 以玩家 1的梯度项为例,由式(4)、(16) 可知:

$ \begin{split} {\nabla _{{\theta}} }J =& {E_{{S_t} \sim {\rho _{{\pi _{{\theta}} },{\mu _{{\phi}} }}},{A_t} \sim {\pi _{{\theta}} },{B_t} \sim {\mu _{{\phi}} }}}\left[ {\frac{{{\nabla _{{\theta}} }{\pi _{{\theta}} }({A_t}|{S_t})}}{{{\pi _{{\theta}} }({A_t}|{S_t})}}{Q_{{\pi _{{\theta}} },{\mu _{{\phi}} }}}({S_t},{A_t},{B_t})} \right] = \\ & {E_{{S_t} \sim {\rho _{{\pi _{{\theta}} },{\mu _{{\phi}} }}},{A_t} \sim {\pi _{{\theta}} },{B_t} \sim {\mu _{{\phi}} }}}\left[\frac{{{\nabla _{{\theta}} }{\pi _{{\theta}} }({A_t}|{S_t})}}{{{\pi _{{\theta}} }({A_t}|{S_t})}} \times \right. \\ &{E_{{A_{k+1}} \sim {\pi _{{\theta}} },{B_{k+1}} \sim {\mu _{{\phi}} },\left( {{S_{k+1}},{R_k}} \right) \sim p,k = t,t+1, \cdots }}\left[ {{G_t}|{S_t} = s,{A_t} = a,{B_t} = b} \right]\Big]= \\ & {E_{{S_t} \sim {\rho _{{\pi _{{\theta}} },{\mu _{{\phi}} }}},{A_k} \sim {\pi _{{\theta}} },{B_k} \sim {\mu _{{\phi}} },({S_{k+1}},{R_k}) \sim p,k = t, \cdots ,T}}\left[ {\frac{{{\nabla _{{\theta}} }{\pi _{{\theta}} }({A_t}|{S_t})}}{{{\pi _{{\theta}} }({A_t}|{S_t})}}{G_t}} \right]. \end{split} $

玩家2梯度项的证明同理, 推论1证毕.

3. 马尔科夫博弈策略梯度算法及收敛性

3.1. 求解最大最小优化问题的梯度方法

考虑凸凹函数$ J({{\theta}} ,{{\phi}} ) = {{\theta}} {{\phi}} $, 其中$ {{\theta}} ,{{\phi}} \in {{\bf{R}}} $, 显然$ {\nabla _{{\theta}} }J({{\theta}} ,{{\phi}} ) = {{\phi}} $, $ {\nabla _{{\phi}} }J({{\theta}} ,{{\phi}} ) = {{\theta}} $, 且$\left( {0,0} \right)$为该优化问题的最优解. 若使用基于梯度的方法求解式(15), 最简单的方法为同时梯度上升下降法(simultaneous gradient ascent-descent), 即

$ \left[ {{{{\theta}} _{k+1}};{{{\phi}} _{k+1}}} \right] = \left[ {{{{\theta}} _k};{{{\phi}} _k}} \right]+\eta \left[ {{{{\phi}} _k}; - {{{\theta}} _k}} \right]. $

式中:$[ \cdot {\text{ }};{\text{ }} \cdot ]$表示列向拼接,η为学习率. 由式(28)以及递归思想, 可以计算$\left[ {{{{\theta}} _{k+1}};{{{\phi}} _{k+1}}} \right] $二范数的平方:

$ \begin{split} &{\left\| {\left[ {{{{\theta}} _{k+1}};{{{\phi}} _{k+1}}} \right]} \right\|^2} = {{\theta}} _{k+1}^2+{{\phi}} _{k+1}^2 = {\left( {{{{\theta}} _k}+\eta {{{\phi}} _k}} \right)^2}+{\left( {{{{\phi}} _k} - \eta {{{\theta}} _k}} \right)^2} =\\& \qquad\left( {1+{\eta ^2}} \right){\left\| {\left[ {{{{\theta}} _k};{{{\phi}} _k}} \right]} \right\|^2} = {\left( {1+{\eta ^2}} \right)^{k+1}}{\left\| {\left[ {{{{\theta}} _0};{{{\phi}} _0}} \right]} \right\|^2}. \\[-3pt]\end{split} $

该问题中${\left\| {\left[ {{{{\theta}} _{k+1}};{{{\phi}} _{k+1}}} \right]} \right\|^2}$即为更新点$\left( {{{{\theta}} _{k+1}},{{{\phi}} _{k+1}}} \right)$到最优点$\left( {0,0} \right)$距离的平方, 增大$\eta $意味更新时不断增加范数, 最终趋于无穷大. 由式(29)可以看出, 无论$\eta $取何值, ${\left\| {\left[ {{{{\theta}} _{k+1}};{{{\phi}} _{k+1}}} \right]} \right\|^2} > {\left\| {\left[ {{{{\theta}} _0};{{{\phi}} _0}} \right]} \right\|^2}$恒成立, 即使用梯度上升下降法无论迭代多少次都得不到最优解, 从图1 (a)也可以看出该方法是发散的.

图 1

图 1   不同更新规则的探索轨迹

Fig.1   Exploration trajectories for different update rules


第2种基于梯度的方法为交替梯度上升下降(alternating gradient ascent-descent), 参数$ {{\theta}} 、{\phi}$的更新是按顺序进行的, 即${{{\theta}} _{k+1}} = {{{\theta}} _k}+\eta {{{\phi}} _k}$, ${{{\phi}} _{k+1}} = {{{\phi}} _k} - \eta {{{\theta}} _{k+1}}$, 其中第2个更新式的参数${{{\phi}} _{k+1}}$在计算梯度时使用了其他参数(${{{\theta}} _{k+1}}$)的更新. 该更新过程呈平稳性, 不收敛于$\left( {0,0} \right)$并陷入极限环[18], 如图1(b)所示.

第3种改进的方法为近端点法(proximal point method), 更新形式为${{{\theta}} _{k+1}} = {{{\theta}} _k}+\eta {{{\phi}} _{k+1}}$, ${{{\phi}} _{k+1}} = {{{\phi}} _k} - \eta {{{\theta}} _{k+1}}$. 该方法可收敛于该问题最优解, 如 图1(c)所示. 下面给出简单证明.

$令{{{\theta}} _{k+1}} = {{{\theta}} _k} + \eta \left( {{{{\phi}} _k} - \eta {{{\theta}} _{k+1}}} \right),{{{\phi}} _{k+1}} = {{{\phi}} _k} - \eta \left( {{{{\theta}} _k}+}\right. \left.{\eta {{{\phi}} _{k+1}}} \right),$则有 $\left( {1+{\eta ^2}} \right){{{\theta}} _{k+1}} = {{{\theta}} _k} + \eta {{{\phi}} _k},\;\left( {1+{\eta ^2}} \right){{{\phi}} _{k+1}} = {{{\phi}} _k} - \eta {{{\theta}} _k}$, 因此

$\begin{split} & {\left\| {\left[ {{{{\theta}} _{k+1}};{{{\phi}} _{k+1}}} \right]} \right\|^2} = {{\theta}} _{k+1}^2+{{\phi}} _{k+1}^2 =\\ & {\left( {\frac{{{{{\theta}} _k} + \eta {{{\phi}} _k}}}{{1 + {\eta ^2}}}} \right)^2} + {\left( {\frac{{{{{\phi}} _k} - \eta {{{\theta}} _k}}}{{1 + {\eta ^2}}}} \right)^2} = \frac{{{{\left\| {\left[ {{{{\theta}} _k};{{{\phi}} _k}} \right]} \right\|}^2}}}{{\left( {1 + {\eta ^2}} \right)}} = \frac{{{{\left\| {\left[ {{{{\theta}} _0};{{{\phi}} _0}} \right]} \right\|}^2}}}{{{{\left( {1 + {\eta ^2}} \right)}^{k+1}}}}.\;\;\;\;\end{split} $

显然式中${1 \mathord{\left/ {\vphantom {1 {{{\left( {1+{\eta ^2}} \right)}^{k+1}}}}} \right. } {{{\left( {1+{\eta ^2}} \right)}^{k+1}}}} < 1$恒成立, 因此随着迭代过程的不断进行, 范数不断减小, 最终趋于最优解$\left( {0,0} \right)$. 但是在实际应用中, ${{{\theta}} _{k+1}} = {{{\theta}} _k}+\eta {{{\phi}} _{k+1}}$中的${{{\phi}} _{k+1}}$是无法计算的, 因此考虑基于该方法改进的额外梯度法(extragradient).

使用额外梯度法解决该优化问题, 相较于同时梯度上升下降、交替梯度上升下降具备良好的收敛性, 相较于近端点法具有良好的收敛速度, 如图1(d)所示. 额外梯度法的核心思想在于通过一个简单的梯度更新步骤逼近$ \left[ {{{\boldsymbol{\theta}} _{k+1}};{{\boldsymbol{\phi}} _{k+1}}} \right] $, 即

$ \left.\begin{split} &\left[ {\begin{array}{*{20}{c}} {{{\bar {\boldsymbol{\theta}} }_k}} \\ {{{\bar {\boldsymbol{\phi}} }_k}} \end{array}} \right] = \left[ {\begin{array}{*{20}{c}} {{{\boldsymbol{\theta}} _k}} \\ {{{\boldsymbol{\phi}} _k}} \end{array}} \right]+\eta \left[ {\begin{array}{*{20}{c}} {{\nabla _{\boldsymbol{\theta}} }J({{\boldsymbol{\theta}} _k},{{\boldsymbol{\phi}} _k})} \\ { - {\nabla _{\boldsymbol{\phi}} }J({{\boldsymbol{\theta}} _k},{{\boldsymbol{\phi}} _k})} \end{array}} \right], \\ &\left[ {\begin{array}{*{20}{c}} {{{\boldsymbol{\theta}} _{k+1}}} \\ {{{\boldsymbol{\phi}} _{k+1}}} \end{array}} \right] = \left[ {\begin{array}{*{20}{c}} {{{\boldsymbol{\theta}} _k}} \\ {{{\boldsymbol{\phi}} _k}} \end{array}} \right]+\eta \left[ {\begin{array}{*{20}{c}} {{\nabla _{\boldsymbol{\theta}} }J({{\bar {\boldsymbol{\theta}} }_k},{{\bar {\boldsymbol{\phi}} }_k})} \\ { - {\nabla _{\boldsymbol{\phi}} }J({{\bar {\boldsymbol{\theta}} }_k},{{\bar {\boldsymbol{\phi}} }_k})} \end{array}} \right]. \end{split}\right\} $

相比梯度上升下降法, 每次迭代, 额外梯度法增加一步外推(extrapolation)点的计算, 使用外推点的梯度完成当前点的更新. 额外梯度法通过外推点的计算加大探索, 使得更新迭代时更容易找到逼近最优解的正确方向, 具备良好的收敛性.

3.2. 马尔科夫博弈策略梯度算法

基于额外梯度法提出适用于马尔科夫博弈的策略梯度算法. 该算法使用的策略梯度$ \left[ {{\nabla _{{{\boldsymbol{\theta}}}} }J({{{\boldsymbol{\theta}}}} ,{{{\boldsymbol{\phi}}}} ); - {\nabla _{{{\boldsymbol{\phi}}}} }J({{{\boldsymbol{\theta}}}} ,{{{\boldsymbol{\phi}}}} )} \right] $由式(26)获得, 但式中的期望在无模型设定下是无法计算的, 只能获得其采样值. 因此,在该设定下通过随机策略梯度近似真实策略梯度, 即

$ \left.\begin{split} &{\nabla _{{{\boldsymbol{\theta}}}} }J({{{\boldsymbol{\theta}}}} ,{{{\boldsymbol{\phi}}}} ) \approx {{\hat g}_{{{\boldsymbol{\theta}}}} }({{{\boldsymbol{\theta}}}} ,{{{\boldsymbol{\phi}}}} ) = \frac{{{\nabla _{{{\boldsymbol{\theta}}}} }{\pi _{{{\boldsymbol{\theta}}}} }({A_t}|{S_t})}}{{{\pi _{{{\boldsymbol{\theta}}}} }({A_t}|{S_t})}}{R _t}, \\ &{\nabla _{{{\boldsymbol{\phi}}}} }J({{{\boldsymbol{\theta}}}} ,{{{\boldsymbol{\phi}}}} ) \approx {{\hat g}_{{{\boldsymbol{\phi}}}} }({{\boldsymbol{\theta}}} ,{{\boldsymbol{\phi}}} ) = \frac{{{\nabla _{{{\boldsymbol{\phi}}}} }{\mu _{{{\boldsymbol{\phi}}}} }({B_t}|{S_t})}}{{{\mu _{{{\boldsymbol{\phi}}}} }({B_t}|{S_t})}}{R _t}. \end{split}\right\} $

基于此, 提出马尔科夫博弈策略梯度(Markov game policy gradient, MG-PG)算法, 如算法1所示.

算法1 MG-PG算法

输入可导的参数化联合策略$ ({\pi _{\boldsymbol{\theta}} },{\mu _{\boldsymbol{\phi}} }) $, 并初始化策略参数${\boldsymbol{\theta}} $${\boldsymbol{\phi}} $;

同时更新策略参数${\boldsymbol{\theta}} $${\boldsymbol{\phi}} $.

1. for $ k=0,1,\cdots, $ do:

2.根据联合策略$({\pi _{{{\boldsymbol{\theta}} ^k}}},{\mu _{{{\boldsymbol{\phi}} ^k}}})$, 收集博弈轨迹序列${\left( {{s_t},{a_t},{b_t},{r_{t+1}}} \right)_{0 \leqslant t \leqslant T}}$;

3. for $ t=0,1,\cdots ,T-1 $ do:

$4.计算\left[ {\begin{array}{*{20}{c}} {{{\bar {\boldsymbol{\theta}} }^k}} \\ {{{\bar {\boldsymbol{\phi}} }^k}} \end{array}} \right] = \left[ {\begin{array}{*{20}{c}} {{{\boldsymbol{\theta}} ^k}} \\ {{{\boldsymbol{\phi}} ^k}} \end{array}} \right]+\lambda \left[ {\begin{array}{*{20}{c}} {{{\hat g}_{\boldsymbol{\theta}} }({\boldsymbol{\theta}} ,{\boldsymbol{\phi}} )} \\ { - {{\hat g}_{\boldsymbol{\phi}} }({\boldsymbol{\theta}} ,{\boldsymbol{\phi}} )} \end{array}} \right];$

5.end for

6.根据联合策略$({\pi _{{{\bar {\boldsymbol{\theta}} }_k}}},{\mu _{{{\bar {\boldsymbol{\phi}} }_k}}})$, 收集博弈轨迹序列${\left( {{s_t},{a_t},{b_t},{r_{t+1}}} \right)_{0 \leqslant t \leqslant T}}$;

7. for $ t=0,1,\cdots ,T-1 $, do:

$8.计算\left[ {\begin{array}{*{20}{c}} {{{\boldsymbol{\theta}} _{k+1}}} \\ {{{\boldsymbol{\phi}} _{k+1}}} \end{array}} \right] = \left[ {\begin{array}{*{20}{c}} {{{\boldsymbol{\theta}} _k}} \\ {{{\boldsymbol{\phi}} _k}} \end{array}} \right]+{\alpha _k}\left[ {\begin{array}{*{20}{c}} {{{\hat g}_{\boldsymbol{\theta}} }(\bar {\boldsymbol{\theta}} ,\bar {\boldsymbol{\phi}} )} \\ { - {{\hat g}_{\boldsymbol{\phi}} }(\bar {\boldsymbol{\theta}} ,\bar {\boldsymbol{\phi}} )} \end{array}} \right];$

9.end for

9.end for

首先, 将输入的可导参数化联合策略$ \left(x_{{\boldsymbol{\theta}}}, \mu_{{\boldsymbol{\phi}}}\right) $的参数$ {\boldsymbol{\theta}} $$ {\boldsymbol{\phi}} $进行初始化(如全部初始化为0). 然后, 算法通过以下步骤进行迭代直到收敛: 1)数据采集阶段. 根据当前的联合策略$ \left(x_{{\boldsymbol{\theta}}^{k}}, \mu_{{\boldsymbol{\phi}}^{k}}\right) $, 收集博弈轨迹序列$ \left(s_{t}, a_{t}, b_{t}, r_{t+1}\right)_{0\leqslant t\leqslant T} $. 这一步通过执行当前策略来与环境交互并生成博弈轨迹, 用于后续的参数更新. 2)参数更新阶段: 基于当前的联合策略$ \left(x_{{\boldsymbol{\theta}}^{k}}, \mu_{{\boldsymbol{\phi}}^{k}}\right) $计算并更新式(33), 其中$ \left[\hat{g}_{{\boldsymbol{\phi}}}\left({\boldsymbol{\theta}}_{,}\; {\boldsymbol{\phi}}\right) ; - \hat{g}_{{\boldsymbol{\phi}}}\left({\boldsymbol{\theta}}_{l}, \;{\boldsymbol{\phi}}\right)\right] $ 由式(32)获得. 与上述2个阶段相类似地, 通过进一步梯度更新完成一次完整的参数更新. 通过反复迭代以上步骤, 直到算法达到收敛条件, 即性能指标达到最优. 算法使用的超参数$ \lambda $$ \alpha_{k} $的取值范围直接影响迭代更新的步长大小, 对MG-PG收敛性的影响较大.

3.3. 马尔科夫博弈策略梯度算法的收敛性

当目标函数$ J({\boldsymbol{\theta}} ,{\boldsymbol{\phi}} ) $满足凸凹性时, $ \left[ {{\nabla _{\boldsymbol{\theta}} }J({\boldsymbol{\theta}} ,{\boldsymbol{\phi}} ); - {\nabla _{\boldsymbol{\phi}} }J({\boldsymbol{\theta}} ,{\boldsymbol{\phi}} )} \right] $是单调的. 使用额外梯度算法求解式(15)的收敛性在长达几十年的研究中已经被解决. 但在马尔科夫博弈问题中, 目标函数$ J({\boldsymbol{\theta}} ,{\boldsymbol{\phi}} ) $是非凸非凹的, 即$ \left[ {{\nabla _{\boldsymbol{\theta}} }J({\boldsymbol{\theta}} ,{\boldsymbol{\phi}} ); - {\nabla _{\boldsymbol{\phi}} }J({\boldsymbol{\theta}} ,{\boldsymbol{\phi}} )} \right] $不满足单调性. 基于此, 首先提出以下假设.

假设1 两方零和马尔科夫博弈(式(1))和参数化的联合策略$({\pi _{\boldsymbol{\theta}} },{\mu _{\boldsymbol{\phi}} })$满足以下假设:

1) 策略梯度$ \left( {{\nabla _{\boldsymbol{\theta}} }J({\boldsymbol{\theta}} ,{\boldsymbol{\phi}} ); - {\nabla _{\boldsymbol{\phi}} }J({\boldsymbol{\theta}} ,{\boldsymbol{\phi}} )} \right) $关于策略参数是L-Lipschitz连续的, 即对任意$\left[ {{\boldsymbol{\theta}} ;{\boldsymbol{\phi}} } \right] \in {{\bf{R}}^d}$$\left[ {{\boldsymbol{\theta}} ' ;{\boldsymbol{\phi}} ' } \right] \in {{\bf{R}}^d}$, 存在常数$L > 0$使得

$ \begin{split} &\left\| {\left[{\begin{array}{*{20}{c}} {{\nabla _{\boldsymbol{\theta}} }J({\boldsymbol{\theta}} ,{\boldsymbol{\phi}} )} \\ { - {\nabla _{\boldsymbol{\phi}} }J({\boldsymbol{\theta}} ,{\boldsymbol{\phi}} )} \end{array}} \right] - \left[ {\begin{array}{*{20}{c}} {{\nabla _{\boldsymbol{\theta}} }J({\boldsymbol{\theta}} ' ,{\boldsymbol{\phi}} ' )} \\ { - {\nabla _{\boldsymbol{\phi}} }J({\boldsymbol{\theta}} ' ,{\boldsymbol{\phi}} ' )} \end{array}} \right]} \right\| \leqslant \\&\quad L\left\| {\left[ {\begin{array}{*{20}{c}} {\boldsymbol{\theta}} \\ {\boldsymbol{\phi}} \end{array}} \right] - \left[ {\begin{array}{*{20}{c}} {{\boldsymbol{\theta}} ' } \\ {{\boldsymbol{\phi}} ' } \end{array}} \right]} \right\|.\end{split} $

2) 存在$\left[ {{{\boldsymbol{\theta}} ^*};{{\boldsymbol{\phi}} ^ * }} \right]$$ \in {{\bf{R}}^d} $使得

$ \left[ {{\nabla _{\boldsymbol{\theta}} }J({{\boldsymbol{\theta}} ^ * },{{\boldsymbol{\phi}} ^ * }); - {\nabla _{\boldsymbol{\phi}} }J({{\boldsymbol{\theta}} ^ * },{{\boldsymbol{\phi}} ^ * })} \right] = {\bf{0}}. $

并且, 对任意$\left[ {{\boldsymbol{\theta}} ;{\boldsymbol{\phi}} } \right]$$ \in {{\bf{R}}^d} $, 满足

$ \begin{split} E&\left[ {{Q_{{\pi _{\boldsymbol{\theta}} },{\mu _{\boldsymbol{\phi}} }}}(S,A,B)\left( {{{\left( {{\nabla _{\boldsymbol{\theta}} } \ln \;{\pi _{\boldsymbol{\theta}} }(A|S)} \right)}^{\mathrm{T}}}({\boldsymbol{\theta}} - {{\boldsymbol{\theta}} ^ * })} \right.} \right. - \\&\left. {{{\left( {{\nabla _{\boldsymbol{\phi}} }\ln \;{\mu _{\boldsymbol{\phi}} }(B|S)} \right)}^{\mathrm{T}}}({\boldsymbol{\phi}} - {{\boldsymbol{\phi}} ^ * })} \right) - \\&\zeta {\left( {{Q_{{\pi _{\boldsymbol{\theta}} },{\mu _{\boldsymbol{\phi}} }}}(S,A,B)} \right)^2}\left( {{{\left\| {{\nabla _{\boldsymbol{\theta}} } \ln \;{\pi _{\boldsymbol{\theta}} }(A|S)} \right\|}^2}} \right.{\text+} \\& \left. {\left. {{\text{ }}{{\left\| {{\nabla _{\boldsymbol{\phi}} }\ln \;{\mu _{\boldsymbol{\phi}} }(B|S)} \right\|}^2}} \right)} \right] \geqslant 0. \end{split} $

其中, 常数$\zeta \in \left( { - \dfrac{1}{{2L}},+\infty } \right)$.

3) 随机向量

的方差是有界的, 即

$ E\left[ {{{\left\| {\left[ {\begin{array}{*{20}{c}} {{\nabla _{\boldsymbol{\theta}} }\ln \; {\pi _{\boldsymbol{\theta}} }({A_t}|{S_t}){G_t}} \\ { - {\nabla _{\boldsymbol{\phi}} }\ln \; {\mu _{\boldsymbol{\phi}} }({B_t}|{S_t}){G_t}} \end{array}} \right] - \left[ {\begin{array}{*{20}{c}} {{\nabla _{\boldsymbol{\theta}} }J({\boldsymbol{\theta}} ,{\boldsymbol{\phi}} )} \\ { - {\nabla _{\boldsymbol{\phi}} }J({\boldsymbol{\theta}} ,{\boldsymbol{\phi}} )} \end{array}} \right]} \right\|}^2}} \right] \leqslant {\sigma ^2}. $

Pethick等 [18]给出了一类满足弱Minty变分不等式(weak Minty variational inequality, MVI)的非凸非凹minimax问题的额外梯度型算法. 本研究的问题设定中无约束项, 因此文献[18]的Assumption I(i)中的正则算子 $A = 0$. 本研究假设1的条件1)是比一致连续更强的光滑性条件, 其限制了策略梯度$ \left[ {{\nabla _{\boldsymbol{\theta}} }J({\boldsymbol{\theta}} ,{\boldsymbol{\phi}} ); - {\nabla _{\boldsymbol{\phi}} }J({\boldsymbol{\theta}} ,{\boldsymbol{\phi}} )} \right] $的局部变动幅度不能超过常量L, 满足文献[18]的Assumption I(ii). 本研究假设1的条件2) 可以确保$ [{{\boldsymbol{\theta}} ^{\text{*}}};{{\boldsymbol{\phi}} ^{\text{*}}}] $是有限的, 其中式(37)是MVI在两方零和马尔科夫博弈下的具体表述. 根据推论1可知, 随机策略梯度

是真实策略梯度$ \left[ {{\nabla _{\boldsymbol{\theta}} }J({\boldsymbol{\theta}} ,{\boldsymbol{\phi}} ); - {\nabla _{\boldsymbol{\phi}} }J({\boldsymbol{\theta}} ,{\boldsymbol{\phi}} )} \right] $的无偏估计. 本研究假设1的条件3)限制了随机策略梯度的方差是有界的, 满足文献[18]的Assumption II(ii). 基于以上假设, 得出以下定理.

定理2 在假设1下, 令$\lambda \in \left(\max\; \{ 0, - 2\zeta \} ,\dfrac{1}{L}\right)$, ${\alpha _k} \in \left(0,\dfrac{1}{2}+\dfrac{\zeta }{\lambda }\right]$并且$ \sum\nolimits_{k = 1}^\infty {{\alpha _k} = +\infty } $, $ \sum\nolimits_{k = 1}^\infty {\alpha _k^2 < +\infty } $时, MG-PG在经过最多$K$次迭代更新后, 序列${[{\bar {\boldsymbol{\theta}} ^k};{\bar {\boldsymbol{\phi}} ^k}]_{k = 0,1, \cdots }}$收敛到如下误差界内:

$ E\left[\big\| \left[{\nabla }_{{\boldsymbol{\theta}} }J({\overline{{\boldsymbol{\theta}} }}^{k},{\bar {\boldsymbol{\phi}} ^k});-{\nabla }_{{\bf\textit{φ}}}J({\overline{{\boldsymbol{\theta}} }}^{k},{\bar {\boldsymbol{\phi}} ^k})\right]\big\| \right]\leqslant \varepsilon,\; \varepsilon > 0. $

即参数化联合策略$({\pi _{\boldsymbol{\theta}} },{\mu _{\boldsymbol{\phi}} })$达到近似纳什均衡. 其中, $ K=\left\lceil \left(\dfrac{8}{{{\lambda ^2}{ \varepsilon ^4}}}\right) {\sigma }^{2}{\left({\scriptstyle \dfrac{1}{2}}+{\scriptstyle \dfrac{\zeta }{\lambda }}\right)}^{2}\big\|\left[{{\boldsymbol{\theta}} }^{0};{\boldsymbol{\phi}}^{0}\right]-\left[{{\boldsymbol{\theta}} }^{*};{\boldsymbol{\phi}}^{*}\right]\big\|^{2}\right\rceil $.

证明: 基于假设1, 根据文献[18]定理3.5可知, 当$\lambda $$ {\alpha _k} $满足定理2中的取值范围时, 由MG-PG算法迭代生成的策略参数序列${[{{\boldsymbol{\theta}} ^k};{{\boldsymbol{\phi}} ^k}]_{k = 0,1, \cdots }}$${[{\bar {\boldsymbol{\theta}} ^k};{\bar {\boldsymbol{\phi}} ^k}]_{k = 0,1,\cdots }}$满足

$ \begin{split} &E\left[ {{{\left\| {\left[ {{{\boldsymbol{\theta}} ^{k+1}};{{\boldsymbol{\phi}} ^{k+1}}} \right] - \left[ {{{\boldsymbol{\theta}} ^*};{{\boldsymbol{\phi}} ^*}} \right]} \right\|}^2}} \right] \leqslant \\ &\qquad E\left[ {{{\left\| {\left[ {{{\boldsymbol{\theta}} ^k};{{\boldsymbol{\phi}} ^k}} \right] - \left[ {{{\boldsymbol{\theta}} ^*};{{\boldsymbol{\phi}} ^*}} \right]} \right\|}^2}} \right]+8{\lambda ^2}\alpha _k^2{\sigma ^2} - \\&\qquad 2{\alpha _k}{\lambda ^2} \left( \dfrac{1}{2} + \dfrac{\zeta }{\lambda } - {\alpha _k} \right) E \left[ {\left\| {\left[ {{\nabla _{\boldsymbol{\theta}} }J({{\bar {\boldsymbol{\theta}} }^k},{{\bar {\boldsymbol{\phi}} }^k}); - {\nabla _{\boldsymbol{\phi}} }J({{\bar {\boldsymbol{\theta}} }^k},{{\bar {\boldsymbol{\phi}} }^k})} \right]} \right\|} \right].\\ \end{split} $

接着令$ {\alpha _k} = {\beta _k}\left(\dfrac{1}{2}+\dfrac{\zeta }{\lambda }\right) $, 其中$ {\beta _k} \in (0,1.0) $, 则${\eta _k} = 2{\beta _k} \left( {1 - {\beta _k}} \right){\left(\dfrac{1}{2}+\dfrac{\zeta }{\lambda }\right)^2} \geqslant 2{\beta _k}{\left(\dfrac{1}{2}+\dfrac{\zeta }{\lambda }\right)^2}$, 将式(40)对$k \in \{ 0,1, \cdots ,K\} $求和得到

$ \begin{split} &2{\left(\dfrac{1}{2}+\dfrac{\zeta }{\lambda }\right)^2}\sum\limits_{k = 0}^K {\beta _k^{}} {\lambda ^2}E \left[ {{{\left\| {\left[ {{\nabla _{\boldsymbol{\theta}} }J({{\bar {\boldsymbol{\theta}} }^k},{{\bar {\boldsymbol{\phi}} }^k}); - {\nabla _{\boldsymbol{\phi}} }J({{\bar {\boldsymbol{\theta}} }^k},{{\bar {\boldsymbol{\phi}} }^k})} \right]} \right\|}^2}} \right] \leqslant \\ &\qquad E\left[ {{{\left\| {\left[ {{{\boldsymbol{\theta}} ^0};{{\boldsymbol{\phi}} ^0}} \right] - \left[ {{{\boldsymbol{\theta}} ^*};{{\boldsymbol{\phi}} ^*}} \right]} \right\|}^2}} \right]+\\ &\qquad4{\sigma ^2}\lambda (1+\lambda ){\left(\dfrac{1}{2}+\dfrac{\zeta }{\lambda }\right)^2}\displaystyle\sum_{k = 0}^K {\beta _k^2} . \\[-5pt]\end{split} $

在式(41)不等式两边同时除以$ 2{\left(\dfrac{1}{2}+\dfrac{\zeta }{\lambda }\right)^2} \times \displaystyle\sum\nolimits_{k = 0}^K {{\beta _k}} $,得到

$ \begin{split} & \frac{1}{\displaystyle{\sum}_{k=0}^K \beta_k} \displaystyle\sum_{k=0}^K \beta_k \lambda^2 E \left[ \left\| \left[\nabla_{\boldsymbol{\theta}} J\left(\overline{\boldsymbol{\theta}}^k, \overline{\boldsymbol{\phi}}^k\right) ;- \nabla_{\boldsymbol{\phi}} J\left(\overline{\boldsymbol{\theta}}^k, \overline{\boldsymbol{\phi}}^k\right)\right] \right\|^2\right] \leqslant \\&\qquad {\left[\frac{1}{2}\left(\frac{1}{2}+\frac{\zeta}{\lambda}\right)^{-2}\left\|\left[\boldsymbol{\theta}^0 ; \boldsymbol{\phi}^0\right]-\left[\boldsymbol{\theta}^* ; \boldsymbol{\phi}^*\right]\right\|^2+\right.} \\&\qquad \left.2 \lambda(1+\lambda) \sigma^2 {\sum}_{k=0}^K \beta_k^2 \right]\big/ {\sum}_{k=0}^K \beta_k.\\[-5pt]\end{split} $

由式(42)可得, 若按照概率${\mathrm{Pr}}[\tilde k = k] = {{{\beta _k}} \mathord{\left/ {\vphantom {{{\beta _k}} {\sum\nolimits_{i = 0}^K {{\beta _i}} }}} \right. } {\sum\nolimits_{i = 0}^K {{\beta _i}} }}$$\{ 0,1, \cdots ,K\} $中随机选择$\tilde k$, 则

$ \begin{split} \lambda^2 E & {\left[\left\|\left[\nabla_{\boldsymbol{\theta}} J\left(\overline{\boldsymbol{\theta}}^{\tilde{k}}, \overline{\boldsymbol{\phi}}^{\tilde{k}}\right) ;-\nabla_{\boldsymbol{\phi}} J\left(\overline{\boldsymbol{\theta}}^{\tilde{k}}, \overline{\boldsymbol{\phi}}^{\tilde{k}}\right)\right]\right\|^2\right] \leqslant } \\& {\left[\frac{1}{2}\left(\frac{1}{2}+\frac{\zeta}{\lambda}\right)^{-2}\left\|\left[\boldsymbol{\theta}^0 ; \boldsymbol{\phi}^0\right]-\left[\boldsymbol{\theta}^* ; \boldsymbol{\phi}^*\right]\right\|^2+\right.} \\& \left.4 \lambda^2 \sigma^2 {\sum}_{k=0}^K \beta_k^2 \right]\big/ {\sum}_{k=0}^K \beta_k .\end{split} $

${\beta _k} = {\upsilon \mathord{\left/ {\vphantom {\upsilon {\sqrt {K+1} }}} \right. } {\sqrt {K+1} }}$, 其中$\upsilon $为常数. 假设K足够大, 则${\beta _k} < 1$. 通过对式(43)的右边取最小值, 可得$\upsilon = \left[{1 \mathord{\left/ {\vphantom {1 {(2\sqrt 2 \sigma \lambda ) \cdot }}} \right. } {(2\sqrt 2 \sigma \lambda ) }}\right]{\left(\dfrac{1}{2}+\dfrac{\zeta }{\lambda }\right)^{ - 1}}\big\|\left[ {{{\boldsymbol{\theta}} ^0};{{\boldsymbol{\phi}} ^0}} \right] - \left[ {{{\boldsymbol{\theta}} ^*};{{\boldsymbol{\phi}} ^*}} \right]\big\|$. 因此, 在经过最多如下次数迭代更新后:

$ K=\left\lceil \left(8/{\lambda }^{2}{ \varepsilon }^{4}\right) {\sigma }^{2}{\left({ \frac{1}{2}}+{ \frac{\zeta }{\lambda }}\right)}^{-2}\left\|\left[{{\boldsymbol{\theta}} }^{0};{{\bf\textit{φ}}}^{0}\right]-\left[{{\boldsymbol{\theta}} }^{*};{{\bf\textit{φ}}}^{*}\right]\right\|^{2}\right\rceil. $

存在$k \in \{ 0,1, \cdots ,K\} $, 式(39)成立.

4. 仿真实验

4.1. 实验对象和评估指标

采用棋盘游戏Oshi-Zumo[23]来验证算法MG-PG的收敛性. 该游戏中有2个玩家, 是一种同时移动的零和博弈, 其难点在于每次决策时的不确定性和信息不对称性, 即每个玩家无法知道对手的决策, 需要更加复杂的策略来应对可能的动作. 一轮博弈往往须经过多步博弈才能分出胜负, 其游戏规则如下: 棋盘上有2N+1个格子一维排列, 编号1,···,2N+1, 在棋盘中心(第N+1个格子)有一面旗帜, 旗帜的移动方向取决于每一轮博弈中玩家1、2的每步博弈结果(移动格数始终为1). 如图2所示, 玩家1、2初始时各有X枚硬币, 每一步, 玩家1、2同时出硬币, 记为M1M2, 然后比较M1M2的大小, 旗帜始终往出币数少的一方移动, 即若M1>M2,旗帜向右移动一个格子; 若M1<M2,旗帜向左移动一个格子; 若M1=M2,旗帜不移动. 每一步博弈后2个玩家的总数减去出币数M1M2,并开始下一步博弈. 比赛一直进行到双方的硬币都用完, 或者旗帜被推出棋盘外. 获胜者根据旗帜的位置确定−距离旗帜所在的位置近的玩家输掉比赛. 如果旗帜的最后位置是棋盘中心, 则比赛结果为平局.

图 2

图 2   Oshi-Zumo在不同设定下的状态变化示意图

Fig.2   Schematic diagrams of state of Oshi-Zumo in different settings


Oshi-Zumo的状态由3部分组成: 玩家1的剩余硬币数、玩家2的剩余硬币数和旗帜的位置. 旗帜位置由格子编号表示, 当旗帜从左移出第1个格子后, 旗帜位置为0; 当从右移出第2N+1个格子后, 旗帜位置为2N+2. 当游戏参数确定后, 初始状态也是确定的. 玩家的动作就是出币数, 仅当博弈结束后才获得奖励. 玩家1作为max玩家(期望收益为正), 获胜则奖励为1; 玩家2获胜则奖励为−1, 平局则奖励为0.

采用纳什收敛指标[17, 24-25]作为联合策略的评价指标. 给定联合策略$(\pi ,\mu )$, 纳什收敛指标定义为

${\mathrm{ NashConv}}(\pi ,\mu ) = {V_{{\rho _0}}}({\pi ^b},\mu ) - {V_{{\rho _0}}}(\pi ,{\mu ^b}). $

式中的最佳响应策略由单智能体强化学习算法训练获得. 由定义1、2可知, 当$ {\mathrm{NashConv}}(\pi ,\mu ) = 0 $时, 联合策略$(\pi ,\mu )$达到纳什均衡; 当$ {\mathrm{NashConv}}(\pi ,\mu ) < \varepsilon $, $ \forall {\kern 1pt} \varepsilon > 0 $, 联合策略$(\pi ,\mu )$$ \varepsilon $近似纳什均衡. 在下面的实验中, 采用单智能体强化学习reinforce算法求解最佳响应策略, 即固定一方玩家的策略, 对另一方玩家的策略进行训练, 直到胜率达到90%或策略参数的更新次数达到5万次.

4.2. 表格式softmax参数化策略

在第k迭代轮次, 将玩家在状态s下的策略参数$ {\boldsymbol{\theta}} _s^k \in {{\bf{R}}^{\left| {{U_s}} \right|}} $${\boldsymbol{\phi}} _s^k \in {{\bf{R}}^{\left| {{W_s}} \right|}}$拼接为一个参数向量$ [{\boldsymbol{\theta}} _s^k;{\boldsymbol{\phi}} _s^k] $, 其中, $ \left| {{U_s}} \right| $$ \left| {{W_s}} \right| $分别表示玩家1、2在状态s下合法动作个数. 2个玩家的策略服从指数柔性最大化(softmax)分布[26], 即

$\left. \begin{split} {\pi _{{{\boldsymbol{\theta}} ^k}}}( \cdot |s) =&{\text{softmax}}\left( {{\boldsymbol{\theta}} _s^k} \right) =\\ & {\left[ {{{\exp\; ({{\theta}} _{s,a}^k)} \mathord{\left/ {\vphantom {{\exp ({{\theta}} _{s,a}^k)} {\sum\nolimits_{a' } {\exp\; ({{\theta}} _{s,a'}^k)} }}} \right. } {\sum\nolimits_{a' } {\exp \;({{\theta}} _{s,a'}^k)} }}} \right]_a}, \\{\mu _{{{\boldsymbol{\phi}} ^k}}}( \cdot |s) = &{\text{softmax}}\left( {{\boldsymbol{\phi}} _s^k} \right) =\\ & {\left[ {{{\exp\; ({{\phi}} _{s,b}^k)} \mathord{\left/ {\vphantom {{\exp \;({{\phi}} _{s,b}^k)} {\sum\nolimits_{b' } {\exp\;({{\phi}} _{s,b'}^k)} }}} \right. } {\sum\nolimits_{b' } {\exp\; ({{\phi}} _{s,b'}^k)} }}} \right]_b}.\end{split}\right\}$

式中:$ {[ \cdot ]_a} $表示第k轮次在状态s下对所有不同的合法动作的选择概率依次按照方括号内的规则进行计算. 参数的初始值$ [{\boldsymbol{\theta}} _s^0;{\boldsymbol{\phi}} _s^0] $全为0, 即初始策略服从均匀分布.

Oshi-Zumo规模设置如图2(a)所示, 2个玩家的币数都为6, 棋盘的格子数为5. 实验中MG-PG算法的梯度步长$ \lambda $=0.3, $ {\alpha _k} $=0.5, 折扣因子$\gamma $=1.0, 最大更新次数$ {k_{\max }} $=106, 每次更新采样的局数(轨迹数)n=1, 如表1所示.

表 1   不同参数化策略设定下的算法超参数

Tab.1  Algorithm hyperparameters under different parameterized policy settings

参数$ \lambda $$ {\alpha _k} $$\gamma $$ {k_{\max }} $$n$
表格式Softmax0.30.51.01061
神经网络0.10.31.08×1061

新窗口打开| 下载CSV


设置10组实验, 实验的评估数据如图3所示.图中, k表示策略参数更新的次数, Na表示纳什收敛指标的值, 圆点曲线表示10组实验纳什收敛指标的均值及变化趋势, 竖线表示10组实验纳什收敛指标的离散程度, 竖线的上下界分别由均值加减标准差得到.可以看出,实验中随着更新次数的增加, 纳什收敛指标虽然存在一定的方差, 但其均值整体呈减缓下降趋势, 当更新次数达到约60万次时, 纳什收敛指标的均值接近零, 此时联合策略达到近似纳什均衡.

图 3

图 3   策略参数化下MG-PG算法的纳什收敛指标

Fig.3   Nash convergence of MG-PG algorithm with policy parameterized


4.3. 神经网络参数化策略

在如图2(b)所示的游戏规模下, 状态动作空间大小急剧增长, 使用表格式softmax参数化策略容易导致实验过程中出现内存溢出的问题. 因此, 将神经网络作为参数化策略, 并通过MG-PG算法训练优化神经网络的参数, 最终达到近似纳什均衡.

在神经网络作为参数化策略的实验中, 2个玩家的初始币数都是50, 棋盘中共有${{2 \times 7+1 = 15}}$个格子, 每个玩家最多有51个候选动作(包含出币数为0的动作). 因此首先定义维数为(51+51+15)=117的one-hot向量(状态信息)作为神经网络的输入, 神经网络输出维数为51. 将神经网络的输出进行softmax运算, 即得到输入状态下的策略. 在该设定下由于其大规模的状态空间和动作集, 应该使用更多的隐藏层和更大的层大小. 因此采用含2个隐藏层的非线性网络, 从输入侧到输出侧, 隐藏层分别有256、128个节点, 并使用ReLU激活函数、Adam优化器. 关于算法的超参数设置,如表1所示. 相较于使用表格式softmax参数化策略的算法表现,使用神经网络作为参数化策略由于激活函数的存在,可能出现数值不稳定性的问题,如梯度爆炸或梯度消失. 通过使用较小的梯度步长,可以减缓参数的更新,有助于缓解这些数值稳定性问题. 同时由于游戏规模较大,其最大更新次数也较大.

策略网络优化流程如下. 采用在线学习方式, 在第k轮次下, 将环境状态${s_t}$作为输入分别输送到2个玩家的策略网络${\pi _{\boldsymbol{\theta}} }$${\mu _{\boldsymbol{\phi}} }$. 依照策略网络输出的概率分布, 随机得到动作${a_t}$${b_t}$, 在与环境交互后, 得到新的环境状态${s_{t+1}}$. 重复以上步骤, 得到一条博弈轨迹${\left( {{s_t},{a_t},{b_t},{r_{t+1}}} \right)_{0 \leqslant t \leqslant T}}$. 将该轨迹中的状态${\left( {{s_t}} \right)_{0 \leqslant t \leqslant T}}$作为输入依次输送到策略网络${\pi _{\boldsymbol{\theta}} }$${\mu _{\boldsymbol{\phi}} }$. 以策略网络${\pi _{\boldsymbol{\theta}} }$为例, 输出概率分布${\left( {{\pi _{\boldsymbol{\theta}} }({a_t}|{s_t})} \right)_{0 \leqslant t \leqslant T}}$后计算梯度$ {\left( {{\nabla _{\boldsymbol{\theta}} }\ln \;{\pi _{\boldsymbol{\theta}} }({a_t}|{s_t}){G_t}} \right)_{0 \leqslant t \leqslant T}} $, 梯度项求和后以步长$ \lambda $更新赋值给临时策略网络${\pi _{\bar {\boldsymbol{\theta}} }}$, 临时策略梯度的计算同理可得. 最后通过临时策略梯度以步长$ {\alpha _k} $更新网络参数$ \left[{\boldsymbol{\theta}} ;{\boldsymbol{\phi}} \right] $. 至此通过算法迭代完成一次策略网络更新.

在神经网络设定下同样设置了10组实验,实验的评估数据如图4所示. 与策略参数化设定相类似,尽管纳什收敛指标存在一定的方差,但其均值整体呈减缓下降趋势. 当更新次数达到约500万次时,纳什收敛指标的均值接近零, 此时联合策略达到近似纳什均衡. 实验结果表明,MG-PG算法对于大规模博弈问题仍然适用.

图 4

图 4   神经网络下MG-PG算法的纳什收敛指标

Fig.4   Nash convergence of MG-PG algorithm with neural network setting


4.4. 对比实验

在基于Oshi-Zumo的实验中, MG-PG在2种参数设定下都展示出较好的性能. 为了能够更全面地评估和验证本研究所提出的算法MG-PG, 将现有的两方零和马尔科夫博弈策略梯度方法−独立策略梯度方法[23]、嵌套梯度下降方法[24]、双时间尺度算法[25]和演员-评论家虚拟博弈算法[8]在Oshi-Zumo中的表现与MG-PG进行对比分析. 实验的游戏规模与神经网络下MG-PG的实验规模相同, 即2个玩家的初始币数都为50, 棋盘中共有15个格子.

独立策略梯度方法本质上为单智能体强化学习,若2个玩家都使用常用的reinforce算法进行参数更新, 则更新式为

$ \left.\begin{split} &{{\boldsymbol{\theta}} _{k+1}} = {{\boldsymbol{\theta}} _k}+{\eta _d}{\nabla _{\boldsymbol{\theta}} }J({{\boldsymbol{\theta}} _k},{{\boldsymbol{\phi}} _k}), \\ &{{\boldsymbol{\phi}} _{k+1}} = {{\boldsymbol{\phi}} _k} - {\eta _d}{\nabla _{\boldsymbol{\phi}} }J({{\boldsymbol{\theta}} _k},{{\boldsymbol{\phi}} _k}). \\ \end{split}\right\} $

其中,

$ \left.\begin{split} {\nabla _{\boldsymbol{\theta}} }J({\boldsymbol{\theta}} ,{\boldsymbol{\phi}} ) = \sum\limits_{t = 0}^T {\left[ {\frac{{{\nabla _{\boldsymbol{\theta}} }{\pi _{\boldsymbol{\theta}} }({A_t}|{S_t})}}{{{\pi _{\boldsymbol{\theta}} }({A_t}|{S_t})}}{R_t}} \right]} , \\ {\nabla _{\boldsymbol{\phi}} }J({\boldsymbol{\theta}} ,{\boldsymbol{\phi}} ) = \sum\limits_{t = 0}^T {\left[ {\frac{{{\nabla _{\boldsymbol{\phi}} }{\pi _{\boldsymbol{\phi}} }({B_t}|{S_t})}}{{{\pi _{\boldsymbol{\phi}} }({B_t}|{S_t})}}{R_t}} \right]} . \end{split}\right\} $

式中:ηd为学习率.

实验中玩家策略采用神经网络的形式, 参数${\eta _d}$与MG-PG的步长${\alpha _k}$保持一致, 均为0.3.

嵌套梯度下降方法则将最大最小优化问题(式(15))转化为如下最小优化问题:

$ \mathop {\min }\limits_{\boldsymbol{\phi}} \;g({\boldsymbol{\phi}} ). $

其中,

$ g({\boldsymbol{\phi}} ) = \mathop {\max }\limits_{\boldsymbol{\theta}} \;J({\boldsymbol{\theta}} ,{\boldsymbol{\phi}} ). $

进而有

$ {\nabla _{\boldsymbol{\phi}} }g({\boldsymbol{\phi}} ) = {\nabla _{\boldsymbol{\phi}} }J({{\boldsymbol{\theta}} ^*},{\boldsymbol{\phi}} )\text{;}{{\boldsymbol{\theta}} ^*} \in \arg \mathop {\max }\limits_{\boldsymbol{\theta}} \;J({\boldsymbol{\theta}} ,{\boldsymbol{\phi}} ). $

因此, 嵌套梯度下降方法在每一轮迭代时, 先进行一次“嵌套内循环”, 近似计算出${{\boldsymbol{\theta}} ^*}$后, 随后在${\nabla _{\boldsymbol{\phi}} }J({{\boldsymbol{\theta}} ^*},{\boldsymbol{\phi}} )$的方向上更新参数${\boldsymbol{\phi}} $. 实验中玩家策略采用神经网络的形式, 超参数同为0.3.

将策略参数为${\boldsymbol{\phi}} $的玩家视为领导者, 策略参数为${\boldsymbol{\theta}} $的玩家视为追随者. 根据双时间尺度算法的思想, 对领导者和追随者之间进行时间尺度分离. 在实验中基于嵌套梯度下降方法, 令领导者策略参数更新的超参数为0.1, 小于追随者的策略参数更新超参数, 并使领导者策略参数更新间隔为10个迭代轮次, 以达到领导者的学习速度比追随者慢的效果.

演员-评论家虚拟博弈算法通过Actor-Critic框架对虚拟博弈过程进行随机近似, 使得算法能够收敛到纳什均衡. 策略与价值函数的更新式如下.

Actor step:

$ \pi _{k+1}^i\left( {{s_k}, \cdot } \right) = \left( {1 - {\eta _k}} \right)\pi _k^i\left( {{s_k}, \cdot } \right)+{\eta _k}{B_\varpi }\left( {Q_k^i\left( {{s_k}, \cdot } \right)} \right); $

Critic step:

$\begin{split} &Q_{k+1}^i\left( {{s_k},a_k^i} \right) =\\ &\left( {1 - {\psi _k}} \right)Q_k^i\left( {{s_k},a_k^i} \right)+{\psi _k}\left( {r_k^i+{C_\varpi }\left( {Q_k^i\left( {{s_{k+1}}, \cdot } \right)} \right)} \right).\end{split} $

式中:上标i表示玩家标号,${\psi _k} $为算法的超参数,$ {B_\varpi }\left( Q \right) $为最佳响应策略(选择概率函数),

$ \varpi \left( \cdot \right) $为确定性扰动, $ {C_\varpi }\left( Q \right) 为 {B_\varpi }\left( Q \right) $的平均值, 即

在实验中步长选择为$ {\eta _k} = 0.01 $, ${\psi _k} = 0.1$.

每种算法同样进行10组实验, 实验结果如图5所示. 每种算法都迭代更新了800万次. 可以看出, 独立策略梯度方法、嵌套梯度下降方法和双时间尺度算法3种方法在800万的更新次数内不收敛, 并且纳什收敛指标也没有明显下降的趋势. 3种方法都使用了reinforce算法, 因此在10组实验中都呈现出较大的方差. 演员-评论家虚拟博弈算法则在实验中表现良好, 纳什收敛指标呈现出较为平滑的下降趋势. 但该算法在800万次的更新中并未收敛到近似纳什均衡, 纳什收敛指标的均值在更新后约为0.50, 相较于MG-PG算法在500万次达到约0.15还存在一定的性能差距. 同时该算法在训练过程中由于要计算最佳响应策略,对于时间的消耗也是巨大的. 不过,得益于Actor-Critic框架值函数提供了对策略的评估, 策略改进更加稳定, 大大减小了不同实验组策略优化过程中的方差.

图 5

图 5   4种对比算法的纳什收敛指标图

Fig.5   Nash convergence index diagram of four comparison algorithms


综上,单智能体强化学习的思想及其方法在Oshi-Zumo这种同时移动博弈游戏中的表现欠佳. 演员-评论家虚拟博弈算法相较于本研究所提出的MG-PG算法收敛速度较慢, 但其Actor-Critic框架带来的小方差为本研究今后的工作提供了指导和启示.

5. 结 语

提出两方零和马尔科夫博弈的策略定理及其相关证明, 并基于随机策略梯度和额外梯度法提出适用于马尔科夫博弈的策略梯度算法. 该算法在外推点梯度计算阶段, 利用已知的博弈轨迹计算外推点的梯度, 改善探索方向, 使得算法更容易朝正确方向更新; 在策略参数更新阶段, 利用外推点的梯度更新策略参数. 最终在假设1的条件下分析得到该算法的收敛性.

在Oshi-Zumo上的大量实验表明, 本研究算法经过一定的迭代轮次可以有效地收敛到近似纳什均衡解. 应用神经网络拟合博弈策略, 解决了大规模博弈问题. 通过对比实验验证了MG-PG算法的优越性和有效性.

如何通过应用Actor-Critic Network减小MG-PG算法方差以及如何解决环境部分可观的马尔科夫博弈问题, 是未来可以继续研究的方向.

参考文献

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:10.1038/nature16961      [本文引用: 1]

BROWN N, SANDHOLM T

Superhuman AI for multiplayer poker

[J]. Science, 2019, 365 (6456): 885- 890

DOI:10.1126/science.aay2400      [本文引用: 1]

OWEN G. Game theory [M]. Bradford: Emerald Group Publishing, 2013.

[本文引用: 1]

吴哲, 李凯, 徐航, 等

一种用于两人零和博弈对手适应的元策略演化学习算法

[J]. 自动化学报, 2022, 48 (10): 2462- 2473

[本文引用: 1]

WU Zhe, LI Kai, XU Hang, et al

A meta-evolutionary learning algorithm for opponent adaptation in two-player zero-sum games

[J]. Acta Automatica Sinica, 2022, 48 (10): 2462- 2473

[本文引用: 1]

LITTMAN M L. Markov games as a framework for multi-agent reinforcement learning [C]// Proceedings of the 11th International Conference on Machine Learning . New Brunswick: Morgan Kaufmann Publishers Inc, 1994: 157−163.

[本文引用: 1]

WATKINS C J, DAYAN P

Q-learning

[J]. Machine Learning, 1992, 8 (1): 279- 292

[本文引用: 1]

FAN J, WANG Z, XIE Y, et al. A theoretical analysis of deep Q-learning [C]// Proceedings of the 2nd Learning for Dynamics and Control . Zürich: PMLR, 2020: 486−489.

[本文引用: 1]

JIA Z, YANG L F, WANG M. Feature-based q-learning for two-player stochastic games [EB/OL]. (2019−01−02) [2023−12−20]. https://arxiv.org/abs/1906.00423.pdf.

[本文引用: 1]

SIDFORD A, WANG M, YANG L, et al. Solving discounted stochastic two-player games with near-optimal time and sample complexity [C]// Proceedings of the 23rd International Conference on Artificial Intelligence and Statistics . [s.l.]: PMLR, 2020: 2992−3002.

[本文引用: 1]

SCHULMAN J, WOLSKI F, DHARIWAL P, et al. Proximal policy optimization algorithms [EB/OL]. (2017-08-28) [2023-12-20]. https://arxiv.org/pdf/1707.06347.pdf.

[本文引用: 1]

HAARNOJA T, ZHOU A, ABBEEL P, et al. Soft actor-critic: off-policy maximum entropy deep reinforcement learning with a stochastic actor [C]// Proceedings of the 35th International Conference on Machine Learning . Stockholmsmässan: PMLR, 2018: 1861-1870.

[本文引用: 1]

MAZUMDAR E V, JORDAN M I, SASTRY S S. On finding local nash equilibria (and only local nash equilibria) in zero-sum games [EB/OL]. (2019-01-25) [2023-12-21]. https://arxiv.org/pdf/1901.00838.pdf.

[本文引用: 1]

BU J, RATLIFF L J, MESBAHI M. Global convergence of policy gradient for sequential zero-sum linear quadratic dynamic games [EB/OL]. (2019-09-12) [2023-12-21]. https://arxiv.org/pdf/1911.04672.pdf.

[本文引用: 1]

DASKALAKIS C, FOSTER D J, GOLOWICH N. Independent policy gradient methods for competitive reinforcement learning [C]// Proceedings of the 34th International Conference on Neural Information Processing Systems . Vancouver: Curran Associates Inc, 2020: 5527−5540.

[本文引用: 1]

NOUIEHED M, SANJABI M, HUANG T, et al. Solving a class of non-convex min-max games using iterative first order methods [C]// Proceedings of the 33rd International Conference on Neural Information Processing Systems . Vancouver: Curran Associates Inc, 2019: 14905−14916.

[本文引用: 1]

FIEZ T, CHASNOV B, RATLIFF L J. Convergence of learning dynamics in stackelberg games [EB/OL]. (2019-09-06) [2023-12-23]. https://arxiv.org/pdf/1906.01217.pdf.

[本文引用: 1]

PEROLAT J, PIOT B, PIETQUIN O. Actor-critic fictitious play in simultaneous move multistage games [C]// Proceedings of the 21st International Conference on Artificial Intelligence and Statistics . Playa Blanca: PMLR, 2018: 919−928.

[本文引用: 2]

PETHICK T, PATRINOS P, FERCOQ O, et al. Escaping limit cycles: global convergence for constrained nonconvex-nonconcave minimax problems [C]// The 10th International Conference on Learning Representations . France: Online, 2022: 03602455.

[本文引用: 7]

LAGOUDAKIS M, PARR R. Value function approximation in zero-sum markov games [EB/OL]. (2012-12-12) [2023-12-23]. https://arxiv.org/pdf/1301.0580.pdf.

[本文引用: 1]

FUDENBERG D, DREW F, LEVINE D K, et al. The theory of learning in games [M]. Massachusetts: MIT Press, 1998.

[本文引用: 1]

NASH JR J F

Equilibrium points in n-person games

[J]. National Academy of Sciences, 1950, 36 (1): 48- 49

DOI:10.1073/pnas.36.1.48      [本文引用: 1]

VAMVOUDAKIS K G, WAN Y, LEWIS F L, et al. Handbook of reinforcement learning and control [M]. Berlin: Springer, 2021.

[本文引用: 1]

PEROLAT J, SCHERRER B, PIOT B, et al. Approximate dynamic programming for two-player zero-sum Markov games [C]// Proceedings of the 32nd International Conference on Machine Learning . Lille: PMLR, 2015: 1321-1329.

[本文引用: 2]

LANCTOT M, LOCKHART E, LESPIAU J-B, et al. OpenSpiel: a framework for reinforcement learning in games [EB/OL]. (2020-09-26) [2023-12-24]. https://arxiv.org/pdf/1908.09453.pdf.

[本文引用: 2]

PéROLAT J, PIOT B, GEIST M, et al. Softened approximate policy iteration for Markov games [C]// Proceedings of the the 33rd International Conference on Machine Learning . New York: PMLR, 2016: 1860−1868.

[本文引用: 2]

SUTTON R S, BARTO A G. Reinforcement learning: an introduction [M]. Massachusetts: MIT press, 2018.

[本文引用: 1]

/