在尝试实现Episodic Semi-gradient Sarsa with神经网络作为逼近器时,我想知道如何根据当前学习到的网络权重来选择最优动作。如果动作空间是离散的,我只需计算当前状态下不同动作的估计值,就可以选择给出最大值的动作。但这似乎不是解决问题的最佳办法。此外,如果动作空间可以是连续的(例如,自动驾驶汽车的加速),则不起作用。
因此,我很想知道如何解决这个伪代码中的第10行Choose A' as a function of q(S', , w):

这些问题通常是如何解决的?可以推荐一个使用Keras的这个算法的好例子吗?
编辑:当使用网络作为逼近器时,我需要修改伪代码吗?所以,我简单地最小化了网络预测的MSE和奖励R,例如?
发布于 2017-07-29 16:38:13
我想知道如何根据当前学习到的网络权重来选择最优的操作。
你有三个基本选择:
请注意,如果操作空间是连续的,则不必使用策略梯度方法,只需量化操作。此外,在某些情况下,即使在理论上是连续的,您也可能会发现最优策略只涉及使用极值(经典的山地汽车实例属于这一类,唯一有用的操作是最大加速度和最大向后加速)。
当使用网络作为逼近器时,我需要修改伪代码吗?所以,我简单地最小化了网络预测的最小均方误差,比如奖励
R?
不是的。在伪码中没有单独的损失函数,例如在监督学习中使用的MSE。误差项(通常称为TD错误)是由方括号中的部分给出的,并取得了类似的效果。字面上,术语w) q(S,A,∇(抱歉错过了帽子,在SO上没有LaTex )是指估计量本身的梯度,而不是任何损失函数的梯度。
https://stackoverflow.com/questions/45377404
复制相似问题