交叉熵方法
Cross-Entropy MethodCEM进阶反复「采样一批、留下最好的、据此更新分布」的无梯度优化方法。
交叉熵方法由 Rubinstein 在 1990 年代末提出,最初用于估计罕见事件的概率,后来成为通用的随机优化方法。流程是:从一个分布(通常是高斯)采样一批候选解,逐个打分,保留最好的一小部分(叫精英样本),用精英样本的均值和方差重新拟合分布,再采样;迭代几轮后分布就集中到好解附近。它不需要梯度、容易并行,适合目标是仿真器或神经网络这类黑箱的情况。机器人里常见两种用法:一是作为采样式 MPC,对未来一串动作做 CEM,只执行第一步再重新规划;二是在连续动作空间里找让 Q 函数最大的动作。它和 MPPI 的区别在于:CEM 只用精英样本且等权平均,MPPI 按代价的指数权重使用全部样本。
例子PlaNet 在学到的世界模型里用 CEM 规划:时域 12 步,每轮采样 1000 条动作序列、保留最好的 100 条,迭代 10 轮;QT-Opt 用 CEM 在 Q 函数上找最佳抓取动作,每轮采样 64 个、保留 6 个,迭代 2 轮,训练时算目标值和真机执行时选动作都靠它。
- 也叫
- 交叉熵法、CEM 规划、CEM 优化
- 相关
- 采样式 MPC、模型预测路径积分控制、模型预测控制、基于模型的强化学习、PlaNet、QT-Opt
- 来源
- Wikipedia: Cross-entropy method
Hafner et al., Learning Latent Dynamics for Planning from Pixels (PlaNet, arXiv:1811.04551)
Kalashnikov et al., QT-Opt: Scalable Deep Reinforcement Learning for Vision-Based Robotic Manipulation (arXiv:1806.10293)