Administrator
发布于 2025-11-09 / 14 阅读

建模决策工具文档

第一部分:问题建模(Pre-Modeling)- 我的问题是什么类型?

在选择算法之前,您必须先将您的现实问题抽象为数学框架。根据第四章的内容,您的问题可以归入以下四种主要类型之一,它们的关键区别在于**“有无动作”(Agent是纯观测还是能决策)和“是否可观测”**(状态是透明的还是隐藏的)。

模型简称

模型全称

核心特征

关键新增元素

典型场景(来自课程)

MP / MRP

马尔可夫(奖励)过程

完全可观测 + 无动作

奖励 (R)

(MP) 纯粹的状态转移(如天气预测)
(MRP) 评估“状态好坏”(如迷宫格子价值)

HMM

隐马尔可夫模型

部分可观测 + 无动作

隐藏状态 (Z)

推断状态(如语音识别、手写识别)

MDP

马尔可夫决策过程

完全可观测 + 有动作

动作 (A), 策略 ()

强化学习的基础(如游戏AI、机器人决策)

POMDP

部分可观测马尔可夫决策过程

部分可观测 + 有动作

观测 (O), 观测函数 ()

复杂决策(如自动驾驶、医疗诊断)

结论: 绝大多数强化学习算法(如DP, Q-Learning, SARSA)都是为了解决 MDP 问题。如果您的状态“完全可观测”且Agent需要“做出动作”,请继续下一步。


第二部分:算法选型(Modeling)- 我该用什么算法?

一旦确定了问题是 MDP,您就可以通过以下决策流程来选择合适的算法。

决策流程:四大关键问题

  1. 我是否知道环境的“完整规则”? (Model-Based vs. Model-Free)

    • 是 (模型已知): 我完全知道状态转移概率 和奖励函数 。

      • → 转到 动态规划 (DP) 类别。

    • 否 (模型未知): 我不知道环境规则,必须通过“试错”和“采样”来学习。

      • → 转到 无模型 (Model-Free) 类别。

  2. 我(Agent)如何从经验中学习? (仅限Model-Free)

    • A. “等游戏结束再总结” (完整路径): 我必须等Agent走完一整条路径(Episode),拿到最终的“总回报”(),才能回头更新价值。

      • → 匹配 蒙特卡洛 (MC) 方法。

    • B. “边走边学,立即反思” (单步更新): 我不需要走完全程,Agent“每走一步”就可以利用“即时奖励 + 下一步的估算价值”来更新当前的价值。

      • → 匹配 时序差分 (TD) 方法。

  3. 我(Agent)是“自己学自己”还是“看高手学”? (仅限TD)

    • A. “自己摸索着学” (同策略, On-Policy): “行为策略”(我实际探索的)和“目标策略”(我用来评估的)是同一个策略。我用我“实际走的下一步”()来更新我的价值。

      • → 匹配 SARSA。

    • B. “兼收并蓄,学高手的操作” (异策略, Off-Policy): “行为策略”和“目标策略”是分离的。我可以“瞎玩”(行为策略),但我只学习“理论上的最优解”(目标策略,永远选 )。

      • → 匹配 Q-Learning。

  4. 我的优化目标是“价值”还是“策略”?

    • A. “价值优先” (Value-Based): 我的核心是求出一个“价值地图”(V或Q)。策略只是附带的(比如贪婪地选择Q值最高的动作)。

      • → 匹配 DP-价值迭代, Q-Learning, SARSA。

    • B. “策略优先” (Policy-Based): 我直接优化“策略函数” 本身,即直接学习“在某个状态下该做什么动作”的概率分布。

      • → 匹配 策略梯度 (PG) / PPO。

    • C. “二者结合” (Actor-Critic): 我同时学习一个“策略网络 (Actor)”(负责做动作)和一个“价值网络 (Critic)”(负责打分)。

      • → 匹配 AC 算法。


第三部分:算法选型核心对比表

此表总结了课程中提到的主要算法及其在建模决策中的位置:

算法 (Algorithm)

模型类型 (Model Type)

核心思想 (Core Idea)

策略类型 (Policy Type)

关键要求 / 适用场景

(DP) 策略迭代
(Policy Iteration)

有模型
(Model-Based)

不断循环“1. 策略评估”(算V值)和“2. 策略改进”(贪婪更新),直到策略不再变化。

N/A
(最终为最优确定性策略)

环境模型完全已知。
收敛快(迭代次数少),但单次迭代计算量大(需评估V值至收敛)。

(DP) 价值迭代
(Value Iteration)

有模型
(Model-Based)

“一步到位”的价值优化。只迭代更新价值V(使用 ),不显式更新策略。最后才用 一次性提取最优策略。

N/A
(最终为最优确定性策略)

环境模型完全已知。
收敛慢(迭代次数多),但单次迭代计算量小。

蒙特卡洛 (MC)

无模型
(Model-Free)

基于“大数定理”。使用“完整轨迹”的“实际总回报 ”来更新价值。

N/A
(评估方法)

必须用于回合制环境(有明确终点)。
适用于延迟和稀疏奖励问题。

时序差分 (TD)

无模型
(Model-Free)

“每走一步”就更新。使用 (TD目标)来更新 。

N/A
(评估方法)

无需等待回合结束。
适用于连续型或长时间运行的任务。

Q-Learning

无模型
(Model-Free)

TD的一种,异策略。更新Q值时,永远选择“理论最优 (Max Q)”的下一步价值。

异策略 (Off-Policy)

激进,始终学习最优策略。可利用历史经验(经验回放)。
适用于离散状态和动作空间。

SARSA

无模型
(Model-Free)

TD的一种,同策略。更新Q值时,选择“实际走出的下一步 (A')”的价值。

同策略 (On-Policy)

保守,学习的是当前探索策略下的可行策略。适用于离散状态和动作空间。

广义策略迭代 (GPI)

N/A (框架)

统一框架:将“策略评估”(用MC或TD)和“策略改进”(用-greedy)结合,使其适用于无模型环境。

N/A

Q-Learning 和 SARSA 都是GPI的具体实例。


评论