深度增强学习David Silver(八)——Integrating Learning and Planning
本节课主要讲:
- Model-Based Reinforcement Learning
- Integrated Architectures
- Simulation-Based Search
model用一个具有参数
- model-free RL直接从经验中学习价值函数或者策略。
- model-based RL从经验中学习模型,然后从模型中学习价值函数或策略。
model-based RL的优点是可以通过监督学习直接学习模型,推导出模型的不确定性。缺点是首先学习环境模型和建立价值函数会导致两种估计误差。
model-based RL对于环境模型的学习是监督学习。输入状态、行动学习奖励,是一个回归问题,输入状态、行动学习下一个状态是密度估计问题。模型有多种选择,以table lookup model为例。用N(s,a)表示状态行动对的经过次数。
计算出环境模型之后,就可以根据模型进行planning。环境模型不准确将会导致planning计算出一个次优的策略。解决方法如下:
- 当模型出错时,使用model-free RL。
- 明确推导出关于模型不确定性因素,如贝叶斯。
sample-based planning是一种很有效的方法——将环境模型看做环境,用模型产生样本,然后用model-free RL(比如Monte-Carlo控制、Sarsa、Q-learning等)来学习计算出价值和奖励。
接下来考虑两种训练经验来源:
- real experience。从真实环境中采样。
- simulated experience。从模型中采样。
Dyna是一种同时采用这两种训练经验的方法。Dyna-Q算法如下:
(a)-(e)是从真实环境中提取经验的方法。(f)步从模型中提取经验。
前向搜索(Forward search)是一种通过向前看来选择最好行动的方法。他们以状态
将前向搜索和Monte-Carlo控制结合,以下是简单的Monte-Carlo搜索:
- 给定模型
MV 和模拟策略π 。 - 对于每个行动
a∈A - 从当前状态
st 开始,模拟K个episodes。 - 通过return的均值来评估行动。
- 从当前状态
- 选择当前具有最大值的行动。
at=argmaxa∈AQ(st,a)
MCTS(Monte-Carlo Tree Search)进一步优化,分为评估(evaluation)和模拟(simulation)两个过程。
评估:
- 给定模型
MV 和模拟策略π 。 - 从当前状态
st 开始,使用策略π 模拟K个episodes。 - 建立一棵包含状态和行为的搜索树。
- 通过return的均值来评估Q。
Q(s,a)=1N(s,a)∑Kk=1∑Tu=t1(Su,Au=s,a)Gu→Pqπ(s,a) - 当搜索结束,选择当前具有最大值的行动。
at=argmaxa∈AQ(st,a)
模拟:
- 在这个过程,模拟策略
π 能得到提升 - 每个模拟过程由两个阶段组成:
- in-tree(提升):选择行动最大化Q(S,A)
- out-of-tree(固定的):随机选择行动
- 每个模拟过程重复评估(通过Monte-Carlo评估)和改进(通过
ϵ -greedy(Q))。 - Monte-Carlo控制被应用到模拟经验中。
- 收敛到最优的搜索树。
MCTS的优点:优先选择最好的行动;动态评估状态;使用sampling打破维度的限制;只需要samples;计算有效,可并行。
Temporal-Diffrence Search使用TD代替MC,MCTS采用MC控制,TD Search采用Sarsa。二者比较如下:
TD Search:
- 从当前状态
st 开始模拟episode。 - 估计Q(s,a)
- 在模拟过程的每一步,使用Sarsa更新Q。
ΔQ(S,A)=α(R+γQ(S′,A′)−Q(S,A)) - 基于Q(s,a)选择行动。