递推最小二乘参数估计matlab实现 matlab递推最小二乘法

递推最小二乘参数估计(RLS)

递推最小二乘参数估计matlab实现 matlab递推最小二乘法

考虑如下系统:

式中x(k)为方差为0.1的白噪声。

clear all; close all;

a=[1 -1.5 0.7]';b=[1 0.5]';d=3; %对象参数

na=length(a)-1;nb=length(b)-1;%计算阶次,na=2,nb=1

L=500; %数据长度(仿真长度)

uk=zeros(d+nb,1);yk=zeros(na,1);%输入输出初值uk:4x1,ykx1

u=randn(L,1); %输入采用方差为1的白噪声序列

xi=sqrt(0.1)*randn(L,1); %方差为0.1的白噪声干扰序列

theta=[a(2:na+1);b];%对象参数真值theta=[-1.5,0.7;1,0.5]

thetae_1=zeros(na+nb+1,1); %参数初值q为4x1的全零矩阵

P=10^6*eye(na+nb+1);

for k=1:L

phi=[-yk;uk(d:d+nb)]; %此处phi为列向量4x1

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);

fori=d+nb:-1:2

uk(i)=uk(i-1);

end

uk(1)=u(k);

fori=na:-1:2

yk(i)=yk(i-1);

end

yk(1)=y(k);

end

plot([1:L],thetae);%line([1:L],[theta,theta]);

xlabel('k');ylabel('参数估计a,b');

legend('a_1','a_2','b_0','b_1');

axis([0 L -2 2]);

  

爱华网本文地址 » http://www.aihuau.com/a/25101014/224739.html

更多阅读

最小二乘法系统辨识 系统辨识与自适应控制

最小二乘多项式拟合:MATLAB软件提供了基本的曲线拟合函数的命令.多项式函数拟合:a=polyfit(xdata,ydata,n)其中n表示多项式的最高阶数,xdata,ydata为将要拟合的数据,它是用数组的方式输入.输出参数a为拟合多项式y=a1xn+...+anx+a n+1的系数

概率分布的参数估计Matlab matlab 概率密度估计

命令 β分布的参数a和b的最大似然估计值和置信区间函数 betafit格式 PHAT=betafit(X)[PHAT,PCI]=betafit(X,ALPHA)说明 PHAT为样本X的β分布的参数a和b的估计量PCI为样本X的β分布参数a和b的置信区间,是一个2×2矩阵,其第1例为参

蒙特卡洛模拟工具 蒙特卡洛模拟软件

一、解释蒙特卡洛(MonteCarlo)模拟是一种通过设定随机过程,反复生成时间序列,计算参数估计量和统计量,进而研究其分布特征的方法。具体的,当系统中各个单元的可靠性特征量已知,但系统的可靠性过于复杂,难以建立可靠性预计的精确数学模型

分数乘整数与整数乘分数的意义相同吗 分数的意义说课稿

分数乘整数与整数乘分数的意义相同吗重庆市涪陵区实验小学 杨清会《分数乘法》是人教课标版小学数学六年级上册第二单元的内容。第一节分数乘法的教学安排了分数乘整数和分数乘分数以及混合计算三个层次,其中分数乘法(一)讲分数乘整

使用eviews做线性回归分析 f分布表

Glossary:ls(least squares)最小二乘法R-sequared样本决定系数(R2):值为0-1,越接近1表示拟合越好,>0.8认为可以接受,但是R2随因变量的增多而增大,解决这个问题使用来调整Adjust R-seqaured()S.E of regression回归标准误差Log likelihood对

声明:《递推最小二乘参数估计matlab实现 matlab递推最小二乘法》为网友向着太阳迎着光分享!如侵犯到您的合法权益请联系我们删除