RL ML Learning Lab
02 / 07
单状态 → 多状态

从老虎机到网格世界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 值
γ 折扣因子 0.90

为什么学这步?

老虎机没有状态转移,而真实问题里「你做什么」会改变「你接下来在哪」。网格世界用最小的二维棋盘,把状态、动作、转移一次性讲清楚,是理解 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 定义、性质与应用

📝 课后练习

检验你的理解——答对为止