强化学习的数学原理 | 赵世钰 | 西湖大学 | 笔记 | Lecture 3 | Part 1 | 贝尔曼最优公式(例子-如何改进策略)

目录

    • 前言
    • [1. Outline](#1. Outline)
    • [2. Motivating examples](#2. Motivating examples)
    • 结语
    • 参考

前言

学习赵老师讲授的强化学习的数学原理视频,本篇文章记录第三讲 Part 1:贝尔曼最优公式(例子-如何改进策略),记录个人学习笔记,和大家一起分享交流😄

videohttps://www.bilibili.com/video/BV1sd4y167NS

1. Outline

这次课我们将会介绍 最优策略 以及 贝尔曼最优公式,下图是我们整个课程的内容概要:

在上节课的时候我们介绍了 贝尔曼公式 ,这节课呢我们会介绍 贝尔曼最优公式贝尔曼最优公式是贝尔曼公式的一个特殊情况,这节课我们将会看到它是非常重要的一个式子。

希望大家在学习时重点关注 两个概念和一个工具 :这两个概念是 optimal state valueoptimal policy ,这一个工具就是 贝尔曼最优公式

大家要知道 强化学习的目的是什么呢?就是寻找最优策略,所以这节课我们讲的最优策略的定义,以及怎么样寻找最优策略,这是非常重要的,下面是我们这节课的一个内容大纲:

内容看起来比较多,但实际上每一部分比较短,大家可以去合理地规划自己的时间,我这里首先简要介绍一下:首先我们会介绍一个 motivating example ,然后我们给出 optimal policy ,以及 optimal state value 的定义。

之后我们就会详细地介绍,从第 3 小节到第 8 小节全是介绍 贝尔曼最优公式 ,包括这个式子是长什么样子,怎么样求解,它的解是什么样的,满足什么性质等等,有了 贝尔曼最优公式 我们就能求解出来 optimal policy ,那么 optimal policy 有哪些性质,我们在最后的时候会再分析一下。

2. Motivating examples

首先我们来看一个例子。

这个例子之前其实我们也看过很多次了,非常的简单,这里有一个策略 π \pi π ,图中绿色的箭头已经标出来策略 π \pi π 了,我们下面要做的实际上是两件事情,第一件事情就是求解 贝尔曼公式 得到 state value ,进而得到 action value,在那个基础之上我们会再进一步介绍一个很有意思的现象。

首先 贝尔曼公式 如下:

v π ( s 1 ) = − 1 + γ v π ( s 2 ) , v π ( s 2 ) = + 1 + γ v π ( s 4 ) , v π ( s 3 ) = + 1 + γ v π ( s 4 ) , v π ( s 4 ) = + 1 + γ v π ( s 4 ) . \begin{align*} v_{\pi}(s_{1}) &= -1 + \gamma v_{\pi}(s_{2}), \\ v_{\pi}(s_{2}) &= +1 + \gamma v_{\pi}(s_{4}), \\ v_{\pi}(s_{3}) &= +1 + \gamma v_{\pi}(s_{4}), \\ v_{\pi}(s_{4}) &= +1 + \gamma v_{\pi}(s_{4}). \end{align*} vπ(s1)vπ(s2)vπ(s3)vπ(s4)=−1+γvπ(s2),=+1+γvπ(s4),=+1+γvπ(s4),=+1+γvπ(s4).

这个实际上也是对我们上节课的复习,我可以对每一个状态都得到这样一个式子,以第一个式子为例:从 s 1 s_1 s1 出发,策略让 agent 向右走,得到 -1 的 immediate reward ,并跳到 s 2 s_2 s2 ,因此后面是 γ v π ( s 2 ) \gamma v_\pi(s_2) γvπ(s2) ,其它的式子也可以类似地这样得到。

这一组式子其实我们可以用很多方法来进行求解,因为是 线性方程组 ,当 γ = 0.9 \gamma=0.9 γ=0.9 时,我们可以得到这些 state value

v π ( s 4 ) = v π ( s 3 ) = v π ( s 2 ) = 10 , v π ( s 1 ) = 8. v_{\pi}(s_4) = v_{\pi}(s_3) = v_{\pi}(s_2) = 10, \qquad v_{\pi}(s_1) = 8. vπ(s4)=vπ(s3)=vπ(s2)=10,vπ(s1)=8.

具体过程大家可以自己去算一下,我们这里就直接给出来结果。

有了 state value 之后我们就可以求解 action value ,怎么求解呢?我们考虑以 s 1 s_1 s1 为例:

q π ( s 1 , a 1 ) = − 1 + γ v π ( s 1 ) = 6.2 , q π ( s 1 , a 2 ) = − 1 + γ v π ( s 2 ) = 8 , q π ( s 1 , a 3 ) = 0 + γ v π ( s 3 ) = 9 , q π ( s 1 , a 4 ) = − 1 + γ v π ( s 1 ) = 6.2 , q π ( s 1 , a 5 ) = 0 + γ v π ( s 1 ) = 7.2. \begin{alignat*}{2} q_\pi(s_1, a_1) &= -1 + \gamma v_\pi(s_1) = 6.2, \\ q_\pi(s_1, a_2) &= -1 + \gamma v_\pi(s_2) = 8, \\ q_\pi(s_1, \textcolor{blue}{a_3}) &= 0 + \gamma v_\pi(s_3) = 9, \\ q_\pi(s_1, a_4) &= -1 + \gamma v_\pi(s_1) = 6.2, \\ q_\pi(s_1, a_5) &= 0 + \gamma v_\pi(s_1) = 7.2. \end{alignat*} qπ(s1,a1)qπ(s1,a2)qπ(s1,a3)qπ(s1,a4)qπ(s1,a5)=−1+γvπ(s1)=6.2,=−1+γvπ(s2)=8,=0+γvπ(s3)=9,=−1+γvπ(s1)=6.2,=0+γvπ(s1)=7.2.

s 1 s_1 s1 一共有 5 个 action ,每一个 action 都有一个 action value ,比如说我们考虑 a 3 a_3 a3 ,在 s 1 s_1 s1 我往下走采取动作 a 3 a_3 a3 我会得到什么呢?

首先我会得到一个 0 immediate reward ,然后我会跳到 s 3 s_3 s3 也就是 γ v π ( s 3 ) \gamma v_{\pi}(s_3) γvπ(s3) ,将 γ = 0.9 \gamma = 0.9 γ=0.9 以及 v π ( s 3 ) = 10 v_\pi(s_3) = 10 vπ(s3)=10 代入之后,就得到 9,其它的也是类似地都可以这样得到。

这里之所以把 a 3 a_3 a3 标成蓝色,是因为 a 3 a_3 a3 对应的 action value 是最大的

有了这些准备工作以及对上节课简要的复习之后,我们就可以提出一个很有意思的问题,什么问题呢?就是当前这个策略实际上是不太好的,为什么呢?因为在 s 1 s_1 s1 的时候它要往右走,这会进入 forbidden area ,所以我们怎么样去 改进这个策略 得到一个更好的策略呢?

这个答案就依赖于 action value

首先我们来看一下现在的这个策略, current policy π ( a ∣ s 1 ) \pi(a|s_1) π(a∣s1) 可以写成一种什么样的形式呢?可以写成下面这种形式:

π ( a ∣ s 1 ) = { 1 a = a 2 0 a ≠ a 2 \pi(a \mid s_1) = \begin{cases} 1 & a = a_2 \\ 0 & a \neq a_2 \end{cases} π(a∣s1)={10a=a2a=a2

当 a = a 2 a=a_2 a=a2(即向右走)时,概率为 1;当 a ≠ a 2 a \neq a_2 a=a2 时,概率为 0。

在这个策略下我们已经计算出来了 action value ,我们刚刚计算出来的并且发现 a 3 a_3 a3 对应的 action value 是最大的 ,所以我们能不能把 "在 s 1 s_1 s1 处选择 a 3 a_3 a3" 作为 新的策略 呢?答案是可以的,新策略如下:

π new ( a ∣ s 1 ) = { 1 a = a ∗ 0 a ≠ a ∗ \pi_{\text{new}}(a \mid s_1) = \begin{cases} 1 & a = a^* \\ 0 & a \neq a^* \end{cases} πnew(a∣s1)={10a=a∗a=a∗

其中, a ∗ = arg max ⁡ a q π ( s 1 , a ) = a 3 a^* = \argmax_a q_\pi(s_1, a) = a_3 a∗=argmaxaqπ(s1,a)=a3 。

具体来说,新策略 在 s 1 s_1 s1 处:当 a = a ∗ a=a^* a=a∗ 的时候它的概率是 1,当 a ≠ a ∗ a \neq a^* a=a∗ 的时候它的概率是 0,也就是说这个新的策略 一定会选择 a ∗ a^* a∗

那 a ∗ a^* a∗是什么呢? a ∗ a^* a∗ 就对应了这个 action value 最大的那个 action ,在这个例子里边就是 a 3 a_3 a3 ,也就是说之前这个策略是往右走,那么这个新策略 π new \pi_{\text{new}} πnew 在 s 1 s_1 s1 处改为往下走。

那大家也看到了,往右走不太好,往下走其实真的是比较好的一个策略,因为它正好 绕开了这个 forbidden area

所以为什么我们刚才选择 action value 最大的那个 action,就能够得到一个比较好的策略呢?

这个从直观上来说就是因为这个 action value,它本身就代表了 action 的价值 ,如果我选择一个 action 它的 action value 很大 ,那就意味着之后我能得到很多的 reward,相应的策略也会更好,这在直观上是很容易理解的。

但是数学上其实并不是那么容易理解的,为什么呢?因为这个例子其实非常简单, s 2 , s 3 , s 4 s_2, s_3, s_4 s2,s3,s4 处的策略都已经是最优的,所以在 s 1 s_1 s1 处选择 action value 最大的动作,恰好就是往下走。

但是如果不是这种情况呢?比如说在 s 2 s_2 s2 的时候它是往上走, s 4 s_4 s4 的时候往下走, s 3 s_3 s3 的时候往左走,这些动作都会撞上边界或远离 target,显然不是好的选择,那我在 s 1 s_1 s1 如果我还计算 action value 最大的,我是否仍然能够得到这时候最优的 action 呢?

这里面就有一些不确定性在里边,但是我现在可以告诉大家的是, 只要我们一遍一遍地这样做,不断地迭代,最后一定会得到一个最优的策略

具体来说:对每个状态都选择 action value 最大的那个 action,得到一个新策略;再对这个新策略重复同样的操作,又得到更新的策略。如此反复,策略最终会 收敛到最优策略

实际上这个过程已经超出了我们直观的理解,我们有必要依赖 数学工具 进行更严格、更透彻的分析,那这个数学工具实际上就是 贝尔曼最优公式

结语

本讲第一部分从一个简单的例子出发,自然地引出了策略改进(policy improvement)的核心思想:先求解给定策略下的 state value,进而计算所有 action value,然后贪婪地选择 action value 最大的动作构成新策略。在这个例子中,旧策略在 s 1 s_1 s1 选择往右走(进入 forbidden area,action value 为 8),而新策略选择往下走(action value 为 9),直观上确实绕开了 forbidden area,是一个更好的策略。

然而,这个例子的简单性掩盖了问题的真正难度:当其它状态上的策略本身并非最优时,贪婪选择是否仍然有效?直觉在此已不再可靠,我们需要严格的数学工具来回答。这个工具正是贝尔曼最优公式(Bellman optimality equation)---它从理论上保证了通过反复的 "求解-贪婪改进" 迭代,策略最终会收敛到最优策略。接下来的部分,我们将正式定义 optimal state value 与 optimal policy,并深入探讨贝尔曼最优公式的求解及其性质 🤗。

参考

相关推荐
爱听歌的周童鞋2 小时前
强化学习的数学原理 | 赵世钰 | 西湖大学 | 笔记 | Lecture 3 | Part 2 | 贝尔曼最优公式(最优策略和公式推导)
强化学习·贝尔曼最优公式·optimal policy·action value·maximization
夫唯不争,故无尤也1 天前
On-Policy Distillation(OPD)和reinforcement (RL)结合
llm·agent·强化学习·rl·opd
夫唯不争,故无尤也1 天前
Agentic Search + RL :打通从RL原理到实际训练全流程
人工智能·深度学习·机器学习·强化学习·rl
云和数据.ChenGuang2 天前
git revert回退问题
java·服务器·人工智能·git·fastapi·强化学习
魔术师Grace3 天前
Agent总出错,什么时候才该训练模型?
llm·agent·强化学习
爱听歌的周童鞋3 天前
强化学习的数学原理 | 赵世钰 | 西湖大学 | 笔记 | Lecture 2 | Part 4 | 贝尔曼公式(公式向量形式与求解)
强化学习·贝尔曼公式·matrix-vector·closed-form·iterative
海天一色y3 天前
强化学习工具函数详解:从经验回放到优势函数计算
人工智能·python·强化学习
网络工程小王4 天前
【LLM开发实验】强化学习实现原理及实战
深度学习·强化学习·rlhf·ppo·dpo·grpo
白拾5 天前
【arXiv 2026】LoGos:把人类思考带回围棋——通用大模型的专业领域专家之路|从围棋AI与LLM推理交叉视角
强化学习·大模型推理·arxiv 2026·logos 论文分享·围棋ai·专家知识注入