我正在学习马尔可夫决策过程和考试问题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))
但是我们在这些方程式中没有单个变量,我们没有这些状态的效用?我们如何获得与每个行动相关的预期效用的价值?
答案 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处采取缓慢行动的最佳状态是最佳的,那么最好采取慢速行动。
最后,在实践中,状态和动作的数量远远大于此问题,并且通常需要更高级的技术,例如值迭代,策略迭代或动态编程。