强化学习中的时间差分算法深入解析
1. 学习率
在强化学习中,学习率(α)是一个关键参数,也被称为 alpha。其更新公式为:
$V_T(S) = V_{T - 1}(S) + \alpha_T [R_T(S) - V_{T - 1}(S)]$,其中 $\alpha = 1/T$。
学习率的作用在于决定新获取的信息何时会覆盖之前的信息。当学习率为 0 或接近 0 时,意味着智能体尚未学到任何东西;而当学习率为 1 或接近 1 时,则表示智能体在该环境中已接近训练良好。
在更新过程中,$R_T(S) - V_{T - 1}(S)$ 类似于一个误差项。随着训练轮次的增加,学习率会逐渐变小,更新的幅度也会越来越小。这是因为随着时间的推移,我们希望学习的步伐逐渐放缓,以避免过度波动。具体来说,如果该差值为 0,则状态值不会改变;若差值为正且较大,学习率会上升;若差值为负且较大,学习率则会下降。
学习率序列需要满足两个条件:
- $\sum_T \alpha_T = \infty$:学习率总和必须为无穷大,这样才能保证无论从何处开始,都能朝着真实值移动。
- $\sum_T \alpha_T^2 < \infty$:学习率平方的总和要小于无穷大,以避免学习率过大而无法抑制噪声,从而实现有效的平均。
这两个条件为我们选择不同类型的学习率序列提供了依据。
2. TD(1) 算法
TD(1) 算法的更新规则如下:
Episode T
For all S, e (S)=0 at star
超级会员免费看
订阅专栏 解锁全文
7万+

被折叠的 条评论
为什么被折叠?



