MDP与强化学习——VI、PI、Q学习算法的收敛性比较

MDP & Reinforcement Learning - Convergence Comparison of VI, PI and QLearning Algorithms

我已经使用 python 实现了 VI(值迭代)、PI(策略迭代)和 QLearning 算法。比较结果后,我注意到了一些事情。 VI 和 PI 算法收敛到相同的实用程序和策略。 使用相同的参数,QLearning 算法收敛到不同的实用程序,但与 VI 和 PI 算法的策略相同。这正常吗?我读了很多关于 MDP 和 RL 的论文和书籍,但找不到任何东西来说明 VI-PI 算法的实用程序是否应该收敛到与 QLearning 相同的实用程序。

以下信息是关于我的网格世界和结果的。

我的网格世界

grid_world.png

结果

vi_pi_results.png

qLearning_1million_10million_iterations_results.png

此外,我还注意到,当QLearning进行100万次迭代时,距离+10奖励终端同样远的状态具有相同的效用。 Agent 似乎并不关心它是否会从靠近 -10 终端的路径获得奖励,而 Agent 在 VI 和 PI 算法上关心它。 这是不是因为在QLearning中,我们不知道环境的转移概率?

如果状态和动作空间是有限的,就像您的问题一样,Q-learning 算法应该渐近收敛到最优 效用 (又名, Q-function),当跃迁次数趋近于无穷大且满足以下条件时:

,

其中 n 是转换次数,a 是学习率。 这种情况需要随着学习的进展更新你的学习率。一个典型的选择是使用 a_n = 1/n。但是,在实践中,学习率计划可能需要根据问题进行一些调整。

另一方面,另一个收敛条件在于无限更新所有状态-动作对(在渐近意义上)。这可以简单地通过保持大于零的探索率来实现。

因此,对于您的情况,您需要降低学习率。