2021-02-03美赛前MATLAB的学习笔记(灰色预测、线性规划)

上午和半个下午在补昨天的坑,今天等下有工作,看了看神经网络用于大的数据集,所以不看了,小波分析是在降噪方面的方法,也不用了,所以只看一下灰色预测。、

灰色预测

灰色预测是在灰色模型基础上的。灰色模型Grey Model,又称为灰色理论,通用于大量和少量数据的预测。

众多灰色系统中,以单序列一阶线性微分方程模型GM(1,1)模型最为常用。

GM(1,1)原理

设有原始数据
x ( 0 ) = ( x ( 0 ) ( 1 ) , x ( 0 ) ( 2 ) , . . . , x ( 0 ) ( n ) ) x^{(0)}=(x^{(0)}{(1)},x^{(0)}{(2)},...,x^{(0)}{(n)}) x(0)=(x(0)(1),x(0)(2),...,x(0)(n))

1.去除波动性,累加前t项得
x ( 1 ) ( t ) = ∑ i = 1 t x ( 0 ) ( i ) x^{(1)}(t)=\sum_{i=1}^tx^{(0)}(i) x(1)(t)=i=1tx(0)(i)
2.对 x ( 1 ) ( t ) x^{(1)}(t) x(1)(t)建立一阶线性微分方程
d x ( 1 ) d t + a x ( 1 ) = u \frac {dx^{(1)}} {dt}+ax^{(1)}=u dtdx(1)+ax(1)=u

a叫发展系数,u叫灰色作用量

然后通过构造均值生成矩阵(用 0.5 ( x ( 1 ) ( 1 ) + x ( 1 ) ( 2 ) ) 0.5(x^{(1)}(1)+x^{(1)}(2)) 0.5(x(1)(1)+x(1)(2))代入上式, 对应的y是 ( x ( 0 ) ( 2 ) (x^{(0)}(2) (x(0)(2)),以此构造线性方程组,通过最小二乘法求解

这是个简洁有效的方法

不说了直接贴代码吧根据

clear
syms a;
syms b;
c=[a b];
A=[89677,99215,109655,120333,135823,159878,182321,209407,246619,300670];
B=cumsum(A);
n=length(A);
for i=1:(n-1)
	C(i)=0.5*B(i)+0.5*B(i+1);
end
D=A;
D(1)=[];//自动忽略空行

D=D'
E=[-C;ones(1,n-1)];
c=inv(E*E')*E*D;
c=c';
a=c(1);
b=c(2);

F=[];F(1)=A(1);
for i=2:(n+10)
	F(i)=(A(1)-b/a)/exp(a*(i-1))+b/a;
end
G=[];
G(1)=A(1);
for i=2:(n+10)
	G(i)=F(i)-F(i-1);
end
t1=1999:2008;
t2=1999:2018;
plot(t1,A,'o',t2,G)

cumsum

逐个累加,第i项是前i项和

线性规划

这个之前学过一点lingo 所以详见lingo

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

萧易风船长

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值