如何计算经常性公用事业的最优政策?

时间:2015-01-10 15:23:39

标签: artificial-intelligence markov

Exam Solutions

我正在学习马尔可夫决策过程和考试问题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))

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

1 个答案:

答案 0 :(得分:1)

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

考虑(慢,快)

从a)你已经看到J *(酷)= 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 *(酷)与你在温暖状态下的动作无关,所以J *(酷)= 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 *(暖)= 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。从酷开始的最高值是66.94。当我们的政策(快速,慢速),即快速冷却,温暖缓慢,这两种情况都会发生,因此这是最优政策。

事实证明,如果从状态A开始,就不可能有一个最优的策略,但如果从状态B开始,则不是最优的。同样值得注意的是,对于这些类型的无限时间范围MDP,你可以证明最优政策永远是固定的,也就是说,如果在时间1处采取缓慢行动的最佳状态是最佳的,那么最好采取慢速行动。

最后,在实践中,状态和动作的数量远远大于此问题,并且通常需要更高级的技术,例如值迭代,策略迭代或动态编程。