QQ登录

只需要一步,快速开始

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

[建模教程] 灰色系统理论及其应用 (七) :道路交通事故灰色 Verhulst 预测模型

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

542

主题

15

听众

1万

积分

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

    [LV.6]常住居民II

    邮箱绑定达人

    群组2019美赛冲刺课程

    群组站长地区赛培训

    群组2019考研数学 桃子老师

    群组2018教师培训(呼伦贝

    群组2019考研数学 站长系列

    跳转到指定楼层
    1#
    发表于 2020-5-28 10:03 |只看该作者 |正序浏览
    |招呼Ta 关注Ta |邮箱已经成功绑定
    灰色预测是通过原始数据的处理和灰色模型的建立,发现和掌握系统发展规律,对 系统的未来状态作出科学的定量预测。目前应用较多的灰色预测模型是 GM(1,1)模型、 灰色马尔可夫预测模型等,可用于预测交通事故发生次数、死亡人数、受伤人数和财产 损失等指标。GM(1,1)模型适用于具有较强指数规律的序列,只能描述单调的变化过程。但是道路交通系统是一个动态的时变系统,道路交通事故作为道路系统的行为特征量, 具有一定的随机波动性,它的发展呈现某种变化趋势的非平稳随机过程,因此可建立交 通事故灰色马尔可夫预测模型,以提高预测精度。但灰色马尔可夫预测模型的应用难点 是如何进行状态划分,故对于非单调的摆动发展序列或具有饱和状态的 S 形序列, Verhulst 模型,GM(2,1)模型等更适用。
    ( G% a: ~2 n& F7 t( E
    ' o( ~' I2 G0 KVerhulst 模型主要用来描述具有饱和状态的过程, 即 S 形过程,常用于人口预测、生物生长、繁殖预测及产品经济寿命预测等。今年来 中国道路交通事故表现为具有饱和状态的 S 形过程,故可采用 Verhulst 模型对其进行预 测。* e. d* s. l: L# T: M* m

    6 G( ~5 m6 S% Q$ R1 Verhulst 模型简介
    1 E0 n( E9 G, P" O" |Verhulst 模型的基本原理和计算方法简介图下: x! ^) R5 A8 e3 e3 C' o- e# Z2 Y
    , w3 D# ], I& T9 p8 |

    5 S' g1 Z+ O& o( s5 r
    ; z% K1 W( }0 {) o( ^1 r参数列的最小二乘估计- h1 i7 n1 l. C

    1 d; W1 z0 N; n/ |  H- u* A' f+ w- N, [: u$ m
    9 O+ t' K7 \) o1 s/ t! q
    8 ]* p: I" p, Y
    定理 2       设灰色 Verhulst 模型如上所述,则白化方程的解(时间响应函数)为
    % O1 d+ u* v7 ~# s) b
    , u, |  S: }1 j% Y) _5 P' _4 u+ f8 J. t% ^

    / i& w2 E: ~- p7 i1 r灰色 Verhulst 模型的时间响应序列为
    7 O2 J. V/ q9 P0 P7 I1 c! I7 k0 z. g$ Z7 h1 D' U4 T' H, M& O  C

    7 t1 A1 V' g; y7 b
    ; {  @4 x& P- x% f$ C9 W累减还原式为9 b0 v$ P; _7 s& ~- \% J! V
    1 d+ k% E4 _& K

    % m8 t+ K8 j- @6 t6 \  y9 t  k  j0 O2 H
    2 道路交通事故 Verhulst 预测模型" |- E; X$ V( M) o2 ?3 L
    1 V6 t5 ]& ?8 i1 _
    % A. |. o+ Z" s. y( ~6 P
    $ h. D; }. a, b3 ^; B& Q
    1990~2003 年中国道路交通事故死亡人数曲线见图 2,可见曲线呈 S 形,故可建立 Verhulst 模型进行预测,其建模过程如下。
    * C, E' ~0 @/ Y% \* V
    ; g1 D$ s! U1 f1 s; n3 v, Q8 C4 v( Y" y
    6 W+ n7 L2 d5 a) W: d* W
    / x$ g/ A- @" d" L

    ! a; Y8 u" y. ^0 p: G/ ~+ C; {0 x/ R0 o4 {# |5 h6 r% \
    1 k. \9 e- ~+ I0 s9 H$ J2 U1 F
    ; m- @( e2 h# W  E

    1 C; ^, z. @7 B$ _( ~5 h: Y. T2 }(7)模型精度检验。- X2 D# V- d# T' F  ]0 R7 l

    - k" F+ e& ^  F2 w  u/ i% a8 a一个灰色模型要经过检验才能判定其是否合理。只有通过检 验的模型才能用来进行预测。检验方法有以下几种。/ q/ Z, z7 T3 p0 U( [. r1 c- }
    ( Z; E0 w* Q1 Z  l
    ① 残差合格模型- i( x- A1 ]- H' N1 D' U! |# y
    5 n4 s" o  Q0 ^1 k! E

    $ F! o. o7 Q1 ]4 F5 S" W% k/ @: Q& d& C+ c4 E0 f8 i  P

    6 E" }- D5 d: z+ H. m2 f4 U
    : P# e) c. Q, c5 a4 ~# u- ~② 关联度合格模型
    9 a: U2 e& w4 d, W& e
    " n4 ~1 a$ ?; q; t; e
    + X! D& M  D' {' E. J) z
    8 }2 s3 ]8 W: D* \8 o ③ 均方差比合格模型9 S2 w& R* P5 s% P% R) g

    . A* W. n6 ?9 o# ?  L* J" ^! k7 K- O9 E: j
    & y( I! `7 f- D2 z+ ]5 P  `) b
    ④ 小误差概率合格模型
    ! r: k* ^! C/ b9 N3 l
    / P: C2 T4 d! @$ G8 S. O: `7 f: e0 V# e8 J+ B( `
    4 y/ a0 w( N' s9 L
    由上可知,给定一组取值,就确定了检验模型精度的一个等级。常用的精度等级见 表 15,可供检验模型参考。一般情况下,最常用的是相对误差检验指标。
    ; ?6 F6 _( H# f. L+ o# I+ ]
    * Z* z+ C( W$ L6 P
    ( }( G1 _( `% m" |8 \1 \/ d
    6 b4 \5 r. q  a$ S- U) g由以上检验方法,可得 1990~2003 年中国道路交通事故死亡人数 Verhulst 模型误 差检验值见表 16。# w3 \. L  A& Q0 `" r. O8 N7 ^

    + L6 [) f$ D3 H' H! r9 k- Y
      l7 ^5 ]  D" Z8 Y( U) R( \: A3 C  N

    ; z: X) x* M3 `8 _3 V3 E4 t/ W: n8 ~! D; r! T
    计算的 MATLAB 程序如下:
    6 N3 R3 z) V% p; Y% k: Q* m2 E& z( \/ s' E5 C+ R
    clc,clear! N5 T/ ^2 ^: o5 d7 c
    x1=[4.93 5.33 5.87 6.35 6.63 7.15 7.37 7.39 7.81 8.35# O, V" j3 X' z. T) {% {
    9.39 10.59 10.94 10.44];
    + E9 t  L7 h( f# r% w. q+ u5 P  F' s+ zn=length(x1);9 E; k6 i  [7 i) D# ^  B5 R
    nian=1990:2003;7 I+ h& o: r! _+ x, R
    plot(nian,x1,'o-');. k* G7 i7 T6 J) ^+ m$ y8 `
    x0=diff(x1);: x: j* D/ u; [% L
    x0=[x1(1),x0]! D4 Q+ E1 o4 C8 V7 [
    for i=2:n9 t% s: D5 ~7 X2 q
        z1(i)=0.5*(x1(i)+x1(i-1));
    0 J) Z, G# ^% j) c8 b5 [end5 H2 `: e8 C) f9 W' g5 I* Y! w
    z1$ v7 F5 t  Q2 y& b
    B=[-z1(2:end)',z1(2:end)'.^2]& {3 v3 t4 z. q3 h! P. D2 ?
    Y=x0(2:end)'
    ) ?% Q' y+ z5 c; p4 I% o7 Wabhat=B\Y %估计参数 a,b 的值6 w% n% z" c8 k! {
    x=dsolve('Dx+a*x=b*x^2','x(0)=x0'); %求解常微分方程+ |; a  C/ Q+ O& P0 n
    x=subs(x,{'a','b','x0'},{abhat(1),abhat(2),x1(1)}); %代入参数值3 V6 ?  h. T4 H: L
    yuce=subs(x,'t',0:14) %计算预测值
    ) X; @: ]0 Y" Z) Zdigits(6); x=vpa(x) %显示微分方程的解,为了提高计算精度,把该语句放在计算预测值之后,或者不使用该语句, M: O! y# X6 W$ m
    yuce(16)=yuce(15);* Z9 z9 ?  S% G; @/ C3 ?
    x1_all=[x1,9.92,10.71];9 k3 b- W* D/ c% a' I: c( l
    epsilon=x1_all-yuce %计算残差3 \. o$ g, j* I1 h$ d; v3 |
    delta=abs(epsilon./x1_all) %计算相对误差
    - g% V1 ^2 c. E" L3 {" T. M' ydelta_mean=mean(delta) %计算平均相对误差2 s  t4 `7 R, b2 c' p: x% P
    x1_all_0=x1_all-x1_all(1); %数据列的始点零化像
    ; V$ V  p: E; \& oyuce_0=yuce-yuce(1); %数据列的始点零化像
    4 J3 }2 R4 f; ]  L6 h% Ts0=abs(sum(x1_all_0(1:end-1))+0.5*x1_all_0(end));
    7 ~& e, v( Q. Z( E0 ^/ \s1=abs(sum(yuce_0(1:end-1))+0.5*yuce_0(end));
    ; U5 x: h( P0 \* B4 ltt=yuce_0-x1_all_0;
    & |( p% f* N2 @) d$ O7 Fs1_s0=abs(sum(tt(1:end-1))+0.5*tt(end));0 a: a, n: C  G2 o; [- O8 K
    absdegree=(1+s0+s1)/(1+s0+s1+s1_s0) %计算灰色绝对关联度  r% X% F1 v( I6 p
    c=std(epsilon,1)/std(x1_all,1) %计算标准差比值5 w- i" }- V% P, U
      P& J4 \4 `, A2 u$ ?+ t, j
    3 预测结果比较# q3 O) L! M2 u, J" y
    3 h1 w, k0 S3 N% W9 S; S

    6 N7 w/ c: i2 P1 `5 `2 D+ q. f# i; w; W9 N' I. u

    ) z3 o7 T( ~, V/ V比较表 16 和表 17 可知,Verhulst 模型预测精度与 GM(1,1)模型几乎没有差别。 计算的 MATLAB 程序如下:. n  z! }! h2 x: X, _& M; e7 w  m
    8 t" ?% K5 f, Q) j
    clc,clear3 H( F( Q; ?$ [
    x1=[4.93 5.33 5.87 6.35 6.63 7.15 7.37 7.39 7.81 8.35
    9 v1 ?& Q9 |6 K6 V$ r; W1 L9.39 10.59 10.94 10.44]; ( d5 c0 I, H9 w0 }& k) |( s, C
    n=length(x1);
    6 E2 h+ F  |5 q3 z5 B* S7 _x0=diff(x1);
    . g0 s* v1 F: q# Z  H+ Ix0=[x1(1),x0]8 T% M( x2 u$ f+ S8 o$ j+ W2 j
    for i=2:n
    + q+ H0 u, f8 z: s8 [" R    z1(i)=0.5*(x1(i)+x1(i-1));
    ! P' L0 d! Q, g" D, ~" x# mend
    # }/ u. o5 R- eB=[-z1(2:end)',ones(n-1,1)];# e$ h6 g( K( I/ V2 `
    Y=x0(2:end)';
    6 B3 B! {' G# ]' d% y9 U; cabhat=B\Y %估计参数 a,b 的值: i$ s& H6 M! u! x$ f
    x=dsolve('Dx+a*x=b','x(0)=x0');
    9 Q" |& z* M5 w& i/ C! j% {x=subs(x,{'a','b','x0'},{abhat(1),abhat(2),x1(1)});
    2 N+ |8 K7 s7 m* @yuce=subs(x,'t',0:14) %计算预测值: h% O" }# a+ r5 Y
    digits(6); x=vpa(x) %显示微分方程的解,为了提高计算精度,把该语句放在计算预测1 k- N6 P* V! Y0 y! o
    值之后,或者不使用该语句  n: O8 ^4 j! q9 P: O& Y( N- l
    yuce(16)=yuce(15);! X2 v5 Y; ^9 }, }+ @2 Z- o4 B8 M
    x1_all=[x1,9.92,10.71];
    / d1 I* x3 A0 Z, e2 vepsilon=x1_all-yuce %计算残差
    , ]% O: I3 A- p- Mdelta=abs(epsilon./x1_all) %计算相对误差& W5 B; F* ]7 B" d
    delta_mean=mean(delta) %计算平均相对误差9 L& r6 k3 v$ z$ l. W! m, s
    x1_all_0=x1_all-x1_all(1); %数据列的始点零化像
    5 N* |$ v6 ~7 r0 cyuce_0=yuce-yuce(1); %数据列的始点零化像
    # V9 i/ O& w! e& Is0=abs(sum(x1_all_0(1:end-1))+0.5*x1_all_0(end));
    & r6 a* R# y; x. }7 Ds1=abs(sum(yuce_0(1:end-1))+0.5*yuce_0(end));
    2 X! g7 ~4 y4 T" ?tt=yuce_0-x1_all_0;/ C* c( _6 y% m# e# n2 ?2 [
    s1_s0=abs(sum(tt(1:end-1))+0.5*tt(end));
    : Q8 l2 K! I: Z9 x) J' X% }) Eabsdegree=(1+s0+s1)/(1+s0+s1+s1_s0) %计算灰色绝对关联度; j# I. D: U, @# w0 P( D, N& t
    c=std(epsilon,1)/std(x1_all,1) %计算标准差比值0 c4 u/ }6 |/ a

    ( @+ t8 R1 m) W+ K7 Z- [ 4 结语
      E5 I$ y+ d$ ?. H道路交通安全系统是一个灰色系统,可以应用灰色系统理论进行研究和分析,其中 灰色预测模型和方法简便易用,在交通事故预测中得到了较多应用。GM(1,1)模型适用 于具有较强指数规律的序列,只能描述单调的变化过程,而 Verhulst 模型则适用于非单 调的摆动发展序列或具有饱和状态的 S 形序列。
    % y) n# I7 o& L, Z1 v# \————————————————& B% ^0 X# G" ^# O5 Q! d
    版权声明:本文为CSDN博主「wamg潇潇」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
    : r" C8 k; e$ d! o* X( k原文链接:https://blog.csdn.net/qq_29831163/article/details/89715039/ V) _9 m/ ^' ]1 S. Y1 a; h+ f

    * R9 ~" B& l( \8 l0 f
    7 t$ W/ Q( N( i4 T
    & ]& d% p% R. R; z/ f" d
    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-6-11 23:42 , Processed in 0.388561 second(s), 51 queries .

    回顶部