4. 强化学习基础
强化学习(Reinforcement Learning, RL)是机器人控制中实现自主决策与技能习得的核心范式。与监督学习依赖标注数据不同,强化学习通过智能体(Agent)与环境(Environment)的持续交互,以试错方式最大化累积奖励。要理解这一过程,必须首先掌握其数学骨架——马尔可夫决策过程(MDP),以及在此基础上衍生的策略、价值函数、回报折扣和探索与利用的平衡机制。本节将系统拆解这些基础概念,并结合机器人运动控制场景说明其工程含义。
4.1 马尔可夫决策过程:机器人决策的数学框架
马尔可夫决策过程(Markov Decision Process, MDP)为机器人控制中的序贯决策问题提供了标准化的数学描述。一个MDP由五元组 (S, A, P, R, γ) 定义,其中 S 是状态空间(如机器人关节角度、末端执行器位姿、力传感器读数),A 是动作空间(如关节力矩指令、目标位置增量),P(s'|s,a) 是状态转移概率,R(s,a,s') 是奖励函数,γ 是折扣因子。MDP的核心假设是马尔可夫性质:下一时刻的状态仅取决于当前状态和动作,与更早的历史无关。
在机器人操作任务中,MDP建模需要仔细设计状态表示。例如,对于机械臂抓取任务,状态可以包括关节角度、角速度、末端夹爪开合度以及目标物体的视觉特征向量。动作空间可以是连续力矩指令或离散的轨迹点选择。奖励函数的设计尤为关键——稀疏奖励(如仅在成功抓取时给予+1)会导致学习困难,而密集奖励(如根据末端与目标的距离给予连续反馈)能加速收敛,但可能引入局部最优。
4.2 策略:从状态到动作的映射
策略(Policy)定义了智能体在每个状态下选择动作的规则,分为确定性策略 a = μ(s) 和随机策略 a ~ π(·|s)。在机器人控制中,随机策略具有特殊价值:它天然提供探索能力,并且能够表达多模态行为(如避障时左转或右转均可)。策略通常用参数化函数表示,如深度神经网络 π_θ(a|s),参数 θ 通过梯度上升优化。
策略的优劣通过累积回报衡量。对于连续动作空间(如关节力矩),常用高斯策略 π_θ(a|s) = N(μ_θ(s), Σ_θ),其中均值网络输出期望动作,协方差矩阵控制探索噪声。对于离散动作(如选择抓取策略A或B),常用Softmax分布输出动作概率。
| 策略类型 | 数学形式 | 机器人应用场景 | 优缺点 |
|---|---|---|---|
| 确定性策略 | a = μ(s) | 轨迹跟踪、精确装配 | 低方差、收敛快;缺乏探索 |
| 随机策略(高斯) | a ~ N(μ_θ(s), σ²) | 连续力控、运动规划 | 天然探索;方差需调参 |
| 随机策略(分类) | a ~ Categorical(p_θ(s)) | 离散动作选择、任务切换 | 适合离散决策;维度灾难 |
4.3 价值函数与回报折扣
价值函数(Value Function)用于评估状态或状态-动作对的长期优劣。状态价值 V_π(s) 表示从状态 s 出发,遵循策略 π 所能获得的期望折扣回报;动作价值 Q_π(s,a) 表示在状态 s 采取动作 a 后继续遵循 π 的期望回报。两者通过Bellman方程相互联系,构成动态规划与时间差分学习的基础。
回报折扣因子 γ 决定了智能体的“远视”程度。γ 接近 1 时,智能体重视远期收益,适合长期任务(如多阶段装配);γ 接近 0 时,智能体短视,适合即时反馈任务(如避障)。在机器人控制中,γ 通常取 0.95~0.99,因为物理系统存在不确定性,过远的预测不可靠。
4.4 探索与利用的平衡策略
强化学习的核心挑战之一是如何在探索(Exploration,尝试未知动作以获取新信息)与利用(Exploitation,选择当前已知最优动作)之间取得平衡。若只利用,智能体可能陷入次优策略;若只探索,则无法积累有效经验。常用方法包括:
- ε-greedy: 以概率 ε 随机选择动作,以 1-ε 选择贪心动作。ε 通常从 1.0 线性衰减至 0.01。适合离散动作空间。
- UCB(Upper Confidence Bound): 对每个动作维护价值估计和不确定性,选择
Q(s,a) + c·√(ln t / N(s,a))最大的动作,自动平衡探索与利用。 - 熵正则化: 在策略目标中加入熵项
β·H(π(·|s)),鼓励策略保持随机性。Soft Actor-Critic (SAC) 算法即采用此方法,在连续控制中表现优异。 - 参数空间噪声: 在策略网络参数 θ 上添加高斯噪声,实现更结构化的探索,适合高维连续动作。
4.5 案例拆解:基于MDP的机械臂推动任务
考虑一个桌面机械臂推动木块到目标区域的经典任务。我们将其建模为MDP:
- 状态空间 S: 机械臂末端位置 (x,y)、木块位置 (x_b, y_b)、木块速度 (vx, vy),共6维连续状态。
- 动作空间 A: 末端在水平面内的速度指令 (vx_cmd, vy_cmd),范围 [-0.5, 0.5] m/s。
- 奖励函数 R: 稀疏奖励 +1(木块到达目标区域),密集奖励 -0.01·距离(木块, 目标) 作为每一步的惩罚,鼓励快速接近。
- 折扣因子 γ: 0.98,因为任务通常需要 20~40 步完成。
- 策略表示: 使用高斯策略,均值网络为两层MLP(64-64),输出二维速度指令。
初始现象: 随机策略下,木块几乎不动,成功率接近0%。分析判断: 稀疏奖励导致探索效率极低,智能体无法获得正向反馈。操作步骤: ① 改用密集奖励,距离惩罚系数设为 -0.02;② 引入ε-greedy探索,ε从0.5衰减至0.05;③ 使用经验回放缓冲池,容量10万条;④ 每100步评估一次策略,记录成功率。
结果对比: 训练2万步后,密集奖励策略成功率达到45%;而稀疏奖励策略在5万步后仍低于5%。风险与代价: 密集奖励可能诱导策略“绕远路”以获取更多负奖励(但负奖励值小,实际未发生)。复盘经验: 奖励塑形(Reward Shaping)应保持与任务目标的一致性,避免引入与最终目标冲突的局部引导。
4.6 常见误区与总结复盘
| 误区 | 后果 | 正确做法 |
|---|---|---|
| 忽略马尔可夫性质,状态表示不完整 | 策略性能差,训练不稳定 | 确保状态包含所有影响决策的信息(如速度、接触力) |
| γ设置过大或过小 | γ过大导致价值估计方差高;γ过小导致短视 | 根据任务步数合理选择,参考 γ^T 衰减规则 |
| 探索噪声固定不变 | 初期探索不足或后期扰动过大 | 采用衰减ε或自适应熵系数 |
| 奖励函数过于稀疏 | 学习极慢,甚至无法收敛 | 设计密集奖励或使用课程学习(Curriculum Learning) |
| 在真机上直接大量探索 | 安全隐患、设备磨损 | 仿真预训练、域随机化、安全约束层 |
总结: MDP为机器人强化学习提供了严谨的数学框架,策略、价值函数和折扣因子构成了算法设计的核心要素,而探索与利用的平衡则是决定学习效率的关键工程问题。在实际应用中,需要根据任务特性(状态维度、动作类型、奖励结构、安全约束)灵活选择建模方式和算法配置。下一阶段的学习应聚焦于如何从MDP定义出发,推导出具体的强化学习算法(如Q-learning、策略梯度),并理解它们在机器人控制中的适用边界。