Q_learning 算法,Q现实与Q估计分不清楚
Q_learning 算法的一些简介
是一种与模型无关的强化学习算法,直接优化一个可迭代计算的Q函数。其他的算法思想很多博客都有写过,在此我就不再赘述啦,值得注意的是他是一种离线学习(off-policy)
公式
他所利用的公式呢主要有:
- 贝尔曼方程 :在这里Bellman方程实际上就是价值动作函数的转换关系(我就不推到啦)
- 时间差分法 ;时间差分法也就是 Q的更新函数
间差分方法结合了蒙特卡罗的采样方法和动态规划方法的bootstrapping(利用后继状态的值函数估计当前值函数)使得他可以适用于model-free的算法并且是单步更新,速度更快。值函数计算方式如下:
这就是TD目标,对应是Q函数中的Q现实,,而整个括号里面的就是是 TD偏差。
Q现实与Q估计
我们先来看看Q_learning的更新函数:
当智能体执行一步后从状态S1转移至S2,他会根据 Q表判断在S2执行下一步中最大的奖励再乘以一个衰减值,那么这一部分加上当前奖励r,为什么就是S1的Q现实奖励了呢?
其实这类似于一个循环,因为想要知道S1的奖励,我们按这种思想又要知道S2的最大奖励乘以衰减值,那么想要知道S2的奖励,我们按这种思想又要知道S3的最大奖励乘以衰减值等等等等
这就是教程中出现的一个公式的由来
所以从长远看,就是实际获得的实实在在奖励,而Q(s,a)只是在执行某步后对未来奖励的猜测
————————————————