- 已编辑
这种问题,如果环境和超参数没错的话,换个强化算法就行了。
可以用TD3或者SAC.
尤其TD3就是专门用延迟更新动作网络、约束最大Q值、增加更新目标网络的噪声等方法,解决DDPG振荡的,效果拔群。
欢迎使用我最近分享的代码库,有tf1和torch版本的主流offpolicy强化算法,DDPG,SAC,TD3,对每个算法都增加了非常简洁的HER和PER的封装,调用方便~
https://github.com/kaixindelele/DRLib
这种问题,如果环境和超参数没错的话,换个强化算法就行了。
可以用TD3或者SAC.
尤其TD3就是专门用延迟更新动作网络、约束最大Q值、增加更新目标网络的噪声等方法,解决DDPG振荡的,效果拔群。
欢迎使用我最近分享的代码库,有tf1和torch版本的主流offpolicy强化算法,DDPG,SAC,TD3,对每个算法都增加了非常简洁的HER和PER的封装,调用方便~
https://github.com/kaixindelele/DRLib
PER和HER是什么啊
cluonaerduo
PER: Prioritized Experience Replay
HER: Hindsight Experience Replay
感觉是超参配置没有配置好的原因,题主可否po一下超参配置?
每隔几步取一个平均值试一试呢
南瓜饼 一眼看上去,你的memory-capacity就有问题,太小了,一般都是1e6。
batch-size如果和你的训练次数挂钩(即采集一步,更新一次)的话,那么这个也过大了,一般在256。
你这个target-update也有问题,也不是默认的,这个代码库是谁的?
首先不建议非学习的情况下,使用DDPG;
其次最好用别人成熟的强化算法跑自己的环境,跑收敛后再改参数
kaixindelele 这个是李宏毅团队编写倒立摆模板,重写的环境。因为查不出来reward 一直震荡不收敛的原因,所以就改了参数试验
南瓜饼 请问楼主解决了吗?我也遇到了相同的问题(1.回合奖励不收敛2.神经网络总是输出边界值)
Florence1017 请问解决了吗 同有这样的问题,q值还过大
叶天天 请问您解决了吗?我也遇到了这个问题
南瓜饼 哎呀,实在不好意思,我最近没怎么登录实验室的网站请问你那个问题解决了吗?
请问有解决吗,我的评估函数一直输出同一套动作,神经网络输出总是边界值