使用强化学习求解鲁棒控制器

问题背景
不确定动态系统的鲁棒控制近年来受到了控制界的广泛关注[1],对于很多场景,例如化学过程,电力系统,机器人和航天工程中,被控系统往往不能够得到精确的数学模型或被控系统存在不确定性,因此获得系统的鲁棒性能对系统的精准控制起着重要作用。
鲁棒稳定性和最优控制器的设计具有一定的关系[2],求解鲁棒控制器在某些条件下可以转化为求解一个最优控制器的问题,对于离散时间线性系统来说,求解最优控制器,就是求解代数Riccatic方程,对于非线性系统,就是求解HJB方程。然而,对于一般的非线性系统,HJB方程的解析解可能不存在,通常,使用迭代的算法进行求解,可以采用ADP(approximate dynamic programming)的方法进行求解。
近些年,强化学习在解决不确定环境下的决策问题上取得了巨大的成功[3],通常,强化学习算法可以分为on-policy和off-policy两类算法,on-policy算法将每次迭代后的策略运用到被控对象上,而off-policy优化的策略和与环境交互的策略不一定是一个策略,即策略的更新可以在多步迭代以后。
目前,对于不确定性离散时间线性系统的鲁棒控制问题,已经有一些团队采用强化学习方法,在系统动力学信息完全未知或部分未知的情况下,使用自适应动态规划的算法,对贝尔曼方程进行求解。
本文章对使用强化学习求解线性离散时间不确定性鲁棒控制器的问题进行综述。
问题描述
含有不确定性的离散时间非线性系统可以用如下表示:
其中,系统状态
设
对于闭环系统
反馈增益
可以将求解鲁棒控制器问题转化为求解一个最优控制问题,即:找到状态反馈控制器
为了简化表示,代价函数中的第
使用ARE方程求解鲁棒控制器
假设存在一个正定矩阵
其中,
定义哈密尔顿函数:
价值函数
基于文献[4]:
最优控制器的必要条件是:
考虑哈密尔顿函数和二次型代价函数,上式可以写成:
令:
那么
且
可以求出:
基于文献[5]:
ARE的解可以表示成意外一种形式:
系统稳定性的正面见文献[6]:使用ARE的条件是系统的动态参数已知。
基于模型的on-policy强化学习算法
不加探测噪声
on-policy策略迭代的方法从一个初始的
边界条件为:
写成
当
加入探测噪声
强化学习算法中的"expoloration"和"exploitation"是一对权衡的策略,且对算法的效果有着重要的影响。持续激励的概念和ADP中的"exploration"有着密切的关系,能够保证学习的参数收敛到最优值。
在算法1中的策略迭代步骤中,on-policy贝尔曼方程可以写成:
其中,
若存在
为了满足持续激励的条件,需要在控制输入中添加一个探测噪声
得到加入探测噪声的on-policy的的贝尔曼方程:
相比于算法1,算法2不会生成和算法1同样的解。算法2对于探测噪声更加鲁棒,算法1限制了on-policy强化学习算法的"exploration"。
在使用算法1和算法2的时候,需要将更新的控制策略应用到系统中来更新代价函数
基于模型的off-policy强化学习算法
不加探测噪声
考虑对系统施加一个容许策略
其中,
考虑代价函数: