I2A.2018
Tittle
标签
- Model-based
- Policy-based
- On-policy
- Continuous State Space
- Continuous Action Space
- Support High-dim Input
总结
新的架构,结合了model-free和model-based两方面
针对的问题
- 无模型学习需要大量的训练数据,并且得到的策略有局限性,在相同环境,新的任务时并没有通用性。
- 有模型学习的最大难点在于模型的误差,一个由误差的模型,误差会在模型planning时被继续扩大,最终导致效果不理想。
处理问题的关键在于减少或者防止model的误差。
解决方法
提出新的架构,同时利用model-free和model-based两个结果,综合。
对于模型误差的问题,采用的
原理
框架
- c:c是一个整体架构。以时刻t的状态
O
t
O_t
Ot作为输入,分别走两个路线,右边是Model-Free的路线。左边是Model-Based的路线。然后再根据这两个路线的输出,传给
π
,
V
\pi,V
π,V来生成动作和状态价值。
- Model-Based路线使用了多个Rollout encoder的结果整合。
- b:b是一个Rollout encoder的组成。每个Rollout encoder会根据自己的Imag. Core和前的输入状态 O t O_t Ot想象与环境进行交互了若干部(并没有真正的交互,知识自己模拟的)。然后将自己想象的每一步的奖励r、状态O编码输出。
- c:Imag. Core的具体组成:实际上就是一个通过输入状态,生成下一个状态和奖励的函数。
- 由于两个状态转换之间需要有一个动作,所以Image. Core还需要有一个** π ^ \hat{\pi} π^**作为 a t ^ \hat{a_t} at^的生成器。
- 还需要一个EM(Env Model)函数用来模拟环境,根据输入状态和动作生成模拟的下一个状态和奖励。
注意:b图中加入encoder的原因:直接使用imag. core产生的rewards有时候会有很大的误差,所以不使用他。而产生的轨迹中可能包含比reward序列更有用的信息(子序列中的信息。),因此,使用一个rollout encoder把这个想象序列生成一个整体并且学习从中推断信息。
环境模型
(这个图的环境输入应该是图像。使用agent玩游戏的。所以input observations是最近几帧)