策略迭代的策略改进步骤

时间:2018-11-09 17:41:14

标签: dynamic-programming reinforcement-learning planning value-iteration

您好,亲爱的StackOverflow社区!

我现在正在上强化学习课程,对策略迭代方法感到困惑。

在策略迭代中,我们在开始时有一个随机策略,并且每个状态都有值函数。在策略迭代过程的“策略评估”部分中,我们为每个状态找到新的价值函数。之后,在“政策改进”部分中,基于新的价值功能,我们更新政策。我们迭代执行这些步骤,直到我们的值函数收敛。但是我的问题是,我们如何调整新政策以适应下一个政策评估流程?让我在一个例子中解释我的观点。

网格世界示例: enter image description here

如您在图像上看到的,黑匣子是终端状态,我们的直接奖励是-1,折扣系数是1,开始时所有方向的可能性为0.25。在策略中,我们到达策略改进部分k = 1,我们必须从最左上角的终端状态右侧的状态向左走。之后,在更新k = 2的值函数时,为什么不考虑这种变化并向该状态写入-1.75(缩写为-1.7),就像我们可以四面八方一样?我认为从数学上来说:

此状态的新值函数= -1 + 1 *(0.0)= -1

应该是这样的,因为根据我们的上一个政策,我们只能从该州采取一项可能的措施,而不是:

-1.7 =((-1)+1 *(-1))*(0.75)+(-1 +1 *(0.0))*(0.25)

如果我们这样做,那么这些政策的中间任务是什么?如果我们不将其用于新的值函数,则将其作为值迭代!

我对此感到很困惑,你能帮我吗?

0 个答案:

没有答案