QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2471|回复: 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)模型来进行处理。 灰色预测在工业、农业、商业等经济领域,以及环境、社会和军事等领域中都有广 泛的应用。特别是依据目前已有的数据对未来的发展趋势做出预测分析。( O& R) C1 H. ?& A+ e, Q

    & b& c, `$ ~. M; }5 ~) g1 灰色预测的方法( g9 N. P- ~- X, X
    4 Z+ t" W% Z* ]% ?3 f! |: b

    0 C0 Y  [0 z' O  X; j+ {3 Z9 H' X% y5 b

    8 j' t! }9 D1 H) A, G9 y8 \. o8 J) j" _; P! g/ F+ o4 w
    2 灰色预测的步骤8 |5 ]' u0 {! K( @$ v
    1.数据的检验与处理3 E( N* n$ h" I2 o7 P9 \7 O7 h
    : {  Z: l/ `4 S: r! A& x
    & R6 @. n& Q) K+ i3 L; l* T. c0 y
    " q( x1 F5 z3 O  ~$ a( _
    2.建立模型" K  I6 m. ^6 S* Q0 j( x1 R) o( t
    按 第1 节中的方法建立模型 GM(1,1),则可以得到预测值
    $ R: k; e* V3 ]9 n' L* N- t# w
    ( [% \% f: o3 N8 w  N& L
    : [8 j/ s0 Y  i
    4 e6 r" r3 ?3 V# R; c4 x4 @3.检验预测值
    1 @& R  [8 L0 b5 b
    * E$ ?/ y' f* G6 o
    * m* l- x! t; ^3 q; R
    ' o% [6 J  o8 X" |/ ^8 n$ y. T, z
    : o/ |2 Z/ Q# v- E4.预测预报
    # |/ `! u" E9 f( _  j+ @由模型 GM(1,1)所得到的指定时区内的预测值,实际问题的需要,给出相应的预测 、预报。
    , [, Q. C7 [2 C0 W$ i3 @( K
    % \: u: x. A! n3 灾变预测/ v5 E4 @( q0 u1 u
    上限灾变数列
    / F+ n* K& i$ g8 m; I" i* @4 C. t2 B) L% }+ `! K: ?$ U

    6 z' t/ U- r! {3 r
    & c( Z6 c- t1 O  I  I0 g同理,可定义下限灾变数列这个概念。注意,灾变预测不是预测数据本身的大小, 而是预测异常值出现的时间。我们考虑下面这个问题。
    , f; f3 j% g( h
    5 c0 n% l1 a+ E例 3 某地区年平均降雨量数据如表 5
    , w7 [' g' o, I
    2 I. {; p9 V3 }. c) m
    . j4 I# v, M# K& e- l/ K" G  b
    3 z  B! U1 q. j8 T! R% `, e/ h$ B
    - Y9 H' \) d4 v; |. ?* `
    由于 22.034 与 17 相差 5.034,这表明下一次旱灾将发生在五年以后。
    " \% S; P; V4 ?) e9 b" V8 J+ e
    5 t' s8 I# O3 g( C0 p计算的 MATLAB 程序如下:, E" S. j% x; }- G

    : D7 t  W3 M; [: Z! x+ V0 Bclc,clear7 }' v( B! L; Z% Q7 i. H
    a=[390.6,412,320,559.2,/ y1 _: l) X* h: S& m8 I& K' I
    380.8,542.4,553,310,561,300,632,540,406.2,313.8,576,587.6,318.5]';9 g) G0 d: S# M/ Y
    t0=find(a<=320);
    7 s& R  F6 w3 L. G9 v+ ?* x# Kt1=cumsum(t0);n=length(t1);( N; c" o4 @: L) q4 _2 }/ W
    B=[-0.5*(t1(1:end-1)+t1(2:end)),ones(n-1,1)];Y=t0(2:end);5 p0 ?0 y( P( R& X% @
    r=B\Y
    $ I& F/ F0 |; f4 u. o* l, W. Qy=dsolve('Dy+a*y=b','y(0)=y0');; |; M- W  |/ X! N
    y=subs(y,{'a','b','y0'},{r(1),r(2),t1(1)});* i! `# X0 p4 X. S
    yuce1=subs(y,'t',[0:n+1])( P$ \! @  q( Q+ c9 ~3 k  ]
    digits(6),y=vpa(y) %为提高预测精度,先计算预测值,再显示微分方程的解
    1 |  A1 ]  Y) x& k2 H! Kyuce= diff(double(yuce1))
    . `/ a! y. Z) n; r/ ]' J# G% yuce=diff(yuce1);   % yuce= diff(double(yuce1))
    6 S3 y7 L; D7 {yuce=[t0(1),yuce]
    2 H1 d9 B' k  w* w/ J! o' Y- _7 |1 `
    4 灰色预测计算实例
    ! Q) a- c  L3 Z  M& U( p, c例 4 北方某城市 1986~1992 年道路交通噪声平均声级数据见表 6
    : y" e0 H" L2 K5 }5 ?+ O) c6 c* D# u
                                                 表 6 市近年来交通噪声数据[dB(A)]
    8 q4 H- Y7 c8 E! ]. H, w) A
    / g1 R$ s! Q' s8 T7 D
    , T" i' O# q7 G* B" Q$ K7 {: X
    , K$ C: {8 q7 u; h/ H/ A$ ]
    ' |2 y( x: i% a! ]第一步: 级比检验% N% E8 ?" t8 l5 O% C
    3 Z$ ^; p3 @; C7 y
    建立交通噪声平均声级数据时间序列如下:
    8 k% {& U6 p, N6 y- u
    4 t& v" c  @0 E, @" k  c
    ! ]/ A, j9 b& {4 P6 ?$ H$ N
    9 Q, M2 I# ]8 |" e5 G0 c第二步: GM(1,1)建模
    : K/ ]: M; f( z( s
    $ k+ M+ l% ^, @$ N9 h4 L  s# E! K
    5 w& P2 O5 z, x. f$ r) l

    4 O, J% w$ S/ `6 q& o. V  G5 M6 }& I3 U0 x3 {- ]9 ?7 `
    : D) b- \, J) S: ]6 c, `  F7 F
    7 O6 a0 `/ k! W3 v# `+ _# Y

    ; a* ]& r% y' g) j; S5 p! F& v9 h: Q9 N
    第三步: 模型检验
    # J8 Q$ A" Y5 h/ h! E
    $ I( y0 r4 ~" p模型的各种检验指标值的计算结果见表 7.
    - F! u( V9 f9 k8 z7 I, B, |2 v2 H" W/ E5 a( f( `  r
    + z9 e# m& y/ I* d) Q% q* Z

    . U/ @& W" {' ~3 a2 K
    , P' G6 g+ m* m0 S# i3 F) o& O" o4 f, ^
    经验证,该模型的精度较高,可进行预测和预报。
    1 }6 K& K4 Q8 A& `7 Q8 ?1 X6 N% N; Z% A" F9 q* C3 w7 W
    计算的 MATLAB 程序如下:# R5 |. \2 }4 z4 C1 @0 Z

    ! g4 [" @4 u) j" pclc,clear
    0 r9 q* W8 ~8 l' G1 ^: Z2 H1 [) [) tx0=[71.1 72.4 72.4 72.1 71.4 72.0 71.6];
      O& q' S* S6 K' L! \8 E) x- Q/ T2 kn=length(x0);
    9 |" w7 q! g: d6 Dlamda=x0(1:n-1)./x0(2:n)3 S. Q, j% G% f% `6 U! p
    range=minmax(lamda)! Y' p1 v( u, V) T
    x1=cumsum(x0)$ b( Z; y! L( w' _9 z: y" a2 d
    for i=2:n5 b9 r- t3 a3 p. B: t+ W1 l
        z(i)=0.5*(x1(i)+x1(i-1));+ O6 b% u7 g9 b$ P! I" @( [
    end
    6 Q3 U+ t- j( s# nB=[-z(2:n)',ones(n-1,1)];! O+ a5 U( N4 _: p  L: }3 Z7 v
    Y=x0(2:n)';* r0 Q% ]1 a, Q4 E* z
    u=B\Y
    ; \- O/ C3 e2 _- b6 ~x=dsolve('Dx+a*x=b','x(0)=x0');& l; r. x; x; \3 w8 g/ |: @
    x=subs(x,{'a','b','x0'},{u(1),u(2),x1(1)});" o  I* U; q1 z; t8 p& v. P; }. l
    yuce1=subs(x,'t',[0:n-1]);9 i/ b" R2 |9 e! p! C, C
    digits(6),y=vpa(x) %为提高预测精度,先计算预测值,再显示微分方程的解% z* b; t" W) J' P: i
    yuce=[x0(1),diff(yuce1)]+ Y. o0 p( I1 i2 y9 m7 W
    epsilon=x0-yuce %计算残差1 z, u2 P, I& [& a) c8 R8 O, m3 n
    delta=abs(epsilon./x0) %计算相对误差6 H! e" v- ?9 a5 o5 x& V
    rho=1-(1-0.5*u(1))/(1+0.5*u(1))*lamda %计算级比偏差值
    4 z! _( U5 p3 A" U+ r
    7 |% i% o) x4 N2 `( t
    , Z+ @6 T$ S# _+ A  [" q
    $ w7 B' ]3 ^1 T* E, X- w! N% n————————————————, ]" f# B. M0 j0 ~/ [
    版权声明:本文为CSDN博主「wamg潇潇」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。6 K+ N' f, x2 \! n4 R
    原文链接:https://blog.csdn.net/qq_29831163/article/details/89714074) P. q- M5 Q7 y. l4 N0 R9 G, u
    * y% z) @9 d/ s: e6 V4 S$ V

      l8 N2 Z+ N# s2 F
    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-4-12 04:38 , Processed in 0.434028 second(s), 51 queries .

    回顶部