马尔可夫决策过程 - 如何使用最优政策公式?

时间:2012-01-29 18:00:30

标签: process policy markov

我有一项任务,我必须计算最优政策 (网格世界中的强化学习 - 马尔可夫决策过程)(代理电影左,右,上,下)。

在左表中,有最佳值(V *)。 在右表中,有一些溶液(方向),我不知道如何使用“最优政策”公式。 Y = 0.9(折扣系数)

enter image description here

这是公式:

enter image description here

因此,如果有人知道如何使用该公式,以获得解决方案(这些箭头),请帮助。

编辑:此页面上有完整的问题描述: http://webdocs.cs.ualberta.ca/~sutton/book/ebook/node35.html 奖励:状态A(第2列,第1行)之后是奖励+10并转换到状态A',而状态B(第4列,第1行)之后是奖励+5并转换到状态B' 。 你可以移动:上,下,左,右。你不能移动到网格之外或呆在同一个地方。

1 个答案:

答案 0 :(得分:1)

逐个打破数学:

arg max(....)告诉你找到参数a,它最大化括号中的所有内容。变量a,s和s'是一个动作,一个你进入的状态,以及一个由该动作产生的状态。所以arg max(...)告诉你要找到一个最大化该术语的动作。

你知道伽马,有人做了计算V *(s')的艰苦工作,这是结果状态的价值。所以你知道插在那里的什么,对吗?

那么什么是p(s,a,s')?这是从s开始并且做a的概率,你在某些s'中结束。这意味着代表某种有缺陷的执行器 - 你说"前进!"它愚蠢地决定向左走(或者向前走两个方格,或者保持静止,或者其他什么。)对于这个问题,我希望它能给你,但你还没有和我们分享。而对s'的总结告诉你,当你从s开始,并且你选择了一个动作a时,你需要总结所有可能的结果s'状态。同样,您需要p(s,a,s')函数的详细信息才能知道它们是什么。

最后,r(s,a)是在状态s中进行动作的奖励,无论你最终在哪里。在这个问题中,代表燃料成本可能略微为负。如果网格中有一系列奖励和抓取动作,则可能是积极的。你也需要它。

那么,该怎么办?选择一个州,并为其计算您的政策。对于每个s,你可能有(s,a1),(s,a2)和(s,a3)等。你必须找到能给你带来最大结果的a。当然,对于每一对(s,a),你可能(事实上,几乎肯定会)具有多个s'坚持总结。

如果这听起来像很多工作,那就是我们拥有电脑的原因。

PS - 仔细阅读问题描述,了解如果碰到墙壁会发生什么。