欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

针对无法实现系统镇定的RL,一些思考

最编程 2024-01-04 17:21:20
...

    很多人学强化学习都是从Cartpole这个例子开始的,(如下图)单极倒立摆的目标是维持摆的临界稳定状态。使用强化学习的算法无法让系统的状态渐进稳定,而其他的算法如:LQR控制、状态反馈控制等在仿真环境下并不会出现“左摇右晃”的现象。

图1 gym库中的Cartpole

        现在考虑一个可稳的系统:Power System Problem[1]。为了实现系统镇定,我们考虑两种求解最优控制问题的方法:MPC与RL .

图2 Power System Problem

    这里Pm是参考信号,我们要求Pe在某种控制律的作用下从振荡状态渐进稳定到Pm。分别使用MPC和RL的仿真结果如下图,我们可以发现使用MPC可以很好的抑制Pe的振荡(图[k] 、[i])这说明系统可稳。系统可稳的条件下,RL却不能完全消除振荡,这说明RL与MPC在算法的本质上存在某些差异。

图3 MPC与RL的仿真结果图

    对于该问题一些个人的思考:

    1.在这个问题中,MPC与RL都在近似的求解最优控制律,或者说最优的策略。MPC的办法是在每个采样时间求解一个开环最优控制问题,它给出最优控制律的解析解,即充分利用了动作空间的连续性。RL则与其相反,通常会将动作空间离散化。一些近似解法的强化学习算法,如拟合值迭代,只将系统动态使用黑箱模型进行模拟,而动作空间仍使用普通的离散化处理,这是因为动作空间的维度一般小于状态空间。问题就出现在这里,RL给出的最优策略通常是数值解,故会出现小幅振荡的现象。对比图3也可以发现,随着离散化程度(维度)的提高,振荡幅度也在减小。但只要是离散的控制输入,都很难真正做到系统渐进稳定。

    2.从RL的最优策略定义出发,RL的策略是用条件概率给出的定义。所有能达到最优状态(动作)价值函数的策略都是最优策略,由于RL的策略是某状态下动作的分布,只要在此状态下采用最优动作的概率不为零,这个策略就被定义为最优。即虽然最优状态(动作)价值函数是唯一的,但最优策略可能不唯一。使用策略迭代算法的时候,RL可能会在几个最优策略之间来回转换,这也可能会导致系统不能镇定。

Reference:

[1]Damien Ernst, Member, IEEE, Mevludin Glavic, Senior Member, IEEE, Florin Capitanescu, and Louis Wehenkel, Member, IEEE,"Reinforcement Learning Versus Model Predictive Control: A Comparison on a Power System Problem" in IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICS—PART B: CYBERNETICS, VOL. 39, NO. 2, APRIL 2009.

推荐阅读