Contents — find the section you need
强化学习 (RL) 是一种让机器人通过与环境交互来学习长期有效动作的方法。与图像分类(输入和标签同时到达)不同,机器人观察周围环境,控制电机运动,并在几秒钟后获得奖励。其核心循环是尝试、观察结果、更新策略。
30 秒概要
-
最小的强化学习转换是:在时间 t,状态(或观测值)s_t,动作 a_t,奖励 r_{t+1},以及下一个状态 s_{t+1}。
-
马尔可夫决策过程 (MDP) 对当前状态和动作如何产生下一个状态和奖励进行建模。状态必须能够充分概括历史,以便进行预测。
-
策略 \pi(a\mid s) 选择动作;价值函数 V^\pi(s) 表示遵循该策略时预期的未来收益。
-
该收益使用 \gamma 对未来奖励进行折现。过长的观察期会破坏学习的稳定性,而过短的观察期则会导致机器人目光短浅且不安全。
-
探索阶段尝试不确定的行动;利用阶段选择当前认为最佳的行动。在硬件上,安全约束高于两者。
1. 将机器人视为智能体
图 1 — 智能体执行动作后,环境发生变化,并返回下一个观测值和奖励。实际机器人会在此循环中加入通信延迟、传感器噪声和执行器饱和等因素。
对于差速驱动机器人,智能体可以使用摄像头、激光雷达和编码器数据作为其状态,并输出左右车轮速度作为动作。环境包括车辆动力学、地面摩擦力、障碍物和电池状态。朝着目标移动可以获得正奖励,而碰撞或突然转向则会受到惩罚。单个“到达目标位置 +1”信号通常过于稀疏;必须综合考虑距离、速度、制动裕度和能量。
2. MDP:将问题分解为各个组成部分
一个 MDP 由状态空间 \mathcal{S}、动作空间 \mathcal{A}、转移概率 P(s'\mid s,a)、奖励函数 R(s,a,s') 和折扣因子 \gamma 定义:
当智能体在状态 s_t 中选择动作 a_t 时,环境根据 P 转移到下一个状态 s_{t+1},并返回奖励 r_{t+1}=R(s_t,a_t,s_{t+1})。
“马尔可夫”意味着,一旦已知当前状态,过去的信息就无法再用于预测未来。一个状态仅包含位置信息的移动机器人无法区分静止的机器人和在同一位置滑动的机器人。包含速度、角速率和传感器置信度,或者使用保留历史数据的循环模型。
当无法直接观测到完整状态 s_t 时,该问题属于部分可观测马尔可夫决策过程 (POMDP)。几乎所有实际机器人都是 POMDP,因为存在遮挡和激光雷达回波缺失的情况。状态估计器(扩展卡尔曼滤波器、因子图或学习模型)将观测值 o_t 转换为有用的内部状态。传感器融合文章 解释了这一边界,ROS 2 入门 展示了如何将其作为可复现的软件组件。
3. 值函数和返回值
从时间 t 开始的奖励折扣总和即为返回值 G_t:
在策略 \pi 下,状态 s 的值为:
状态-动作值也指定了第一个动作:
选择最大的 Q 值是一种基于值的设计。直接更新神经网络策略 \pi_\theta(a\mid s) 的参数 \theta 则是一种基于策略的设计。由于枚举所有可能的动作是不可能的,因此连续的转向角和关节扭矩通常更适合采用策略梯度法或 Actor-Critic 方法。
4. 贝尔曼方程将长远目标分解为一步
与其一次性评估整个未来,不如将其分解为即时奖励加上下一步的价值。贝尔曼期望方程为:
最优值 V^*(s) 满足贝尔曼最优性方程:
这就是为什么目标值可以由其他估计值生成,而不是由人为提供的标签。自我参照也是不稳定的来源。目标网络、经验重放和奖励归一化将旧的估计值与当前的更新值分离,从而减少有害的相关性。
5. 平衡探索与利用
总是选择当前估计值最高的动作可能会使智能体陷入一个幸运的局部最优解。探索会尝试未知的动作,但在真实机器上随机运动可能会导致碰撞。常见的选择有:
| 方法 | 直觉 | 优势 | 硬件考虑 |
|---|---|---|---|
| ε-贪婪策略 | 以概率ε随机选择 | 简单 | 突变对连续扭矩不安全 |
| 玻尔兹曼/softmax策略 | 按值比例采样 | 倾向于有希望的选项 | 需要调整温度 |
| UCB策略 | 尝试具有高不确定性的动作 | 明确的探索原理 | 需要不确定性估计 |
| 噪声策略 | 向动作或权重添加连续噪声 | 更平滑的探索 | 仍然需要饱和度和限制 |
在硬件上,将探索限制在经过验证的操作范围内。将速度限制、关节软限制、力/电流限制、看门狗和紧急停止功能放在学习器外部,以便可以拦截每个策略输出。在模拟器中进行随机化是有用的;但这并不意味着可以随意对机器执行随机命令。
6. 在小型网格环境中验证该想法
5×5网格可以使学习动态清晰可见设单元格为状态,上/下/左/右为动作,目标奖励为 +1,墙壁奖励为 -0.1,每一步奖励为 -0.01。将 Q 初始化为零,并重复时间差分更新:
括号内的项是 TD 误差:预测值与一步目标值之间的差异。如果 \alpha 过大,则新经验占主导地位;如果过小,则策略无法适应不断变化的环境。记录成功率、平均步数、碰撞率和未访问状态的比例——而不仅仅是一条奖励曲线。
7. 将奖励设计成规范
奖励设计通常比算法细节更重要。例如,送货机器人可能会使用
来综合考虑进度、碰撞、输入能量和流畅性。增加权重 w 并不总是能改善行为。如果碰撞惩罚占主导地位,机器人可能会学习到安全但无用的策略——永远不移动。分别记录每个项,并审核策略实际优化的是哪个项。
奖励作弊是另一种失效模式:目标检测器中的错误、传感器盲区或仅适用于模拟器的接触规则都可能产生高分,却无法完成预期任务。人类可读的目标、基于物理的约束以及独立的评估环境使得这些捷径更容易被检测到。
8. 研究与产品的交汇点
价值方法数据效率高,但通常假设状态和动作是离散的。策略梯度和 Actor-Critic 方法处理连续控制;SAC 添加了熵目标,而基于模型的强化学习 (RL) 在移动机器人之前使用学习到的或解析的动力学模型进行规划。基于模型的方法可以减少真实世界的样本,但它们必须容忍模型误差。
在生产环境中,强化学习不一定应用于从安全监控到电机电流的每一层。经典的PID或MPC可以提供安全范围,而强化学习(RL)则可以选择抓取接触点、路径偏好或增益调度。VLA概述描述了类似的边界:视觉语言模型可以提出动作块,而经过验证的底层控制器则限制扭矩和速度。
9. 硬件部署前
-
状态是否包含速度、延迟和传感器置信度?马尔可夫假设是否已被悄然打破?
-
除了成功率之外,奖励项是否单独记录,包括碰撞率、能量、输入平滑度和停止距离?
-
动作范围、速率限制、看门狗机制和紧急停止机制是否独立于学习器?
-
仿真中是否随机化了摩擦力、质量、传感器延迟、光照和丢包率?是否在实际日志中测量了分布差距?
-
是否将未见过的评估数据集与训练数据分开?是否包含失败数据而不是将其过滤掉?
-
进程重启是否能进入安全状态并避免重放旧命令?
总结
强化学习并非让机器人记忆“正确动作”。它将状态、动作、转换和奖励定义为马尔可夫决策过程 (MDP),然后使用贝尔曼方程逐步估计长期价值。在学习到的策略能够离开仿真环境之前,探索、奖励优化和硬件安全必须纳入系统设计。本系列的后续文章将在同一框架下比较 Q 学习/DQN、策略梯度、PPO 和 SAC、模仿学习以及仿真到现实 (Sim-to-Real) 方法。
立即奖励最高的动作总是最佳选择吗?
未来的奖励和转换可能会改变答案。
区分即时奖励和折现收益。
评论
请先登录。
暂无数据。