%灰色预测模型GM(1,n)模型的matlab源代码,包括预测模型的建立,以及模型的精度检验指标c,p的计算

%假设预测3步,N=3

%如在命令窗口键入:

%gm=ycgm1n([1.6,1.7,2,1.8,1.9],[2,2.4,3,3.2,3.1],[3,3.1,3.2,3.5,2.8],3)

function GM=ycgm1n(data1,data2,data3,N) %data1:纵摇,data2:升沉,data3:波浪

T=length(data1);

PYX1=data1;

PYX2=data2;

PYX3=data3;

%进行数据预处理,这里用初值化

X0_1=PYX1./PYX1(1);

X0_2=PYX2./PYX2(1);

X0_3=PYX3./PYX3(1);

%用AGO生成一阶累加生成模块

X1_1(1)=X0_1(1);

X1_2(1)=X0_2(1);

X1_3(1)=X0_3(1);

for i=2:T

X1_1(i)=X1_1(i-1)+X0_1(i);

X1_2(i)=X1_2(i-1)+X0_2(i);

X1_3(i)=X1_3(i-1)+X0_3(i);

end

%构造累加矩阵B

for i=1:T-1

M1(i)=(0.5*(X1_1(i)+X1_1(i+1)));

M2(i)=(0.5*(X1_2(i)+X1_2(i+1)));

M3(i)=(0.5*(X1_3(i)+X1_3(i+1)));

end

B1=zeros(T-1,3);

for i=1:(T-1)

B1(i,1)=-M1(i); %-(X1_1(i)+X1_1(i+1)))/2;

B1(i,2)=X1_2(i+1);

B1(i,3)=X1_3(i+1);

end

B2=zeros(T-1,2);

for i=1:(T-1)

B2(i,1)=-M2(i); %-(X1_2(i)+X1_2(i+1)))/2;

B2(i,2)=X1_3(i+1);

end

B3=zeros(T-1,2);

for i=1:(T-1)

B3(i,1)=-M3(i); %-(X1_3(i)+X1_3(i+1)))/2;

B3(i,2)=1;

end

save B1 B1;

save B2 B2;

save B3 B3;

%构造常数项向量Y

for i=2:T

Y1(i-1)=X0_1(i);

Y2(i-1)=X0_2(i);

Y3(i-1)=X0_3(i);

end

HCS1=inv(B1'*B1)*B1'*Y1'; %用最小二乘法求灰参数HCS1

H1=HCS1'; %H1=[a,b2,b3]

HCS2=inv(B2'*B2)*B2'*Y2'; %用最小二乘法求灰参数HCS2

H2=HCS2'; %H2=[a,b3]

HCS3=inv(B3'*B3)*B3'*Y3'; %用最小二乘法求灰参数HCS3

H3=HCS3'; %H3=[b,a]

%计算出X3的累加序列

for i=1:T+N

YCX13(i)=(X0_3(1)-H3(2)/H3(1))*exp(-1*H3(1)*(i-1))+H3(2)/H3(1);

end

for i=2:T+N

% K(i)=XR1(i)-XR1(i-1);

YCX0_3(i)=YCX13(i)-YCX13(i-1);

end

YCX0_3(1)=X0_3(1);

%对参数作alpha,beta变换

H2=H2./(1+0.5*H2(1));

%还原计算出X2的预测值

YCX0_2(1)=X0_2(1);

for i=2:T

YCX0_2(i)=H2(2).*X1_3(i)-H2(1).*X1_2(i-1);

end

YCX12(T)=X1_2(T);

for i=T+1:T+N

YCX0_2(i)=H2(2).*YCX13(i)-H2(1).*YCX12(i-1);

YCX12(i)=YCX0_2(i)+YCX12(i-1);

end

%对参数作alpha,beta变换

H1=H1./(1+0.5*H1(1));

%还原计算出X1的预测值

YCX0_1(1)=X0_1(1);

for i=2:T

YCX0_1(i)=H1(2).*X1_2(i)+H1(3).*X1_3(i)-H1(1).*X1_1(i-1);

end

YCX11(T)=X1_1(T);

for i=T+1:T+N

YCX0_1(i)=H1(2).*YCX12(i)+H1(3).*YCX13(i)-H1(1).*YCX11(i-1);

YCX11(i)=YCX0_1(i)+YCX11(i-1);

end

%数据还原

GM=YCX0_1; %.*PYX1(1);

save GM GM;

e0(1,T-1)=zeros;

for i=1:T-1 %求X1到X5的残差值e0

e0(i)=(X0_1(i+1)-YCX0_1(i+1))/X0_1(i+1); %1-YCX0_1(i+1)/X0_1(i+1);

end

save e0 e0;

e0_

python灰色预测模型_GM(1,n)(灰色模型代码)相关推荐

  1. 灰色预测模型【GM(1,1)模型】 【matlab代码】

    灰色系统介绍 灰色系统是由华中科技大学的邓聚龙教授于80年代初创立,该系统作为新兴的横断学科,在短短的二十年里已得到了长足的发展. 其已经成为社会,经济,科教,科技等很多领域进行预测,决策,评估,规划 ...

  2. 2023年数学建模国赛:灰色预测模型与MATLAB实战案例(Matlab代码)

    订阅专栏后9月比赛期间会分享思路及Matlab代码 灰色预测模型(Gray Forecast Model, GM)是一种基于少量.不完全的信息建立数学模型并进行预测的方法.在实际问题解决.制定发展战略 ...

  3. Python 调用 SCIP 求解器的选址模型代码示例

    本文介绍 Python 语言调用 SCIP 求解器,求解选址模型的代码示例. 安装 SCIP 和 PySCIPOpt 安装 SCIP 求解器的教程: SCIP | 数学规划求解器SCIP超详细的使用教 ...

  4. 【数学建模常用算法】之灰色预测模型GM

    作者:張張張張 github地址:https://github.com/zhanghekai [转载请注明出处,谢谢!] 文章目录 一.灰色预测模型GM(1,1) 1.数据检验与数据预处理 1.1 构 ...

  5. 数学建模系列-预测模型(一)灰色预测模型

    目录 1 灰色预测模型 1.1 灰色系统的定义与特点 1.2 灰色预测模型优缺点 1.3 灰色生成数列 1.4 灰色模型GM(1,1)实操步骤 1 数据检验 2 构建灰色模型 3 检验预测值 4 灰色 ...

  6. VTK+Python学习 ① 官方教程学习:渲染模型,监听模型事件,多个渲染视窗,渲染多个模型,与渲染模型交互,模型拉伸变换

    一.利用VTK渲染模型 1.1 VTK渲染模型流程: ① 模型数据导入 # 获取一个Cone(圆锥)模型 cone = vtkConeSource() ② 数据通过Mapper转换为几何图元 # 创建 ...

  7. 用python建立gm(1、1)模型_灰色预测模型GM(1,1)的全面讲解及python实现

    1. 灰色预测的概念 (1)灰色系统.白色系统和黑色系统 白色系统是指一个系统的内部特征是完全已知的,既系统信息是完全充分的. 黑色系统是一个系统的内部信息对外界来说是一无所知的,只能通过它与外界的联 ...

  8. 【Python】实训8:企业所得税回归模型(Pearson相关系数、Lasso、灰色预测模型、SVR)

    题目来源: <Python数据分析与应用>第8章 财政收入预测分析 实训部分(注意:我目前看的版本此章节错误较多) [ 黄红梅.张良均主编 中国工信出版集团和人民邮电出版社] 本博客题目内 ...

  9. 数学建模——灰色预测模型Python代码

    数学建模--灰色预测模型Python代码 """ Spyder Editor This is a temporary script file. ""& ...

  10. python灰色预测_灰色系统预测GM(1,1)模型

    预备知识 (1)灰色系统 白色系统是指系统内部特征是完全已知的:黑色系统是指系统内部信息完全未知的:而灰色系统是介于白色系统和黑色系统之间的一种系统,灰色系统其内部一部分信息已知,另一部分信息未知或不 ...

最新文章

  1. Android Notification状态栏通知
  2. python计算机视觉编程调试问题
  3. [译]如何在C#中调试LINQ查询
  4. 人工智能(9)---人工智能的发展趋势是什么?人工智能的行业应用
  5. pytorch扩展——如何自定义前向和后向传播
  6. oracle 归档日志激增,一次归档日志激增的分析.
  7. Linux设备驱动简析—PC重启源码分析
  8. 根据两点经纬度计算距离和角度——java实现
  9. Netty自带的心跳机制——IdleStateHandler
  10. JS中 post和get的区别
  11. 网页播放器的使用(ckplayer)
  12. HSC-1th 2022 Writeup
  13. 数据分析应关注AARRR模型的哪些指标
  14. Windows 10 build Error !include: could not find: ****StdUtils.nsh
  15. 阿里云体验--搭建超级小班课网课系统
  16. Tomcat单机多实例配置
  17. P014魔改8G显存
  18. 自学python(2):利用opencv实现读图,显示,画框,裁剪的python代码
  19. 在线教育平台的数据分析——用户的地域分布
  20. Apache ShardingSphere-JDBC基本教程

热门文章

  1. JS实现图片验证码功能
  2. 【机器学习系列】之“西瓜数据集”决策树构建数学公式计算过程
  3. VS2013官方下载地址
  4. java新手代码翻译成中文_急!老师让我把以下代码翻译成中文的
  5. 擦黑板特效表白H5源码+非常浪漫/附BGM
  6. 百度网盘不限速下载软件 Pan Download下载不了,创建文件失败的解决办法
  7. 详解CAN 2.0协议
  8. java线程生命周期的图示以及文字说明
  9. gif怎么分解成图片呢?
  10. 专题:固体力学中应力与应变分析详解(1.应力分析 2.符号 3.一般的三维应力场)