《强化学习》
基于动态规划的强化学习
强化学习的目标是找到最优策略使得该策略下的累计回报期望最大。所谓策略指状态到动作的映射π。
最常用的概率分布也就是最常用的随机策略。如贪婪策略、ε-greedy策略、高斯策略、玻尔兹曼策略等。
最优策略的目标是找到一个决策序列u0→u1→u2→…→uT,广义上强化学习可以归结为序贯决策问题,即找到一个决策序列,使得目标函数最优。
问题一:给定一个策略π,如何计算在策略π下的值函数?
答:自举算法,利用高斯赛德尔迭代算法进行线性方程组求解,(策略评估算法计算每个状态的值函数)。
问题二:如何利用值函数进行策略改善,从而得到最优策略?
答:当已知当前策略的值函数时,在每个状态采用贪婪策略对当前策略进行改善。
至此,策略迭代算法=策略评估算法+策略改善算法。在策略评估中,给定策略,通过数值迭代算法不断计算,该策略下每个状态的值函数,利用该值函数和贪婪策略得到新的策略,如此循环下去,最终得到最优策略,这是一个策略收敛的过程。
总结:已知模型情况下,利用动态规划。
基于蒙特卡洛的强化学习
状态值函数和行为值函数的计算实际上是计算返回值的期望,动态规划的方法是利用模型计算,该期望在没有模型时,我们可以采用蒙特卡罗的方法计算,该期望及利用随机样本估计期望。
在计算值函数时,蒙特卡罗方法是利用经验平均代替随机变量的期望。
“经验”
当要评估智能体的当前策略π时,我们可以利用策略产生很多次试验,计算一次试验中状态s处的折扣回报返回值。
“经验”就是利用该策略π做很多次实验,产生很多幕数据。
“平均”
“平均”就是求均值。
利用蒙特卡罗方法求状态s处的值函数时,又可分为第一次访问蒙特卡洛方法和每次访问蒙特卡洛方法。
蒙特卡罗方法利用①经验平均估计策略值函数,估计出值函数后,通过②最大化动作值函数来进行策略改善。
第一次访问蒙特卡洛方法指计算状态s处的值函数时,只利用每次试验中第一次访问到的状态s处的返回值。
每次访问蒙特卡洛方法指计算状态s处的值函数时,利用所有访问到状态s时的回报返回值。
探索性初始化:无模型的方法充分评估策略值函数的前提是每个状态都能被访问到,因此,在蒙特卡洛方法中,必须采用一定的方法,保证每个状态都能被访问到方法之一,是探索性初始化,探索性初始化,是指每个状态都有一定的几率,作为初始状态
on-policy和off-policy蒙特卡洛方法根据探索策略(行动策略)/评估及改善策略是否为同一个策略。(探索策略指产生数据的策略。)
重要性采样:当随机变量的分布非常复杂时,无法利用解析的方法产生,用于逼近期望的样本。换句话说,因为目标分布非常复杂,无法得到采样点就无法计算期望。