系统辨识与自适应控制作业
模糊系统的辨识与自适应控制

模糊系统的辨识与自适应控制在现代控制理论研究中,模糊控制是一种重要的控制方法。
模糊控制是对非线性系统的一种解决方案,这种控制方法利用模糊逻辑来处理不确定性和信息丢失问题,从而提高了控制的效率和精度,因此在自适应控制中得到了广泛的应用。
一、模糊系统辨识模糊系统辨识是指对模糊控制系统进行参数辨识和模型识别,目的是为了找到最佳的控制方案。
模糊系统的辨识过程也是确定模糊控制系统结构和参数的过程。
模糊控制系统需要依赖于模糊规则库和隶属函数来完成参数辨识和模型识别。
模糊规则库是一个包含了各种规则的数据库,其中每个规则由一组条件和一组相应的控制动作组成。
隶属函数用来描述输入变量和输出变量之间的映射关系。
在模糊系统辨识的过程中,需要收集大量的数据来分析和处理,以便从中提取有用的信息。
这里的数据包括输入数据和输出数据,输入数据包括控制输入和环境输入,输出数据包括控制输出和系统响应。
通过对这些数据进行分析、模型识别和参数辨识,可以得到一个模糊控制系统的模型,并对其进行优化调整,以使其更好地适应所需的控制任务。
二、自适应控制模糊系统的自适应控制是利用模糊控制系统的动态特性,不断根据控制系统的变化自动调整控制参数,以达到最优的控制效果。
因此,自适应控制算法是一种重要的控制算法,它可以自动调整控制参数以快速响应外部变化。
自适应控制有多种方法,包括自适应模糊控制、自适应神经网络控制、自适应PID控制、自适应模型预测控制等。
其中,自适应模糊控制是一种广泛应用的控制方法,它可以自动调整模糊规则库、隶属函数以及控制输出,以适应不同的控制任务和环境条件。
三、结论总之,在现代控制领域中,模糊控制方法是一种重要的控制方法之一,具有较高的鲁棒性和鲁棒性。
模糊控制方法除了能够处理非线性系统,还可以处理模糊系统,因此在实际控制中被广泛应用。
模糊系统的辨识和自适应控制是模糊控制方法的两个基本方面,它们为模糊控制的优化和应用提供了基础和保障。
系统辨识与自适应控制 教材

系统辨识与自适应控制教材
系统辨识与自适应控制是一门涉及自动化控制、信号处理、人工智能等多个领域的交叉学科。
这门学科主要研究如何从系统的输入输出数据中,通过一定的方法和技术,辨识出系统的数学模型,进而实现对系统的有效控制。
系统辨识的主要方法包括:基于频率响应的方法、基于时间序列的方法、基于状态空间的方法等。
这些方法可以通过对系统的输入输出数据进行处理和分析,提取出系统的模型参数和结构。
自适应控制是一种特殊的控制系统,它可以根据环境的变化或者系统参数的变化,自动调整控制参数,以实现最优的控制效果。
自适应控制的主要方法包括:模型参考自适应控制、自校正控制、多变量自适应控制等。
系统辨识与自适应控制教材有很多种,以下是一些经典的教材:
1. 《System Identification and Adaptive Control》(第二版)- John H. Holland
2. 《Adaptive Control of Linear Systems》- Michael C. Corsini
3. 《Nonlinear System Identification and Control》- Massimo Ippolito
4. 《System Identification: Theory for the User》- Jack W. Newbold
5. 《Introduction to System Identification》- Mark H. Sager
这些教材都是系统辨识与自适应控制的经典之作,它们详细介绍了系统辨识与自适应控制的基本概念、方法和技术,以及它们在各个领域的应用。
如果您想深入学习系统辨识与自适应控制,建议阅读这些教材。
(哈工大)系统辨识与自适应控制——第一讲..

第一讲 系统辨识的基本概念
一、什么是系统辨识?
1. 机理分析建模方法 (白箱法)
图1 单级倒立摆实验装置 2010-02-20 控制理论与制导技术研究中心 第2 页
Harbin Institute of Technology– HIT
m
u
M
F
r
O
图2 单级倒立摆示意图 2010-02-20 控制理论与制导技术研究中心 第3 页
Harbin Institute of Technology– HIT
图中所示变量名的物理含义如表1所示。
2010-02-20
控制理论与制导技术研究中心
第4 页
Harbin Institute of Technology– HIT
步骤一:对小车进行受力分析,小车的受力分析如图3所 P 示。
u M
N
F
r
图3 小车受力分析图
图中,P表示摆杆对小车水平方向上的作用力,单位N; N 表示摆杆对小车垂直方向上的作用力,单位(N)。 根据牛顿定律,小车水平方向上的力平衡方程为:
2010-02-20 控制理论与制导技术研究中心 第5 页
Harbin Institute of Technology– HIT
步骤四:化成状态空间描述。
1 x 2 x 2 m 2 l 2 x2 cos x1 sin x1 m lucos x1 x 4 m l cos x1 ( M m)m glsin x1 ( M m) fx2 x 2 ( M m)(J m l2 ) m 2 l 2 cos2 x1 3 x4 x 2 m lfx2 cos x1 m 2 l 2 g sin x1 cos x1 ( J m l2 ) x 4 ( J m l2 )m lx2 sin x1 ( J m l2 )u 4 x ( M m)(J m l2 ) m 2 l 2 cos2 x1
系统辨识与自适应控制作业

系统辨识与自适应控制学院:专业:学号:姓名:系统辨识与自适应控制作业一、对时变系统进行参数估计。
系统方程为:y(k)+a(k)y(k-1)=b(k)u(k-1)+e(k) 其中:e(k)为零均值噪声,a(k)=b(k)=要求:1对定常系统(a=0.8,b=0.5)进行结构(阶数)确定和参数估计;2对时变系统,λ取不同值(0.9——0.99)时对系统辨识结果和过程进行比较、讨论3对辨识结果必须进行残差检验解:一(1):分析:采用最小二乘法(LS):最小二乘的思想就是寻找一个的估计值,使得各次测量的与由估计确定的量测估计之差的平方和最小,由于此方法兼顾了所有方程的近似程度,使整体误差达到最小,因而对抑制误差是有利的。
在此,我应用批处理最小二乘法,收敛较快,易于理解,在系统参数估计应用中十分广泛。
作业程序:clear all;a=[1 0.8]'; b=[ 0.5]'; d=3; %对象参数na=length(a)-1; nb=length(b)-1; %na、nb为A、B阶次L=500; %数据长度uk=zeros(d+nb,1); %输入初值:uk(i)表示u(k-i)yk=zeros(na,1); %输出初值x1=1; x2=1; x3=1; x4=0; S=1; %移位寄存器初值、方波初值xi=randn(L,1); %白噪声序列theta=[a(2:na+1);b]; %对象参数真值for k=1:Lphi(k,:)=[-yk;uk(d:d+nb)]'; %此处phi(k,:)为行向量,便于组成phi 矩阵y(k)=phi(k,:)*theta+xi(k); %采集输出数据IM=xor(S,x4); %产生逆M序列if IM==0u(k)=-1;elseu(k)=1;endS=not(S); M=xor(x3,x4); %产生M序列%更新数据x4=x3; x3=x2; x2=x1; x1=M;for i=d+nb:-1:2uk(i)=uk(i-1);enduk(1)=u(k);for i=na:-1:2yk(i)=yk(i-1);endyk(1)=y(k);endthetae=inv(phi'*phi)*phi'*y' %计算参数估计值thetae结果:thetae =0.7787 ,0.5103真值=0.8,0.5解:一(2):采用遗忘因子递推最小二乘参数估计;其仿真算法如下:Step1:设置初值、,及遗忘因子,输入初始数据;Step2:采样当前输入和输出数据;Step3:利用含有遗忘因子的递推公式计算、和;Step4:k=k+1,返回Step2继续循环。
中南大学系统辨识及自适应控制试卷3份及答案

2009级本科生 系统辨识及自适应控制 考试题一、 概述系统辨识与自适应控制的关系,以及自适应控制的研究对象和系统辨识的定义?(10分)关系:PPT 1.4图及说明。
自适应控制的研究对象:是具有一定程度不确定性的系统。
系统辨识:就是按规定准则在一类模型中选择一个与数据拟合得最好的模型。
二、描述随机过程统计特性的确定性时间函数有哪些?什么是白噪声,它有哪些特性,有何用途?在系统参数辨识实验中为什么常用M 序列或逆M 序列作为被辨识对象的输入信号?(20分)确定性时间函数有:均值函数、方差函数、均方值函数、相关函数等白噪声:一种均值为零,谱密度为非零常数的平衡随机过程白噪声特性:(1)是一种随机过程信号(2)没有记忆性,任意两时刻之间的值不相关(3)均值为零,方差为常数(4)功率谱密度函数为常数用途:(1)作为系统输入时,为系统的单位脉冲响应(2)作为被辨识系统输入时,可以激发系统的所有模态,可对系统充分激励(3)作为被辨识系统输入时,可防止数据病态,保证辨识精度(4)产生有色噪声原因:白噪声是一种理想的随机过程,若做为系统辨识的输入信号,则过程的辨识精度将大大提高,但是白噪声在工程上难以实现,因为工业设备无法按白噪声的变化特性运行。
M 序列与白噪声性质相近,保留了其优点,工业上可以接受。
但是M 序列含有直流成分,将造成对辨识系统的“净扰动”,而逆M 序列将克服这一缺点,是一种比M 序列更为理想的伪随机码序列。
三、简述在下列参数辨识公式中:111111ˆˆˆ[(1)()]()[()()]1[()]T N N N N T N N N T N N N K y N N K P N N P N P I K N P θθϕθϕλϕϕϕλ++-+++⎧⎪=++-⎪=+⎨⎪⎪=-⎩(1)系数λ的作用(10分);(2)初始值P0如何设定?说明理由(10分)。
(1)加权系数,削弱旧数据产生的误差,对新数据的误差乘以大的加权,其值愈小,跟随时变参数的能力就愈强,但参数估计精度愈低。
(整理)系统辨识自适应控制

1.1讨论系统方程为:(信噪比)至少30%)()1()()1()(k e k u k b k ay k y +-=-+)(k e 为零均值白噪声, =)(k a=)(k b 要求对系统参数辨识进行讨论(1) 定常系统 a=0.8,b=0.5参数递推估计 (2) 时变系统 取不同值是的不同结果并讨论。
(1)取初值P (0)=I 、∧θ(0)=0选择方差为1的白噪声作为输入信号u (k ),L=300,采用RLS 算法进行参数估计,代码及仿真结果图如下: clear all ;close all ;a=[1 0.8]';b=[0.5]';d=1; %对象参数na=length(a)-1;nb=length(b)-1; %na 、nb 为A 、B 阶次L=300; %仿真长度uk=zeros(d+nb,1); %输入初值:uk(i)表示u(k-i) yk=zeros(na,1); %输出初值u=randn(L,1); %输入采用白噪声序列 xi=sqrt(0.1)*randn(L,1); %白噪声序列theta=[a(2:na+1);b]; %对象参数真值thetae_1=zeros(na+nb+1,1); %thetae 初值 P=10^6*eye(na+nb+1); for k=1:Lphi = [-yk;uk(d:d+nb)]; %´此处phi 为列向量 y(k)=phi'*theta + xi(k); %采集输出数据%递推最小二乘法K=P*phi/(1+phi'*P*phi);thetae( : ,k)=thetae_1 + K*(y(k)-phi'*thetae_1); P=(eye(na+nb+1)-K*phi')*P;%更新数据thetae_1 = thetae( : ,k);for i=d+nb:-1:2 uk(i)=uk(i-1); enduk(1)=u(k); for i=na:-1:2yk(i)=yk(i-1); endyk(1)=y(k); endplot([1:L],thetae); %line([1,L],[theta,theta]); xlabel('k');ylabel('参数估计a 、b'); legend('a_1','b_0');axis([0 L -2 2]);图1-1 递推最小二乘法的参数估计结果(2))取初值P (0)=I 、∧θ(0)=0选择方差为1的白噪声作为输入信号u (k ),取 分别为0.91,0.95,0.98,1.00时,L=600,采用FFRLS 算法进行参数估计,代码及仿真图如下所示:clear all ;close all ;a=[1 0.8]';b=[0.5]';d=1; %对象参数na=length(a)-1;nb=length(b)-1; %na 、nb 为A 、B 阶次L=600; %仿真长度uk=zeros(d+nb,1); %输入初值:uk(i)表示u(k-i) yk=zeros(na,1); %输出初值u=randn(L,1); %输入采用白噪声序列xi=sqrt(0.1)*randn(L,1); %白噪声序列thetae_1=zeros(na+nb+1,1); %thetae初值P=10^6*eye(na+nb+1);lambda=0.98; %遗忘因子范围[0.9 1]for k=1:Lif k==301a=[1 0.6]';b=[0.3]'; %对象参数突变endtheta( : ,k)=[a(2 : na+1);b]; %对象参数真值phi = [-yk;uk(d:d+nb)]; %´此处phi为列向量y(k)=phi'*theta( : ,k) + xi(k); %采集输出数据%遗忘因子递推最小二乘法·¨K=P*phi/(lambda+phi'*P*phi);thetae( : ,k)=thetae_1 + K*(y(k)-phi'*thetae_1);P=(eye(na+nb+1)-K*phi')*P/lambda;%更新数据thetae_1 = thetae( : ,k);for i=d+nb:-1:2uk(i)=uk(i-1);enduk(1)=u(k);for i=na:-1:2yk(i)=yk(i-1);endyk(1)=y(k);endsubplot(1,2,1)plot([1:L],thetae(1:na,:));hold on;plot([1:L],theta(1:na,:),'k:'); xlabel('k');ylabel('参数估计a');legend('a_1');axis([0 L -2 2]);subplot(1,2,2)plot([1:L],thetae(na+1:na+nb+1,:));holdon;plot([1:L],theta(na+1:na+nb+1,:),'k:');xlabel('k');ylabel('参数估计b');legend('b_0');axis([0 L -0.5 2]);图1-2-1 遗忘因子递推最小二乘法的参数估计结果(λ=0.91)图1-2-2 遗忘因子递推最小二乘法的参数估计结果(λ=0.95)图1-2-3遗忘因子递推最小二乘法的参数估计结果(λ=0.98)图1-2-4 遗忘因子递推最小二乘法的参数估计结果(λ=1)由以上可以看出,技术对于参数突变的系统,采用FFRLS算法也能够有效地进行参数估计。
自适应控制习题(系统辨识)
自适应控制习题(徐湘元,自适应控制理论与应用,电子工业出版社,2007)【2-1】设某物理量丫与XI 、X2、X3的关系如下:丫=0 1X1 + 0 2X2+0 3X3由试验获得的数据如下表。
试用最小二乘法确定模型参数 0 1、0 2和0 3X1:0.620.40.420.820.660.720.380.520.450.690.550.36X2:12.014.214.612.110.88.2013.010.58.8017.014.212.8 X3:5.206.100.328.305.107.904.208.003.905.503.806.20 Y: 51.649.948.550.649.748.842.645.937.864.853.445.3【2-3】考虑如下模型其中w(t)为零均值、方差为1的白噪声。
根据模型生成的输入/输出数据u(k)和y(k), 分别采用批处理最小二乘法、具有遗忘因子的最小二乘法(入 =0.95)和递推最小二乘法 估计模型参数(限定数据长度 N 为某一数值,如N=150或其它数值),并将结果加以比 较。
【2-4】 对于如下模型(1 _0.8z 10.15z 2)y(k) 一(z 20.5z 3)u(k) - (1 - 0.65z 1- 0.1z 2)w(k)其中w(k)为零均值、方差为1的白噪声。
根据模型生成的输入/输出数据u(k)和y(k), 分别采用增广最小二乘法和随机逼近法进行模型参数估计,并比较结果。
(提示:w(t)可以用MATLAB^的函数“ randn ”产生)。
【3-1】 设有不稳定系统: (1z 1)y(k)- z ^(10.9z 1)u(k)期望传递函数的分母多项式为Amz z mr且无稳态误差。
试按照极点配置方法设计控制系统,并写出控制表达式。
【3-2} 设有被控过程:一 -_(1 1.7z 1 0.6z 2)y(k)z 2(11.2z 1)u(k) 一 ~- 一--1.3z0.5z u(t)w(t)I 0.3z 21 - - T ()(10.5),期望输出y 跟踪参考输入y ,y(t)给定期望传递函数的分母多项式为(1)(1 0.61 0.08 2),试按照极点配置方 A m zzz法设计控制系统,使期望输出无稳态误差,并写出控制表达式 u(k)。
控制系统中的系统辨识与自适应控制
控制系统中的系统辨识与自适应控制在控制系统中,系统辨识与自适应控制是两个关键的方面。
系统辨识是指通过实验或推理的方法,从输入和输出的数据中提取模型的参数和结构信息,以便更好地理解和控制系统的行为。
而自适应控制是指根据系统辨识得到的模型参数和结构信息,实时地调整控制器的参数以适应系统变化,以提高控制性能。
一、系统辨识1.1 参数辨识参数辨识是指确定系统动态模型中的参数。
常用的方法包括最小二乘法、极大似然估计法等。
最小二乘法是一种常见的参数辨识方法,通过最小化实际输出与模型输出之间的误差平方和来确定参数。
1.2 结构辨识结构辨识是指确定系统动态模型的结构,包括确定系统的阶数、输入输出关系等。
常用的结构辨识方法有ARX模型、ARMA模型等。
ARX模型是指自回归外部输入模型,适用于输入输出具有线性关系的系统。
ARMA模型是指自回归滑动平均模型,适用于输入输出关系存在滞后效应的系统。
二、自适应控制自适应控制是根据系统辨识得到的模型参数和结构信息,动态地调整控制器的参数以适应系统的变化。
常用的自适应控制方法有模型参考自适应控制、模型预测控制等。
2.1 模型参考自适应控制模型参考自适应控制是建立在系统辨识模型基础上的控制方法。
通过将系统输出与参考模型输出进行比较,通过调整控制器参数来减小误差。
常见的模型参考自适应控制方法有自适应PID控制、自适应模糊控制等。
2.2 模型预测控制模型预测控制是一种基于系统辨识模型的控制策略,通过对系统未来的状态进行预测,以求得最优控制输入。
模型预测控制可以同时考虑系统的多个输入和多个输出,具有较好的控制性能。
三、应用案例3.1 机械控制系统在机械控制系统中,系统辨识和自适应控制可以被应用于伺服控制系统。
通过系统辨识可以得到伺服电机的动态模型,然后利用自适应控制方法调整PID控制器的参数,以提高伺服系统的响应速度和稳定性。
3.2 化工控制系统在化工控制系统中,系统辨识和自适应控制可以被应用于控制某个反应器的温度。
系统辨识与自适应控制实验报告
系统辨识与自适应控制实验报告一、实验目的1.了解最小二乘算法的实现;2.使用最小二乘法一次完成算法、递推最小二乘法以及广义最小二乘法对系统进行辨识。
二、实验容设单输入-单输出系统的差分方程为y(k)=-取真实值=[ 1.642 0.715 0.39 0.35] ,输入数据如下表所列。
k u(k) k u(k) k u(k)1 1.147 11 -0.958 21 0.4852 0.201 12 0.810 22 1.6333 -0.787 13 -0.044 23 0.0434 -1.589 14 0.947 24 1.3265 -1.052 15 -1.474 25 1.7066 0.866 16 -0.719 26 -0.3407 1.152 17 -0.086 27 0.8908 1.157 18 -1.099 28 1.1449 0.626 19 1.450 29 1.177 10 0.43320 1.15130 -0.390用的真实值利用查分方程求出作为测量值,为均值为0,方差为0.1,0.5的不相关随机序列。
(1) 用最小二乘法估计参数(2) 用递推最小二乘法估计参数θ。
(3) 用辅助变量法估计参数θ。
(4) 设,用广义最小二乘法估计参数θ。
(5) 用增广矩阵法估计参数θ详细分析和比较所获得的参数辨识结果,并说明上述参数辨识方法的优点。
三、 实验设备Matlab 软件,PC 机一台。
四、实验原理4.1 最小二乘一次完成算法 4.1.1 公式 辨识参数L T LL TL LS y XX X 1)(-Λ=θ上式中4.1.2 程序流程图图 1最小二乘一次完成程序流程图4.2 递推最小二乘算法4.2.1 递推公式公式为其中,4.2.2 算法流程图图 2 递推最小二乘法实现程序框图4.3 增广最小二乘递推算法4.3.1 递推公式公式为:其中,4.3.2 算法流程图图 3 增广最小二乘法算法流程图五、实验结果5.1 最小二乘法一次完成实验结果XL =0 0 0 00 0 0 00 0 0.2010 1.1470-0.4798 0 -0.7870 0.20101.0245 -0.4798 -1.5890 -0.7870-0.4439 1.0245 -1.0520 -1.5890 0.9629 -0.4439 0.8660 -1.0520 -1.2332 0.9629 1.1520 0.8660 0.5840 -1.2332 1.5730 1.1520 -1.0939 0.5840 0.6260 1.5730 0.5840 -1.0939 0.4330 0.6260 -0.5647 0.5840 -0.9580 0.4330 0.7317 -0.5647 0.8100 -0.9580 -0.7784 0.7317 -0.0440 0.8100 0.4885 -0.7784 0.9470 -0.0440 -0.5996 0.4885 -1.4740 0.9470 0.8786 -0.5996 -0.7190 -1.4740 -0.2177 0.8786 -0.0860 -0.7190 0.0144 -0.2177 -1.0990 -0.0860 0.5907 0.0144 1.4500 -1.0990 -1.1611 0.5907 1.1510 1.4500 0.5277 -1.1611 0.4850 1.1510 -0.6284 0.5277 1.6330 0.4850 -0.1521 -0.6284 0.0430 1.6330 0.1108 -0.1521 1.3260 0.0430 -0.6053 0.1108 1.7060 1.3260 -0.2147 -0.6053 -0.3400 1.70600.3208 -0.2147 0.8900 -0.3400 -0.6014 0.3208 1.1440 0.8900 0.0005 -0.6014 1.1770 1.1440 yL =0.4798-1.02450.4439-0.96291.2332-0.58401.0939-0.58400.5647-0.73170.7784-0.48850.5996-0.87860.2177-0.0144-0.59071.1611-0.52770.62840.1521-0.11080.60530.2147-0.32080.6014-0.00050.4302辨识参数矩阵c =1.64200.71500.39000.3500a1 =1.6420;a2 =0.7150;b1 =0.3900;b2 =0.3500 下图为输入、输出矩阵的根径图图 4最小二乘法一次实现输入输出根径图5.2 递推最小二乘法算法辨识结果系统输出矩阵:y =Columns 1 through 130 0 0.4798 -1.0245 0.4439 -0.9629 1.2332 -0.5840 1.0939 -0.5840 0.5647 -0.7317 0.7784Columns 14 through 26-0.4885 0.5996 -0.8786 0.2177 -0.0144 -0.5907 1.1611 -0.5277 0.6284 0.1521 -0.1108 0.6053 0.2147Columns 27 through 30-0.3208 0.6014 -0.0005 0.4302辨识参数矩阵(辨识过程执行26次即满足了误差要求):c =Columns 1 through 130.0010 0 0.0010 0.5690 1.3863 1.64201.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.64200.0010 0 0.0010 0.0010 -0.2821 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.71500.0010 0 0.0719 1.0162 0.5392 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.39000.0010 0 0.4057 0.2403 0.3239 0.3500 0.3500 0.3500 0.3500 0.3500 0.3500 0.3500 0.3500Columns 14 through 261.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.64200.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.71500.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.39000.3500 0.3500 0.3500 0.3500 0.3500 0.3500 0.3500 0.3500 0.3500 0.3500 0.3500 0.3500 0.3500辨识误差矩阵:e =Columns 1 through 130 0 0 567.9876 1.4365 0.1844 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.00000 0 0 0 -283.1457 -3.5341 -0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.00000 0 70.9263 13.1283 -0.4694 -0.2767 0.0000 0.0000 -0.0000 -0.0000 0.0000 -0.0000 -0.00000 0 404.7388 -0.4078 0.3479 0.0807 -0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000Columns 14 through 260.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 -0.0000 -0.0000 0.0000 0.0000 0.00000.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 -0.00000.0000 -0.0000 -0.0000 0.0000 0.0000 0.0000 0.0000 -0.0000 0.0000 0.0000 0.0000 0.0000 -0.00000.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000输入输出根径图图 5 递推最小二乘法输入输出根径图辨识参数过程图 6 递推最小二乘法辨识参数(辨识过程)辨识误差:图 7 递推最小二乘法辨识过程中的误差曲线5.3 增光最小二乘法实验结果随机噪声e0 =Columns 1 through 130.8017 0.3112 0.0400 1.5927 2.1796 -0.2063 0.4197 -0.4914 0.9967 -2.0484 1.3063 0.5351 0.5779Columns 14 through 261.5297 0.0416 0.1831 -0.9543 -1.3474 -0.3873 0.5971 -0.2250 -1.0173 1.3889 -0.3959 0.3049 0.3154Columns 27 through 300.0668 0.7128 0.0522 -1.3478考虑噪声的系统输出矩阵y =Columns 1 through 130 0 1.3292 -2.8976 3.0444 -3.4535 4.0637 -1.2169 1.8419 -1.5061 0.3942 -3.0734 2.3278Columns 14 through 26-0.7705 1.1973 -0.1962 0.3711 -0.4941 -1.4314 1.2987 -1.5689 0.0303 1.8310 0.3403 -0.3472 0.5176Columns 27 through 30-1.1419 -0.4368 0.0696 1.6791不考虑噪声的系统输出矩阵ys =Columns 1 through 130 0 0.4798 -2.4191 2.9124 -3.8936 3.4635 -3.4509 0.1092 -1.3596 1.5440 0.2076 4.7453Columns 14 through 26-1.3584 -0.0452 -1.6585 -1.3303 -0.7543 0.0873 2.8846 -0.1526 2.2396 1.8786 -2.4398 -1.3358 1.4562Columns 27 through 30-0.1371 1.7331 2.2914 1.0575不考虑噪声时的模型输出ym =Columns 1 through 130 0 0.8502 -2.7124 3.2115 -4.4770 4.5771 -3.4086 0.1092 -1.3596 1.5440 0.2076 4.7453Columns 14 through 26-1.3584 -0.0452 -1.6585 -1.3303 -0.7543 0.0873 2.8846 -0.1526 2.2396 1.8786 -2.4398 -1.3358 1.4562Columns 27 through 30-0.1371 1.7331 2.2914 1.0575考虑噪声时的模型输出ymd =Columns 1 through 130 0 1.3292 -2.8976 3.0444 -3.4535 4.0637 -1.2169 1.8419 -1.5061 0.3942 -3.0734 2.3278Columns 14 through 26-0.7705 1.1973 -0.1962 0.3711 -0.4941 -1.4314 1.2987 -1.5689 0.0303 1.8310 0.3403 -0.3472 0.5176Columns 27 through 30-1.1419 -0.4368 0.0696 1.6791辨识参数矩阵:c =Columns 1 through 130.0010 0 0.0010 1.5171 1.6829 1.84351.8250 1.6529 1.6420 1.6420 1.6420 1.6420 1.64200.0010 0 0.0010 0.0010 -0.1409 0.7419 0.6281 0.7388 0.7150 0.7150 0.7150 0.7150 0.71500.0010 0 0.1268 1.0576 0.8180 0.3002 0.4168 0.3921 0.3900 0.3900 0.3900 0.3900 0.39000.0010 0 0.7190 0.6789 0.7019 0.4396 0.1656 0.3522 0.3500 0.3500 0.3500 0.3500 0.35000.0010 0 -0.1988 0.0261 0.0572 -0.0988 -0.0852 1.0030 1.0000 1.0000 1.0000 1.0000 1.00000.0010 0 0.2540 0.6848 0.6545 1.34961.4284 1.6100 1.6420 1.6420 1.6420 1.6420 1.64200.0010 0 0.4430 0.0984 0.1605 0.2657 0.6386 0.7305 0.7150 0.7150 0.7150 0.7150 0.7150Columns 14 through 261.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.64200.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.71500.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.3900 0.39000.3500 0.3500 0.3500 0.3500 0.3500 0.35000.3500 0.3500 0.3500 0.3500 0.3500 0.3500 0.35001.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.00001.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.6420 1.64200.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150 0.7150Columns 27 through 301.6420 1.6420 1.6420 1.64200.7150 0.7150 0.7150 0.71500.3900 0.3900 0.3900 0.39000.3500 0.3500 0.3500 0.35001.0000 1.0000 1.0000 1.00001.6420 1.6420 1.6420 1.64200.7150 0.7150 0.7150 0.7150辨识参数误差矩阵e =1.0e+003 *Columns 1 through 130 0 0 1.5161 0.0001 0.0001 -0.0000 -0.0001 -0.0000 -0.0000 -0.0000 -0.0000 -0.00000 0 0 0 -0.1419 -0.0063 -0.0002 0.0002 -0.0000 0.0000 0.0000 -0.0000 -0.00000 0 0.1258 0.0073 -0.0002 -0.0006 0.0004 -0.0001 -0.0000 -0.0000 -0.0000 -0.0000 -0.00000 0 0.7180 -0.0001 0.0000 -0.0004 -0.0006 0.0011 -0.0000 0.0000 -0.0000 -0.0000 0.00000 0 -0.1998 -0.0011 0.0012 -0.0027 -0.0001 -0.0128 -0.0000 0.0000 0.0000 0.0000 -0.00000 0 0.2530 0.0017 -0.0000 0.0011 0.0001 0.0001 0.0000 -0.0000 0.0000 0.0000 0.00000 0 0.4420 -0.0008 0.0006 0.0007 0.0014 0.0001 -0.0000 0.0000 0.0000 -0.0000 0.0000Columns 14 through 260.0000 0.0000 0.0000 -0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 -0.0000 0.0000 0.0000 0.00000.0000 0.0000 0.0000 -0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 -0.0000-0.0000 -0.0000 0.0000 -0.0000 0.0000 0.0000 0.0000 -0.0000 0.0000 0.0000 0.0000 0.0000 -0.00000.0000 0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 0.0000 -0.0000 -0.0000 -0.0000-0.0000 -0.0000 -0.0000 0.0000 -0.0000 0.0000 -0.0000 0.0000 0.0000 0.0000 -0.0000 -0.0000 -0.00000.0000 0.0000 0.0000 0.0000 0.0000 0.00000.0000 0.0000 0.0000 -0.0000 -0.0000 0.0000 0.0000-0.0000 -0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 -0.0000 0.0000 0.0000 -0.0000Columns 27 through 300.0000 -0.0000 -0.0000 0.00000.0000 -0.0000 -0.0000 0.00000.0000 -0.0000 -0.0000 -0.0000-0.0000 0.0000 -0.0000 -0.00000.0000 0.0000 0.0000 -0.00000.0000 0.0000 0.0000 0.00000.0000 -0.0000 0.0000 0.0000输入输出根径图:图 8 增广最小二乘法输入输出根径图辨识过程的参数:图 9 增广最小二乘法辨识过程参数辨识过程中的误差图 10 增广最小二乘法辨识过程中的误差系统输出矩阵和模型输出矩阵的对比:图 11 系统输出矩阵和模型输出矩阵的对比图六、结果分析利用最小二乘法对系统进行辨识,能够在最小误差平方的意义上对实验数据实现最好的拟合。
系统辨识与自适应控制
自适应控制应用0引言自从上世纪50年代末期由美国麻省理工学院W hitaker等人提出第一个自适应控制系统以来,已先后出现许多形式的自适应控制系统,特别到70}代在航天工业及计算机技术的推动下,自适应控制理论与技术迅速发展,到90年代初自适应控制理论设计方法实现条件已日趋成熟,特别是与模糊控制、神经网络相结合的自适应控制设计方法将使自适应控制技术成为现代工业生产过程及航天技术上的一种高性能、高效率、高可靠的有效控制方法及手段1自适应控制的应用领域自适应控制在数控机床中的应用之处很多。
像自动换刀报警技术,自动磨损补偿加工技术,自动热误差补偿加工技术等都有用到自适应控制技术。
数控机床的工作原理是通过外界输入控制指令的程序代码,机床中的数控系统自动译码翻译,将其转化为各种控制指令,驱动机床对作用对象进行加工。
正是由于自适应控制在机床加工中的应用,使得机床轮廓铣削和铣槽用时都节省超过1/3;铣面和钻孔省时也都超过20%以上。
除此之外,应用了自适应控制技术的机床还具有许多保护功能加前面提到的自动换刀报警技术,可以危机报警并自动停止加工工作,以免坏的刀具破坏工件以及后续刀具的损毁,这种技术在铣刀加工和钻刀打孔中都有应用到,同时刀具磨损过大,主轴过载等情况系统也有相应的检测和自适应控制的功能。
自适应策略在电力系统控制中的应用主要包括:锅炉蒸汽温度和压力控制、锅炉燃烧效率的优化控制、互连电力系统发电量控制等方面。
针对电厂主蒸汽温度调节的大时滞和不确定性,我国东北电力大学的顾俊杰等采用自适应PSD控制方法,并结合运用内模控制器。
与传统的PID控制系统相比,自适应PSD控制算法简单、计算量小,并且能减少超调量、加快相应速度、缩短稳定时间!。
东南大学的胡一倩等对PID模糊控制器的参数进行自适应调整,并将其用于锅炉过热蒸汽温度的控制,取得了满意的效果。
哈尔滨工业大学的徐立新等结合专家经验得出燃气轮机模糊PI控制规律,并据此设计了透平转速和排气温度的模糊自适应PI控制器,提高了燃气轮机的性能且实先非常方便。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
系统辨识与自适应控制学院:专业:学号:姓名:系统辨识与自适应控制作业一、 对时变系统进行参数估计。
系统方程为:y(k)+a(k)y(k-1)=b(k)u(k-1)+e(k) 其中:e(k)为零均值噪声,a(k)= b(k)=要求:1对定常系统(a=0.8,b=0.5)进行结构(阶数)确定和参数估计;2对时变系统,λ取不同值(0.9——0.99)时对系统辨识结果和过程进行比较、讨论3对辨识结果必须进行残差检验 解:一(1):分析:采用最小二乘法(LS ):最小二乘的思想就是寻找一个θ的估计值θˆ,使得各次测量的),1(m i Z i =与由估计θˆ确定的量测估计θˆˆi i H Z =之差的平方和最小,由于此方法兼顾了所有方程的近似程度,使整体误差达到最小,因而对抑制误差是有利的。
在此,我应用批处理最小二乘法,收敛较快,易于理解,在系统参数估计应用中十分广泛。
作业程序:clear all;a=[1 0.8]'; b=[ 0.5]'; d=3; %对象参数na=length(a)-1; nb=length(b)-1; %na 、nb 为A 、B 阶次 L=500; %数据长度uk=zeros(d+nb,1); %输入初值:uk(i)表示u(k-i) yk=zeros(na,1); %输出初值x1=1; x2=1; x3=1; x4=0; S=1; %移位寄存器初值、方波初值 xi=randn(L,1); %白噪声序列theta=[a(2:na+1);b]; %对象参数真值 for k=1:Lphi(k,:)=[-yk;uk(d:d+nb)]'; %此处phi(k,:)为行向量,便于组成phi 矩阵y(k)=phi(k,:)*theta+xi(k); %采集输出数据IM=xor(S,x4); %产生逆M 序列 if IM==0u(k)=-1; elseu(k)=1; endS=not(S); M=xor(x3,x4); %产生M 序列%更新数据x4=x3; x3=x2; x2=x1; x1=M;for i=d+nb:-1:2uk(i)=uk(i-1);enduk(1)=u(k);for i=na:-1:2yk(i)=yk(i-1);endyk(1)=y(k);endthetae=inv(phi'*phi)*phi'*y' %计算参数估计值thetae结果:thetae =0.7787 ,0.5103真值=0.8,0.5解:一(2):采用遗忘因子递推最小二乘参数估计;其仿真算法如下:Step1:设置初值、,及遗忘因子,输入初始数据;Step2:采样当前输入和输出数据;Step3:利用含有遗忘因子的递推公式计算、和;Step4:k=k+1,返回Step2继续循环。
其中:对时变系统,λ取不同值(0.9——0.99)时对系统辨识结果和过程进行比较、讨论作业程序:clear all; close all;a=[1 0.8]’;b=[0.5]’;d=2; %对象参数na=length(a)-1;nb=length(b)-1; %na、nb为A、B阶数L=500; %仿真长度uk=zeros(d+nb,1); %输入初值yk=zeros(na,1); %输出初值u=randn(L,1); %输入采用白噪声序列xi=sqrt(0.1)*randn(L,1); %白噪声序列thetae_1=zeros(na+nb+1,1);p=10^6*eye(na+nb+1);lambda=0.95; %遗忘因子for k=1:L;if k>300;a=[1 0.6]';b=[0.3]';endthetae(:,k)=[a(2:na+1);b];phi=[-yk;uk(d:d+nb)];y(k)=phi'*thetae(:,k)+xi(k); %采集输出数据%递推最小二乘法K=p*phi/(lambda+phi'*p*phi);thetae(:,k)=thetae_1+K*(y(k)-phi'*thetae_1);p=(eye(na+nb+1)-K*phi')*p/lambda;%更新数据thetae_1=thetae(:,k);for i=d+nb:-1:2uk(i)=uk(i-1);enduk(1)=u(k);for i=na:-1:2yk(i)=yk(i-1);endyk(1)=y(k);endsubplot(1,2,1)plot([1:L],thetae(1:na,:));hold on; plot([1:L], thetae(1:na,:),'k:'); xlabel('k');ylabel('参数估计a');axis([0 L -0.5 2]);subplot(1,2,2)plot([1:L],thetae(na+1:na+nb+1,:));holdon;plot([1:L],thetae(na+1:na+nb+1,:),'k:');xlabel('k');ylabel('参数估计b');axis([0 L -0.5 2]);仿真结果图1-1遗忘因子递推最小二乘法的参数估计结果(=0.95)图1-2遗忘因子递推最小二乘法的参数估计结果(λ=0.99)综上所述,可知从仿真图可以看出,当0<k<300时,a的值大约在0.8左右波动,b的值大约在0.5左右波动。
当k>300时,a、b的值发生变化,此时a的值大约在0.6左右波动,b的值大约在0.3左右波动。
所以在此种情况下,可以达到辨识目的,但是由于波动较大,辨识效果不理想。
同时,当λ=0.99时比前面所述λ=0.96时的辨识结果更为明显。
这种情况下当估计值变化稳定时,估计值的变化率比较小,辨识效果较为理想。
一(3):根据残差平方和估计模型的阶次SISO 过程的差分方程模型的输出残差为)(~k z ,数据长度L ,n H ˆ为n ˆ阶时的数据矩阵,nˆˆθ为n ˆ阶时的参数的估计量,n ˆ为模型阶次估计值,0n 为真实阶次,则残差平方和函数J : )(~1)ˆ()ˆ(1~~1)ˆ(12ˆˆˆˆˆˆ00k z L H z H z L z z L n J L n n k n n n T n n n n T n ∑++==--==θθ 残差平方和有这样的性质:当L 足够大时,随着n ˆ增加)ˆ(n J 先是显著地下降,当nˆ>0n 时,)ˆ(nJ 值显著下降的现象就终止。
这就是损失函数法来定阶的原理。
程序:N=15;%4位移位寄存器产生的M 序列的周期 y1=1;y2=1;y3=1;y4=0; for i=1:N;x1=xor(y3,y4); x2=y1; x3=y2; x4=y3; y(i)=y4;if y(i)>0.5,u(i)=-1; else u(i)=1; endy1=x1;y2=x2;y3=x3;y4=x4; end%白噪声的产生A=19;x0=12;M=1024; for k=1:N x=A*x0; x1=mod(x,M); v(k)=x1/512; x0=x1; end%辨识主程序z=zeros(7,N);zs=zeros(7,N);zm=zeros(7,N);zmd=zeros(7,N); z(1)=0;z(2)=0; zs(1)=0; zs(2)=0; zm(1)=0; zm(2)=0; zmd(1)=0;zmd(2)=0;theta=zeros(7,1);p0=10^6*eye(7,7);the=[theta,zeros(7,14)];e=zeros(7,15);for k=3:N;h=[-z(k-1),-z(k-2),u(k-1),u(k-2),v(k),v(k-1),v(k-2)]';x=inv(h'*p0*h+1);q=p0*h*x;d1=z(k)-h'*theta;theta1=theta+q*d1;zs(k)=-1.5*z(k-1)+0.7*z(k-2)+u(k-1)+0.5*u(k-2);zm(k)=[-z(k-1),-z(k-2),u(k-1),u(k-2)]*[theta1(1);theta1(2);theta1(3); theta1(4)];zmd(k)=h'*theta1;e(:,k)=theta1-theta;theta=theta1;the(:,k)=theta1;p1=p0-q*q'*[h'*p0*h+1];p0=p1;endfigure(1);i=1:N;plot(i,the(1,:),'r',i,the(2,:),'r:',i,the(3,:),'b',i,the(4,:),'b:',i, the(5,:),'g',i,the(6,:),'g:',i,the(7,:),'g+')title('辨识曲线')figure(2);i=1:N;plot(i,e(1,:),'r',i,e(2,:),'r:',i,e(3,:),'b',i,e(4,:),'b:',i,e(5,:),' g',i,e(6,:),'g:',i,e(7,:),'r+')title('辨识误差曲线')图1-3-1辨识曲线图1-3-2辨识误差曲线由以上对比曲线可以看出,经过最小二乘法估计得到的数据与实际数据之间虽然存在区别,但是基本符合要求, 说明辨识效果较好。
二、已知系统方程:y(k)+1.2 y(k-1)+0.35 y(k-2)=u(k-2)+0.4 u(k-3)+e(k)+1.1e(k-1)+0.28e(k-2)其中e(k)为白噪声序列。
要求:1、对系统进行参数递推估计;2、进行最小方差控制器设计;3、进行基于最小方差控制的自适应控制系统仿真分析(设输入信号为方波信号)。
二(1):程序:clear all; close all;a=[1 1.2 0.35]'; b=[1 0.4]'; c=[1 1.1 0.28]'; d=3; %对象参数na=length(a)-1; nb=length(b)-1; nc=length(c)-1; %na、nb、nc为A、B、C阶次L=1000; %仿真长度uk=zeros(d+nb,1); %输入初值:uk(i)表示u(k-i)yk=zeros(na,1); %输出初值xik=zeros(nc,1); %噪声初值xiek=zeros(nc,1); %噪声估计初值u=randn(L,1); %输入采用白噪声序列xi=sqrt(0.1)*randn(L,1); %白噪声序列theta=[a(2:na+1);b;c(2:nc+1)]; %对象参数thetae_1=zeros(na+nb+1+nc,1); %na+nb+1+nc为辨识参数个数P=10^6*eye(na+nb+1+nc);for k=1:Lphi=[-yk;uk(d:d+nb);xik];y(k)=phi'*theta+xi(k); %采集输出数据phie=[-yk;uk(d:d+nb);xiek]; %组建phie%递推增广最小二乘法K=P*phie/(1+phie'*P*phie);thetae(:,k)=thetae_1+K*(y(k)-phie'*thetae_1);P=(eye(na+nb+1+nc)-K*phie')*P;xie=y(k)-phie'*thetae(:,k); %白噪声的估计值%更新数据thetae_1=thetae(:,k);for i=d+nb:-1:2uk(i)=uk(i-1);enduk(1)=u(k);for i=na:-1:2yk(i)=yk(i-1);endyk(1)=y(k);for i=nc:-1:2xik(i)=xik(i-1);xiek(i)=xiek(i-1);endxik(1)=xi(k);xiek(1)=xie;endfigure(1)plot([1:L],thetae(1:na,:));xlabel('k'); ylabel('参数估计a');legend('a_1','a_2'); axis([0 L -2 2]);figure(2)plot([1:L],thetae(na+1:na+nb+1,:));xlabel('k'); ylabel('参数估计b');legend('b_0','b_1'); axis([0 L -2 2]);figure(3)plot([1:L],thetae(na+nb+2:na+nb+nc+1,:));xlabel('k'); ylabel('参数估计c');legend('c_1','c_2'); axis([0 L -2 2]);对系统进行最广最小二乘的递推估计(RELS),仿真结果如下图2.1所示。