从本讲开始进入第二部分,我们扩展了第一部分中介绍的tabular方法,以适用于任意大的状态空间的问题。在我们想要应用强化学习的许多任务中,状态空间是组合的和巨大的。在这种情况下,即使在无限时间和数据的限制下,我们也不能期望找到最优策略或最优值函数; 我们的目标是使用有限的计算资源找到一个好的近似解决方案。
Value-function Approximation
The Prediction Objective
Stochastic-gradient
Semi-gradient Methods
Linear Methods
Feature Construction for Linear Methods
2. Fourier Basis 傅里叶基
实例:State Aggregation on the 1000-state Random Walk
之前我们讲过19个状态的random walk,这一次我们考虑1000个状态。状态从1到1000,从左到右编号,并且所有episode在中心附近开始,即状态500。状态转换从当前状态到其两边各100个邻近状态中的一个,以相同概率。如果当前状态接近边缘,那么在它的那一侧可能少于100个相邻状态。在这种情况下,没有的状态的概率都会进入终止方的概率。左边的终止产生奖励-1,右边的终止产生 1的奖励,所有其他过渡零奖励。
代码编写
gradient Monte Carlo algorithm
semi-gradient n-step TD algorithm
结果
gradient MC
semi-gradient n-step TD
小结
要在AI或大部分工程问题中使用强化学习,就必须考虑泛化的问题。为了解决该问题,所有监督学习的函数逼近方法均可以用于强化学习的value估计。最适合的监督学习方法可能是使用参数的函数逼近。其中策略被参数化为权重向量w。定义了均方误差函数作为函数逼近的衡量方式。为了找到更合适的权重向量,最流行的方式是随机梯度下降法(SGD)。这章关注on-policy基于一个固定策略的形式,叫做prediction或者evaluation。在这种形式里最自然的算法是n步半梯度TD法,它包含了MC和semi-gradient TD(0)。
使用semi-gradient方法可以在线性函数逼近中得到很好的结果。线性函数逼近是函数逼近方法中一种易于理解的简单方法,其重点在于特征选择。本讲中我们介绍的特征选择的方法有 Polynomials, Fourier Basis, Coarse Coding, Tile Coding和 Radial Basis Functions。
参考:
1.R.Sutton et al. Reinforcement learning: An introduction ,1998
2. https://zhuanlan.zhihu.com/p/27591256
3. https://blog.csdn.net/LagrangeSK/article/details/81743844
4. https://blog.csdn.net/qq_25037903/article/details/82627226
5.https://gitee.com/marcusli/reinforcement-learning-an-introduction