强化学习中的Q-Learning与SARSA算法详解
1. Q-Learning算法
1989年,一种名为Q-Learning的时序差分(TD)学习实现方法,让数学家们更易于证明算法的收敛性,也由此引发了人们对强化学习(RL)的浓厚兴趣。
Q-Learning通过对相关公式进行重新表述,得到动作价值函数。其在线更新规则用于估计预期回报,公式如下:
[Q(s, a) \leftarrow Q(s, a) + \alpha \left[r + \gamma \arg\max_{a_s \in \mathcal{A}(s)} Q(s’, a_s) - Q(s, a)\right]]
其中,(Q(s, a)) 是动作价值函数,它能告知每个动作的预期回报。该更新规则是在线的,意味着要通过迭代不断覆盖之前的估计值,以优化 (Q(s, a)) 的估计。公式中 (\alpha) 右侧的部分可看作一个增量(delta),用于衡量估计值与实际情况的偏差。TD的一步前瞻机制使算法能向前预测一步,让智能体可以思考“哪个是最佳动作”。
与以往仅依据当前状态信息估计预期回报的方法不同,Q-Learning能让智能体展望未来,判断哪些未来轨迹是最优的,这被称为展开(rollout)。智能体可以创建不仅局部最优,而且在未来也最优的策略,甚至能预测未来。
Q-Learning算法的具体实现(算法3 - 1)如下:
1: 输入:使用动作价值函数的策略 \(\pi(a|s, Q(s, a))\)
2: 初始化 \(Q(s, a) = 0\),对于所有 \(s \in \mathcal{S}\
超级会员免费看
订阅专栏 解锁全文

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



