
灰⾊理论预测模型
灰⾊理论
通过对原始数据的处理挖掘系统变动规律,建⽴相应微分⽅程,从⽽预测事物未来发展状况。
优点:对于不确定因素的复杂系统预测效果较好,且所需样本数据较⼩;
缺点:基于指数率的预测没有考虑系统的随机性,中长期预测精度较差。
灰⾊预测模型
在多种因素共同影响且内部因素难以全部划定,因素间关系复杂隐蔽,可利⽤的数据情况少下可⽤,⼀般会加上修正因⼦使结果更准确。
灰⾊系统是指“部分信息已知,部分信息未知“的”⼩样本“,”贫信息“的不确定系统,以灰⾊模型(G,M)为核⼼的模型体系。
灰⾊预测模型建模机理
灰⾊系统理论是基于关联空间、光滑离散函数等概念,定义灰导数与会微分⽅程,进⽽⽤离散数据列建⽴微分⽅程形式的动态模型。
灰⾊预测模型实验
以sin(pi*x/20)函数为例,以单调性为区间检验灰⾊模型预测的精度
通过实验可以明显地看出,灰⾊预测对于单调变化的序列预测精度较⾼,但是对波动变化明显的序列⽽⾔,灰⾊预测的误差相对⽐较⼤。究其原因,灰⾊预测模型通过AGO累加⽣成序
列,在这个过程中会将不规则变动视为⼲扰,在累加运算中会过滤掉⼀部分变动,⽽且由累加⽣成灰指数律定理可知,当序列⾜够⼤时,存在级⽐为0.5的指数律,这就决定了灰⾊预测对
单调变化预测具有很强的惯性,使得波动变化趋势不敏感。
本⽂所⽤测试代码:
1clc
2clearall
3%本程序主要⽤来计算根据灰⾊理论建⽴的模型的预测值。
4%应⽤的数学模型是GM(1,1)。
5%原始数据的处理⽅法是⼀次累加法。
6x=[0:1:10];
7x1=[10:1:20];
8x2=[0:1:20];
9y=sin(pi*x/20);
10n=length(y);
11yy=ones(n,1);
12yy(1)=y(1);
13fori=2:n
14yy(i)=yy(i-1)+y(i);
15end
16B=ones(n-1,2);
17fori=1:(n-1)
18B(i,1)=-(yy(i)+yy(i+1))/2;
19B(i,2)=1;
20end
21BT=B';
22forj=1:n-1
23YN(j)=y(j+1);
24end
25YN=YN';
26A=inv(BT*B)*B五一口号 T*YN;
27a=A(1);
28u=A(2);
29t=u/a;
30t_test=5;%需要预测个数
31i=1:t_test+n;
32yys(i+1)=(y(1)-t).*exp(-a.*i)+t;
33yys(1)=y(1);
34forj=n+t_test:-1:2
35ys(j)=yys(j)-yys(j-1);
36end
37x=1:n;
38xs=2:n+t_test;
39yn=ys(2:n+t_test);
40det=0;
41fori=2:n
42det=det+abs(yn(i)-你上我下 y(i));
43end
44det=det/(n-1);
45
46subplot(2,2,1),plot(x,y,'^r-',xs,yn,'b-o'),title('单调递增'),legend('实测值','预测值');
47disp(['百分绝对误差为:',num2str(det),'%']);
48disp(['吃什么补气补血最见效 预测值为:',num2str(ys(n+1:n+t_test))]);
49
50
51%递减
52y1=sin(pi*x1/20);
53n1=length(y1);
54yy1=ones(n1,1);
55yy1(1)=y1(1);
56fori=2:n1
57yy1(i)=yy1(i-1)+y1(i);
58end
59B1=ones(n1-1,2);
60fori=1:(n1-1)
61B1(i,形容家乡的词语 1)=-(yy1(i)+yy1(i+1))/2;
62B1(i,2)=1;
63end
64BT1=B1';
65forj=1:n1-1
66YN1(j)=y1(j+1);
67end
68YN1=YN1';
69A1=inv(BT1*B1)*BT1*YN1;
70a1=A1(1);
71u1=A1(2);
72t1=u1/a1;
73t_test1=5;%需要预测个数
74i=1:t_test1+n1;
75yys1(i+1)=(y1(1)-t1).*exp(-a1.*i)+t1;
76yys1(1)=y1(1);
77forj=n1+t_test1:-1:2
78ys1(j)=yys1(j)-yys1(j-1);
79end
80x21=1:n1;
81xs1=2:n1+t_test1;
82yn1=ys1(2:n1+t_test1);
83det1=0;
84fori=2:n1
85det1=det1+abs(yn1(i)-y1(i));
86end
87det1=det1/(n1-1);
88
89subplot(2,2,2),plot(x1歌颂祖国的诗 ,y1,'^r-',xs1,yn1,'b-o'),title('单调递增'),legend('实测值','预测值');
90disp(['百分绝对误差为:',num2str(det1),'%']);
91disp(['预测值为:',num2str(ys1(n1+1:n1+t_test1))]);
92
93%整个区间
93%整个区间
94y2=sin(pi*x2/20);
95n2=length(y2);
96yy2=ones(n2,1);
97yy2(1)=y2(1);
98fori=2:n2
99yy2(i)=yy2(i-1)+y2(i);
100end
101B2=ones(n2-1,2);
102fori=1:(n2-1)
103B2(i,1)=-(yy2(i)+yy2(i+1))/2;
104B2(i,2)=1;
105end
106BT2=B2';
107forj=1:n2-1
108YN2(j)=y2(j+1);
109end
110YN2=YN2';
111A2=inv(BT2*B2)*BT2*YN2;
112a2=A2(1);
113u2=A2(2);
114t2=u2/a2;
115t_test2=5;%需要预测个数
116i=1:t_test2+n2;
117yys2(i+1)=(y2(1)-t2).*exp(-a2.*i)+t2;
118yys2(1)=y2(1);
119forj=n2+t_test2:-1:2
120ys2(j)=yys2(j)-y棺材铺的老板娘 ys2(秃子头上的虱子 j-1);
121end
122x22=1:n2;
123xs2=2:n2+t_test2;
124yn2=ys2(2:n2+t_test2);
125det2=0;
126fori=2:n2
127det2=det2+abs(yn2(i)-y2(i));
128end
129det2=det2/(n2-1);
130
131subplot(2,1,2),plot(x2,y2,'^r-',xs2,yn2,'b-o'),title('全区间'),legend('实测值','预测值');
132disp(['百分绝对误差为:',num2str(det2),'%']);
133disp(['预测值为:',num2str(ys2(n2+1:n2+t_test2))]);
本文发布于:2023-03-18 10:07:54,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/zhishi/a/1679105275147639.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:灰色模型.doc
本文 PDF 下载地址:灰色模型.pdf
| 留言与评论(共有 0 条评论) |