RL论文阅读14-MB-PETS2018

1. Tittle

image-20200928160218688

2. 标签

  • Model Based

3. 总结

3.1 针对的问题

MB算法虽然能够获得很棒的sample efficienty,但是通常落后于最好的model-free。在大规模参数的函数估计器中更为明显,如神经网络。

本论文就是研究如何跨越这个差距。提出了Probabilistic ensembles with trajectory sampling(PETS)。算法结合了 不确定性感知深度网络动力学模型基于采样的不确定性传播。(uncertainty-aware deep network dynamics model with sampling-based uncertainty propagatior)。 最终达到了MF算法的性能,同时需要非常少的采样次数(减少8-125倍)。

提出的发现:

  • 发现一:模型的容纳能力是MBRL方法成功的重要因素。而这就有一个需要权衡的问题:

    • 高效的模型例如Gaussian processes能够快速的学习,但是不能很好表示复杂的和非连续的动力学模型。

    • NN模型则相反,能够处理复杂高维度的输入,但是少量数据会overfit,在新的预测表现性能很差。所以使用NN在MBRL上有额外的挑战。

  • 发现二:上个问题能够在很大程度可以通过引入uncertainty到动力学模型中来缓解。

4. 原理

4.1 Uncertainty-aware neural network dynamics models

这篇论文研究如何能够把表达能力很强的神经网络引入到MBRL中。为了获取不确定性:

两个不确定性

  • Aleatoric Uncertainty 偶然不确定:并非模型产生的,而是由于系统原因无法避免的,例如data set标注误差等。
    • 可以通过输出一个服从某个参数分布来获得
  • Epistemic Uncertainty 认知不确定,是我们模型中存在的不确定性,对应于动力学函数的主观不确定(subjective uncertainty)由于缺少充足的数据。
    • 在无限的数据集,认知不确定应该消失。
    • 对于有限的数据集,当预测状态转换时,主观不确定就会存在。贝叶斯建模所擅长的正是主观认知的不确定,有助于缓解过拟合。

使用概率网络(probabilistic networks)去刻画偶然不确定,使用ensembles去刻画认知不确定。

Probabilistic neural networks(P)

使用一个网络来输出概率分布的参数,用来模拟偶然不确定。不同于贝叶斯推理。

损失函数使用负的log

image-20200928175511751

例如我们定义我们的预测模输出一个带有对角协方差的高斯分布,网络参数theta,条件为 s n s_n sn a n a_n an。那么函数f为:

image-20200928175737293

它的损失函数为:

image-20200928175826633

虽然我们模拟了偶然不确定,但是并没有模拟认知不确定。

模型可以使用高斯模型

概率网络的一个未被充了解的细节是他们的方差对于分布外的输入,可能是任意值。

Ensembles (DE and PE)

DE:deterministic models

PE:probabilistic models

使用Ensembles of bootstrapped models去刻画epistemic uncertatinty认知不确定。

可以是DE,也可以是PE

image-20200928185246734

4.2 使用动力学模型进行Planning 和 Control

Control:使用候选的策略或者动作预测未来的一些列结果,然后选择最高奖励的那个。

Planning:在离散的时间点上,通过使用动力学模型来递归预测马尔科夫状态如何从一个时间点发展到下一个时间点

使用MPC(model predictive Control)算法

给定时间t和状态 s t s_t st, 我们可以通过动力学模型和策略获得一个动作序列 a t : t + T = { a t , . . . a t + T } a_{t:t+T} = \{a_t,...a_{t+T} \} at:t+T={at,...at+T}和一个状态序列 s t + 1 ∼ P r ( s t + 1 ∣ s t , a t ) s_{t+1} \sim Pr(s_{t+1}|s_t,a_t) st+1Pr(st+1st,at)。在每个时间步t,MPC controller都选择累计奖励的期望最大的 a t a_t at

image-20200928192546718

一个常用的计算最优动作序列的技巧就是random sampling shooting method。并且获得了较好的data effcient

本篇论文在Nagabandi等人的基础上再次提升性能,通过以下两种方法:

  • 在modeling和planning时刻画不确定性,防止在低数据量下过拟合。
  • 使用CEM代替了random-shooting。动作的选择是从以前的获得较高分奖励的动作 相近的分布中采样出来的。

在计算trajectorry reward时,闭环的递归进行状态预测通常是比较棘手的。解决的办法根据如何表示状态分布,大致可分为三类:

  • deterministic , 使用平均预测(mean prediction)并且忽略不确定性。

  • particle, 传播一系列Monte Carlo samples(MC样本)

  • parametric, 引入高斯或者混合高斯模型。

尽管parametric方法已经被成功使用在MBRL,但是试验结果表明particle方法能够在计算和准确率上更具有竞争力,不需要做一些关于分布的假设。论文中采用的是particle-based propagation

4.2.1 TS : trajectory sampling

预测合理状态序列的方法:通过从当前状态创建P个粒子(particles),每个particle通过

image-20200928215259202

进行前向传播,其中b(p,t)是在ensemble里的B个bootstrap模型。particle的bootstrap索引号可能会潜在的随着时间t的变化而改变。论文考虑两个TS的变种:

  • TS1

    particles 在每个时间步都统一重新采样一个bootstrap

  • T S ∞ TS_\infin TS

    在一个trial中,particle bootstraps从来不改变。使用它的有点是偶然不确定和认知不确定是可分离的。

4.3 算法描述

image-20200928220912883

两个大步骤:

  • 训练PE模型
  • 使用TS去planning 、control

image-20200928221425268