🧠 浏览器内强化学习实验室:Q-Learning 倒立摆

不用装任何环境——点「训练」,看 Q 表从随机乱推到学会平衡倒立摆:奖励曲线爬升、策略热图成形,再与 PD 控制器同台对比。
强化学习Q-Learning倒立摆奖励设计
🎯 本页学习目标
1. 亲手跑通一次表格型 Q-Learning:状态离散化 → ε-greedy 探索 → TD 更新
2. 观察奖励曲线与策略热图的演化,理解「奖励塑形」为什么决定成败
3. 能说出 RL 与经典控制(PD)各自的长处与 sim2real 的坑
建议用时:约 35 分钟(含训练等待)

1 问题设定:平衡一根倒立摆

小车倒立摆是「机器人保持平衡」的最小模型(单腿/双足的爷爷辈)。控制目标:只允许水平推车(F ∈ {−10, 0, +10} N 三档动作),让摆杆保持竖直。这是 04-04 页讲的 MuJoCo/Isaac 任务的微缩版——状态连续、动力学非线性、没有现成模型。

Q(s,a) \leftarrow Q(s,a) + \alpha\Big[\, r + \gamma \max_{a'} Q(s',a') - Q(s,a) \Big]
💡 怎么玩:①先点「训练 1000 回合」(几秒完成,看奖励曲线从 −300 左右爬到 1000+,回合上限约 1200=每步满分×1200 步);②看右图热图——左半蓝(向左推)、右半红(向右推)、中间一条竖直「保持不推」的窄带,这就是学出来的策略结构;③点「演示」对比 RL 与 PD:PD 立刻就稳(模型已知时经典控制仍是王者),RL 的价值在于不需要模型、能学奖励定义的任意目标;④演示中点「推一把」:PD 与训练充分的 RL 都能抗住小冲击——但把训练回合数调少再推大点,策略立刻崩,RL 只在训练分布内可靠(本页训练初始角随机 ±0.2 rad,超出这个范围的偏差没学过)。

2 奖励设计:RL 的「编程语言」

同一个摆,换奖励就换行为:r=+1(存活)→ 学会「苟住不动」;r=1−3|θ| → 贴近竖直;r 加上 −0.01|F| → 学会省力;若奖励写成「角度绝对值越大越好」,它学会主动摔倒。工程实践的三条铁律:①奖励要可微地引导目标(阶梯式奖励=迷宫);②别给「作弊捷径」(reward hacking,机器人会把传感器挡住如果那能得高分);③生存奖励+失败大罚是最常用的骨架。人形机器人整机 RL 的奖励函数通常有 20~50 项(速度跟踪/能耗/碰撞/姿态…),调奖励占项目时间的一半。

3 与经典控制、深度RL的关系

PD/经典控制表格 Q-Learning(本页)深度 RL(PPO/SAC)
需要模型吗需要(J、Kt…)不需要不需要
状态维度任意≤3~4 维(否则表爆炸)几十~上千维(用神经网络)
可解释性高(带宽/极点)中(能看热图)低(黑盒)
人形上的用法底层三环/平衡反射教学原型步态/全身控制(04-04 的 Isaac RL)
⚠️ sim2real 的坑(本页沙盒里看不见的):仿真里的策略拿到真机常崩——执行器延迟/摩擦死区没建模、传感器噪声不同、摔倒的代价不可逆。标准对策:域随机化(训练时随机化质量/摩擦/延迟)、系统辨识、真机微调。详见sim2real 部署拆解

4 本节自测

1. ε-greedy 中 ε 从 1.0 衰减到 0.05 的意义是?
💡 解析:ε 是「探索 vs 利用」的旋钮。一直大 → 永远乱试学不精;一开始就小 → 陷入最初的坏策略出不来。衰减式调度兼顾两者,是 RL 最通用的工程技巧。
2. 表格 Q-Learning 难以直接用于人形机器人全身控制的主要原因是?
💡 解析:本页 144 个格子够用;人形整机状态(30+ 关节角×速度+IMU+足底力)离散化后格子数是天文数字——DQN/PPO 用神经网络代替表格泛化到未见状态。(D 也是真限制之一,但可用 actor-critic 解决,主因是 C。)
3. 训练出的策略热图「中间窄带不推、两侧对推」说明?
💡 解析:RL 在简单任务上「重新发现」了经典控制律的结构(比例式分区)——这是本页最值得回味的现象:好的策略不问出身。而 PD 只用 3 行代码就达到同样效果,再次说明「模型已知用控制,模型未知/目标复杂用 RL」。
📌 本节小结:①表格 Q-Learning 五要素:离散状态、动作集、奖励、ε-greedy、TD 更新;②奖励塑形决定学到什么——生存奖励+失败大罚+连续引导项是标准骨架;③热图会自发收敛出与 PD 同构的分区策略;④状态维度爆炸时升级为深度 RL(PPO/SAC),真机部署前必须处理 sim2real(域随机化/辨识)。
🤔 思考题:1. 把失败罚金从 −10 改成 −1,训练结果会怎么变?动手改代码试试(本页脚本开源在源码里)。
2. 为什么本页动力学故意保留了摩擦和推力上限?去掉它们后学到的策略在真机上会怎样?

M 参考来源