您好,我正在总体控制卡特彼勒问题(倒立摆)。我的目标是使系统达到稳定,这意味着所有状态(x,xdot,theta和theta)都应收敛为零。我正在使用带有如下定义的奖励功能的q学习。
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表图表,我可以看到它在最大值处增加并稳定下来,但是状态仅停留在一定范围之内,并且不会变为零。我觉得我的经纪人学习得不够快,有时甚至不再学习。
谁能帮我。
答案 0 :(得分:0)
假设您正在使用epsilon-greedy方法,则alpha和gamma值可能会有很大的不同。我建议您尝试使用这些价值观,并了解它如何影响您的经纪人。
此外,您能解释一下奖励功能背后的逻辑吗?将所有内容乘以1000似乎很不寻常。