[RL Note] 线性方法的特征构建

1. 粗编码   前文中提到,对于表格型的价值函数,可以通过对状态进行独热编码来构建特征,以此转换为线性函数的形式。如果状态非常多,独热编码后的特征向量就会非常长。一种更短的编码方式是先对近似的状态进行聚合,再对聚合后的状态进行独热编码。   状态聚合通常只将一个状态只被聚合到一个类里,但这并不是强制要求。如图 1 所示,使用若干个圆对状态空间进行划分,每个特征对应一个圆。如果状态在一个圆内,则对…
Read more

[RL Note] 线性方法

1. 线性方法   我们可以在强化学习中使用任意类型的函数进行函数逼近,使用线性函数是最重要的特殊情况之一。线性函数易于理解,便于记性数学计算,而且通过结合领域知识构造合适的特征,可以快速地学习并达到较高的准确度。   这里的“线性”指的是近似函数 $\hat{v}(\cdot, \boldsymbol{\mathrm{w}})$ 是权重向量 $\boldsymbol{\mathrm{w}}$ 的…
Read more

[RL Note] 同轨预测的目标

1. 均方价值误差   在使用监督学习的方法学习价值函数时,也可以使用误差平方的方式衡量学习的价值函数与真实价值函数在某个状态上的差异。通常情况下,一个状态的更新会影响许多其他状态,在一个状态上的估计价值较准确就意味着别的状态的估计价值变得不那么准确,此时就需要进行取舍:指定那些状态是我们最关心的,着重优化这些状态。由此得到均方价值误差 \begin{equation} \overline{\ma…
Read more

[RL Note] 使用监督学习估计价值函数

1. 参数化函数   之前介绍的学习算法都是基于表格的,问题涉及的状态和动作空间都很小,价值函数可以用表格保存下载。而实际场景中,往往涉及大量的状态和动作,难以用表格来保存价值函数。   除了用表格的方式,我们可以用任意实现状态到价值的映射的函数对价值函数进行估计,但如果仅仅是映射,每个状态对应一个固定的价值,就无法在学习过程中更新对价值进行更新。由此引入参数化的函数 \begin{equatio…
Read more

[RL Note] 不正确的模型

  规划依赖于模型生成模拟经验,如果模型不正确,规划就可能得到次优的策略。不正确的模型指的是模型中保存的状态转移与实际环境中的状态转移不符。如果在学习过程中环境发生了改变,而这些改变还没有被观察到,模型会给出错误的状态转移。在学习刚开始的时候,智能体只尝试过有限的动作,模型中还没有保存未选择过的动作的状态转移,此时称模型是不完整的。 1. 不完整的模型   对于模型不完整的问题,Dyna-Q 算法…
Read more

[RL Note] Dyna

1. Dyna 架构   智能体与环境交互获得经验,这些经验一方面可以直接用于学习,例如通过Q 学习的方法,更新价值函数和策略,这称为直接强化学习(direct RL)。直接学习直接与环境交互,不受模型设计偏差的影响。另一方面,这些经验可以用来改进模型,即模型学习,并通过如Q 规划的方法从模型模拟的经验中学习,称为间接强化学习。间接学习可以在有限交互的基础上充分利用已有的经验。   Dyna 架构…
Read more

[RL Note] 模型和规划

1. 模型   像时序差分这类基于采样的方法可以从经验中学习,而动态规划算法需要知道环境的运作方式,即环境模型。环境的模型指的是一个智能体可以用来预测环境对其动作的反应的任何事物,例如 MDP 的动态特性 $p(s’,r|s, a)$。通过这样的环境模型,我们可只知道在给定状态下采取某个动作所带来的后果,而不必真的去执行这个动作。   如果模型是随机的,则会一定概率出现的多种后继状态和…
Read more