码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 数学建模算法与应用:预测模型(2)灰色预测模型


    目录

    前言

             GM(1,1)预测模型

    1.GM(1,1)模型预测方法 

    2.GM(1,1)模型预测步骤

            (1)数据的检验与处理 

            (2)建立模型 

            (3)检验预测值 

    3.GM(1,1)模型预测实例

     (1)级比检验:建立交通噪声平均声级数据时间序列如下:

     (2)GM(1,1)建模

    (3)模型检验 

    4.MATLAB模型程序 


    前言

            灰色预测的主要特点是模型使用的不是原始数据序列,而是生成的数据序列。其核心体系是灰色模型( Grey Model ,简称 GM ),即对原始数据作累加生成(或其它方法生成)得到近似的指数规律再进行建模的方法。优点是不需要很多的数据,一般只需要4个数据就够,能解决历史数据少、序列的完整性及可靠性低的问题;能利用微分方程来充分挖掘系统的本质,精度高;

             能将无规律的原始数据进行生成得到规律性较强的生成序列,运算简便,易于检验,具有不考虑分布规律,不考虑变化趋势。缺点是只适用于中短期的预测,只适合指数增长的预测。

             GM(1,1)预测模型

            GM(1,1)表示模型是一阶微分方程,且只含1个变量的灰色模型。 

    1.GM(1,1)模型预测方法 

            定义1:已知参考数据列: x^{(0)}=(x^{(0)}(1),x^{(0)}(2),...,x^{(0)}(n)),一次累加生成序列(1-AGO)

    x^{(1)}=(x^{(1)}(1),x^{(1)}(2),...,x^{(1)}(n))=(x^{(0)}(1),x^{(0)}(1)+x^{(0)}(2),...,x^{(0)}(1)+...+x^{(0)}(n))

    2.GM(1,1)模型预测步骤

            (1)数据的检验与处理 

            (2)建立模型 

            (3)检验预测值 

    3.GM(1,1)模型预测实例

     (1)级比检验:建立交通噪声平均声级数据时间序列如下:

    x^{0}=(x^{0}(1),x^{0}(2),...,x^{0}(7))=(71.1,72.4,72.4,72.1,71.4,72.0,71.6)

     (2)GM(1,1)建模

    1)对原始数列x^{(0)}作一次累加,得x^{(1)}=(71.1,143.5,215.9,288,359.4,431.4,503)

             5)求生成序列预测值\widehat{x}^{(1)}(k+1)及模型还原值\widehat{x}^{(0)}(k+1),令k=1,2,3,4,5,6;

    由式(15.7)的时间响应函数可计算得\widehat{x}^{(1)},其中取\widehat{x}^{(1)}(1)=\widehat{x}^{(0)}(1)=x^{(0)}(1)=71.1,

    由\widehat{x}^{(0)}(k+1)=\widehat{x}^{(1)}(k+1)-\widehat{x}^{(1)}(k),取k=1,2,3,4,5,6,得

            \widehat{x}^{(0)}=(\widehat{x}^{(0)}(1),\widehat{x}^{(0)}(2),...,\widehat{x}^{(0)}(7))=(71.1,72.4,72.2,72.1,71.9,71.7,71.6) 

    (3)模型检验 

             经验证,该模型的精度较高,可以进行预测和预报。

    4.MATLAB模型程序 

     代码如下,所示:

    1. x0=[71.1 72.4 72.4 72.1 71.4 72.0 71.6]'; %注意这里为列向量
    2. n=length(x0);
    3. lamda=x0(1:n-1)./x0(2:n) %计算级比
    4. range=minmax(lamda') %计算级比的范围
    5. x1=cumsum(x0) %累加运算
    6. B=[-0.5*(x1(1:n-1)+x1(2:n)),ones(n-1,1)];
    7. Y=x0(2:n);
    8. u=B\Y %拟合参数u(1)=a,u(2)=b
    9. syms x(t)
    10. x=dsolve(diff(x)+u(1)*x==u(2),x(0)==x0(1)); %求微分方程的符号解
    11. xt=vpa(x,6) %以小数格式显示微分方程的解
    12. yuce1=subs(x,t,[0:n-1]); %求已知数据的预测值
    13. yuce1=double(yuce1); %符号数转换成数值类型,否则无法作差分运算
    14. yuce=[x0(1),diff(yuce1)] %差分运算,还原数据
    15. epsilon=x0'-yuce %计算残差
    16. delta=abs(epsilon./x0') %计算相对误差
    17. rho=1-(1-0.5*u(1))/(1+0.5*u(1))*lamda' %计算级比偏差值,u(1)=a

     结果:

    1. lamda =
    2. 711/724
    3. 1
    4. 724/721
    5. 103/102
    6. 119/120
    7. 180/179
    8. range =
    9. 711/724 103/102
    10. x1 =
    11. 711/10
    12. 287/2
    13. 2159/10
    14. 288
    15. 1797/5
    16. 2157/5
    17. 503
    18. u =
    19. 50/21333
    20. 15476/213
    21. xt =
    22. 31000.0 - 30928.9*exp(-0.00234379*t)
    23. yuce =
    24. 1 至 5 列
    25. 711/10 4996/69 9174/127 10738/149 9203/128
    26. 6 至 7 列
    27. 4519/63 13239/185
    28. epsilon =
    29. 1 至 5 列
    30. 0 -29/5051 1523/9300 121/3681 -472/947
    31. 6 至 7 列
    32. 790/2927 89/2353
    33. delta =
    34. 1 至 5 列
    35. 0 13/163931 89/39347 18/39481 67/9598
    36. 6 至 7 列
    37. 17/4535 41/77612
    38. rho =
    39. 1 至 5 列
    40. 62/3061 25/10679 -11/6077 -61/8199 171/16049
    41. 6 列
    42. -36/11137
    43. >>
  • 相关阅读:
    大二学生JavaScript实训大作业——动漫秦时明月7页 期末网页制作 HTML+CSS+JavaScript 网页设计实例 企业网站制作
    Docker | 镜像浅析,以及制作自己的镜像
    Power BI 傻瓜入门 8. 制作数据模型
    用孙子兵法的智慧指导数据安全工作
    磁盘空间满问题排查方法
    ChatGPT是否可以协助人们提高公共演讲和表达能力?
    dumpbin工具的使用
    数据挖掘可视化+机器学习初探
    齐岳定制|TCO-PEG-Ovalbumin|反式环辛烯-聚乙二醇-卵清蛋白|TCO-PEG-卵清蛋白
    CentOS 7离线安装MySQL 5.6
  • 原文地址:https://blog.csdn.net/weixin_69250798/article/details/125536539
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号