如何学习马尔可夫决策过程中的奖励功能

时间:2011-07-17 19:01:59

标签: machine-learning reinforcement-learning q-learning

Q-learning期间更新R(s)功能的适当方法是什么?例如,假设代理人五次访问状态s1,并获得奖励[0,0,1,1,0]。我应该计算平均奖励,例如R(s1)=总和([0,0,1,1,0])/ 5?或者我应该使用移动平均线来为该州最近收到的奖励值提供更大的权重吗?我读过的Q-learning的大部分描述都将R(s)视为某种常数,而且似乎永远不会涵盖随着经验积累,你如何随着时间的推移学习这个价值。

编辑:我可能会将Q-Learning中的R(s)与Markov Decision Process中的R(s,s')混淆。问题仍然类似。在学习MDP时,更新R(s,s')的最佳方法是什么?

2 个答案:

答案 0 :(得分:1)

Q-Learning为贪婪策略下的每个州保留 action 值的运行平均值。它根据每对步骤的奖励计算这些值。贪婪策略下的 State 值等于最佳操作的值。 Q-Learning的规范描述在Reinforcement Learning: An Introduction中给出。

没有“最佳”的更新方式,但SARSA是一个很好的默认方式。 SARSA与Q-Learning类似,只是它学习了它遵循的政策,而不是贪婪的政策。

答案 1 :(得分:1)

在标准模型免费RL(如Q-learning)中,您不学习奖励功能。你学到的是价值函数或q值函数。奖励是通过与环境互动获得的,并且您可以估算累积奖励随时间(折扣)的预期价值。

如果您使用基于模型的方法,这是不同的,您尝试学习环境模型,即:过渡和奖励功能。但这不是Q-learning的情况。