强化学习算法的总结

强化学习算法依据马尔科夫的决策过程主要分为两大类,分别是基于模型的强化学习算法(动态规划法等)无模型的强化学习算法(蒙特卡洛算法等)。这些强化学习算法的核心思想是学习者通过自身的不断学习最终使得整个学习过程中获得的奖惩值达到最大(既通过行为选择,最终获得最优策略)。
行为选择的方主要有两种方法:
(1)贪婪算法:即通过选择某一行为使得获得的行为值函数达到做大,如果最大的值不唯一,则从中进行随机选择,即。
(2)-贪婪方法:-贪婪方法改善了贪婪算法存在的不足,因为贪婪算法每次选择行为,都要选当前的行为值函数达到最大的行为,但是这样会使得选择的行为的种类较少,就会出现良好总可能性,第一种会很快使得状态值函数收敛,第二种情况则会可能使得状态值函数一直不会收敛(虽然第二种情况的可能性较小,但是仍然是有一些不足),所以可以采取-贪婪方法。这种方法有两种选择行为的规则,第一种规则是随机等概率地从可选的行为中选择其中一种,第二种规则贪婪方法相同。-贪婪方法的具体实现方式为:每隔一段时间就会对两种规则进行选择,第一种规则发生的概率为(通常为一个很小的数值),第二种规则发生的概率为,且该规则只对一次的行为选择有效。剩余的时间都将采用第二种规则。
获得最优策略的方式主要有三种:策略迭代,值迭代和策略搜索
策略迭代和值迭代又属于基于值函数估计的方法(当状态空间和动作空间都是离散的且不能太大,值函数可以用一张表格来表示,也叫表格型强化学习算法)或者基于值函数逼近的方法(当状态空间维数很大或者状态空间为连续空间时)。策略迭代和值迭代又都包括策略评估和策略改进两个过程。两者的不同在于:策略迭代是等到策略评估所获得的状态值函数收敛之后才采用贪婪算法进行策略的改进(就是在所有获得的状态值函数里,选择产生最大Q(s,a)的).该方法交替进行,一个完成另一个开始。值迭代不需要等到策略评估所获得的值函数全部收敛,而是策略评估一次之后,就采用贪婪算法进行策略改进。而策略搜索属于基于策略逼近的算法。在无模型的强化学习算法中,三种最优策略的方法,每一个方法又细分为在线(同策略的Sarsa算法等)和离线(Qlearning算法等)两种形式。如图(1)和(2)所示。
强化学习算法的总结_第1张图片
强化学习算法的总结_第2张图片
时间差分法
时间差分法是无模型的强化学习算法,它结合了蒙特卡洛算法和动态规划方法。是一种基于经验学习并且以估值更新值函数的强化学习算法。具体结合了蒙特卡洛算法的基于试验的的思路和动态规划方法中的自举的方法从而形成了自己独特的更新状态值函数的方法。包括TD(0),TD(1),…TD(n),Q学习算法和Sarsa等算法。TD(1)算法为用下一时刻的状态值函数更新当前的状态值函数,TD(2)用后继的第二状态值函数更新当前的状态值函数。以此类推TD(n)算法用后继的第n个状态值函数来更新当前的状态值函数。因此通过类比可知TD(0)是随走随更新。
Sarsa算法:为在线(同策略)的强化学习算法。既在策略评估的过程中行动策略和评估策略都是-贪婪策略。如图(3).
强化学习算法的总结_第3张图片
Qlearning算法:为离线(异策略)的强化学习算法。既在策略评估的过程中它的行动策略为-贪婪策略,评估策略为贪婪策略如图(4)所示。
强化学习算法的总结_第4张图片

你可能感兴趣的:(随笔)