QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2538|回复: 0
打印 上一主题 下一主题

[建模教程] 灰色系统理论及其应用 (五) :灰色预测

[复制链接]
字体大小: 正常 放大
浅夏110 实名认证       

542

主题

15

听众

1万

积分

  • TA的每日心情
    开心
    2020-11-14 17:15
  • 签到天数: 74 天

    [LV.6]常住居民II

    邮箱绑定达人

    群组2019美赛冲刺课程

    群组站长地区赛培训

    群组2019考研数学 桃子老师

    群组2018教师培训(呼伦贝

    群组2019考研数学 站长系列

    跳转到指定楼层
    1#
    发表于 2020-5-27 15:01 |只看该作者 |倒序浏览
    |招呼Ta 关注Ta |邮箱已经成功绑定
    灰色预测是指利用 GM 模型对系统行为特征的发展变化规律进行估计预测,同时 也可以对行为特征的异常情况发生的时刻进行估计计算,以及对在特定时区内发生事件 的未来时间分布情况做出研究等等。这些工作实质上是将“随机过程”当作“灰色过程”, “随机变量”当作“灰变量”,并主要以灰色系统理论中的 GM(1,1)模型来进行处理。 灰色预测在工业、农业、商业等经济领域,以及环境、社会和军事等领域中都有广 泛的应用。特别是依据目前已有的数据对未来的发展趋势做出预测分析。
    2 L" i( {- n" l$ o7 k
    & w& y# ]& ^0 X6 I1 灰色预测的方法! y, V9 d8 [+ Z- M

    3 z8 N$ h2 X. V
    ) I$ e2 }, D2 `2 y, R1 M; C$ w+ V4 ]
    ; Q" E+ H( G! S% b
    * x$ I) a1 n/ h6 p) J
    2 灰色预测的步骤  e* k, z3 F' p3 ~* k  X( b9 L
    1.数据的检验与处理
    & S$ T. i' R; j3 ^8 w3 s( w9 W& V3 w; P8 k0 y' i* _+ [

    ' m& }$ n" c$ r2 o. O9 K
    6 `2 y: r. P7 ~9 A2.建立模型1 I( v  j! p2 u  H
    按 第1 节中的方法建立模型 GM(1,1),则可以得到预测值
    , U. `! }5 f  \1 z0 ^, Q7 J/ u( c3 M! F5 t$ ^

    : a2 ^2 {6 K$ d/ r% p0 N  C) x5 B+ {& a( L, ^) o: b
    3.检验预测值* Y: J  z! J8 G: ^

    " \, a0 [: \5 m2 q3 e
    0 M  m1 d& I" ~, K8 p; h* u0 S  ^8 j

    4 i, y5 S# v. _8 ?3 q7 k+ X4.预测预报
    : l; j  ], Z9 T/ r8 f由模型 GM(1,1)所得到的指定时区内的预测值,实际问题的需要,给出相应的预测 、预报。
    5 E9 j% w7 E1 w& c" a2 n8 U! M- P( W+ ]- I5 {. k1 N; @
    3 灾变预测$ P) u! H  i6 |# l" N
    上限灾变数列# d( n; E8 ]5 c1 w5 e1 O" V6 [0 c. C$ k
    2 k0 ~- m1 y9 F) O

    & f9 {6 S  @( h& h5 V7 R: k6 \& ]$ P" n0 m# ^- T6 y6 w
    同理,可定义下限灾变数列这个概念。注意,灾变预测不是预测数据本身的大小, 而是预测异常值出现的时间。我们考虑下面这个问题。
    , j% z& @) ]. q  o- ^" u1 F$ n
    9 K  J9 `' X1 R1 \$ g/ `: j例 3 某地区年平均降雨量数据如表 5
    - A8 }! B9 m  g# N# g5 Q! b7 z+ G
    5 [8 s0 L6 D* x. N7 a5 d5 T9 z1 V! F' ?+ K. T
    - c! @1 O& J/ `" n; E" }

    : B) l& k+ {' }  e3 `' Z7 A8 m0 W. _+ O# u: E' f
    由于 22.034 与 17 相差 5.034,这表明下一次旱灾将发生在五年以后。
    ) s' V) y. @7 V# K, ], T+ a: C- u6 e$ R5 b7 O, D% G, Q
    计算的 MATLAB 程序如下:
    ) f* P3 r' C$ T$ q5 [: w# l: p
    * U) h) y. {. ~* d( F3 A( j% F% p/ iclc,clear9 w( g2 c. I/ }1 T' N" U8 w
    a=[390.6,412,320,559.2,: W0 p' L! V6 c
    380.8,542.4,553,310,561,300,632,540,406.2,313.8,576,587.6,318.5]';: i9 z/ i# `  r' Z6 I' O
    t0=find(a<=320);
    : V: `8 V" V$ Y+ `  o4 vt1=cumsum(t0);n=length(t1);/ _* z3 a) _  H) c- V
    B=[-0.5*(t1(1:end-1)+t1(2:end)),ones(n-1,1)];Y=t0(2:end);
    : t! }$ k/ r1 \; {r=B\Y
    : e, _  z6 m- @y=dsolve('Dy+a*y=b','y(0)=y0');' C" B0 {2 Z; A9 r2 ^' Y% O
    y=subs(y,{'a','b','y0'},{r(1),r(2),t1(1)});# b- \( Z2 [$ |# T
    yuce1=subs(y,'t',[0:n+1])1 K1 b! X! \. D7 c+ Q+ e
    digits(6),y=vpa(y) %为提高预测精度,先计算预测值,再显示微分方程的解
    / k+ S7 t+ J& l' }" t' Z  N  Gyuce= diff(double(yuce1))
    ! q  B, ^$ h( b- ?% ?9 K5 m% yuce=diff(yuce1);   % yuce= diff(double(yuce1))
    6 s0 B4 E9 u, tyuce=[t0(1),yuce] 9 g6 X. f# k& M

    ! }3 N# c& X5 O6 {/ U( U  ~/ j5 E4 灰色预测计算实例& S; @4 Y% r& ^; S% S
    例 4 北方某城市 1986~1992 年道路交通噪声平均声级数据见表 6
    ; K; s3 h$ v2 P; r
    ) d5 z' B. R9 n$ j1 w                                             表 6 市近年来交通噪声数据[dB(A)]
    : o, Q6 K: E2 v
    . N8 w7 L* k" e# z4 w! q  W  x* p( I; ^/ D4 Y  g% d: ~: k3 u1 @

    - {' m1 x/ t. ~" a( U. d6 [0 Y- G
    第一步: 级比检验
    / X$ N9 a1 n; U4 a: E9 j& q7 q3 _* t0 d
    建立交通噪声平均声级数据时间序列如下:
    $ E1 V( f  K6 K8 C4 y3 |' O$ R& l
    3 c' i% R, k# W
    : ]+ N1 i) a+ L; n" C
    $ T8 I: Z) B$ u3 {! B2 c/ I% H2 m第二步: GM(1,1)建模8 K6 f3 r7 \# l2 A& M
    ( N! R5 q1 Y2 r
    - p# j5 W: V0 O: {7 C2 r1 }8 ?
    $ d% i6 T% S" c5 Y7 _! Q. W9 O
    . c+ b( w+ a  Z& p4 q1 b

    8 {6 `4 j# N/ w3 r( t
    ! D1 Y7 ]: w, r4 J
    1 n3 R9 m* E4 B: g3 d/ G2 e7 J; `% @0 |6 C3 T  V

    8 F' X9 x; G3 y/ R5 i! C4 u第三步: 模型检验
    9 s$ m5 z- O; k- f
    ! h2 y' s: [! r% C! [2 _7 _2 q模型的各种检验指标值的计算结果见表 7.6 }7 E. v, ^1 r: t( ~; D( M

    6 h6 @- Q( ^3 x" T) U4 e6 \. v3 P9 i' X* X  L% Y. }  l4 i

    ( A2 b6 p: m; F- o0 ^2 ^& c# E- ^+ S% X
    % J2 e7 P5 E$ G5 U$ w" t5 M
    经验证,该模型的精度较高,可进行预测和预报。7 T. c' }% M2 F6 u# O8 W

    9 f( X9 n- g2 Y计算的 MATLAB 程序如下:! ^6 g. b5 Y3 B/ w5 _: L7 H0 D/ M! j

    . Q" s  g0 W7 ?. a( V% kclc,clear
    & r. [: i1 t5 K3 Sx0=[71.1 72.4 72.4 72.1 71.4 72.0 71.6];; g* J! t: J) B$ R# T: M6 b
    n=length(x0);  ^7 g2 n% L7 B/ A
    lamda=x0(1:n-1)./x0(2:n)+ W" L; b$ n& e( G3 @" m2 C' Z
    range=minmax(lamda)9 u3 a5 k( k" \% X1 @- F
    x1=cumsum(x0)9 K$ D8 `. ]( B( V; {  a+ I
    for i=2:n* k" ~8 B3 r- \0 T( J/ W
        z(i)=0.5*(x1(i)+x1(i-1));8 ], }- L; x% P+ _
    end2 n+ K4 H4 ~5 ?8 I, k6 f
    B=[-z(2:n)',ones(n-1,1)];+ E2 J, p$ [# Z' Y4 ]
    Y=x0(2:n)';6 D9 G0 ^4 a+ K/ D  W0 \; \1 H+ E9 Y$ p; Q
    u=B\Y. i" G5 E- O7 A
    x=dsolve('Dx+a*x=b','x(0)=x0');& b. P* }/ B$ z* C* v7 G
    x=subs(x,{'a','b','x0'},{u(1),u(2),x1(1)});
    ' o0 @1 ^4 G7 m5 N* y  ?! Kyuce1=subs(x,'t',[0:n-1]);/ D7 M& U( ~5 [1 f! U0 s1 e
    digits(6),y=vpa(x) %为提高预测精度,先计算预测值,再显示微分方程的解
    " {, `3 l5 J* k6 X1 `yuce=[x0(1),diff(yuce1)]
    . f! s; ~1 `% xepsilon=x0-yuce %计算残差
    ! W. ?3 T0 ?  _% K, Y- g5 j% K; udelta=abs(epsilon./x0) %计算相对误差
    3 p* [1 e" F  P  J# W4 Qrho=1-(1-0.5*u(1))/(1+0.5*u(1))*lamda %计算级比偏差值, Y2 \! [2 P: M$ Z" T1 q

    3 Q/ R; O% I1 w  ?. T7 o' S: {/ |* d) N- [6 F8 T: Q' ?! _

    ! X' D, T# ^& `/ m& h! D————————————————
    3 I6 Y4 P: A& [) ~9 H版权声明:本文为CSDN博主「wamg潇潇」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。4 m6 A) y1 s8 I8 Y
    原文链接:https://blog.csdn.net/qq_29831163/article/details/89714074
    - @, K% R( I6 r4 E8 J/ x4 z+ q+ v+ r1 r. O4 I1 K
    ) l9 O1 e* g2 L0 A. c. j
    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2026-7-29 08:02 , Processed in 0.373552 second(s), 51 queries .

    回顶部