[论文解读] Differentiable MPC for End-to-end Planning and Control
tldr: 本文通过对带箱约束的 iLQR 的 MPC 固点进行求导,提出可微分的 MPC,使在连续控制领域对成本和动力学进行端到端学习以实现模仿学习成为可能。它展示了数据高效的模仿学习以及相对于标准系统辨识的优势。
We present foundations for using Model Predictive Control (MPC) as a differentiable policy class for reinforcement learning in continuous state and action spaces. This provides one way of leveraging and combining the advantages of model-free and model-based approaches. Specifically, we differentiate through MPC by using the KKT conditions of the convex approximation at a fixed point of the controller. Using this strategy, we are able to learn the cost and dynamics of a controller via end-to-end learning. Our experiments focus on imitation learning in the pendulum and cartpole domains, where we learn the cost and dynamics terms of an MPC policy class. We show that our MPC policies are significantly more data-efficient than a generic neural network and that our method is superior to traditional system identification in a setting where the expert is unrealizable.
研究动机与目标
- 激发将基于模型的 MPC 与端到端学习相结合,以实现对连续控制的优化。
- 提出一种解析方法,通过一个类似 iLQR 的过程求解的带箱约束的 MPC 来进行求导。
- 证明从专家演示中学习 MPC 的代价和动力学相比神经网络在数据效率上更高。
- 展示在摆锤和车-摆系统领域的模仿学习结果,并与系统辨识进行比较。
提出的方法
- 将 MPC 建模为一个以代价 C 和动力学 f 为参数、带箱约束的可微分模块。
- 通过求解线性化的 KKT 系统并使用额外的反向传播来在非凸 MPC 求解器的固定点处进行微分。
- 通过 KKT 条件的导数,将可微分求导从 LQR 扩展到带箱约束的二次规划。
- 使用固定点微分方法,重用前向传播的分解以实现常数时间的反向传播。
- 提供实现与实验,展示通过基于梯度的优化(模仿损失)进行端到端学习。
- 发布开源求解器与实验(mpc.pytorch)。
实验结果
研究问题
- RQ1MPC 是否可以用作一个可微分的策略类别,以实现对连续控制的端到端学习?
- RQ2是否可以通过固定点方法高效地对带箱约束的 MPC 进行求导,而不是展开?
- RQ3使用可微分 MPC 的端到端模仿是否能比系统辨识更好地从专家那里恢复代价和动力学?
- RQ4在连续控制模仿任务中,与神经网络相比,可微分 MPC 在数据效率方面的表现如何?
- RQ5该框架是否能够处理不可实现的专家并仍然提供有用的梯度用于学习?
主要发现
- 可微分的 MPC 相对于通用神经网络策略在数据效率的模仿表现更好。
- 该方法可以仅从动作中恢复 MPC 专家的代价和动力学,在不可实现的情形下有时能匹配甚至超越系统辨识。
- 对 MPC 求解器的固定点微分在内存和计算效率上优于展开求导,反向传播在给定前向传播分解的情况下几乎是免费。
- 该方法支持端到端地学习代价与动力学,使任务损失驱动的优化超越简单的状态预测。
- 作者提供开源实现,展示了实际应用性与可重复性。
更好的研究,从现在开始
从论文设计到论文写作,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。