单状态 → 多状态
从老虎机到网格世界From Bandits to GridWorld
第一步跨越:从「没状态」到「有状态」。用 3×3 小网格理解 V(s)、Q(s,a) 与策略箭头。
2 小时
阅读 + 实操
2 个
交互演示
入门
难度
从老虎机到网格世界 · 交互演示
状态数9
V(起点)0.62
步数12
当前选中的格子: (0,0) 状态值 V: -- 迭代步数: 0 max ΔV: --
💡 点击左侧格子查看 Q 值
为什么学这步?
老虎机没有状态转移,而真实问题里「你做什么」会改变「你接下来在哪」。网格世界用最小的二维棋盘,把状态、动作、转移一次性讲清楚,是理解 MDP 的必经台阶。
📌 发生了什么
- 状态 s 是当前所在格子,动作 a 是上下左右
- 策略 π 给每个状态一个动作(箭头)
- 价值 V(s) 表示从该状态出发能拿到的期望回报
- Q(s,a) 表示「在该状态选该动作」的好坏
⚠️ 常见陷阱
- 把 V 和 Q 混为一谈:V 是状态值,Q 是状态-动作值
- 忽略折扣 γ:太靠近终点却给远处同样权重会学歪
✅ 本章小结
- 网格世界 = 多状态、确定性转移的 MDP
- 箭头即确定性策略 π(s)
- V(s)=maxₐ Q(s,a) 是价值与动作价值的桥梁
📐 MDP 五元组与回报
从老虎机到网格世界,引入了状态、转移与折扣。MDP 用一个五元组完整刻画。
五元组:S 是状态集,A 是动作集,P(s'|s,a) 是转移概率,R 是奖励函数,γ∈[0,1] 是折扣因子。
状态转移:在状态 s 执行动作 a 后到达 s' 的概率。网格世界里转移通常是确定性的(P=1)。
回报 G_t:从时刻 t 起的折扣累积奖励。γ 越接近 1 越重视长远回报,γ=0 则只看眼前一步。
🎛 折扣因子 γ 对比
γ 决定智能体多「远视」。下方演示器可拖动 γ,观察 V(s) 如何随之变化。
| γ 值 | 表现 | 结果 |
|---|---|---|
| γ = 0 | 只看下一步奖励,完全短视 | 贪心短视 |
| γ = 0.9 | 兼顾近期与远期,价值平滑传播 | 推荐区间 |
| γ = 0.99 | 极度重视长远,收敛慢但对远期敏感 | 远视但难收敛 |
💡 γ 必须严格小于 1 才能保证无穷序列回报有限(级数收敛)。
💻 GridWorld step 函数
确定性网格世界的转移函数:执行动作返回下一状态与奖励。
// 3x3 网格,(r,c) 为行列,终点在 (2,2)
const ROWS = 3, COLS = 3;
const GOAL = { r: 2, c: 2 };
const ACTIONS = { up:[-1,0], down:[1,0], left:[0,-1], right:[0,1] };
function step(state, action) {
let nr = state.r + ACTIONS[action][0];
let nc = state.c + ACTIONS[action][1];
// 撞墙则原地不动
if (nr < 0 || nr >= ROWS || nc < 0 || nc >= COLS) {
return { next: state, reward: -0.1 }; // 撞墙小惩罚
}
let reward = -0.04; // 每步小成本
if (nr === GOAL.r && nc === GOAL.c) reward = 1; // 到达终点
return { next: { r: nr, c: nc }, reward };
}
📚 参考文献与延伸阅读
- Sutton & Barto, Reinforcement Learning (2nd ed.), §3 Finite Markov Decision Processes — MDP 五元组、回报与策略的正式定义
- Russell & Norvig, Artificial Intelligence: A Modern Approach — GridWorld 经典案例与折扣回报
- Wikipedia: Markov decision process — MDP 定义、性质与应用
📝 课后练习
检验你的理解——答对为止