【问题标题】:Stochastic state transitions in MDP: How does Q-learning estimate that?MDP 中的随机状态转换:Q 学习如何估计?
【发布时间】:2023-03-28 15:20:01
【问题描述】:

我正在对网格世界实施 Q-learning,以找到最佳策略。困扰我的一件事是状态转换是随机的。例如,如果我处于状态 (3,2) 并采取行动“北”,我将以 0.8 的概率降落在 (3,1),以概率 0.1 降落到 (2,2),然后降落到 (4 ,2) 概率为 0.1。我如何在算法中拟合这些信息?正如我目前所读到的,Q 学习是一种“无模型”学习——它不需要知道状态转移概率。我不相信算法将如何在训练过程中自动找到这些转换概率。如果有人能把事情弄清楚,我将不胜感激。

【问题讨论】:

    标签: machine-learning reinforcement-learning q-learning


    【解决方案1】:

    让我们看看 Q-learning 保证什么,看看它为什么处理转换概率。

    我们将q* 称为最优动作价值函数。这是返回在某种状态下采取某种行动的正确的函数。状态-动作对的是采取该动作,然后遵循最优策略的预期累积奖励。最优策略只是一种选择实现最大可能预期累积奖励的行动的方式。一旦我们有了q*,就很容易找到最优策略;从您发现自己所处的每个状态s 中,贪婪地选择最大化q*(s,a) 的动作。 Q-learning 学习 q* 因为它无限次访问所有状态和动作

    例如,如果我在状态 (3,2) 并采取行动“北”,我会以 0.8 的概率降落在 (3,1),以概率 0.1 降落到 (2,2) 并且到 (4,2) 的概率为 0.1。我如何在算法中拟合这些信息?

    因为算法无限次访问所有状态和动作,平均 q 值,它学习了一个期望尝试向北走的价值。我们向北走了很多次,以至于该值收敛到每个可能结果的总和,这些结果由其转移概率加权。假设我们知道网格世界上的所有值,除了从 (3,2) 向北的值,并假设从 (3,2) 的任何转换都没有奖励。从 (3,2) 向北无限次采样后,算法收敛到值0.8 * q(3,1) + 0.1 * q(2,2) + 0.1 * q(4,2)。有了这个值,来自 (3,2) 的贪婪行动选择现在将被正确地告知尝试向北行驶的真实期望值。转移概率直接融入到价值中!

    【讨论】:

    • 所以你的意思是 Q 学习只是一个二维表,其中行是状态,列是动作?而且您不关心(不建模)从前一个状态到下一个状态的转换,也不关心它的概率?
    • 正确。没有维护转换函数的显式模型,只有状态动作值表(您绝对可以将其视为 2D 表)。
    猜你喜欢
    • 2015-02-04
    • 2019-10-12
    • 2015-03-19
    • 2018-06-09
    • 2021-01-20
    • 1970-01-01
    • 2020-10-08
    • 1970-01-01
    相关资源
    最近更新 更多