如果模型可用,为什么状态值函数足以确定策略?

人工智能 强化学习 价值函数
2021-11-15 20:30:54

Sutton 和 Barto 的强化学习书第二版的“ 5.2 Monte Carlo Estimation of Action Values ”一节中,这说明:

如果模型不可用,那么估计动作值(状态-动作对的值)而不是状态值特别有用。对于模型,仅状态值就足以确定策略;就像我们在 DP 章节中所做的那样,只需向前看一步并选择导致奖励和下一个状态的最佳组合的任何动作。

但是,我不明白这在实践中是如何正确的。我可以看到它对于具有确定性环境动态的离散状态和动作空间是如何工作的,因为我们可以计算π(s)=argmaxa V(step(s,a))只需查看所有可能的操作并选择最佳操作即可。一旦我想到具有随机环境动态的连续状态和动作空间,计算argmax似乎变得非常复杂和不切实际。对于连续状态和离散动作的特殊情况,我认为即使环境动态的前向模型可用,估计动作值也可能更实际,因为argmax变得更容易(我特别想到了深度 Q 学习中采用的方法)。

我这样想是正确的,还是如果模型可用,如果状态值已经可用,估计动作值是没有用的?

1个回答

对于模型,仅状态值就足以确定策略;就像我们在 DP 章节中所做的那样,只需向前看一步并选择导致奖励和下一个状态的最佳组合的任何动作。

一旦我想到具有随机环境动态的连续状态和动作空间,计算argmax似乎变得非常复杂和不切实际。

对于随机动力学,计算会更复杂,但通常很容易处理。它取决于分布的大小,以及计算正确加权和的概率的难易程度。代替|A(s)|呼吁Q(s,)你需要大致制作|S(s)|×|A(s)|呼吁V(s)在哪里S(s)S是从起始状态可能产生的所有可能状态。在最坏的情况下,这是|S|×|A|

尽管这里有额外的工作,但您之前的效率更高。通过仅评估V(s),您已删除操作维度,否则会拆分您的估计。因此,在其他条件相同的情况下,您的价值函数估计会更快收敛。所以这有时是你可能愿意做出的妥协。

对于连续状态,如果动作选择和可能的转换仍然是离散的,这可能仍然是可行的。

一旦动作空间是连续的,或者转换在某个概率密度函数上是连续的,那么通过模型找到最大化动作就变得不切实际了。