Skip to content
mpc_pendulum.ipynb下载 notebook在 Colab 中打开(配置 GitHub 仓库后启用)

Colab 在中国大陆通常无法直接访问;可下载 notebook 在本地 Jupyter 或国内平台运行。

常见问题速查(FAQ)

MPC 为什么只执行第一个动作?

模型有误差,越往后的预测越不可靠。只执行第一个动作、到新状态后用真实观测重新规划,相当于每一步都用真实反馈纠正一次,这种“滚动时域”方式对模型误差更鲁棒。

CEM 比随机打靶好在哪里?

随机打靶的候选序列彼此独立,在 25 步 × 连续动作的空间里很难采到好的序列;CEM 每轮把采样分布的均值和方差拟合到得分最高的一批序列上,逐步把搜索集中到好的区域。本站实验中,CEM 的平均回报比随机打靶高约 108。

PETS 为什么在本站实验中没有比确定性模型 + CEM 更好?

Pendulum 的动力学是确定性的、低维的,几百个样本就能学得很准,模型不确定性的作用不大;PETS 每条候选序列要用 10 个粒子传播,计算量约为 CEM 的 7 倍,在同样的时间预算下候选数还更少(200 对 300)。PETS 的优势主要体现在有噪声、高维、数据少时模型容易出错的任务上。

MPC 和学习一个策略网络(如 SAC)相比如何?

MPC 不需要学习策略,样本效率很高(本站实验约 400–600 个真实步数就能立起摆,而 SAC 需要约 4000 步),但每一步都要做大量模型推理,决策延迟高;策略网络决策只需一次前向传播。MBPO 等方法把两者结合:用模型生成数据来训练策略。

如何引用本文

欢迎在学习笔记、论文或其他文章中引用本页内容,请注明作者、标题与链接(文字内容采用 CC BY-NC-SA 4.0 许可)。

GB/T 7714 格式

DQN.CN 编辑部. 模型预测控制:随机打靶、CEM 与 PETS[EB/OL]. DQN.CN, 2026-10-30(更新于 2026-10-30). https://dqn.cn/advanced/mpc.

BibTeX

@misc{dqncn-advanced-mpc,
  author       = {{DQN.CN 编辑部}},
  title        = {模型预测控制:随机打靶、CEM 与 PETS},
  howpublished = {\url{https://dqn.cn/advanced/mpc}},
  year         = {2026},
  note         = {DQN.CN,更新于 2026-10-30}
}

最后更新于: