本人因为要对控制系统进行仿真所以使用了matlab的reinforcement learning toolbox。最初的设想是系统的初始状态全为0,既从稳态开始仿真,在某一时刻(这个时刻是确定的)施加一个扰动,扰动量随机且未知,服从某一区间内的均匀分布。通过强化学习的方式控制系统回到稳态。但是实际训练下来的稳定性非常差,有时看着收敛了,但是迭代次数一多又会发散,但跑着跑着又能回到正常,如此往复。并且Q0的预测值和实际的总奖励偏差也非常大。后来尝试将扰动量变成固定值,情况有所好转。如果将扰动量作为也加入到观测中,则效果非常好,Q0也和总奖励很接近,并且很稳定。所以我很困惑。程序可以参见matlab例程(Tune PI Controller using Reinforcement Learning) https://ww2.mathworks.cn/help/reinforcement-learning/ug/tune-pi-controller-using-td3.html?searchHighlight=pi%20tune&s_tid=srchtitle_pi%20tune_2 图片是训练中出现的表现暴跌但后来回复的现象
你的模型没有训练过加入扰动的情况,当扰动出现时就会不知道怎么处理 当你把扰动加入观察,其实就是让模型学习了扰动出现时该怎么处理 个人理解