我对自己的测试强化学习技术的项目有疑问。首先让我解释一下目的。我有一个代理,可以在8个步骤中执行4个操作。在这八个步骤的最后,特工可以处于5种可能的胜利状态。目标是找到最低成本。要访问这5场胜利(具有不同的成本值:50、50、0、40、60),代理程序不必采用相同的路径(如图表)。蓝色状态为失败状态(对质量表示抱歉),情节已停止。
真正的好方法是:DCCBBAD
现在我的问题是,我不明白为什么在SARSA和Q-Learning(主要是Q学习)中,代理在经过10万次迭代后总是找到一条路径而不是最优路径(总是:DACBBAD / DACBBCD)。有时,当我再次计算时,代理落入良好路径(DCCBBAD)。因此,我想了解为什么代理有时找到它,为什么有时找不到。有没有一种方法可以使我的经纪人稳定下来?
非常感谢您,
Tanguy
答案 0 :(得分:0)
TD; DR;
更详细的版本:
仅在以下条件下保证Q学习收敛:
要达到1,只需确保您的epsilon不会过早衰减到较低的值。使它衰减非常缓慢,也许永远不会衰减到0。您也可以尝试。
要达到2和3,您必须确保照顾好1,这样您才能收集无限的学习率,而且还要选择学习率以使平方是有限的。这基本上意味着= <1。如果您的环境是确定性的,则应尝试1.确定性环境,这意味着在状态a
上执行操作s
时,您将全部过渡到状态s'
环境中的状态和动作。如果您的环境是随机的,则可以尝试使用较小的数字,例如0.05-0.3。
也许要结帐https://youtu.be/wZyJ66_u4TI?t=2790以获得更多信息。