关于matlab程序的,就用最简单的语言和例子给我解释出来以及每个句子都是怎么用的.A=[1 1 0;0 1 1;0 0 1];R=100;Q=1*[0 0 0;0 0 0;0 0 1];H=[1 0 0];p(:,:,1)=1*eye(3);s(:,1)=[Trueval(1,1);0;0];for t=2:N;p1(:,:,t)=A*p(:,:,t-1)*A

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/10 23:02:14
关于matlab程序的,就用最简单的语言和例子给我解释出来以及每个句子都是怎么用的.A=[1 1 0;0 1 1;0 0 1];R=100;Q=1*[0 0 0;0 0 0;0 0 1];H=[1 0 0];p(:,:,1)=1*eye(3);s(:,1)=[Trueval(1,1);0;0];for t=2:N;p1(:,:,t)=A*p(:,:,t-1)*A

关于matlab程序的,就用最简单的语言和例子给我解释出来以及每个句子都是怎么用的.A=[1 1 0;0 1 1;0 0 1];R=100;Q=1*[0 0 0;0 0 0;0 0 1];H=[1 0 0];p(:,:,1)=1*eye(3);s(:,1)=[Trueval(1,1);0;0];for t=2:N;p1(:,:,t)=A*p(:,:,t-1)*A
关于matlab程序的,就用最简单的语言和例子给我解释出来以及每个句子都是怎么用的.
A=[1 1 0;0 1 1;0 0 1];
R=100;
Q=1*[0 0 0;0 0 0;0 0 1];
H=[1 0 0];
p(:,:,1)=1*eye(3);
s(:,1)=[Trueval(1,1);0;0];
for t=2:N;
p1(:,:,t)=A*p(:,:,t-1)*A'+Q; %前一时刻X的相关系数
K(:,:,t)=p1(:,:,t)*H'/(H*p1(:,:,t)*H'+R); %卡尔曼增益
s(:,t)=A*s(:,t-1)+K(:,:,t)*(Trueval(:,t)-H*A*s(:,t-1)); %经过滤波后的信号
p(:,:,t)=p1(:,:,t)-K(:,:,t)*H*p1(:,:,t);%t状态下x(t|t)的相关系数
if abs(max(max(p(:,:,t))))>1e10
p(:,:,k)=p(:,:,k)/1000;
end
end

关于matlab程序的,就用最简单的语言和例子给我解释出来以及每个句子都是怎么用的.A=[1 1 0;0 1 1;0 0 1];R=100;Q=1*[0 0 0;0 0 0;0 0 1];H=[1 0 0];p(:,:,1)=1*eye(3);s(:,1)=[Trueval(1,1);0;0];for t=2:N;p1(:,:,t)=A*p(:,:,t-1)*A
close all %关闭开着的文件或程序
clear %清除所有变量
clc %清除commond命令窗口的内容
IN=1:61; %给IN赋值,[1 2 3 4 5 6 … 59 60 61]
sr=zeros(1,61); % sr是1×61的零矩阵,[0 0 0 0 0 … 0]
OUT=sr; % 把矩阵sr赋值给OUT
[X,minx,maxx,T,mint,maxt]=premnmx(IN,OUT); % 对输入和输出函数进行归一化处理,其中:IN为输入数据,OUT为输出数据,X为输入数据转换成的标准数据,minx为输入的最小数据,maxx为输入的最大数据,T为输出数据转换成的标准数据,mint为输出的最小值,maxt为输出的最大值.
q=50; q1=0; q0=70; %赋值
while(q1<q) %当q1<q时,
q=q0; %q=q0
[M,N]=size(X); % M为X的行数;N为X的列数
[L,N]=size(T); %L为T的行数;N为T的列数
net=newff(minmax(X),[q,L],'trainlm'); %建立前馈型网络.其中minmax(X)为输入向量X的最小值和最大值;q为隐含层单元数;L为隐含层层数;tansig 隐含层转移函数;purelin 输出层转移函数;trainlm网络的训练函数
net.trainParam.lr=0.01; %网络学习速率
net.trainParam.epochs=2000; %学习步骤
net.trainParam.goal=1e-5; %学习目标
[net,tr]=train(net,X,T); %对建立好的网络进行训练
Y=sim(net,X); %对输入量X进行仿真,Y为仿真结果
Y=postmnmx(Y,mint,maxt); %对仿真结果进行反归一化
%灰色关联分析,调整网络隐层节点
p=0.3;
e=0.3;
an=repmat(net.b,1,N); %将矩阵net.b复制1×N块,即an由1×N块net.b平铺而成
op=tansig(net.iw*X+an); %
op1=op'; % op1为op的转置
T0=T'; % T0为T的转置
T1=repmat(T0,1,q); %将矩阵T0复制1×q块,即T1由1×q块T0平铺而成
DIF=abs(T1-op1); % T1-op1的绝对值
MIN=min(min(DIF)); %min(DIF),DIF 的最小值
MAX=max(max(DIF)); %max(DIF),DIF 的最大值
Si=(MIN+p*MAX)./(DIF+p*MAX); %计算得到Si
ri=sum(Si)/N;% 求Si的平均值;sum(Si)是对Si进行求和
D=find(ri>=e); %找出数组ri中的所有大于e的元素的位置,并且在向量D中返回非零元素的线性索引.
[q0,q1]=size(D); % q0为D的行数,q1为D的列数
q0=q1; %将q1的值赋给q0
end
q0;
ri;
D;
q=q1; %将q的值赋给q1
1、这是三层网络 2、隐含层由70 个神经元组成 3、输入神经元个数61 输出神经元个数61
这是我自己的理解,因为不知道干什么用所以不知道具体的是什么意思,只能单句理解没法整体掌握,就先分析到这里吧,不知道对错,希望对你有帮助~