1.强化学习基本概念

强化学习的所有理论,都建立在一个统一的数学框架上,叫做 马尔可夫决策过程 (MDP, Markov Decision Process)

强化学习基本概念

MDP 的五元组 (S,A,P,R,γ)(S, A, P, R, \gamma)(S,A,P,R,γ)

任何一个标准的 MDP 都由以下五个核心元素组成:

1. SSS (State Space,状态空间)

环境在某一时刻的所有可能情况。比如下围棋时的棋盘局面,或者机器人当前的坐标和速度。

2. AAA (Action Space,动作空间)

智能体(Agent)能做的所有事情。比如围棋里的"落子位置",或者机器人的"向左转、向右转"。

3. PPP (Transition Probability,状态转移概率)

P(s′∣s,a)P(s'|s, a)P(s′∣s,a),它的意思是:如果在状态 sss 采取了动作 aaa,有多大的概率会变成状态 s′s's′

这体现了环境的随机性(Stochasticity)。

4. RRR (Reward Function,奖励函数)

R(s,a)R(s, a)R(s,a)。它的意思是:在状态 sss 做了动作 aaa,环境给多少分?

这是强化的来源,告诉智能体好坏。

5. γ\gammaγ (Discount Factor,折扣因子)

γ∈[0,1]\gamma \in [0, 1]γ∈[0,1]。它用来衡量我们通过多大程度看重"未来的奖励"。

如果 γ=0\gamma=0γ=0,智能体就是"短视"的(只看眼前);如果 γ\gammaγ 接近 1,智能体就是"远视"的。

其他概念

6. Return (回报 / 累积奖励, GtG_tGt)

定义 :从 ttt 时刻开始,一直到游戏结束,所有未来奖励的总和。

这是 RL 真正的**"终极目标"**。

公式

如果没有折扣:
Gt=Rt+1+Rt+2+Rt+3+⋯+RT G_t = R_{t+1} + R_{t+2} + R_{t+3} + \dots + R_T Gt=Rt+1+Rt+2+Rt+3+⋯+RT

加入折扣因子 (γ\gammaγ) 后
Gt=Rt+1+γRt+2+γ2Rt+3+⋯=∑k=0∞γkRt+k+1 G_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

为什么要有折扣?

  1. 数学收敛 :如果游戏无限长(比如股市),不打折的话 GtG_tGt 会变成无穷大,没法算了。
  2. 不确定性:未来的承诺不可靠,现在的 100 块比明年的 100 块值钱。

直观理解

  • RRR 是今天的工资
  • GGG 是你这辈子的总资产
  • DQN 里的 Target 其实就是在估算这个 GGG。

7.Policy (策略, π\piπ)

定义 :智能体的大脑 。它定义了在某个状态 sss 下,应该采取什么动作 aaa。

两种形式

  1. 确定性策略 (Deterministic Policy)

    • 公式 :a=π(s)a = \pi(s)a=π(s)
    • 含义 :看到墙,一定往左转。
    • 例子 :你代码里的 argmax 操作,就是确定性策略(选 Q 值最大的那个)。
  2. 随机性策略 (Stochastic Policy)

    • 公式 :π(a∣s)=P(At=a∣St=s)\pi(a|s) = P(A_t=a | S_t=s)π(a∣s)=P(At=a∣St=s)
    • 含义 :看到墙,80% 概率往左,20% 概率往右。
    • 例子 :你代码里的 epsilon-greedy,在随机探索阶段,就是一种随机策略。

RL 的目的 :找到一个最优策略 π∗\pi^*π∗ ,使得在这个策略下获得的 GtG_tGt 最大。

8. Value Function (价值函数)

这是 RL 中最容易混淆,但也最重要的概念。它用来衡量**"当前局势有多好"**。

它分为两种:V值Q值

A. 状态价值函数 Vπ(s)V_\pi(s)Vπ(s) (State-Value Function)
  • 定义 :当我站在状态 sss,并且通过策略 π\piπ 玩下去,我预期 能拿到的回报 GGG 是多少?
  • 通俗 :这个位置好不好?
  • 例子 :下围棋时,棋盘当前的局势。虽然还没赢,但大师一看就知道"黑子赢面大",这个"赢面"就是 V(s)V(s)V(s)。
B. 动作价值函数 Qπ(s,a)Q_\pi(s, a)Qπ(s,a) (Action-Value Function)
  • 定义 :当我站在状态 sss,强制采取动作 aaa ,然后后续继续用策略 π\piπ 玩下去,我预期能拿到的回报 GGG 是多少?
  • 通俗 :在这个位置,这一招出得好不好?
  • 关系 :V(s)V(s)V(s) 其实就是 Q(s,a)Q(s, a)Q(s,a) 的平均值(或者最大值)。
    V(s)=max⁡aQ(s,a) V(s) = \max_a Q(s, a) V(s)=amaxQ(s,a) (意思就是:这个位置好不好,取决于在这个位置能做出的最好的那个动作好不好。)

为什么 DQN 选 Q 而不是 V?

  • 如果知道 Q(s,a)Q(s, a)Q(s,a),我们只需要选 a=arg⁡max⁡Q(s,a)a = \arg\max Q(s, a)a=argmaxQ(s,a) 就能决策。
  • 如果只知道 V(s)V(s)V(s),我们知道状态 sss 很好,但不知道怎么做 才能进入下一个好状态 s′s's′(除非你知道环境的物理模型)。

9. Bellman Equation (贝尔曼方程)

这是强化学习的**"牛顿第二定律",它描述了 当前价值未来价值**之间的递归关系。

公式(以 Q 值为例)
Q(s,a)=R⏟即时奖励+γ⋅max⁡a′Q(s′,a′)⏟未来的好日子 Q(s, a) = \underbrace{R}{\text{即时奖励}} + \underbrace{\gamma \cdot \max{a'} Q(s', a')}_{\text{未来的好日子}} Q(s,a)=即时奖励 R+未来的好日子 γ⋅a′maxQ(s′,a′)

解读

  • 这就是你代码里 Target = reward + gamma * next_q 的数学原型。
  • 它告诉我们:不需要等到游戏结束才知道这一步好不好,只要看看眼前拿了多少分 ,再加上下一步那个位置值多少分就行了。
  • 自举 (Bootstrapping) :用 Q(s′)Q(s')Q(s′) 去更新 Q(s)Q(s)Q(s),就是基于贝尔曼方程。

总结一张表

概念 符号 含义
State StS_tSt 现在的环境状况
Action AtA_tAt 我做的动作
Reward RtR_tRt 这一步环境给的分
Return GtG_tGt 未来的总分 (打折后)
Policy π\piπ 决策逻辑 (怎么选动作)
Q-Value Q(s,a)Q(s,a)Q(s,a) 这一招的长期价值
Gamma γ\gammaγ 远见程度

马尔可夫决策过程(Markov Decision Process,简称 MDP)

1. MDP 的核心概念

用一句话概括:MDP 是一个用来描述"决策者"与"环境"进行交互的数学模型。

它将现实世界中复杂的决策问题抽象成一个标准化的过程:你在某个状态 ,做了一个动作 ,环境反馈给你一个奖励 ,并把你带入下一个状态

关键前提:马尔可夫性质 (The Markov Property)

这是 MDP 名字中"M"的由来,也是最核心的假设:

"未来的状态只取决于当前的状态和当前的动作,而与过去的历史无关。"

数学表达:P(St+1∣St)=P(St+1∣S1,S2,...,St)P(S_{t+1} | S_t) = P(S_{t+1} | S_1, S_2, ..., S_t)P(St+1∣St)=P(St+1∣S1,S2,...,St)

这意味着,只要知道现在的局面(State),就不需要知道你是怎么走到这一步的,依然可以做出最优决策。


2. 提出背景 (Background)

MDP 的概念并非一开始就是为了 AI 提出的,它源于数学和运筹学。

  • 马尔可夫链 (Markov Chain): 20 世纪初,俄罗斯数学家安德雷·马尔可夫(Andrey Markov)研究了一种随机过程,即状态在随时间变化,且具有"无记忆性"(即马尔可夫性质)。但这只是描述系统的自然演变,没有人的"干预"。
  • 加入"决策" (Decision): 1950 年代,美国数学家 理查德·贝尔曼 (Richard Bellman) 在研究最优控制问题时,在马尔可夫链的基础上加入了"动作"和"奖励"的概念。
  • 目的: 当时是为了解决工业生产、库存管理等运筹学问题。比如:仓库里剩多少货(状态),要不要进货(动作),进货需要成本且卖出有利润(奖励)。贝尔曼提出了著名的贝尔曼方程 (Bellman Equation),通过动态规划(Dynamic Programming)来解这类问题。

演变到 AI: 后来,计算机科学家发现这个框架完美契合"让机器自己学习如何做任务"的需求,于是将其作为强化学习的底层数学模型。


3. 为什么 MDP 对强化学习非常重要?

MDP 是强化学习的公理化基础。它的重要性体现在以下几点:

  1. 通用性(Standardization):

    MDP 提供了一个通用的接口 。无论是教机器人走路、训练 AI 打 Dota、还是调节数据中心的冷却系统,本质上都不一样,但都可以被强制映射为 (S,A,P,R,γ)(S, A, P, R, \gamma)(S,A,P,R,γ)。这使得我们要开发一套算法(如 DQN 或 PPO),就可以解决成千上万种不同的问题。

  2. 可计算性(Computability):

    如果没有 MDP 的"马尔可夫性质",智能体就需要记住从出生到现在的所有历史数据才能做决定,这会导致计算量爆炸。MDP 假设"当前状态包含了所有必要信息",极大地简化了计算复杂度。

  3. 定义了"最优"的标准:

    MDP 明确了强化学习的目标不是"乱动",而是最大化累积期望回报。有了 MDP,我们才能写出数学公式来定义什么是"最好的策略(Optimal Policy)"。


4. MDP 在强化学习中的作用

MDP 在 RL 流程中起到了"地图"和"规则书"的作用:

  1. 环境建模 (Environment Modeling):

    它将模糊的现实问题转化为数学问题。

    • 例子: 自动驾驶。现实很复杂,但通过 MDP,我们将其定义为:
      • SSS: 摄像头图像、雷达数据。
      • AAA: 方向盘角度、油门刹车力度。
      • RRR: 安全行驶+1,撞车-1000。
    • 一旦定义好,RL 算法就可以进场工作了。
  2. 推导核心公式 (Deriving Algorithms):

    强化学习中所有的核心概念,如策略 (Policy, π\piπ)价值函数 (Value Function, V(s)V(s)V(s))动作价值函数 (Q-value, Q(s,a)Q(s,a)Q(s,a)),全部是基于 MDP 的定义推导出来的。

    • 如果没有 MDP 中的 PPP(转移概率)和 RRR(奖励),就无法写出贝尔曼方程,也就无法进行迭代更新。
  3. 处理长期规划 (Long-term Planning):

    MDP 通过折扣因子 γ\gammaγ 和状态转移,让智能体学会"延迟满足"。

    • 比如下棋,这就好比"弃子争先"。当前这一步(Action)可能导致丢掉一个子(负 Reward),但根据 MDP 的推演,这个状态 SSS 能以很高的概率 PPP 转移到一个能赢棋的优势状态 S′S'S′。MDP 的结构让 AI 能看懂这种长远的利益链条。

总结

  • 背景: 源于 1950 年代贝尔曼对运筹学和控制论的研究。
  • 概念: 一个五元组 (S,A,P,R,γ)(S, A, P, R, \gamma)(S,A,P,R,γ),描述了在不确定环境下进行序贯决策的过程。
  • 作用: 它是强化学习的物理定律。它将"智能"具体化为"在 MDP 图中寻找一条累积奖励最高的路径"。

简单来说:如果你想用强化学习解决一个问题,第一步永远是------"把这个问题定义成一个 MDP"。


相关推荐
iiiiii111 小时前
【论文阅读笔记】FOCAL 离线元强化学习,从静态数据中快速适应新任务
论文阅读·人工智能·笔记·学习·机器学习·学习方法·具身智能
荒野火狐1 小时前
【强化学习】关于PPO收敛问题
python·深度学习·机器学习·强化学习
江上鹤.1481 小时前
Day 28 复习日
人工智能·python·机器学习
进阶的小蜉蝣1 小时前
[Machine Learning] 机器学习中的Collate
人工智能·机器学习
火山引擎开发者社区2 小时前
Vector Bucket:云原生向量存储新范式
人工智能·机器学习·云原生
(; ̄ェ ̄)。2 小时前
机器学习入门(二),KNN近邻算法
人工智能·机器学习·近邻算法
算法与编程之美2 小时前
理解pytorch中的L2正则项
人工智能·pytorch·python·深度学习·机器学习
Cathy Bryant2 小时前
概率论直觉(三):边缘化
笔记·机器学习·数学建模·概率论