我现在在做RBF神经网络k-means算法与RLS递归二乘法结合训练,求哪位大神能给个RLS的算法的MTALAB程序

我现在在做RBF神经网络k-means算法与RLS递归二乘法结合训练,求哪位大神能给个RLS的算法的MTALAB程序,第1张

直接用广义RBF网络我感觉比较方便,而且可以直接用newgrnn(P,T,spread)函数。

RLS算法的MATLAB程序在附件,你可以参考下。

小二乘大约是1795年高斯在他那星体运动轨道预报工作中提出的[1]。后来,最小二乘法就成了估计理论的奠基石。由于最小二乘法结构简单,编制程序也不困难,所以它颇受人们重视指或,应用相当广泛。

如用标准符号,最小二乘估计可被表示为:

AX=B (2-43)

上式中的解是最小化 ,通过下式中的伪逆可求得:

A'笑逗源AX=A'B (2-44)

(A'A)^(-1)A'AX=(A'A)^(-1)A'B (2-45)

由于

(A'A)^-1A'A=I (2-46)

所以有

X=(A'A)^(-1)A'B (2-47)

此即最小二乘的一次完成算法,现代的递推算法碰态,更适用于计算机的在线辨识。

最小二乘是一种最基本的辨识方法,但它具有两方面的缺陷[1]:一是当模型噪声是有色噪声时,最小二乘估计不是无偏、一致估计;二是随着数据的增长,将出现所谓的“数据饱和”现象。针对这两个问题,出现了相应的辨识算法,如遗忘因子法、限定记忆法、偏差补偿法、增广最小二乘、广义最小二乘、辅助变量法、二步法及多级最小二乘法等。

1、如果仿真一个传递函数的阶锋氏跃、脉衫散冲等响应,可以直接使用matlab函数。

2、如果是一个复银塌散杂的系统,需要使用matlab中的Simulink工具箱。

3、仿真方法,仿真(s+1)/(2s^2+2s+1)的阶跃响应

num=[1 1]

den=[2 2 1]

f=tf(num,den)

Transfer function:

s + 1

2 s^2 + 2 s + 1

>>step(f)

这样就可以得到它的响应曲线。

format long

tp=input('tp=')

toc=input('toc=')

a0=input('a0=')

a1=input('a1=')

a2=input('a2=')

toe=input('toe=')

M0=input('M0=')

a=input('长半径a=')

deltan=input('卫星平均角速度之差deltan=')

e=input('e=')

w=input('w=')

Cuc=input('Cuc=')

Cus=input('Cus=')

Cic=input('Cic=')

Cis=input('Cis=')

Crc=input('Crc=')

Crs=input('Crs=')

i0=input('i0=')

I=input('轨道倾角变化率I=')

OM0=input('OM0=')

OM=input('升交点赤径变化率OM=')

tt=a0+a1*(tp-toc)+a2*(tp-toc)

t=tp-tt

tk=t-toe

u=3986005*10^8

n0=sqrt(u/a^3)

n=n0+deltan

Mk=M0+n*tk

Dk=1

Ek=0

n1=0

while abs(Ek-Dk)>0.0000000001

n1=n1+1

Ek=Dk

Dk=Mk+e*sin(Ek)

end

Ek=Dk

Vk=atan(sqrt(1-e*e)*sin(Ek)/(cos(Ek)-e))

if sin(Ek)>0 &cos(Ek)-e<0

Vk=pi-Vk

elseif sin(Ek)<0 &cos(Ek)-e<0

Vk=pi+Vk

elseif sin(Ek)<0 &cos(Ek)-e>0

Vk=2*pi-Vk

end

Faik=Vk+w

SigmaU=Cuc*cos(2*Faik)+Cus*sin(2*Faik)

SigmaR=Crc*cos(2*Faik)+Crs*sin(2*Faik)

SigmaI=Cic*cos(2*Faik)+Cis*sin(2*Faik)

Uk=Faik+SigmaU

Rk=a*(1-e*cos(Ek))+SigmaR

Ik=i0+SigmaI+I*tk

X0=Rk*cos(Uk)

Y0=Rk*sin(Uk)

we=7.29211567*10^(-5)

OMK=OM0+(OM-we)*tk-we*toe

Xk=X0*cos(OMK)-Y0*cos(Ik)*sin(OMK)

Yk=X0*sin(OMK)+Y0*cos(Ik)*cos(OMK)

Zk=Y0*sin(Ik)

disp(['卫星钟差改正dt=',num2str(tt)])

disp(['归化时刻tk=',num2str(tk)])

disp(['平均运行角速度n=',num2str(n)])

disp(['卫宏纳星平近点角Mk=',num2str(Mk)])

disp(['偏近点角Ek=',num2str(Ek)])

disp(['真近点角Vk=',num2str(Vk)])

disp(['升交距角Faik=',num2str(Faik)])

disp(['摄动改正迟绝谈项SigmaU=',num2str(SigmaU)])

disp(['摄动改正项SigmaR=',num2str(SigmaR)])

disp(['摄动改正项SigmaI=',num2str(SigmaI)])

disp('经过摄动改正项:')

disp(['升交距角Uk=',num2str(Uk)])

disp(['卫星矢径Rk=',num2str(Rk)])

disp(['轨道倾角Ik=',num2str(Ik)])

disp('卫星在轨道平面码碰坐标系的坐标')

disp(['X0=',num2str(X0)])

disp(['Y0=',num2str(Y0)])

disp(['观测时刻升交点经度OMK=',num2str(OMK)])

disp('卫星在地心固定坐标系中的直角坐标')

disp(['Xk=',num2str(Xk)])

disp(['Yk=',num2str(Yk)])

disp(['Zk=',num2str(Zk)])


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12380694.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存