Deep Recurrent Q-Learning for Partially Observable MDPs笔记
Deep Recurrent Q-Learning for Partially Observable MDPs笔记
文章:Deep Recurrent Q-Learning for Partially Observable MDPs
直通:link
摘要
主要思想就是在DQN基础上加入Recurrent LSTM。之前DQN会限制于memory(内存大小),同时决策也需要获到完整的观测信息,而实际环境中观测信息可能并不完全。为解决这些问题,文章加入LSTM代替原有DQN中的全连接层,形成Deep Recurrent Q-Network (DRQN),结合记忆信息并且在POMDP(Partially Observable Markov Decision Process)的游戏中综合表现优于原始的DQN。实验发现当训练使用complete observation而测试时使用partial observation时,DRQN模型表现下降的程度比DQN也要小。因此DRQN相对于DQN对于不同程度观测数据的适用能力也就更强,对缺失的数据更不敏感。
相关工作
1.DQN
其中Q-value迭代公式:
Loss function以及网络参数的更新:
2.Partial Observability
POMDP只获得环境的部分观测信息,例如partial glimpses of the underlying system state。不同于马尔可夫决策过程的四元组表示 ( S , A , P , R ) (S,A,P,R) (S,A,P,R) ,POMDP由6元组 ( S , A , P , R , Ω , O ) (S,A,P,R,\Omega,O) (S,A,P,R,Ω,O)表示。其中O是由环境根据一定概率得到的o ∼ O(s),是一部分的观测信息(可能是从全局观测直接拿出来的一部分,也可能是单独的一个局部的观测)。因此,很容易发现 Q ( o , a ∣ θ ) ≠ Q ( s , a ∣ θ ) Q(o,a|\theta) \neq Q(s,a|\theta) Q(o,a∣θ)=Q(s,a∣θ) ,为了弥补这个gap,文章加入LSTM来从部分可观测的环境中拟合环境的状态,使其更好的对于历史信息进行连续的学习。
方法
1. DRQN架构
将DQN中的网络的全连接层变为LSTM层。结构如图:
2.Stable Recurrent Updates
1.)Bootstrapped Sequential Updates
直接从replay buffer中抽取整个episode进行学习更新,但是忽略了DQN采样的随机性。
2.)Bootstrapped Random Updates
在一个episode中随机选择某个transition,利用transition之后若干步的序列进行学习更新直到最后,也更加符合DQN中random sample的想法,同时两者实验效果相当,文章采用第二种。
实验
构造由MDP到POMDP的过程:Flickering Atari Games
以一定的概率(文中是0.5)隐藏看到的state,因此环境就由MDP转为POMDP(因为游戏画面之间缺少了一些帧,也就是缺少了一部分信息)。
Results:
可以看出让POMDP中的信息趋近于完整的观测时,DRQN与DQN差距不大;而当观测完整性下降时,DRQN的表现就明显优于DQN的表现了。
总结
文章的keypoints:
1.DQN+LSTM
2.Bootstrapped Random Updates
3.Flickering Atari Games