上一篇博客中,我们讲解了 强化学习的 概念定义,以及详细全面的讲述了马尔可夫过程,这一篇我们将讲述马尔可夫决策过程所涉及到的策略优化及相关概念。
四.策略优化
马尔可夫决策过程对环境进行了描述,那么智能主体如何完成与环境的智能交互?
这时我们就需要进行 策略学习 了
4.1 策略
策略是提供给决策者在各个时刻选取行动的规则,记作π=(π0,π1,π2,…, πn,πn+1…),其中πn是时刻 n选取行动的规则。从理论上来说,为了在大范围寻求最优策略πn,最好根据时刻 n以前的历史,甚至是随机地选择最优策略。但为了便于应用,常采用既不依赖于历史、又不依赖于时间的策略,甚至可以采用确定性平稳策略。
4.2 策略指标
衡量策略优劣的常用指标有折扣指标和平均指标。折扣指标是指长期折扣〔把 t时刻的单位收益折合成0时刻的单位收益的βt(β < 1)倍〕期望总报酬;平均指标是指单位时间的平均期望报酬。
采用折扣指标的马尔可夫决策过程称为折扣模型。业已证明:若一个策略是β折扣最优的,则初始时刻的决策规则所构成的平稳策略对同一β也是折扣最优的,而且它还可以分解为若干个确定性平稳策略,它们对同一β都是最优的,已有计算这种策略的算法。
采用平均指标的马尔可夫决策过程称为平均模型。业已证明:当状态空间S 和行动集A(i)均为有限集时,对于平均指标存在最优的确定性平稳策略;当S和(或)A(i)不是有限的情况,必须增加条件,才有最优的确定性平稳策略。计算这种策略的算法也已研制出来
4.3 策略评估
4.4 状态价值函数
4.5 动作价值函数
4.6 最优策略
4.7 贝尔曼法方程
贝尔曼方程(Bellman Equation)也被称作动态规划方程(Dynamic Programming Equation),由理查·贝尔曼(Richard Bellman)发现。
贝尔曼方程是动态规划(Dynamic Programming)这些数学最佳化方法能够达到最佳化的必要条件。此方程把"决策问题在特定时间怎么的值"以"来自初始选择的报酬比从初始选择衍生的决策问题的值"的形式表示。借此这个方式把动态最佳化问题变成简单的子问题,而这些子问题遵守从贝尔曼所提出来的"最佳化还原理"。
如下图所示展示了贝尔曼算法
五.问题求解
5.1 基于价值的求解方法
基于动态规划的价值函数更新
动态规划的关键点有两个:一是问题的最优解可以由若干小问题的最优解构成,即通过寻找子问题的最优解来得到问题的最优解。第二是可以找到子问题状态之间的递推关系,通过较小的子问题状态递推出较大的子问题的状态。而强化学习的问题恰好是满足这两个条件的。
我们先看看强化学习的两个基本问题。
第一个问题是预测,即给定强化学习的6个要素:状态集S, 动作集A, 模型状态转化概率矩阵P, 即时奖励R,衰减因子γ, 给定策略π, 求解该策略的状态价值函数v(π)
第二个问题是控制,也就是求解最优的价值函数和策略。给定强化学习的5个要素:状态集S, 动作集A, 模型状态转化概率矩阵P, 即时奖励R,衰减因子γ, 求解最优的状态价值函数v∗和最优策略π∗
基于蒙特卡洛的更新方法
蒙特卡罗法通过采样若干经历完整的状态序列(episode)来估计状态的真实价值。所谓的经历完整,就是这个序列必须是达到终点的。比如下棋问题分出输赢,驾车问题成功到达终点或者失败。有了很多组这样经历完整的状态序列,我们就可以来近似的估计状态价值,进而求解预测和控制问题了。
从特卡罗法法的特点来说,一是和动态规划比,它不需要依赖于模型状态转化概率。二是它从经历过的完整序列学习,完整的经历越多,学习效果越好。
基于时序差分的更新方法
对于时序差分法来说,我们没有完整的状态序列,只有部分的状态序列,那么如何可以近似求出某个状态的收获呢?
这启发我们可以用Rt+1+γv(St+1)来近似的代替收获Gt, 一般我们把Rt+1+γV(St+1)称为TD目标值。Rt+1+γV(St+1)−V(St)称为TD误差,将用TD目标值近似代替收获G(t)的过程称为引导(bootstrapping)。这样我们只需要两个连续的状态与对应的奖励,就可以尝试求解强化学习问题了。
在下一篇博客中,我们将讲解 Q-learn 方法,以及 如何 平衡在策略学习中的探索与利用,在最后我们将讲述 深度强化学习的概念,敬请期待吧!
参考:
浙江大学 《人工智能》