0

考试解决方案

我正在学习马尔可夫决策过程,对于考试的第 6 题(请参阅上面的链接),我了解在某个动作后获得相同状态时如何计算效用(第 6 题的 a 部分)。

J*(cool) = 4 + 0.9 * J*(cool)

但我不明白如何计算其他状态和动作(问题 6 的 b 部分)。我假设方程是这样的:

对于“酷”状态下的“快速”动作:

J*(cool) = 10 + 0.9 * (0.25 * J*(cool) + 0.75 * J*(warm))

对于“暖”状态下的“慢”动作:

J*(warm) = 4 + 0.9 * (0.5 * J*(cool) + 0.5 * J*(warm))

对于“温暖”状态下的“快速”动作:

J*(warm) = 10 + 0.9 * (0.875 * J*(warm) + 0.125 * J*(off))

但是我们在这些方程中没有一个变量,我们没有这些状态的效用?我们如何获得与每个动作相关的预期效用值?

4

1 回答 1

1

你在这些方程的正确轨道上。您只需要依次考虑四种可能的策略中的每一种:(慢,慢),(快,慢),(慢,快),(快,快)。

考虑(慢,快)

从 a) 你已经看到 J*(cool) = 40。

J*(warm) = 10 + 0.9 * (0.875 * J*(warm) + 0.125 * J*(off))
J*(warm) = 10 + 0.9 * (0.875 * J*(warm) + 0.125 * 0)
J*(warm) = 47.06

对于(慢,慢)

同样,J*(cool) 与您在温暖状态下的动作无关,因此 J*(cool) = 40。

J*(warm) = 4 + 0.9 * (0.5 * J*(cool) + 0.5 * J*(warm))
J*(warm) = 4 + 0.9 * (0.5 * 40 + 0.5 * J*(warm))
J*(warm) = 40

对于(快,快)

这一次处于温暖状态的值与凉爽的动作无关,从上面看是 J*(warm) = 47.06。

J*(cool) = 10 + 0.9 * (0.25 * J*(cool) + 0.75 * J*(warm))
J*(cool) = 10 + 0.9 * (0.25 * J*(cool) + 0.75 * 47.06)
J*(cool) = 53.89

最后(快,慢)

这是最难的情况,但我们有两个方程和两个未知数,所以我们可以使用联立方程求解。

J*(cool) = 10 + 0.9 * (0.25 * J*(cool) + 0.75 * J*(warm))
J*(warm) = 4 + 0.9 * (0.5 * J*(cool) + 0.5 * J*(warm))

J*(warm) = (4 + 0.45 * J*(cool))/0.55

J*(cool) = 10 + 0.9 * (0.25 * J*(cool) + 0.75 * (4 + 0.45 * J*(cool))/0.55)
J*(cool) = 66.94
J*(warm) = 62.04

正如我们所看到的,如果我们在暖状态下启动可以获得的最高值是 62.04。从cool开始的最高值是66.94。当我们的策略是(快,慢)时,这两种情况都会发生,即冷时快,暖时慢,因此这是最优策略。

事实证明,如果您从状态 A 开始,则不可能有一个最优的策略,但如果您从状态 B 开始,则不是最优的。同样值得注意的是,对于这些类型的无限时间范围 MDP,您可以证明最优策略将始终是静止的,即如果在时间 1 的凉爽状态下采取慢动作是最优的,那么在所有时间都采取慢动作是最优的。

最后,在实践中,状态和动作的数量比这个问题要大得多,并且通常需要更高级的技术,例如值迭代、策略迭代或动态规划。

于 2015-01-16T00:31:59.537 回答