强化学习 (RL) 中的模型预测控制 (MPC) 是一种控制策略,它使用系统的动态模型来预测未来状态并优化有限时间范围内的动作。与传统的 RL 方法(通常通过试错来学习策略,而无需显式模型)不同,MPC 在每个步骤重复解决优化问题以选择动作。例如,在机器人导航中,MPC 可能会预测机器人 5 秒后的位置,计算最佳的转向和速度调整以避免障碍物,执行第一个动作,然后使用更新的传感器数据重新规划。这种方法将模型的预测能力与在线优化的适应性相结合,使其适用于具有安全限制或能源预算等约束的系统。
MPC 分三个关键步骤运行:预测、优化和后退范围执行。首先,系统模型(通过 RL 学习或解析已知)预测固定范围内的未来状态(例如,10 步)。接下来,优化器识别最小化成本函数(例如,跟踪误差)同时满足约束(例如,关节扭矩限制)的动作序列。仅执行第一个动作,并且该过程使用最新状态重复。例如,一辆自动驾驶汽车可能会使用 MPC 来规划一条最小化制动力的轨迹,同时保持在车道边界内,并根据交通变化每 0.1 秒更新其计划。对实时优化的依赖使 MPC 能够处理动态环境,但需要高效的求解器(例如,二次规划库)来满足延迟要求。
MPC 广泛用于 RL 中,适用于需要实时适应性和约束处理的应用。例如,工业机器人使用 MPC 根据对象滑动的预测来调整组装任务中的抓握力。一个关键的权衡是计算成本:虽然 MPC 的频繁重新规划提高了响应能力,但它需要快速的模型和优化器。开发人员经常平衡范围长度(更长的范围可以提高远见,但会增加计算时间)和模型精度(简化的模型可以加快预测速度,但可能会牺牲保真度)。与离线训练策略的无模型 RL 相比,MPC 在环境变化不可预测或必须严格执行约束的情况下表现出色。但是,将 MPC 集成到 RL 管道中需要仔细调整模型、成本函数和求解器设置,以与系统功能对齐。