课程主页: https://www.davidsilver.uk/teaching/

这里回顾David silver 强化学习 Lecture 8的课程内容,这一讲简单介绍了结合学习和规划。

Introduction

首先介绍基本概念:

Model-Based and Model-Free RL
  • 不基于模型的RL
    • 没有模型
    • 从经验中学习价值(策略)函数
  • 基于模型的RL
    • 从经验中学习模型
    • 从模型中规划价值(策略)函数
Model-Based RL

基于模型的RL图示如下:

优点:

  • 可以通过监督学习方法有效地学习模型
  • 可以推理出模型不确定性

缺点:

  • 首先学习一个模型,然后构造一个值函数,所以有两种近似误差来源

Model-Based Reinforcement Learning

What is a Model?
  • 模型$\mathcal M$通过参数$\eta$表示MDP $\langle\mathcal{S}, \mathcal{A}, \mathcal{P}, \mathcal{R}\rangle$

  • 我们假设状态空间$\mathcal S$和动作空间$\mathcal A$已知

  • 所以模型$\mathcal{M}=\left\langle\mathcal{P}_{\eta}, \mathcal{R}_{\eta}\right\rangle$表示状态转移$\mathcal{P}_{\eta} \approx \mathcal{P}$和奖励$\mathcal{R}_{\eta} \approx \mathcal{R}$

  • 一般假设状态转移和奖励条件独立

Model Learning
  • 目标:从经验$\left\{S_{1}, A_{1}, R_{2}, \ldots, S_{T}\right\}$估计模型$\mathcal M_\eta$

  • 这是一个监督学习问题

  • 学习$s, a \rightarrow r$是回归问题

  • 学习$s, a \rightarrow s’$是密度估计问题

  • 损失函数,均方误差损失,KL散度

  • 找到$\eta$最小化经验损失

Table Lookup Model
  • 对$\hat{\mathcal{P}}, \hat{\mathcal{R}}$建模

  • 对每个状态动作对计算访问次数$N(s,a)$

  • 另一种方法:

    • 在每个时间$t$,记录经验元组$\left\langle S_{t}, A_{t}, R_{t+1}, S_{t+1}\right\rangle$
    • 随机选择元组$\langle s, a, \cdot, \cdot\rangle$

学习完模型后,要利用模型进行规划,后续介绍几种常用的方法。

Sample-Based Planning
  • 一种简单而强大的规划方法

  • 仅使用模型生成样本

  • 来自模型的经验样本

  • 使用不基于模型的RL去采样,例如

    • MC控制
    • Sarsa
    • Q-learning
  • 基于样本的规划方法通常更有效

Integrated Architectures

这部分介绍整合架构:

Real and Simulated Experience

考虑两种经验:

真实经验从环境中采样(真实的MDP)

模拟经验从模型中采样(近似的MDP)

Integrating Learning and Planning

这里补充一种新的模型,不同于Model-Free RL和Model-Based RL

  • Dyna
    • 从实际经验中学习模型
    • 从真实和模拟的经验中学习和计划价值(策略)函数

图示如下

Dyna-Q Algorithm

  • 前向搜索算法通过提前选择最佳动作
  • 方法是建立一个搜索树,根节点为当前状态$s_t$
  • 使用MDP模型进行展望
  • 不需要求解完整的MDP,只需要求解从现在开始的子MDP

Simulation-Based Search
  • 前向搜索使用基于样本的规划

  • 使用模型模拟从现在开始的经验

  • 使用不基于模型的RL来模拟每一幕

    • Monte-Carlo control $\rightarrow$ Monte-Carlo search
    • Sarsa $\rightarrow$ TD search

来看一个具体例子:

  • 给定模型$\mathcal M_{\nu}$和模拟策略$\pi$

  • 对每个动作$a\in \mathcal A$

    • 模拟当前状态开始的$K$次经验

    • 利用平均回报评估动作(MC评估)

  • $Q$值最大的动作作为当前(实际)动作

  • 高度选择性的最佳搜索
  • 动态评估状态(与DP不同)
  • 使用采样打破维度灾难
  • 适用于“黑匣子”模型(仅需要采样)
  • 计算高效,可并行
  • 基于模拟的搜索
  • 使用TD而不是MC(自举)
  • MC树搜索将MC控制应用于从现在开始的子MDP
  • TD搜索将Sarsa应用于从现在开始的子MDP

和MC方法的不同在于$Q$值的计算:

  • 对于无模型的强化学习和基于模拟的搜索,自举很有帮助
    • $\text{TD}$学习减少方差但增加偏差
    • $\text{TD}$学习通常比MC更有效
    • $\text{TD}(\lambda)$比MC更有效
Dyna-2
  • 在Dyna-2中,智能体存储两组特征权重
    • 长期记忆
    • 短期(工作)记忆
  • 使用TD学习根据实际经验更新长期记忆
    • 适用于一般领域知识
  • 使用TD搜索从模拟经验中更新短期记忆
    • 有关当前情况的特定知识