ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

数学建模-灰色预测模型基本原理及其编程实现

2021-08-01 20:58:05  阅读:322  来源: 互联网

标签:累减 灰色 数列 基本原理 编程 建模 累加 邻值 生成


目录



一、灰色生成序列

在这里插入图片描述

1.累加生成

在这里插入图片描述
在这里插入图片描述
表示第一次累加生成第k个数据
在这里插入图片描述

表示原始数列的前i个数据相加
比如说我们的原始数列是[1,3,5,7,9]
第一个数就是1,第二个数是1+3,第三个数是1+3+5
那么数列就是[1,4,9,16,25]

举例:

在这里插入图片描述
在这里插入图片描述

累加生成的特点

在这里插入图片描述
左边是原始数据,很难用来做预测,右边是经过一次累加变成有规律的

我们通过一次累加作图,对后边的某个时间的销量做出预测,然后再通过一次累减,求出真正的预测值

2.累减生成

在这里插入图片描述比如x(1)为[1,4,9,16,25],
x(0)第一个数字和x(1)的相同,第二个等于4-1,第三个等于9-4,第四个等于16-9,第五个等于25-16
x(0)为[1,3,5,7,9]

累减生成计算实例

在这里插入图片描述

我们可以从
在这里插入图片描述

在这里插入图片描述

对比看出,把德尔塔t看成1,他们两个格式是一样的,所以累减生成具有求导的性质,
但是他又不是导数,因为导数德尔塔t是趋近于0的,而x(0)(k)中的一直是1
他是灰导数,只是假的,虚拟的,近似的导数

3.加权邻值生成

在这里插入图片描述
z(0)(k)这个数列就是邻值除以2,把系数0.5提出去就可以看出来,相当于就是求了个均值

二、灰色模型GM(1,1)

在这里插入图片描述

在这里插入图片描述
由累减有求导的性质可知d(k)可近似看成dy/dx的形式
一阶微分方程是什么:

在这里插入图片描述
在这里插入图片描述
z(1)(k)我们可以求出来,因为他就是一个邻值生成数

x(0)(k)是原始数列我们也可以求出来,所以只有a和b是未知数,

两个未知数一般需要两个方程就可以求出来。例如图中我们给出的时刻表,我们在平常解决问

题也不可能只给我们两个点,一般都是多于两个。那么我们就存在多余的方程,因为我们只有

两个未知数,不需要这么多方程。
那么怎么求多余解?
这个时候要用到最小二乘思想
我们引入矩阵向量u就是我们要求的a和b,Y是原始数列,B是邻值生成数

在这里插入图片描述

我们光求出这个因为k是一个点一个点的离散的,只能带入已知的数字符合这个式子,不能预测,所以我们要想预测必须要让式子和时间有一个关系,所以就按照上图所说,把连续的k作为t

三、灰色预测的步骤

1.第一步

一定要进行级比检验,不进行级比检验就不满足微分方程建模的理论依据

解题的时候,一定要加上一句话,经过级比检验,本文选择了灰色预测模型。

在这里插入图片描述
因为有的数据不能用灰微分方程来构建,如果贸然用灰微分方程来处理,就比较容易出现问题,所以要检验和处理

2.第二步

在这里插入图片描述

3.第三步

在这里插入图片描述

四、案例分析

在这里插入图片描述

解题:
在这里插入图片描述

在这里插入图片描述
可得

在这里插入图片描述
在这里插入图片描述

标签:累减,灰色,数列,基本原理,编程,建模,累加,邻值,生成
来源: https://blog.csdn.net/weixin_49053303/article/details/119293274

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有