网站建设图片大小营销渠道有哪些
推迟参数设计的自适应反步控制和自适应神经网络的反步控制设计
目录
- 推迟参数设计的自适应反步控制和自适应神经网络的反步控制设计
- 前言
- 匹配与非匹配
- 1. 基于自适应反步控制的非匹配条件下的系统控制器设计
- 问题描述
- 控制器设计
- 小结
- 2. 基于自适应反步控制和推迟参数设计的非匹配条件下的系统控制器设计
- 问题描述
- 控制器设计
- 小结
- 3. 基于自适应神经网络+反步控制+推迟参数设计的非匹配条件下的系统控制器设计
- 问题描述
- 控制器设计
- 小结
- 总结
前言
在上一篇文章中,我们从反步法出发,分析基于反步法的跟踪控制设计,以及含有未知参数的自适应反步控制的控制器设计。
上一篇文章链接:Adaptive Backstepping Besign自适应反步控制设计_ADi_hhh的博客
但是上一篇文章中的系统满足匹配条件,比较容易设计。本篇文章针对不满足匹配条件的系统进行自适应反步设计,并针对系统中含有未知参数的系统进行自适应神经网络的的反步控制设计。
匹配与非匹配
在控制理论中的不确定性可以分为两类。当控制输入可以克服不确定性时,系统就是在匹配条件下的,或者看网上有人说不确定性是在控制矩阵B所张成的空间中;而当控制输入不在控制输入下时,系统就是在不匹配条件下的,不能通过控制量的设计来抵消其影响。
举例如下:
上一篇文章中:
x˙1=f1(x1)+x2x˙2=f2(x1,x2)θ+buy=x1\begin{aligned} \dot x_1&=f_1(x_1)+x_2\\ \dot x_2&=f_2(x_1,x_2)\theta+bu\\ y&=x_1 \end{aligned} x˙1x˙2y=f1(x1)+x2=f2(x1,x2)θ+bu=x1
这样的系统就是匹配条件下的系统,因而我们能通过自适应反步控制设计,设计出控制器和参数更新率。
而形如
x˙1=f1(x1)θ+x2x˙2=uy=x1(1)\begin{aligned} \dot x_1&=f_1(x_1)\theta+x_2\\ \dot x_2&=u\\ y&=x_1 \end{aligned} \qquad(1) x˙1x˙2y=f1(x1)θ+x2=u=x1(1)
则是非匹配的,控制输入无法直接抵消不确定量θ\thetaθ所带来的影响。需要利用反步设计、鲁棒控制等其他方法来设计控制器。
1. 基于自适应反步控制的非匹配条件下的系统控制器设计
问题描述
针对形如公式(1)的系统进行控制器设计,其中f1(x)f_1(x)f1(x)是已知的函数,θ\thetaθ为未知参数,设计控制器使得y→ydy→y_dy→yd,并且ydy_dyd的导数可知。
我们首先按照前面的自适应反步控制方法来设计控制器。
控制器设计
-
定义系统误差:z1=y−yd=x1−ydz_1=y-y_d=x_1-y_dz1=y−yd=x1−yd(为什么不用e来表示误差了?别问,问就是显得专业)
-
系统误差的动态方程:
z˙1=x˙1−y˙d=f1(x1)θ+x2−y˙d\begin{aligned} \dot z_1 &=\dot x_1 -\dot y_d\\ &=f_1(x_1) \theta+x_2-\dot y_d \end{aligned} z˙1=x˙1−y˙d=f1(x1)θ+x2−y˙d -
考虑如下候选李亚普诺夫函数:V1=12z12V_1 = \frac{1}{2}z_1^2V1=21z12
对其求导得:
V˙1=z1z˙1=z1(f1(x1)θ+x2−y˙d)\begin{aligned} \dot V_1 &=z_1\dot z_1\\ & = z_1(f_1(x_1)\theta+x_2-\dot y_d) \end{aligned} V˙1=z1z˙1=z1(f1(x1)θ+x2−y˙d)
这时候我们可以把x2x_2x2当作一个输入量,那么假如
x2=−k1z1−f1(x1)θ^+y˙dx_2=-k_1z_1-f_1(x_1) \hat\theta+\dot y_d x2=−k1z1−f1(x1)θ^+y˙d
其中θ^\hat \thetaθ^是对θ\thetaθ的估计,估计误差为θ~=θ^−θ\tilde \theta=\hat \theta-\thetaθ~=θ^−θ,引入一虚拟控制量α1\alpha_1α1,即令$\alpha_1=-k_1z_1-f_1(x_1) \hat\theta+\dot y_d $此时可以定义出第二个误差为z2=x2−α1z_2=x_2-\alpha_1z2=x2−α1
因为引入了新的估计误差θ~\tilde \thetaθ~,因此考虑如下候选李雅普诺夫函数:
V2=V1+12γθ~2V_2=V_1+\frac{1}{2 \gamma}\tilde \theta^2 V2=V1+2γ1θ~2
对其求导得:
V˙2=V˙1+1γθ~θ^˙=z1(f1(x1)θ+x2−y˙d)+1γθ~θ^˙=z1(f1(x1)θ+z2+α1−y˙d)+1γθ~θ^˙=z1(f1(x1)θ+z2+(−k1z1−f1(x1)θ^+y˙d)−y˙d)+1γθ~θ^˙=−k1z12+z1z2+θ~(−z1f1(x1)+1γθ^˙)(∗)\begin{aligned} \dot V_2&=\dot V_1+\frac{1}{\gamma}\tilde \theta \dot{\hat \theta}\\ &=z_1(f_1(x_1)\theta+x_2-\dot y_d)+\frac{1}{\gamma}\tilde \theta \dot{\hat \theta}\\ &=z_1(f_1(x_1)\theta+z_2+\alpha_1-\dot y_d)+\frac{1}{\gamma}\tilde \theta \dot{\hat \theta}\\ &=z_1(f_1(x_1)\theta+z_2+(-k_1z_1-f_1(x_1) \hat\theta+\dot y_d)-\dot y_d)+\frac{1}{\gamma}\tilde \theta \dot{\hat \theta}\\ &=-k_1z_1^2+z_1z_2+\tilde \theta(-z_1f_1(x_1)+\frac{1}{\gamma} \dot{\hat \theta}) \end{aligned}\qquad(*) V˙2=V˙1+γ1θ~θ^˙=z1(f1(x1)θ+x2−y˙d)+γ1θ~θ^˙=z1(f1(x1)θ+z2+α1−y˙d)+γ1θ~θ^˙=z1(f1(x1)θ+z2+(−k1z1−f1(x1)θ^+y˙d)−y˙d)+γ1θ~θ^˙=−k1z12+z1z2+θ~(−z1f1(x1)+γ1θ^˙)(∗)
则可以设计出参数更新率
θ^˙=γz1f1(x1)(2)\dot{\hat \theta}=\gamma z_1f_1(x_1) \qquad(2) θ^˙=γz1f1(x1)(2)
此时V˙2=−k1z12+z1z2\dot V_2=-k_1z_1^2+z_1z_2V˙2=−k1z12+z1z2,z1、z2z_1、z_2z1、z2为互连项。 -
考虑系统第二个误差的动态方程:
z˙2=x˙2−α˙1=u−α˙1\begin{aligned} \dot z_2&=\dot x_2-\dot \alpha_1\\ &=u-\dot \alpha_1 \end{aligned} z˙2=x˙2−α˙1=u−α˙1
值得注意的是此时α˙1\dot \alpha_1α˙1是一个关于x1,yd,y˙d,θ^x_1,y_d,\dot y_d,\hat \thetax1,yd,y˙d,θ^的复合函数,并且其中含有未知项,这也是上一篇文章所提到的问题。
α˙1=∂α∂x1x˙1+∂α∂ydy˙d+∂α∂y˙dy¨d+∂α∂θ^θ^˙=∂α∂x1(f1(x1)θ+x2)+∂α∂ydy˙d+∂α∂y˙dy¨d+∂α∂θ^θ^˙=∂α∂x1f1(x1)θ+∂α∂x1x2+∂α∂ydy˙d+∂α∂y˙dy¨d+∂α∂θ^θ^˙=wθ+ϕ\begin{aligned} \dot \alpha_1 &=\frac{\partial \alpha}{\partial x_1} \dot x_1+\frac{\partial \alpha}{\partial y_d} \dot y_d+\frac{\partial \alpha}{\partial \dot y_d} \ddot y_d+\frac{\partial \alpha}{\partial \hat \theta} \dot{\hat \theta}\\ &=\frac{\partial \alpha}{\partial x_1}(f_1(x_1)\theta+x_2)+\frac{\partial \alpha}{\partial y_d} \dot y_d+\frac{\partial \alpha}{\partial \dot y_d} \ddot y_d+\frac{\partial \alpha}{\partial \hat \theta} \dot{\hat \theta}\\ &=\frac{\partial \alpha}{\partial x_1}f_1(x_1)\theta+\frac{\partial \alpha}{\partial x_1}x_2+\frac{\partial \alpha}{\partial y_d} \dot y_d+\frac{\partial \alpha}{\partial \dot y_d} \ddot y_d+\frac{\partial \alpha}{\partial \hat \theta} \dot{\hat \theta}\\ &=w\theta+\phi \end{aligned} α˙1=∂x1∂αx˙1+∂yd∂αy˙d+∂y˙d∂αy¨d+∂θ^∂αθ^˙=∂x1∂α(f1(x1)θ+x2)+∂yd∂αy˙d+∂y˙d∂αy¨d+∂θ^∂αθ^˙=∂x1∂αf1(x1)θ+∂x1∂αx2+∂yd∂αy˙d+∂y˙d∂αy¨d+∂θ^∂αθ^˙=wθ+ϕ
其中令∂α∂x1f1(x1)=w\frac{\partial \alpha}{\partial x_1}f_1(x_1)=w∂x1∂αf1(x1)=w,∂α∂x1x2+∂α∂ydy˙d+∂α∂y˙dy¨d+∂α∂θ^θ^˙=ϕ\frac{\partial \alpha}{\partial x_1}x_2+\frac{\partial \alpha}{\partial y_d} \dot y_d+\frac{\partial \alpha}{\partial \dot y_d} \ddot y_d+\frac{\partial \alpha}{\partial \hat \theta} \dot{\hat \theta}=\phi∂x1∂αx2+∂yd∂αy˙d+∂y˙d∂αy¨d+∂θ^∂αθ^˙=ϕ,这两部分都是已知的。则:
z˙2=u−α˙1=u−wθ−ϕ\begin{aligned} \dot z_2 &=u-\dot \alpha_1\\ &=u-w\theta -\phi \end{aligned} z˙2=u−α˙1=u−wθ−ϕ -
考虑如下候选李雅普诺夫函数V3=V2+12z22V_3=V_2+\frac{1}{2}z_2^2V3=V2+21z22
对其求导得:
V˙3=V˙2+z2z˙2=−k1z12+z1z2+z2(u−wθ−ϕ)(3)\begin{aligned} \dot V_3&= \dot V_2+z_2\dot z_2\\ &=-k_1z_1^2+z_1z_2+z_2(u-w\theta -\phi) \end{aligned}\qquad(3) V˙3=V˙2+z2z˙2=−k1z12+z1z2+z2(u−wθ−ϕ)(3)
不知道看到公式(3),你有什么想法?我的想法则是估计过的参数怎么又出现了,这该怎么处理那?甚至有点后悔自己为什么那么早处理那个未知的参数,但是做到这个地方了,只能再次估计这个未知参数了。采用θ^2\hat \theta_2θ^2来估计θ\thetaθ。则引入新的估计误差θ~2=θ^2−θ\tilde \theta_2 =\hat \theta_2-\thetaθ~2=θ^2−θ. -
考虑新的候选李雅普诺夫函数V4=V3+12γ2θ~22V_4=V_3+\frac{1}{2\gamma_2}\tilde \theta_2^2V4=V3+2γ21θ~22
对其求导得:
V˙4=V˙3+1γ2θ~2θ^2˙=−k1z12+z1z2+z2(u−wθ−ϕ)+1γ2θ~2θ^2˙=−k1z12+z2(z1+u−wθ−ϕ)+1γ2θ~2θ^2˙(4)\begin{aligned} \dot V_4&= \dot V_3+\frac{1}{\gamma_2}\tilde \theta_2 \dot{\hat \theta_2}\\ &=-k_1z_1^2+z_1z_2+z_2(u-w\theta -\phi)+\frac{1}{\gamma_2}\tilde \theta_2 \dot{\hat \theta_2}\\ &=-k_1z_1^2+z_2(z_1+u-w\theta -\phi)+\frac{1}{\gamma_2}\tilde \theta_2 \dot{\hat \theta_2}\\ \end{aligned}\qquad(4) V˙4=V˙3+γ21θ~2θ^2˙=−k1z12+z1z2+z2(u−wθ−ϕ)+γ21θ~2θ^2˙=−k1z12+z2(z1+u−wθ−ϕ)+γ21θ~2θ^2˙(4) -
则依据公式(4),可以设计出控制率uuu
u=−k2z2−z1+ϕ+wθ^2(5)u=-k_2z_2-z_1+\phi+w\hat\theta_2 \qquad(5) u=−k2z2−z1+ϕ+wθ^2(5)
代入到(4)中,
V˙4=−k1z12+z2(z1+u−wθ−ϕ)+1γ2θ~2θ^2˙=−k1z12−k2z22+θ~2(z2w+1γθ^2˙)(6)\begin{aligned} \dot V_4 &=-k_1z_1^2+z_2(z_1+u-w\theta -\phi)+\frac{1}{\gamma_2}\tilde \theta_2 \dot{\hat \theta_2}\\ &=-k_1z_1^2-k_2z_2^2+\tilde \theta_2(z_2w+\frac{1}{\gamma}\dot{\hat \theta_2}) \end{aligned}\qquad(6) V˙4=−k1z12+z2(z1+u−wθ−ϕ)+γ21θ~2θ^2˙=−k1z12−k2z22+θ~2(z2w+γ1θ^2˙)(6) -
依据(6)可以设计出参数更新率为:
θ^2˙=−γ2z2w(7)\dot{\hat \theta_2}=-\gamma_2 z_2w\qquad(7) θ^2˙=−γ2z2w(7)
则公式(2)、(5)、(7)共同构成了系统的控制率和参数更新率。
小结
显然再不匹配条件下很离谱啊,一个未知参数按照在匹配条件下的做法设计,居然需要两个参数来估计,这显然是不合理的。假如这个系统是n阶的,那么就会需要n个估计参数来估计这一个不确定项,这就不可接受了。我们也自然而然地想到能不能将未知参数放到最后来一起处理那?有的,这叫做推迟参数设计。
接下来我们将通过推迟参数设计来重新设计上面这个系统的控制器和参数更新率。
2. 基于自适应反步控制和推迟参数设计的非匹配条件下的系统控制器设计
问题描述
仍旧针对公式(1)所代表的不匹配系统进行控制器设计,其中f1(x)f_1(x)f1(x)是已知的函数,θ\thetaθ为未知参数,设计控制器使得y→ydy→y_dy→yd,并且ydy_dyd的导数可知。
控制器设计
我们设计的步骤前面与“1. 基于自适应反步控制的非匹配条件下的系统控制器设计”的一致,一直到公式(*),即我们得到了
V˙2=−k1z12+z1z2+θ~(−z1f1(x1)+1γθ^˙)(∗∗)\begin{aligned} \dot V_2 &=-k_1z_1^2+z_1z_2+\tilde \theta(-z_1f_1(x_1)+\frac{1}{\gamma} \dot{\hat \theta}) \end{aligned}\qquad(**) V˙2=−k1z12+z1z2+θ~(−z1f1(x1)+γ1θ^˙)(∗∗)
但是在这个时候不设计参数更新率,直接考虑第二个误差的动态方程。
-
考虑系统第二个误差的动态方程:
z˙2=x˙2−α˙1=u−α˙1\begin{aligned} \dot z_2&=\dot x_2-\dot \alpha_1\\ &=u-\dot \alpha_1 \end{aligned} z˙2=x˙2−α˙1=u−α˙1
值得注意的是此时α˙1\dot \alpha_1α˙1是一个关于x1,yd,y˙d,θ^x_1,y_d,\dot y_d,\hat \thetax1,yd,y˙d,θ^的复合函数,并且其中含有未知项,这也是上一篇文章所提到的问题。
α˙1=∂α∂x1x˙1+∂α∂ydy˙d+∂α∂y˙dy¨d+∂α∂θ^θ^˙=∂α∂x1(f1(x1)θ+x2)+∂α∂ydy˙d+∂α∂y˙dy¨d+∂α∂θ^θ^˙=∂α∂x1f1(x1)θ+∂α∂x1x2+∂α∂ydy˙d+∂α∂y˙dy¨d+∂α∂θ^θ^˙=wθ+ψ+∂α∂θ^θ^˙\begin{aligned} \dot \alpha_1 &=\frac{\partial \alpha}{\partial x_1} \dot x_1+\frac{\partial \alpha}{\partial y_d} \dot y_d+\frac{\partial \alpha}{\partial \dot y_d} \ddot y_d+\frac{\partial \alpha}{\partial \hat \theta} \dot{\hat \theta}\\ &=\frac{\partial \alpha}{\partial x_1}(f_1(x_1)\theta+x_2)+\frac{\partial \alpha}{\partial y_d} \dot y_d+\frac{\partial \alpha}{\partial \dot y_d} \ddot y_d+\frac{\partial \alpha}{\partial \hat \theta} \dot{\hat \theta}\\ &=\frac{\partial \alpha}{\partial x_1}f_1(x_1)\theta+\frac{\partial \alpha}{\partial x_1}x_2+\frac{\partial \alpha}{\partial y_d} \dot y_d+\frac{\partial \alpha}{\partial \dot y_d} \ddot y_d+\frac{\partial \alpha}{\partial \hat \theta} \dot{\hat \theta}\\ &=w\theta+\psi+\frac{\partial \alpha}{\partial \hat \theta} \dot{\hat \theta} \end{aligned} α˙1=∂x1∂αx˙1+∂yd∂αy˙d+∂y˙d∂αy¨d+∂θ^∂αθ^˙=∂x1∂α(f1(x1)θ+x2)+∂yd∂αy˙d+∂y˙d∂αy¨d+∂θ^∂αθ^˙=∂x1∂αf1(x1)θ+∂x1∂αx2+∂yd∂αy˙d+∂y˙d∂αy¨d+∂θ^∂αθ^˙=wθ+ψ+∂θ^∂αθ^˙
其中令∂α∂x1f1(x1)=w\frac{\partial \alpha}{\partial x_1}f_1(x_1)=w∂x1∂αf1(x1)=w,∂α∂x1x2+∂α∂ydy˙d+∂α∂y˙dy¨d=ψ\frac{\partial \alpha}{\partial x_1}x_2+\frac{\partial \alpha}{\partial y_d} \dot y_d+\frac{\partial \alpha}{\partial \dot y_d} \ddot y_d=\psi∂x1∂αx2+∂yd∂αy˙d+∂y˙d∂αy¨d=ψ,这两部分都是已知的。则:
z˙2=u−α˙1=u−wθ−ψ−∂α∂θ^θ^˙\begin{aligned} \dot z_2 &=u-\dot \alpha_1\\ &=u-w\theta -\psi-\frac{\partial \alpha}{\partial \hat \theta} \dot{\hat \theta} \end{aligned} z˙2=u−α˙1=u−wθ−ψ−∂θ^∂αθ^˙ -
考虑如下候选李雅普诺夫函数V3=V2+12z22V_3=V_2+\frac{1}{2}z_2^2V3=V2+21z22
对其求导得:
V˙3=V˙2+z2z˙2=−k1z12+z1z2+θ~(−z1f1(x1)+1γθ^˙)+z2(u−wθ−ψ−∂α∂θ^θ^˙)=−k1z12+θ~(−z1f1(x1)+1γθ^˙)+z2(z1+u−wθ−ψ−∂α∂θ^θ^˙)(8)\begin{aligned} \dot V_3&= \dot V_2+z_2\dot z_2\\ &=-k_1z_1^2+z_1z_2+\tilde \theta(-z_1f_1(x_1)+\frac{1}{\gamma} \dot{\hat \theta})+z_2(u-w\theta -\psi-\frac{\partial \alpha}{\partial \hat \theta} \dot{\hat \theta})\\ &=-k_1z_1^2+\tilde \theta(-z_1f_1(x_1)+\frac{1}{\gamma} \dot{\hat \theta})+z_2(z_1+u-w\theta -\psi-\frac{\partial \alpha}{\partial \hat \theta} \dot{\hat \theta})\\ \end{aligned}\qquad(8) V˙3=V˙2+z2z˙2=−k1z12+z1z2+θ~(−z1f1(x1)+γ1θ^˙)+z2(u−wθ−ψ−∂θ^∂αθ^˙)=−k1z12+θ~(−z1f1(x1)+γ1θ^˙)+z2(z1+u−wθ−ψ−∂θ^∂αθ^˙)(8) -
则依据公式(8),可以设计出控制率uuu
u=−k2z2−z1+ψ+wθ^+∂α∂θ^θ^˙(9)u=-k_2z_2-z_1+\psi+w\hat\theta+\frac{\partial \alpha}{\partial \hat \theta} \dot{\hat \theta} \qquad(9) u=−k2z2−z1+ψ+wθ^+∂θ^∂αθ^˙(9)
代入到(8)中,
V˙3=−k1z12+θ~(−z1f1(x1)+1γθ^˙)+z2(z1+u−wθ−ψ−∂α∂θ^θ^˙)=−k1z12+θ~(−z1f1(x1)+1γθ^˙)+z2(z1+(−k2z2−z1+ψ+wθ^+∂α∂θ^θ^˙)−wθ−ψ−∂α∂θ^θ^˙)=−k1z12−k2z22+θ~(−z1f1(x1)+1γθ^˙)+z2wθ~=−k1z12−k2z22+θ~(−z1f1(x1)+1γθ^˙+z2w)(10)\begin{aligned} \dot V_3 &=-k_1z_1^2+\tilde \theta(-z_1f_1(x_1)+\frac{1}{\gamma} \dot{\hat \theta})+z_2(z_1+u-w\theta -\psi-\frac{\partial \alpha}{\partial \hat \theta} \dot{\hat \theta})\\ &=-k_1z_1^2+\tilde \theta(-z_1f_1(x_1)+\frac{1}{\gamma} \dot{\hat \theta})+z_2(z_1+(-k_2z_2-z_1+\psi+w\hat\theta+\frac{\partial \alpha}{\partial \hat \theta} \dot{\hat \theta})-w\theta -\psi-\frac{\partial \alpha}{\partial \hat \theta} \dot{\hat \theta})\\ &=-k_1z_1^2-k_2z_2^2+\tilde \theta(-z_1f_1(x_1)+\frac{1}{\gamma} \dot{\hat \theta})+z_2w \tilde \theta\\ &=-k_1z_1^2-k_2z_2^2+\tilde \theta(-z_1f_1(x_1)+\frac{1}{\gamma} \dot{\hat \theta}+z_2w) \end{aligned}\qquad(10) V˙3=−k1z12+θ~(−z1f1(x1)+γ1θ^˙)+z2(z1+u−wθ−ψ−∂θ^∂αθ^˙)=−k1z12+θ~(−z1f1(x1)+γ1θ^˙)+z2(z1+(−k2z2−z1+ψ+wθ^+∂θ^∂αθ^˙)−wθ−ψ−∂θ^∂αθ^˙)=−k1z12−k2z22+θ~(−z1f1(x1)+γ1θ^˙)+z2wθ~=−k1z12−k2z22+θ~(−z1f1(x1)+γ1θ^˙+z2w)(10) -
依据(10)可以设计出参数更新率为:
θ^˙=γ(z1f1(x1)−z2w)=γ(z1f1(x1)−z2∂α∂x1f1(x1))(11)\begin{aligned} \dot{\hat \theta}&= \gamma (z_1f_1(x_1)-z_2w)\\ &=\gamma (z_1f_1(x_1)-z_2\frac{\partial \alpha}{\partial x_1}f_1(x_1)) \end{aligned}\qquad(11) θ^˙=γ(z1f1(x1)−z2w)=γ(z1f1(x1)−z2∂x1∂αf1(x1))(11)
则公式(9)、(11)共同构成了系统的控制率和参数更新率。
小结
实际上推迟参数设计只是讲未知参数放到最后再进行处理,防止后续过程中再次出现未知参数。上述增加了推迟参数设计的过程中可以看到只用一个参数估计就可以解决非匹配条件下的控制系统,从而避免过参问题。
3. 基于自适应神经网络+反步控制+推迟参数设计的非匹配条件下的系统控制器设计
问题描述
x˙1=f(x1)+x2x˙2=uy=x1\begin{aligned} \dot x_1 &=f(x_1)+x_2\\ \dot x_2&=u\\ y&=x_1 \end{aligned} x˙1x˙2y=f(x1)+x2=u=x1
f1(x1)f_1(x_1)f1(x1) 是未知的光滑函数 ,设计设计控制器使得y→ydy→y_dy→yd,并且ydy_dyd的导数可知。
控制器设计
由前面设计自适应神经网络控制的经验可知,我们可以采用RBF神经网络估计f(x)f(x)f(x)
f(x1)=W∗TS(x1)+ϵ(x1)f(x_1)=W^{*T}S(x_1)+\epsilon (x_1) f(x1)=W∗TS(x1)+ϵ(x1)
其中W∗W^{*}W∗是理想的连接权值,S(x)S(x)S(x)是径向基函数,ϵ(x)\epsilon (x)ϵ(x)是逼近误差。
显然理想的连接权值我们也是无法直接获取的,因此也需要估计。设计W^\hat WW^为W∗W^*W∗的估计值,其误差表示为W~=W^−W∗\tilde W=\hat W-W^*W~=W^−W∗
那么接下来我们就能来继续设计控制器了。
-
定义系统误差:z1=y−yd=x1−ydz_1=y-y_d=x_1-y_dz1=y−yd=x1−yd
-
系统误差的动态方程:
z˙1=x˙1−y˙d=f1(x1)θ+x2−y˙d=W∗TS(x1)+ϵ(x1)+x2−y˙d\begin{equation} \begin{aligned} \dot z_1 &=\dot x_1 -\dot y_d\\ &=f_1(x_1) \theta+x_2-\dot y_d\\ &=W^{*T}S(x_1)+\epsilon (x_1)+x_2-\dot y_d\\ \end{aligned} \end{equation} z˙1=x˙1−y˙d=f1(x1)θ+x2−y˙d=W∗TS(x1)+ϵ(x1)+x2−y˙d -
考虑如下候选李亚普诺夫函数:V1=12z12+12W~TΓ−1W~V_1 = \frac{1}{2}z_1^2+\frac{1}{2}\tilde W^T \Gamma^{-1}\tilde WV1=21z12+21W~TΓ−1W~
对V1V_1V1进行求导:
V˙1=z1z˙1+Γ−1W~TW^˙=z1(W∗TS(x1)+ϵ(x1)+x2−y˙d)+Γ−1W~TW^˙(12)\begin{aligned} \dot V_1 &= z_1 \dot z_1+\Gamma^{-1}\tilde W^T\dot {\hat W}\\ &=z_1(W^{*T}S(x_1)+\epsilon (x_1)+x_2-\dot y_d)+\Gamma^{-1}\tilde W^T\dot {\hat W}\\ \end{aligned} \qquad(12) V˙1=z1z˙1+Γ−1W~TW^˙=z1(W∗TS(x1)+ϵ(x1)+x2−y˙d)+Γ−1W~TW^˙(12)
引入虚拟控制量α1\alpha_1α1,(大多数论文中都是应该直接引入虚拟控制量,而不会告诉你为什么这么做,这里也不再赘述了,上面也解释过了)令
α1=−k1z1−W^TS(x1)+y˙d\alpha_1=-k_1z_1-\hat W^TS(x_1)+\dot y_d α1=−k1z1−W^TS(x1)+y˙d
定义误差为:z2=x2−α1z_2=x_2-\alpha_1z2=x2−α1,代入公式(12),得:
V˙1=z1(W∗TS(x1)+ϵ(x1)+x2−y˙d)+Γ−1W~TW^˙=z1(W∗TS(x1)+ϵ(x1)+z2+α1−y˙d)+Γ−1W~TW^˙=z1(W∗TS(x1)+ϵ(x1)+z2+(−k1z1−W^TS(x1)+y˙d)−y˙d)+Γ−1W~TW^˙=−k1z12+z1z2−z1W~TS(x1)+z1ϵ(x1)+Γ−1W~TW^˙=−k1z12+z1z2+z1ϵ(x1)+W~T(Γ−1W^˙−z1S(x1))(13)\begin{aligned} \dot V_1 &=z_1(W^{*T}S(x_1)+\epsilon (x_1)+x_2-\dot y_d)+\Gamma^{-1}\tilde W^T\dot {\hat W}\\ &=z_1(W^{*T}S(x_1)+\epsilon (x_1)+z_2+\alpha_1-\dot y_d)+\Gamma^{-1}\tilde W^T\dot {\hat W}\\ &=z_1(W^{*T}S(x_1)+\epsilon (x_1)+z_2+(-k_1z_1-\hat W^TS(x_1)+\dot y_d)-\dot y_d)+\Gamma^{-1}\tilde W^T\dot {\hat W}\\ &=-k_1z_1^2+z_1z_2-z_1 \tilde W^TS(x_1)+z_1\epsilon(x_1)+\Gamma^{-1}\tilde W^T\dot {\hat W}\\ &=-k_1z_1^2+z_1z_2+z_1\epsilon(x_1)+\tilde W^T(\Gamma^{-1}\dot {\hat W}-z_1S(x_1)) \end{aligned} \qquad(13) V˙1=z1(W∗TS(x1)+ϵ(x1)+x2−y˙d)+Γ−1W~TW^˙=z1(W∗TS(x1)+ϵ(x1)+z2+α1−y˙d)+Γ−1W~TW^˙=z1(W∗TS(x1)+ϵ(x1)+z2+(−k1z1−W^TS(x1)+y˙d)−y˙d)+Γ−1W~TW^˙=−k1z12+z1z2−z1W~TS(x1)+z1ϵ(x1)+Γ−1W~TW^˙=−k1z12+z1z2+z1ϵ(x1)+W~T(Γ−1W^˙−z1S(x1))(13)
考虑推迟参数设计,暂时不对这里得参数进行参数更新率的设计。考虑第二个误差的动态方程:
z˙2=x˙2−α˙1=u−α˙1\begin{aligned} \dot z_2 &=\dot x_2 -\dot \alpha_1\\ &=u-\dot \alpha_1 \end{aligned} z˙2=x˙2−α˙1=u−α˙1
同样值得注意的是此时α˙1\dot \alpha_1α˙1是一个关于x1,yd,y˙d,W^x_1,y_d,\dot y_d,\hat Wx1,yd,y˙d,W^的复合函数,并且其中含有未知项。
α˙1=∂α∂x1x˙1+∂α∂ydy˙d+∂α∂y˙dy¨d+∂α∂W^W^˙=∂α∂x1(W∗TS(x1)+ϵ(x1)+x2)+∂α∂ydy˙d+∂α∂y˙dy¨d+∂α∂W^W^˙=∂α∂x1(W∗TS(x1)+ϵ(x1))+∂α∂x1x2+∂α∂ydy˙d+∂α∂y˙dy¨d+∂α∂W^W^˙=∂α∂x1W∗TS(x1)+∂α∂x1ϵ(x1)+ψ+∂α∂W^W^˙\begin{aligned} \dot \alpha_1 &=\frac{\partial \alpha}{\partial x_1} \dot x_1+\frac{\partial \alpha}{\partial y_d} \dot y_d+\frac{\partial \alpha}{\partial \dot y_d} \ddot y_d+\frac{\partial \alpha}{\partial \hat W} \dot{\hat W}\\ &=\frac{\partial \alpha}{\partial x_1}(W^{*T}S(x_1)+\epsilon (x_1)+x_2)+\frac{\partial \alpha}{\partial y_d} \dot y_d+\frac{\partial \alpha}{\partial \dot y_d} \ddot y_d+\frac{\partial \alpha}{\partial \hat W} \dot{\hat W}\\ &=\frac{\partial \alpha}{\partial x_1}(W^{*T}S(x_1)+\epsilon (x_1))+\frac{\partial \alpha}{\partial x_1}x_2+\frac{\partial \alpha}{\partial y_d} \dot y_d+\frac{\partial \alpha}{\partial \dot y_d} \ddot y_d+\frac{\partial \alpha}{\partial \hat W} \dot{\hat W}\\ &=\frac{\partial \alpha}{\partial x_1}W^{*T}S(x_1)+\frac{\partial \alpha}{\partial x_1}\epsilon (x_1)+\psi+\frac{\partial \alpha}{\partial \hat W} \dot{\hat W}\\ \end{aligned} α˙1=∂x1∂αx˙1+∂yd∂αy˙d+∂y˙d∂αy¨d+∂W^∂αW^˙=∂x1∂α(W∗TS(x1)+ϵ(x1)+x2)+∂yd∂αy˙d+∂y˙d∂αy¨d+∂W^∂αW^˙=∂x1∂α(W∗TS(x1)+ϵ(x1))+∂x1∂αx2+∂yd∂αy˙d+∂y˙d∂αy¨d+∂W^∂αW^˙=∂x1∂αW∗TS(x1)+∂x1∂αϵ(x1)+ψ+∂W^∂αW^˙
其中:∂α∂x1x2+∂α∂ydy˙d+∂α∂y˙dy¨d=ψ\frac{\partial \alpha}{\partial x_1}x_2+\frac{\partial \alpha}{\partial y_d} \dot y_d+\frac{\partial \alpha}{\partial \dot y_d} \ddot y_d=\psi∂x1∂αx2+∂yd∂αy˙d+∂y˙d∂αy¨d=ψ是已知的。则对应的z˙2=u−∂α∂x1W∗TS(x1)−∂α∂x1ϵ(x1)−ψ−∂α∂W^W^˙\dot z_2=u-\frac{\partial \alpha}{\partial x_1}W^{*T}S(x_1)-\frac{\partial \alpha}{\partial x_1}\epsilon (x_1)-\psi-\frac{\partial \alpha}{\partial \hat W} \dot{\hat W}z˙2=u−∂x1∂αW∗TS(x1)−∂x1∂αϵ(x1)−ψ−∂W^∂αW^˙。
-
考虑新的李雅普诺夫函数:V2=V1+12z22V_2=V_1+\frac{1}{2}z_2^2V2=V1+21z22
对其求导得:
V˙2=V˙1+z2z˙2=−k1z12+z1z2+z1ϵ(x1)+W~T(Γ−1W^˙−z1S(x1))+z2(u−∂α∂x1W∗TS(x1)−∂α∂x1ϵ(x1)−ψ−∂α∂W^W^˙)=−k1z12+z1ϵ(x1)+W~T(Γ−1W^˙−z1S(x1))+z2(z1+u−∂α∂x1W∗TS(x1)−∂α∂x1ϵ(x1)−ψ−∂α∂W^W^˙)(14)\begin{aligned} \dot V_2&= \dot V_1+z_2 \dot z_2\\ &=-k_1z_1^2+z_1z_2+z_1\epsilon(x_1)+\tilde W^T(\Gamma^{-1}\dot {\hat W}-z_1S(x_1))+z_2(u-\frac{\partial \alpha}{\partial x_1}W^{*T}S(x_1)-\frac{\partial \alpha}{\partial x_1}\epsilon (x_1)-\psi-\frac{\partial \alpha}{\partial \hat W} \dot{\hat W})\\ &=-k_1z_1^2+z_1\epsilon(x_1)+\tilde W^T(\Gamma^{-1}\dot {\hat W}-z_1S(x_1))+z_2(z_1+u-\frac{\partial \alpha}{\partial x_1}W^{*T}S(x_1)-\frac{\partial \alpha}{\partial x_1}\epsilon (x_1)-\psi-\frac{\partial \alpha}{\partial \hat W} \dot{\hat W})\\ \end{aligned} \qquad(14) V˙2=V˙1+z2z˙2=−k1z12+z1z2+z1ϵ(x1)+W~T(Γ−1W^˙−z1S(x1))+z2(u−∂x1∂αW∗TS(x1)−∂x1∂αϵ(x1)−ψ−∂W^∂αW^˙)=−k1z12+z1ϵ(x1)+W~T(Γ−1W^˙−z1S(x1))+z2(z1+u−∂x1∂αW∗TS(x1)−∂x1∂αϵ(x1)−ψ−∂W^∂αW^˙)(14)
针对公式(14)可以设计控制器uuu
u=−k2z2−z1+∂α∂x1W^TS(x1)+ψ+∂α∂W^W^˙(15)u=-k_2z_2-z_1+\frac{\partial \alpha}{\partial x_1}\hat W^{T}S(x_1)+\psi+\frac{\partial \alpha}{\partial \hat W} \dot{\hat W} \qquad(15) u=−k2z2−z1+∂x1∂αW^TS(x1)+ψ+∂W^∂αW^˙(15)
将公式(15)代入到公式(14)中去:
V˙2=−k1z12+z1ϵ(x1)+W~T(Γ−1W^˙−z1S(x1))+z2(z1+u−∂α∂x1W∗TS(x1)−∂α∂x1ϵ(x1)−ψ−∂α∂W^W^˙)=−k1z12−k2z22+z1ϵ(x1)+W~T(Γ−1W^˙−z1S(x1))+z2(∂α∂x1W~TS(x1)−∂α∂x1ϵ(x1))=−k1z12−k2z22+W~T(Γ−1W^˙−z1S(x1)+z2∂α∂x1S(x1))+ϵ(x1)(z1−z2∂α∂x1)(16)\begin{aligned} \dot V_2&=-k_1z_1^2+z_1\epsilon(x_1)+\tilde W^T(\Gamma^{-1}\dot {\hat W}-z_1S(x_1))+z_2(z_1+u-\frac{\partial \alpha}{\partial x_1}W^{*T}S(x_1)-\frac{\partial \alpha}{\partial x_1}\epsilon (x_1)-\psi-\frac{\partial \alpha}{\partial \hat W} \dot{\hat W})\\ &=-k_1z_1^2-k_2z_2^2+z_1\epsilon(x_1)+\tilde W^T(\Gamma^{-1}\dot {\hat W}-z_1S(x_1))+z_2(\frac{\partial \alpha}{\partial x_1}\tilde W^{T}S(x_1)-\frac{\partial \alpha}{\partial x_1}\epsilon (x_1))\\ &=-k_1z_1^2-k_2z_2^2+\tilde W^T(\Gamma^{-1}\dot {\hat W}-z_1S(x_1)+z_2\frac{\partial \alpha}{\partial x_1}S(x_1))+\epsilon(x_1)(z_1-z_2\frac{\partial \alpha}{\partial x_1}) \end{aligned} \qquad(16) V˙2=−k1z12+z1ϵ(x1)+W~T(Γ−1W^˙−z1S(x1))+z2(z1+u−∂x1∂αW∗TS(x1)−∂x1∂αϵ(x1)−ψ−∂W^∂αW^˙)=−k1z12−k2z22+z1ϵ(x1)+W~T(Γ−1W^˙−z1S(x1))+z2(∂x1∂αW~TS(x1)−∂x1∂αϵ(x1))=−k1z12−k2z22+W~T(Γ−1W^˙−z1S(x1)+z2∂x1∂αS(x1))+ϵ(x1)(z1−z2∂x1∂α)(16)
-
根据公式(16)可以设计出参数更新率为:
W^˙=Γ(z1S(x1)−z2∂α∂x1S(x1))(17)\dot {\hat W}=\Gamma(z_1S(x_1)-z_2\frac{\partial \alpha}{\partial x_1}S(x_1)) \qquad(17) W^˙=Γ(z1S(x1)−z2∂x1∂αS(x1))(17)
则对应的V˙2\dot V_2V˙2为:
V˙2=−k1z12−k2z22+ϵ(x1)(z1−z2∂α∂x1)(18)\begin{aligned} \dot V_2 &=-k_1z_1^2-k_2z_2^2+\epsilon(x_1)(z_1-z_2\frac{\partial \alpha}{\partial x_1}) \end{aligned} \qquad(18) V˙2=−k1z12−k2z22+ϵ(x1)(z1−z2∂x1∂α)(18)
之后再对ϵ(x1)(z1−z2∂α∂x1)\epsilon(x_1)(z_1-z_2\frac{\partial \alpha}{\partial x_1})ϵ(x1)(z1−z2∂x1∂α)进行放缩就可以完成控制器的设计了。至此公式(15)和公式(17)共同构成系统的控制器和参数更新率。
小结
本小节的内容综合了反步设计(Backstepping)、自适应神经网络控制(ANC)和推迟参数设计,利用他们共同设计了控制器和参数更新率。
总结
本文主要针对非匹配条件下的系统,利用自适应反步控制和自适应神经网络来设计控制器和参数更新率。读者在阅读了前面几篇文章的基础上,相信会有所收获。
如果您觉得我写的不错,麻烦给我一个免费的赞!如果内容中有错误,也欢迎向我反馈。