RL——Q-learning与DQN收敛性证明


前言

  • 在数学中,函数、泛函、算子都是映射
  • 函数 :是从一个集合的元素映射到另一个集合的元素
  • 泛函 :是从一个函数空间映射到数值空间(如实数或复数集)
  • 算子 :是从一个函数空间映射到另一个函数空间

Q-learning 和 DQN 的收敛性讨论

  • DQN基本原理 :DQN的核心是使用一个深度神经网络来逼近Q-learning的Q函数
  • Q-learning有严格的收敛性证明(贝尔曼最优算子压缩映射),但DQN没有(DQN虽然也按照贝尔曼最优算子更新,但还增加了一个神经网络近似)
    • 贝尔曼算子贝尔曼最优算子都是压缩映射;神经网络近似是收敛的,但是贝尔曼最优算子+神经网络近似不一定能保证收敛
  • 本文主要针对Q-learning证明其收敛性,同时附带证明了贝尔曼算子贝尔曼最优算子都是压缩映射

压缩映射定理(Contraction Mapping Theorem)

  • 压缩映射定理也称为Banach不动点定理

    压缩映射的定义

  • 定义 :设 \((X, d)\) 是一个完备的度量空间(即所有柯西序列都收敛), \(\mathcal{T}: X \to X\) 是一个映射。如果存在一个常数 \(\gamma \in (0, 1)\) ,使得对于所有的 \(x_1, x_2 \in X\) ,都有满足下面的式子,则称 \(\mathcal{T}\) 是一个压缩映射
    $$ \color{red}{d}(\mathcal{T}(x_1), \mathcal{T}(x_2)) \leq \color{blue}{\gamma} \color{red}{d}(x_1, x_2) $$
    • 其中 \( d \) 表示度量(metric) ,即度量空间中用于衡量两个点之间距离的函数
  • 直观理解
    • 压缩映射会将空间中的点逐渐拉近,使得它们之间的距离不断缩小。由于这种收缩性质,压缩映射在完备度量空间中必然存在一个唯一的不动点
    • \(\mathcal{T}\) 将任意两点之间的距离压缩至少 \(\gamma\) 倍
    • 即构造序列 \({x_n}\) ,其中 \(x_{n + 1} = \mathcal{T}(x_n)\),则随着 \(n \rightarrow \infty\), 序列 \({x_n}\) 会收敛到压缩映射的不动点 \(x^*\)

压缩映射定理(Contraction Mapping Theorem)

  • 不动点(Fixed-Point)定义 :对于一个映射 \(\mathcal{T}: X \to X\) ,如果存在一个点 \(x^* \in X\) ,使得 \(\mathcal{T}(x^*) = x^*\) ,那么 \(x^*\) 就被称为 \(\mathcal{T}\) 的不动点
  • 压缩映射定理(Banach不动点定理) :设 \((X, d)\) 是一个完备的度量空间(即所有柯西序列都收敛),\(\mathcal{T}: X \to X\) 是一个压缩映射。则:
    • \(\mathcal{T}\) 在 \(X\) 中存在唯一的不动点 \(x^*\)(即 \(\mathcal{T}(x^*) = x^*\))
    • 对于任意初始点 \(x_0 \in X\),通过迭代 \(x_{n+1} = \mathcal{T}(x_n)\) 生成的序列 \({x_n}\) 收敛于 \(x^*\)
    • 收敛速度的估计:
      $$
      d(x_n, x^*) \leq \frac{k^n}{1 - k} d(x_0, x_1)
      $$
      • 即,误差以指数速度衰减

压缩映射定理的简单证明

  • 存在性 :从任意 \(x_0\) 出发,构造序列 \(x_{n+1} = \mathcal{T}(x_n)\)。利用压缩性可证明 \({x_n}\) 是柯西序列,由完备性可知其收敛到某点 \(x^*\)。再证明 \(x^*\) 是不动点
  • 唯一性 :假设有两个不动点 \(x^*\) 和 \(y^*\),利用压缩性导出矛盾

贝尔曼算子与压缩映射

  • 贝尔曼方程定义 :在强化学习中,贝尔曼方程用于描述最优值函数(如最优Q函数)的递归关系。对于一个马尔可夫决策过程(MDP),贝尔曼最优性方程可以表示为:
    $$Q^*(s, a)=\mathbb{E}_{s^{\prime}}\left[r(s, a, s^{\prime})+\gamma \max _{a^{\prime}} Q^*(s^{\prime}, a^{\prime})\right]$$
    • \(\gamma\) 是折扣因子, \(Q^*(s, a)\) 是最优Q函数,表示在状态 \(s\) 执行动作 \(a\) 的最优价值
  • 贝尔曼算子与压缩映射 :贝尔曼方程定义了一个从Q函数空间到自身的映射 \(\mathcal{T}\) (函数空间到函数空间的映射也称为算子 ,这里也称为贝尔曼算子),即:
    $$\mathcal{T}Q(s, a)=\mathbb{E}_{s^{\prime}}\left[r(s, a, s^{\prime})+\gamma \max _{a^{\prime}} Q(s^{\prime}, a^{\prime})\right]$$
    • 可以证明,在无穷范数度量下(即度量 \(d\) 为无穷范数(\( \Vert \cdot\Vert_\infty \)))时,有贝尔曼算子 \(\mathcal{T}\) 是一个压缩映射
    • 实际上,在无穷范数度量下,贝尔曼最优算子贝尔曼算子都是压缩映射 ,详情见附录证明

附录:度量的完整定义

度量的定义

  • 给定一个集合 \( X \),若函数 \( d: X \times X \to \mathbb{R} \) 满足以下性质,则称 \( d \) 为 \( X \) 上的度量:
    • 非负性
      $$ d(x, y) \geq 0 \quad \text{且} \quad d(x, y) = 0 \iff x = y. $$
    • 对称性
      $$ d(x, y) = d(y, x). $$
    • 三角不等式
      $$ d(x, z) \leq d(x, y) + d(y, z). $$
  • 此时,二元组 \( (X, d) \) 称为度量空间
  • 压缩映射定理中:
    $$ d(\mathcal{T}(x_1), \mathcal{T}(x_2)) \leq \gamma \cdot d(x_1, x_2) \quad (\gamma \in [0, 1)), $$
    • \( d(x_1, x_2) \) 表示两点 \( x_1 \) 和 \( x_2 \) 的原始距离
    • \( d(\mathcal{T}(x_1), \mathcal{T}(x_2)) \) 表示它们经过映射 \(\mathcal{T}\) 后的像之间的距离
    • 不等式表明,\(\mathcal{T}\) 将距离压缩了至少 \( \gamma \) 倍(\( \gamma < 1 \))

附录:贝尔曼算子是压缩映射的证明

  • 证明目标:贝尔曼算子(Bellman Operator)贝尔曼最优算子(Bellman Optimality Operator)在适当的条件下都是无穷范数(\( \Vert \cdot\Vert_\infty \))下的压缩映射 ,但它们的压缩性质依赖于折扣因子 \( \gamma \in [0, 1) \) 和 MDP 的结构。

贝尔曼算子 \( \mathcal{T}^\pi \)(Policy Evaluation)

  • 对于给定的策略 \( \pi \),贝尔曼算子定义为:
    $$
    (\mathcal{T}^\pi V)(s) = \sum_{a} \pi(a|s) \left( r(s, a) + \gamma \sum_{s’} P(s’|s, a) V(s’) \right)
    $$
  • 对于任意两个值函数 \( V_1, V_2 \),有:
    $$
    \begin{align}
    \Vert \mathcal{T}^\pi V_1 - \mathcal{T}^\pi V_2 \Vert_\infty &= \max_s \left| \sum_{a} \pi(a|s) \gamma \sum_{s’} P(s’|s, a) (V_1(s’) - V_2(s’)) \right| \\
    &\leq \gamma \max_s \sum_{a} \pi(a|s) \sum_{s’} P(s’|s, a) |V_1(s’) - V_2(s’)| \\
    &\leq \gamma \max_s \sum_{a} \pi(a|s) \sum_{s’} P(s’|s, a) \Vert V_1 - V_2 \Vert_\infty \\
    &= \gamma \Vert V_1 - V_2 \Vert_\infty \quad (\text{注: } \sum_{a} \pi(a|s) \sum_{s’} P(s’|s, a) = 1)
    \end{align}
    $$
  • 也就是说,下面的式子成立:
    $$
    \Vert \mathcal{T}^\pi V_1 - \mathcal{T}^\pi V_2 \Vert_\infty \leq \gamma \Vert V_1 - V_2 \Vert_\infty
    $$
  • 至此,我们证得结论:贝尔曼算子 \( \mathcal{T}^\pi \) 是无穷范数下的压缩映射(\( \gamma \)-压缩),压缩因子为 \( \gamma \)

贝尔曼最优算子 \( \mathcal{T}^* \)(Optimal Control)

  • 贝尔曼最优算子定义为:
    $$
    (\mathcal{T}^* V)(s) = \max_{a} \left( r(s, a) + \gamma \sum_{s’} P(s’|s, a) V(s’) \right)
    $$
  • 对于任意两个值函数 \( V_1, V_2 \),设 \( a^*_1 \) 和 \( a^*_2 \) 分别是 \( \mathcal{T}^* V_1 \) 和 \( \mathcal{T}^* V_2 \) 的最优动作:
    $$
    \begin{align}
    \mathcal{T}^* V_1(s) - \mathcal{T}^* V_2(s) &= \left( r(s, a^*_1) + \gamma \sum_{s’} P(s’|s, a^*_1) V_1(s’) \right) - \left( r(s, a^*_2) + \gamma \sum_{s’} P(s’|s, a^*_2) V_2(s’) \right) \\
    &\leq \left( r(s, a^*_1) + \gamma \sum_{s’} P(s’|s, a^*_1) V_1(s’) \right) - \left( r(s, a^*_1) + \gamma \sum_{s’} P(s’|s, a^*_1) V_2(s’) \right) \\
    &= \gamma \sum_{s’} P(s’|s, a^*_1) (V_1(s’) - V_2(s’)) \\
    &\leq \gamma \Vert V_1 - V_2 \Vert_\infty
    \end{align}
    $$
  • 同理可得:
    $$
    \mathcal{T}^* V_2(s) - \mathcal{T}^* V_1(s) \leq \gamma \Vert V_1 - V_2 \Vert_\infty
    $$
  • 进一步将上面两个结论转换为绝对值,也就是说,下面的式子成立::
    $$
    | \mathcal{T}^* V_1(s) - \mathcal{T}^* V_2(s) | \leq \gamma \Vert V_1 - V_2 \Vert_\infty
    $$
  • 对绝对值取最大值,即得到无穷范数:
    $$
    \Vert \mathcal{T}^* V_1 - \mathcal{T}^* V_2 \Vert_\infty \leq \gamma \Vert V_1 - V_2 \Vert_\infty
    $$
  • 至此,我们证得结论:贝尔曼最优算子 \( \mathcal{T}^* \) 是无穷范数下的压缩映射(\( \gamma \)-压缩),压缩因子为 \( \gamma \)

比较两者的不动点

  • 贝尔曼算子 \( \mathcal{T}^\pi \) :用于策略评估(Policy Evaluation) ,计算给定策略 \( \pi \) 的值函数 \( V^\pi \)
    $$ (\mathcal{T}^\pi V)(s) = \mathbb{E}_{a \sim \pi} [ r + \gamma \mathbb{E}_{s’} V(s’) ] $$
    • 收敛到 \( V^\pi \),即 \( \mathcal{T}^\pi V^\pi = V^\pi \),且 \( V^\pi \) 是唯一不动点
  • 贝尔曼最优算子 \( \mathcal{T}^* \) :用于最优控制(Optimal Control) ,计算最优值函数 \( V^* \)
    $$(\mathcal{T}^* V)(s) = \max_a [ r + \gamma \mathbb{E}_{s’} V(s’) ] $$
    • 收敛到 \( V^* \),即 \( \mathcal{T}^* V^* = V^* \),且 \( V^* \) 是唯一不动点

一些补充思考

  • 折扣因子 \( \gamma < 1 \) 是关键,否则压缩性可能不成立(如无折扣问题 \( \gamma = 1 \) 时,可能不收敛)
  • 无穷范数 保证了压缩性,其他范数(如 \( L^2 \))不一定成立
  • 随机策略 vs. 确定性策略 :\( \mathcal{T}^\pi \) 适用于随机策略,而 \( \mathcal{T}^* \) 隐含地使用了确定性策略(取 max)

附录:神经网络近似的本质讨论

  • 神经网络近似本身可以看做是一种算子 \(\mathcal{\Pi}\):
    $$ (\mathcal{\Pi} q)(s,a) = \arg\min_{q’\in\Omega} \frac{1}{2}\Vert q(s,a) - q’(s,a)\Vert^2_2 $$
  • (未经过严格证明)一些讨论中会提到这种算子也是一种压缩映射。(注:即便如此,两个压缩映射(贝尔曼最优算子+神经网络近似)组合以后得映射也无法证明为压缩映射 ,即无法证明DQN的收敛性)