《灰色关联代码.docx》由会员分享,可在线阅读,更多相关《灰色关联代码.docx(2页珍藏版)》请在优知文库上搜索。
1、%该程序用于灰色关联分析,其中原始数据的第一行为参考序列,1至15行为正相关序列,16至17为负相关序列clc,clearloadx.txt%把原始数据存放在纯文本文件x.txt中%如果全为正相关序列,则将两个循环替换为下列代码%fori=l:size(x,l)%x(i,=x(i,勃x(i,l);%endfori=l:15x(i,=x(i)x(i,l);%标准化数据endfori=16:17x(i,:)=x(i,l)./x(i,:);%标准化数据enddata=x;n=size(data,l);ck=data(分离参考序列bj=data(2:n,:);m1=size(bj,l);forj=l:
2、mlt(jv)=bj(j)k;endjc1=min(min(abs(t);jc2=max(max(abs(t);rho=0.5;%灰色关联度为0.5ksi=(jc1+rho*jc2).(abs(t)rho*jc2);r=sum(ksi,)size(ksi,2);r%灰色关联度向量Irs,rind=sort(r,descend,)%对关联度进行降序排序%该函数用于灰色预测模型,其中x为列向量,alpha一般取0.5,将第一个数据视为序号为0,k从0开始的序号矩阵functiony=huiseyuce(x,alpha,k)n=length(x);xl=cumsum(x);fori=2:nzl(i)=alpha*xl(i)+(l-alpha)*xl(i-l);endzl=z;B=-z1(2:n),ones(n-1,1);Y=x0(2:n);ab=BY;y1=(x(1)-ab(2)ab(1)*exp(-ab(1)*k)+ab(2)ab(1);%产生预测累加生成序列y=x(l)diff(yl)%产生灰色预测数据