82 镜一次看完 · Ctrl+F 可搜全文 · Ctrl+P 可存成 PDF · 想看动画回放映厅
知识点 1 · 总结
核心结论
反例两行:P = [[0,1],[1,0]],d₀=(1,0) ⟹ d 在 (1,0) 与 (0,1) 之间永远震荡,不收敛。
底层机制
正确条件是不可约 + 非周期 + 有限状态(Perron–Frobenius),讲座一条都没说。
常见误解
误解:「有随机性就会混合」。随机性既不必要也不充分 —— 决定收敛的是链的图结构。
与你的考试
收敛速率由 P 的第二大特征值给出:例中 0.7,故 d_t(A)=2/3+(1/3)·0.7^t。
知识点 1 · 检验
P = [[0,1],[1,0]],d₀ = (1, 0)。关于 d_t 当 t→∞,下面哪句是对的?
这条链周期为 2,d_t 的奇偶性完全决定它等于 (1,0) 还是 (0,1),永远不收敛。「收敛到 (0.5,0.5)」混淆了两件事:(0.5,0.5) 确实是该链唯一的平稳分布(它满足 dP = d),而且时间平均(Cesàro 平均)也确实收敛到它 —— 但分布本身不收敛。所以第四项「不存在平稳分布」也是错的:平稳分布存在且唯一,坏掉的是「从任意起点收敛到它」这一步,而那需要非周期性。第三项把「不收敛」误读成「收敛得慢」,这两者在数学上没有任何关系。
知识点 2 · 总结
核心结论
三条路给出同一个 V(已逐位核对):MC 误差 N^(−1/2)、闭式 |S|³、迭代每轮 |S|² 且误差 γ^k 衰减。
底层机制
关键差别不是精度,是可迁移性:加 max_a 后方程非线性,闭式解失效,而迭代原样能用。
常见误解
误解:「迭代是没有解析解时的将就」。反了 —— 闭式解才是只在固定策略这一特例下成立的。
与你的考试
每轮复杂度:MRP/策略评估 |S|²,但值迭代是 |S|²|A|,讲座没说,别直接搬。
知识点 2 · 检验
为什么控制问题(求 V*)里不能用 V = (I − γP)⁻¹R 这条路?
闭式解成立的前提是方程关于 V 线性:V = R + γPV。而最优方程是 V*(s)=max_a[R(s,a)+γΣP(s'|s,a)V*(s')],max 把它变成非线性,不存在一个固定的 P 矩阵可以提出来求逆 —— 每个状态用哪一行取决于当前的 V。这是原理性的障碍,不是代价问题:即使 |S|=2、即使数值完全稳定,这条路照样走不通。代价和数值稳定性都是真实存在的次要顾虑,但它们只在方程线性时才轮得到考虑。第四项则是事实错误:控制问题里 γ 同样可以小于 1。
知识点 3 · 总结
核心结论
行随机 ⟺ P·1 = 1 ⟹ (I−γP)·1 = (1−γ)·1。γ<1 必可逆;γ=1 时精确奇异。
底层机制
γ=1 的解不唯一:V 是解则 V+c·1 也是解,常数原样穿过 P。有唯一解 = 可逆。
常见误解
误解:「可逆是数值问题,偶尔病态」。这里是代数二分,没有中间地带。
与你的考试
代价连续:条件数 ~ 1/(1−γ)。γ=0.99 → 100 量级,长时域下闭式解数值上也失效。
知识点 3 · 检验
γ = 1 时 (I − P) 为什么不可逆?
行随机的定义就是每行和为 1,即 P·1 = 1;于是 (I−P)·1 = 1 − 1 = 0,全 1 向量被映成零向量,零空间非平凡,矩阵奇异。等价的说法:解相差任意常数 c·1 都仍是解,解不唯一。「值函数发散所以无解」是另一回事,而且方向反了 —— 这里的毛病是解太多不是太少;发散与否还取决于奖励结构(全零奖励时 V=0 就是一个有界解,但 V=c·1 同样是解)。「γ=1 时 P 不再随机」是概念混淆:γ 是折扣因子,完全不影响 P 本身。第一项把代数奇异误当成浮点误差。
知识点 4 · 总结
核心结论
R^π(s)=Σ_a π(a|s)R(s,a),P^π(s′|s)=Σ_a π(a|s)P(s′|s,a) ⟹ V^π(MDP)=V(诱导 MRP)。
底层机制
π 不是在 MDP 里选一条路,π 是在选一个 MRP:每个策略对应一组不同的 (R^π, P^π)。
常见误解
误解:「多一个动作维度就要新算法」。这是恒等变换,MC / 闭式解 / 迭代 DP 全部继承。
与你的考试
复杂度:策略评估每轮 |S|²(π 固定),值迭代每轮 |S|²|A| —— 别把前者搬给后者。
知识点 4 · 检验
同一个 MDP 下,π_left 与 π_right 的值函数形状完全不同。最准确的说法是?
MDP 的 P(s′|s,a) 和 R(s,a) 是环境的,策略动不了它们。策略做的是给每个状态指定一个动作分布,从而把 (P, R) 按 π 加权成 (P^π, R^π) —— 这就诱导出一个新的 MRP,而 V^π 正是那个 MRP 的解。「改变了 P(s′|s,a)」把智能体的选择和环境的动力学搞混了,这是 RL 里最常见的概念错位之一。「折扣方式变了」也不对:γ 是问题定义的一部分,两个策略用的是同一个 γ。「算法不同」更是反的 —— 本集两条曲线用的都是闭式解,差别完全来自 π。
知识点 5 · 总结
核心结论
火星车 2⁷ = 128。指数上是状态数,因为每个状态独立选一次动作。
底层机制
有限 ⟹ 策略迭代必终止(同一策略不会出现两次);且最优解一定落在这个有限集合里。
常见误解
误解:14(那是 Q 表格子数)或 49(底数指数写反)。口诀:指数 = 独立做选择的次数。
与你的考试
「存在确定性平稳最优策略」只在无限时域 + 折扣 + 有限下成立;有限时域下最优策略非平稳。
知识点 5 · 检验
一个 MDP 有 20 个状态、4 个动作。确定性策略有多少个?
每个状态独立选一个动作,20 个状态各有 4 种选法,所以是 4²⁰ ≈ 1.1×10¹²。80数的是 Q 表的格子数(状态-动作对),不是策略数。20⁴把底数和指数写反了 —— 指数上必须是独立做选择的次数,也就是状态数。「无穷多」混淆了两个集合:随机策略确实有无穷多个(每个状态上是一个单纯形),但问的是确定性策略;而且本讲的定理保证,在无限时域折扣有限 MDP 下,最优值已经能被这 4²⁰ 个里的某一个取到,那无穷多的随机策略一个都不需要。
知识点 6 · 总结
核心结论
两个动作:① V^π ≤ max_a Q^π;② 把那个 max 写成 π₂ 的定义。反复代入 ⟹ V^π₁ ≤ V^π₂ 逐状态成立。
底层机制
每代入一次锁死一个时间步,尾项 γ^k·V^π₁ → 0(要 γ<1 且奖励有界);极限处整条轨迹都是 π₂。
常见误解
误解:「贪心只保证第一步,后面可能亏回去」。前半句对,后半句假设了代入只能做一次。
与你的考试
严格改进 + 策略空间有限 ⟹ 策略迭代终止。但「终止即最优」讲座没证(需贪心不动点 ⟹ Bellman 最优方程)。
知识点 6 · 检验
策略改进定理的证明里,「反复代入」这一步到底在做什么?
每次代入做的是:对残留的 V^π₁(s′) 再用一次 V^π ≤ max_a Q^π,于是那一个时间步的动作被换成 π₂,而剩下的 V^π₁ 被推后一步、系数多乘一个 γ。k 次之后前 k 步全是 π₂,尾项是 γ^k·V^π₁ → 0(这里必须有 γ<1 和奖励有界)。「替换 Q^π₁ 成 Q^π₂」方向反了:全程用的都是旧策略的 Q,新策略是从它的 argmax 里读出来的。「证明 π₂ 在前 k 步最优」是更强且不成立的命题 —— 定理只说 π₂ 不劣于 π₁,没说它最优。夹逼不需要:只用到单侧的界加上尾项趋零。
知识点 7 · 总结
核心结论
火星车实测:VI 的 V₂=(1.90,0.45,0,0,0,4.50,19.00),其贪心策略 ←←←←→→→ 的真实值是 (10,8.18,6.69,5.48,66.94,81.82,100)。同一策略,差一个量级。
底层机制
V_k 是「只剩 k 步」时的最优值 —— 一个有限时域问题的解,不是任何策略在原问题下的值。
常见误解
误解:「V_k 是当前贪心策略的值函数」。也别把她那句话缩写成「VI 始终维持最优策略」。
与你的考试
轮数不可直接比:PI 每轮内含一次完整评估(~|S|³),VI 每轮只是一次 |S|²|A| 扫描。
知识点 7 · 检验
值迭代跑到第 k 轮,从 V_k 贪心读出策略 π_k。下面哪句正确?
V_k 是「只剩 k 步可走」时的最优值,是一个有限时域问题的解。「V_k = V^{π_k}」被本集的数字直接证伪:V₂=(1.90,…,19.00) 而同一策略的真实值是 (10,…,100)。「π_k 一定不如 PI 的策略」也是错的 —— 本例里 VI 第 2 轮和 PI 第 2 轮读出的恰好是同一个策略,差的是配套的数字而不是策略本身。「V_k ≥ V^{π_k} 恒成立」方向反了:V_k 是截断了 k 步之后的回报,丢掉了 k 步以后的所有奖励,在本例里它系统性地低于真实值(19.00 对 100.00)。取 max 只是在 k 步之内取最优,救不回被截掉的那部分。
知识点 8 · 总结
核心结论
‖BV − BV′‖_∞ ≤ γ‖V − V′‖_∞。实测两个任意起点:距离 100 → 45 → 40.5 → 36.45 → …,比值精确锁在 0.9000 = γ。
底层机制
主语是算子不是 V,所以同时给出三件事:几何收敛、不动点唯一、与初值无关。
常见误解
误解:「更新越来越小所以收敛」是循环论证。另:讲座口述的定义是非扩张,它不保证收敛(恒等映射即是)。
与你的考试
Banach 不动点定理被留作练习;「B 的不动点 = V*」与「对 V* 贪心即最优」都被隐式使用、从未证明。
知识点 8 · 检验
「B 是非扩张的」(‖BV−BV′‖ ≤ ‖V−V′‖)足以保证值迭代收敛到唯一不动点吗?
非扩张只说距离不增,压缩说距离至少缩到 γ 倍(γ<1)。恒等映射 B V = V 满足非扩张的定义,但它的每一个点都是不动点,迭代永远停在 V₀ 不动 —— 这就是反例。「有限状态下等价」不成立:反例本身就是有限维的。「加上 V₀=0」救不了:恒等映射从 V₀=0 出发照样停在 0,而 0 通常不是 V*。「有界序列有收敛子列」混淆了两件事 —— 子列收敛既不给唯一性,也不给整个序列收敛,更不说明极限是 V*。讲座口述的定义正是这个太弱的版本,虽然板上证的是带模数 γ 的强版本。
知识点 9 · 总结
核心结论
‖V_k−V*‖ ≤ γ/(1−γ)·‖V_k−V_{k−1}‖。实测 γ=0.9:0.00955 → 0.08595(×9.00);γ=0.99:0.00993 → 0.98322(×99.00)。两次都取到等号。
底层机制
剩余距离是所有未来增量之和,增量按 γ 几何衰减,级数和 γ+γ²+⋯ = γ/(1−γ)。
常见误解
误解:「设 ε=0.01 就是精确到 0.01」。这是把步长当成到终点的距离 —— 所有迭代算法共有的陷阱。
与你的考试
要精度 δ,阈值取 ε = δ(1−γ)/γ。另:贪心策略常远早于值收敛(本例第 11 轮 vs 第 67 轮)。
知识点 9 · 检验
γ = 0.99,值迭代在 ‖V_k − V_{k−1}‖ = 0.01 时停止。‖V_k − V*‖ 最大可能是多少?
剩余距离是所有未来增量之和,而增量按 γ 几何衰减:‖V_k−V*‖ ≤ (γ+γ²+⋯)‖V_k−V_{k−1}‖ = γ/(1−γ)·ε = 99×0.01 = 0.99。本集的火星车实测里这个界取到了等号(0.00993 → 0.98322,比值 99.00),所以它不是一个可以指望「实际会好很多」的宽松估计。「0.01 就是精度」把步长当成了到终点的距离。「按 γ² 缩小」方向反了 —— γ<1 让未来的增量变小,但它们要累加,累加的结果是放大而不是缩小。「要知道 V₀」不必:这个界只依赖当前的相邻差和 γ,初值的影响已经体现在 V_k 里了。