2

您好,我正在全面控制手推车问题(倒立摆)。我的目标是让系统达到稳定,这意味着所有状态(x、xdot、theta 和 theta)都应该收敛到零。我正在使用具有如下定义的奖励函数的 q-learning。

Q_table[pre_s + (a,)] += alpha * (R + gamma *(argmax(Q_table[s])) - Q_table[pre_s + (a,)])
R=1000*cos(theta)-1000*(theta_dot**2)-100*(x_dot**2)-100*(x**2)

不幸的是,没有收敛。通过 q-table 图,我可以看到它增加并稳定在最大值,但状态只是保持在一定范围内,不会变为零。我觉得我的代理学习速度不够快,在某些时候我不再学习了。谁能帮我。

4

1 回答 1

0

假设您使用的是 epsilon-greedy 方法,您的 alpha 和 gamma 值可能会产生很大的不同。我建议玩弄这些价值观,看看它如何影响你的经纪人。

另外,你能解释一下你的奖励函数背后的逻辑吗?将所有内容乘以 1000 似乎很不寻常。

于 2018-11-10T13:17:19.900 回答