灰色预测模型的学习笔记(MATLAB 包含模型的建立 求解 及检验)

本博文是本人在学习灰色预测模型时所做的笔记,原理及代码部分都是基于学习各位大佬的博文,详见后面的参考,
一、 实操,利用灰色预测模型预测未来十年湖南的人口数量
二、 具体实现,从国家统计局获取湖南省过去十年的人口数据,作为原始数据,见Excel文件,利用MATLAB对灰色预测模型进行求解,具体MATLAB实现见如下代码:

%MATLAB 2016a版
clear,clc;
A=xlsread('分省年度数据.xls','$K$5:$B$5');
A=sort(A);
syms a b;
c=[a b]';
B=cumsum(A); % 原始数据累加
n=length(A);
for i=1:(n-1)
C(i)=(B(i)+B(i+1))/2; % 生成累加矩阵
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=2007:2016;
t2=2017:2026;

G;a;b;% 输出预测值,发展系数和灰色作用量
scatter(t1,A,'b');
hold on
plot(2007:2026,G,'r');
xlabel('年份');ylabel('人口数/万人');
title('基于灰色预测模型的未来十年湖南省人口趋势图');
text(2026,7444.6,'7444.6万');
legend('实际人口数量','预测人口数量');
grid on

可以得到如下结果:
由上图可知2016年湖南省人口预测数为7444.6万人
灰色预测模型的检验:

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Lc_知与行

日拱一卒 功不唐捐

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

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

打赏作者

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

抵扣说明:

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

余额充值