4.4.1 背景介绍
强化学习技术可以表示为人们利用经验去执行一项任务。根据所处的环境,任务通常都可以分解为许多步骤,每一个步骤执行与否(采取一定的动作),都会对任务的结果造成影响(称为奖赏),且执行前后状态不同。如果该步骤对结果有好的影响,则在下次执行同样的任务时,人们会借鉴之前的经验执行具有较好影响的步骤,同样会避免较差影响的步骤。最后,在多次执行任务以后,我们就可以得出一套最佳的执行任务的步骤。这个过程可以抽象成强化学习模型。在模型中,每次执行任务的是机器,如图4-35所示。在这里人与机器统称为智能体(agent)。

图4-35 强化学习模型
1.马尔可夫决策
强化学习可以用马尔可夫决策过程(Markov Decision Process,MDP)来表示。马尔可夫决策过程就是决策者根据具有马尔可夫性的系统,序贯地做出决策,即决策者观察当前的状态,从可以行动的动作中选取一个执行,转移到下一个随机状态,且转移的概率也具有马尔可夫性。接着,决策者再次选取动作反复执行。马尔可夫决策过程可以用数学表述为一个{S(k),A(i),q,γ,V}的五元组,其中:S(k)表示第k个状态;A(i)表示第i个动作,状态和动作的数量由当前解决问题的环境决定;q表示转移概率;γ表示为执行动作获得的奖赏;V表示衡量本次动作收获的策略。
类似地,强化学习的整个过程可以被定义为一个四元组<S,A,T,R>,分别对应强化学习需要包含的状态(state)、动作(action)、转移函数(transition)和奖赏(reward)这4个条件,如果系统中有3个状态(S 1,S 2,S 3)、2个动作(a 1,a 2),转移概率及奖赏已定,强化学习状态转移过程如图4-36所示。

图4-36 强化学习状态转移过程图
2.探索与利用策略
在机器学习中,强化学习与监督学习等技术的不同之处在于,强化学习解决问题的最终奖赏需要在进行多次动作后才能获得,原因是所解决的问题没有训练数据告诉机器如何执行动作,即需要通过多次动作的尝试来判断各个动作所产生的结果。
智能体在动作的选取中,只考虑最简单的情形,即单步奖赏。需要考虑两点,其一是每个动作所带来的奖赏,其二就是当前需要判断哪个奖赏最大。如果奖赏值确定的话,通常先遍历所有动作带来的奖赏,然后执行带来最大奖赏的动作。但是,一般奖赏的值是一个不确定的概率分布,一次尝试并不能获得平均的奖赏值。这时要更好地解决问题,则需要考虑探索和利用。(https://www.daowen.com)
对于当前系统,如果仅采取探索的方式,则每个动作都进行尝试,估计每个动作的奖赏。对于系统的已知动作奖赏,如果只采取利用的方式,则仅仅执行当前奖赏最大的动作。仅采用探索的方式会浪费更多的资源,仅采取利用的方式可能有更容易解决问题的方式并未得到发掘,因此需要一个算法对利用和探索进行折中。
ε-贪心算法被用来解决对利用和探索进行折中的问题。具体来说,对于每次动作,以ε的概率进行探索,通常可以以均匀概率随机选择一个动作;以1-ε的概率进行利用,根据当前系统选择最优的动作。
3.免模型学习策略
如上文所述,强化学习的整个过程可以被定义为一个四元组<S,A,T,R>,如果S、A、T、R都已知,被称为模型已知,这种情况被称为模型环境下的强化学习;但是针对现实环境中的强化学习任务,奖赏函数R、转移概率T不能直接求得,且状态S与动作A的数量都未知,此时的学习策略不依赖于环境建模,这样的策略成为免模型学习策略。免模型学习策略有蒙特卡罗(Monte Carlo,MC)强化学习、时序差分(Temporal Difference,TD)强化学习。
MC强化学习的基本思路分为3步。
①模拟,即让智能体在环境中采取某种策略从起始状态S 0执行n步产生轨迹<S 0,a 0,r 1,S 1,a 1,r 2,…,Sn-1,an-1,rn,Sn>到最终状态Sn,轨迹中出现的每一个<Si,ai>(i=0,1,…,n-1)状态与动作对,统计其后的奖赏和ri+1。
②采样,即通过多次模拟后,得到数条轨迹。
③估值,即对累计采样值进行平均,可以得到R奖赏函数的估计值。
MC学习是指模拟一段序列,根据模拟的各个状态与动作对获得的价值来估计状态价值。而TD强化学习结合MC方法和动态规划的思想,是强化学习中的核心思想,可以获得更为高效的免模型学习策略,其思想是模拟一段序列,通常每执行一步,根据下一步状态的价值,估计执行步骤状态价值。常用的策略是下面的Q-learning算法。
