1. 强化学习的基本概念
1.1 什么是强化学习?
强化学习是一种机器学习范式,目标是通过与环境的交互,让智能体(Agent)学习如何采取行动以最大化长期的累积奖励(Cumulative Reward)。与监督学习(给定输入-输出对)和无监督学习(发现数据中的模式)不同,强化学习没有明确的“正确答案”,智能体需要通过试错(Trial-and-Error)来发现哪些行动能带来更多奖励。
类比:
想象你在玩一个迷宫游戏,你是智能体,迷宫是环境。你每走一步(行动)可能会靠近出口(奖励)或撞墙(惩罚)。你的目标是通过多次尝试,找到从起点到出口的最优路径。强化学习就是让计算机学会这个过程。
1.2 强化学习的核心组件
强化学习可以抽象为以下几个核心组件:
- 智能体(Agent):决策者,采取行动。
- 环境(Environment):智能体与之交互的外部世界。
- 状态(State, s∈Ss \in \mathcal{S}s∈S):描述智能体和环境的当前情况。
- 动作(Action, a∈Aa \in \mathcal{A}a∈A):智能体可以采取的行为。
- 奖励(Reward, r∈Rr \in \mathbb{R}r∈R):环境对智能体动作的反馈,通常是一个标量。
- 策略(Policy, π\piπ):智能体根据状态选择动作的规则,记为 π(a∣s)\pi(a|s)π(a∣s),表示在状态 sss 下选择动作 aaa 的概率。
- 回报(Return, GtG_tGt):从某一时刻开始的累积奖励,通常是折扣后的总和。
- 折扣因子(Discount Factor, γ∈[0,1]\gamma \in [0, 1]γ∈[0,1]):衡量未来奖励的重要性,γ=1\gamma = 1γ=1 表示未来奖励与当前同等重要,γ<1\gamma < 1γ<1 表示未来奖励的权重逐渐减小。
强化学习的目标:找到一个最优策略 π∗\pi^*π∗,使智能体在任意状态下采取行动后,能最大化期望的累积回报。
1.3 马尔可夫决策过程(MDP)
强化学习问题通常建模为马尔可夫决策过程(MDP),这是贝尔曼方程的基础。MDP 是一个数学框架,形式化地描述了智能体与环境的交互。MDP 由以下元素组成:
- 状态集合:S\mathcal{S}S
- 动作集合:A\mathcal{A}A
- 状态转移概率:P(s′∣s,a)P(s'|s, a)P(s′∣s,a),表示在状态 sss 下采取动作 aaa,转移到状态 s′s's′ 的概率。
- 奖励函数:R(s,a,s′)R(s, a, s')R(s,a,s′),表示从状态 sss 采取动作 aaa 转移到状态 s′s's′ 时获得的奖励。
- 折扣因子:γ\gammaγ
马尔可夫性:MDP 的核心假设是“未来只依赖于当前状态,与历史无关”。数学上:
P(st+1∣st,at,st−1,at−1,… )=P(st+1∣st,at)P(s_{t+1}|s_t, a_t, s_{t-1}, a_{t-1}, \dots) = P(s_{t+1}|s_t, a_t)P(st+1∣st,at,st−1,at−1,…)=P(st+1∣st,at)
这意味着当前状态 sts_tst 和动作 ata_tat 包含了预测未来状态 st+1s_{t+1}st+1 的所有必要信息。
例子:在迷宫中,你当前的位置(状态)决定了下一步可能到达的位置(状态转移)和是否获得奖励(靠近出口)。你过去的路径不影响下一步的概率。
2. 价值函数的引入
2.1 状态价值函数和动作价值函数
为了评估一个策略 π\piπ 的好坏,我们引入了价值函数,用来量化在某个状态或状态-动作对下,遵循策略 π\piπ 能获得的期望累积回报。
-
状态价值函数 Vπ(s)V^\pi(s)Vπ(s):
- 定义:在状态 sss 下,遵循策略 π\piπ,期望的累积回报。
- 数学形式:
Vπ(s)=Eπ[Gt∣st=s]V^\pi(s) = \mathbb{E}_\pi [ G_t \mid s_t = s ]Vπ(s)=Eπ[Gt∣st=s]
其中,回报 GtG_tGt 是从时间 ttt 开始的折扣累积奖励:
Gt=rt+1+γrt+2+γ2rt+3+⋯=∑k=0∞γkrt+k+1G_t = r_{t+1} + \gamma r_{t+2} + \gamma^2 r_{t+3} + \dots = \sum_{k=0}^\infty \gamma^k r_{t+k+1}Gt=rt+1+γrt+2+γ2rt+3+⋯=∑k=0∞γkrt+k+1
-
动作价值函数 Qπ(s,a)Q^\pi(s, a)Qπ(s,a):
- 定义:在状态 sss 下采取动作 aaa,然后遵循策略 π\piπ,期望的累积回报。
- 数学形式:
Qπ(s,a)=Eπ[Gt∣st=s,at=a]Q^\pi(s, a) = \mathbb{E}_\pi [ G_t \mid s_t = s, a_t = a ]Qπ(s,a)=Eπ[Gt∣st=s,at=a]
直观理解:
- Vπ(s)V^\pi(s)Vπ(s) 告诉你:如果你从状态 sss 开始,按照策略 π\piπ 行事,平均能拿到多少总奖励。
- Qπ(s,a)Q^\pi(s, a)Qπ(s,a) 告诉你:如果你在状态 sss 采取动作 aaa,然后继续按 π\piπ 行事,平均能拿多少总奖励。
2.2 为什么需要价值函数?
在强化学习中,智能体需要决定在每个状态下采取什么动作。直接计算每条路径的累积回报非常复杂,因为状态和动作的组合可能有无穷多种。价值函数提供了一种“压缩”的评估方式,让智能体只需要知道每个状态或动作的价值,就能高效地选择最优动作。
类比:在迷宫中,价值函数就像一个“评分表”,告诉你每个位置(状态)或每个方向(动作)的“前景”有多好。你可以根据评分选择最有希望的路径。
3. 贝尔曼方程的直观理解
3.1 贝尔曼方程的来源
贝尔曼方程(Bellman Equation)是基于 MDP 的递归关系,描述了价值函数的自我一致性。它告诉我们:一个状态的价值可以分解为当前奖励和未来状态的折扣价值之和。
直观解释:
假设你在迷宫的某个位置(状态 sss),你采取一个动作(aaa),会得到一个即时奖励(rrr),然后到达下一个位置(状态 s′s's′)。当前位置的价值不仅取决于这次的奖励,还取决于你从下一个位置开始能获得的未来奖励。贝尔曼方程就是将这个“当前 + 未来”的关系用数学形式表达出来。
3.2 为什么叫“贝尔曼”?
贝尔曼方程以美国数学家理查德·贝尔曼(Richard Bellman)命名,他在动态规划(Dynamic Programming)领域提出了这一递归思想。强化学习中的贝尔曼方程是动态规划思想在 MDP 上的具体应用。
4. 贝尔曼方程的数学推导
现在,我们正式推导贝尔曼方程,确保推导过程详细且严谨。
4.1 状态价值函数的贝尔曼方程
我们从状态价值函数

最低0.47元/天 解锁文章
419

被折叠的 条评论
为什么被折叠?



