在模型已知的情况下,可以利用动态规划的方法解决马尔可夫决策过程问题。但在现实的强化学习任务中,状态转移概率P、奖励函数R往往很难得知,甚至很难知道环境中一共有多少状态,若学习算法不依赖于环境建模,则称为“无模型学习”。无模型的强化学习方法包括蒙特卡洛方法和时间差分方法。
动态规划方法是利用模型计算期望,而蒙特卡洛方法是利用经验平均估计值函数代替随机变量的期望。
1.什么是“经验”?
利用给定的策略做很多次试验,每次试验都是从任意的初始状态开始直到终止(一个episode),产生很多幕数据。
2.什么是“平均”?
完成一个episode后,计算一次试验中状态
状态出现的次数加1:
总的收获值更新:
状态s的价值:
当
利用蒙特卡洛方法求状态S处的值函数时,又可以分为第一次访问蒙特卡洛方法和每次访问蒙特卡洛方法。
(1)第一次访问蒙特卡洛方法
计算状态s处的值函数时,只利用每次试验中第一次访问到状态s时的返回值。
(2)每次访问蒙特卡洛方法
所有访问到状态s时的返回值。
由于智能体和环境交互的模型是未知的,蒙特卡洛方法是利用经验平均来估计值函数,而能否得到正确的值函数,取决于经验,因此,如何获得充足的经验是无模型强化学习的核心所在。
在动态规划方法中,为了保证值函数的收敛性,算法会逐个扫描状态空间中的状态。无模型的方法充分评估策略函数的前提是每个状态都能被访问到。因此,在蒙特卡洛方法中必须采用一定的方法保证每个状态都能被访问到,方法之一是探索性初始化。探索性初始化在每一次试验中,初始状态都是随机分配的。在给出基于探索性初始化的蒙特卡罗方法前,我们还需要给出策略改进方法,以及便于进行迭代计算的平均方法。
蒙特卡罗策略改进:
蒙特卡罗方法利用经验平均对策略值函数进行估计。当值函数被估计出来后,对于每个状态
Q:在初始状态不变的情况下,怎么能保证每个状态都能被访问到?
A:设计合适的策略,即所有的状态s和a都满足
合适的策略是指在任意状态下,采用动作集中每个动作的概率都大于零。典型的策略是
根据探索策略和评估策略是否为同一策略,蒙特卡洛方法又分为On-policy和Off-policy两种方法。异策略可以保证充分的探索性。