QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2908|回复: 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)模型等更适用。* Y2 Y# l( N) ~' Z

    ; X! u. R; }4 a  G1 u3 uVerhulst 模型主要用来描述具有饱和状态的过程, 即 S 形过程,常用于人口预测、生物生长、繁殖预测及产品经济寿命预测等。今年来 中国道路交通事故表现为具有饱和状态的 S 形过程,故可采用 Verhulst 模型对其进行预 测。  X% b0 p( x. f+ f1 C2 b  m# w, w

    " S; d! u$ r2 \4 t2 v3 w1 Verhulst 模型简介
    0 q% F8 g. G$ l1 H  WVerhulst 模型的基本原理和计算方法简介图下
    % G# a9 w1 e" e. i- U) h7 ]) j
    : p6 ^: t' }3 a$ O) E
    : I" `" q) T7 s5 {9 @* y6 a% n4 D( q) ]* T( v: Q! R0 R
    参数列的最小二乘估计0 ^4 u1 R7 ]7 Q8 j

    6 s2 E. Q+ v/ N0 M0 @
    + r' C& \+ q& C% M, s
    / S2 s/ e6 X: U, z  w# o
    : D9 x# Q3 C' V, k; j3 [. p 定理 2       设灰色 Verhulst 模型如上所述,则白化方程的解(时间响应函数)为
    3 ]9 t/ a# |& y+ \/ r  l6 i. C
    / a2 w: |) C' w; X1 s+ z9 E- W
    0 L2 I: z" v- A, h6 I1 W
    灰色 Verhulst 模型的时间响应序列为
    $ V6 d+ J: t8 o. _
    * |% L  z1 S* s* j3 l& E! {# {6 `- B9 q: j3 s, _
    * n& h) b: O; o
    累减还原式为7 q. Y6 H7 t9 v9 G

    ' ]) f, \  d- l! N: {# I- i! l1 F# P% k3 o! l0 D

    $ f* P) K( Z! I3 E  Z  ^2 道路交通事故 Verhulst 预测模型+ _2 f; c; g6 x
    , ]5 e8 D1 D$ ?( S, I% B' A

    6 c% `$ U, [/ G; Y, d0 {/ u
    ; X5 A& R' @& p  h* R1 `1990~2003 年中国道路交通事故死亡人数曲线见图 2,可见曲线呈 S 形,故可建立 Verhulst 模型进行预测,其建模过程如下。
    $ _) F* a+ ]3 }" O
    7 w% f& L* X* q
    ' Y9 {+ ]( k1 ~& U0 S5 Y# U; D; @$ G" z# ]# {  R

    7 P1 g8 t7 c, _, Q
    . R4 J2 V. G5 c1 J3 d
    8 R. H& E- m7 w/ P2 W' g; V% a# z* q
    ' R0 _3 _# H+ `: n( a
    . p) n6 l$ t$ C3 Q0 }
    (7)模型精度检验。
    5 ]5 m/ Q- a/ Y# r6 {- \
    ) U/ s4 f# n8 L2 V一个灰色模型要经过检验才能判定其是否合理。只有通过检 验的模型才能用来进行预测。检验方法有以下几种。: \* W# {0 G) X/ c6 _& w
      q! B' D6 }6 K8 R
    ① 残差合格模型8 Y$ r% w0 d' t+ t' j$ p( w  o
    ) b/ O2 m6 b: _3 |6 g' t" `

    / S* P( y  n9 f4 X
    - r9 T$ s! O: F. k2 {- p) d; y8 ?' ~
    $ O. N. h3 [5 s+ g2 r& f1 o- p  Y& `+ N! f' T
    ② 关联度合格模型! j% u* L! E" z; |7 M! A0 ^

    " r  h1 P1 C5 P7 p; H/ P- P9 a# K, C9 F

    . c# A# `$ R! H7 y# O4 u3 a ③ 均方差比合格模型
    , @7 v, |7 u+ `$ Y
    + c2 g. P$ O' k& W, [6 O+ J' W2 y; i7 {/ F
    , E: e4 P6 A) v) P
    ④ 小误差概率合格模型
    7 Q; z1 I8 F0 j% [& d+ r- L
    $ v; \' R& H6 h8 k5 z( P% l/ P  U# V

      J8 b( K( A* }' z5 K由上可知,给定一组取值,就确定了检验模型精度的一个等级。常用的精度等级见 表 15,可供检验模型参考。一般情况下,最常用的是相对误差检验指标。7 w/ ?* P2 c) _$ [2 C/ N

    ; P$ g  ]9 D3 Y5 x  b2 A; S3 M
    $ X9 z1 g2 O+ A7 M, W
    ' J: Y; _" c# X: S! r由以上检验方法,可得 1990~2003 年中国道路交通事故死亡人数 Verhulst 模型误 差检验值见表 16。" Z  x, ~5 L/ G( r3 m
    # f: z1 t6 K7 o7 a" L) i
    6 I# d% M) |& Q9 p) Z4 b/ Z

    8 [3 }7 o; B( Y
    % I6 o: `) `( e4 W5 N
    1 T( B+ n2 U% j6 n计算的 MATLAB 程序如下:2 x4 \1 ?  t6 C# Y

    3 U1 h7 V8 X' C1 M$ b/ w5 Dclc,clear
    ' C5 b4 W3 Y1 D4 rx1=[4.93 5.33 5.87 6.35 6.63 7.15 7.37 7.39 7.81 8.35. D9 E+ {% A5 ]6 C8 Z
    9.39 10.59 10.94 10.44];, v/ p' k$ q# u) F  @
    n=length(x1);
    # b8 F2 S% G" |+ y0 inian=1990:2003;. w' y* x( k& w# P% o
    plot(nian,x1,'o-');
    8 e- @+ z: C, y, Ux0=diff(x1);
    ; n8 }9 \# Y: A' P! `" r$ x7 xx0=[x1(1),x0]
    - t7 X4 V8 [6 Tfor i=2:n
    1 I0 G: M3 R1 y- n( h* ^3 |    z1(i)=0.5*(x1(i)+x1(i-1));
    # {  c1 y2 T2 z1 Tend
    3 M. o1 S6 N2 }5 B$ A% nz1, O' D9 }; U8 `( q6 b( n, a
    B=[-z1(2:end)',z1(2:end)'.^2]6 _* l6 q- H6 s8 n$ v
    Y=x0(2:end)'  f  G. `/ A4 x% e2 B# h
    abhat=B\Y %估计参数 a,b 的值
    $ K8 U1 O, l! X$ `, _x=dsolve('Dx+a*x=b*x^2','x(0)=x0'); %求解常微分方程1 Q9 ?+ @8 ~( T* X$ K
    x=subs(x,{'a','b','x0'},{abhat(1),abhat(2),x1(1)}); %代入参数值6 J7 Q, F- O' `, w. k8 p
    yuce=subs(x,'t',0:14) %计算预测值
    7 u" k: g0 i* Z/ Idigits(6); x=vpa(x) %显示微分方程的解,为了提高计算精度,把该语句放在计算预测值之后,或者不使用该语句
    - `9 u" s- ?3 H" D; syuce(16)=yuce(15);' e+ t) w' s, @% i
    x1_all=[x1,9.92,10.71];" c8 r3 [2 i( j* k
    epsilon=x1_all-yuce %计算残差
    5 h- _* P, y7 o. ^: u5 bdelta=abs(epsilon./x1_all) %计算相对误差2 |8 U, h2 ?/ L' i9 d! ]% J
    delta_mean=mean(delta) %计算平均相对误差
    % N: d2 t9 y4 M. J$ ~5 hx1_all_0=x1_all-x1_all(1); %数据列的始点零化像
    / B/ o/ s8 q) a2 hyuce_0=yuce-yuce(1); %数据列的始点零化像; s4 ]! _$ ?. f% |; @2 u
    s0=abs(sum(x1_all_0(1:end-1))+0.5*x1_all_0(end));
    + y% G7 \" s6 A% j6 B2 M4 ms1=abs(sum(yuce_0(1:end-1))+0.5*yuce_0(end));
    8 [8 S0 j6 \4 u& n( F" F3 k. ?2 o+ xtt=yuce_0-x1_all_0;
    ( D5 O% A4 _; J  ^: M( b" h: t* h, U3 Zs1_s0=abs(sum(tt(1:end-1))+0.5*tt(end));
    ( K' u' g) R" \5 K/ u+ \" vabsdegree=(1+s0+s1)/(1+s0+s1+s1_s0) %计算灰色绝对关联度
    & Q# V, u* e1 S+ {0 J& o* s8 l; pc=std(epsilon,1)/std(x1_all,1) %计算标准差比值, r- d9 k# Y- B' n7 }; \9 z

    8 y% D) ^5 M* F  Y+ r* x3 预测结果比较
    $ U/ x: ?) x" k7 t- t( J+ I7 ~7 d1 M: k" N5 f0 ~0 [

    0 M7 ~) {" b1 L* O
    * |6 b4 j) F& L+ p5 @0 c. Q6 r6 R
    比较表 16 和表 17 可知,Verhulst 模型预测精度与 GM(1,1)模型几乎没有差别。 计算的 MATLAB 程序如下:
    2 t, M' G0 Y" f  c# {  M3 A/ ?8 U- K5 q2 P- C) v7 \( f( g% `' A/ T
    clc,clear# b6 w# K; z. ^: m* w5 ~4 R
    x1=[4.93 5.33 5.87 6.35 6.63 7.15 7.37 7.39 7.81 8.35
    5 b4 j1 z+ P$ T6 [9.39 10.59 10.94 10.44];
    % m! a4 ?7 q$ Z/ x$ Yn=length(x1);
    $ H3 X, m: q7 s- u) ~0 _9 Cx0=diff(x1);
    " X! A# d& B. ~6 g2 ?; O5 t/ t  Mx0=[x1(1),x0]+ i. O+ r7 r" x$ S# e! T
    for i=2:n
    + j+ S. i/ J3 F0 b3 H, w0 C  N    z1(i)=0.5*(x1(i)+x1(i-1));
    8 s6 |; ^# t8 f8 p1 G! Z2 fend3 {. a! J' S; k) D5 K, _% h, h
    B=[-z1(2:end)',ones(n-1,1)];. }3 w4 b4 k! }) j8 [
    Y=x0(2:end)';4 O" ^9 y4 \# x0 t# A! w
    abhat=B\Y %估计参数 a,b 的值* n) c4 J4 L. h9 }: |# K
    x=dsolve('Dx+a*x=b','x(0)=x0');5 L# }, i/ H4 }1 t3 O: @
    x=subs(x,{'a','b','x0'},{abhat(1),abhat(2),x1(1)});
    4 z2 [& F9 S3 `- myuce=subs(x,'t',0:14) %计算预测值+ i) D3 V: s5 I% y& H8 Q6 \1 n1 L
    digits(6); x=vpa(x) %显示微分方程的解,为了提高计算精度,把该语句放在计算预测
    7 c+ U( k5 |" P$ F值之后,或者不使用该语句
    % D3 h, [/ _  X0 ~0 Q8 S/ x5 y! pyuce(16)=yuce(15);
    6 {% Z: f9 H) t& X+ I7 H6 Lx1_all=[x1,9.92,10.71];6 c- Z8 E$ @, {7 q/ j
    epsilon=x1_all-yuce %计算残差7 J4 C# k2 s/ J6 o2 @+ o2 `% \
    delta=abs(epsilon./x1_all) %计算相对误差. L6 i" d& {# m1 n) a! w
    delta_mean=mean(delta) %计算平均相对误差
    * D% ~# W; Z, s" u; s% D, ?5 w( @( G2 Dx1_all_0=x1_all-x1_all(1); %数据列的始点零化像0 A. ?" U7 C; k: P1 s6 F& ^
    yuce_0=yuce-yuce(1); %数据列的始点零化像
    8 p  S" c7 w6 ~. qs0=abs(sum(x1_all_0(1:end-1))+0.5*x1_all_0(end));
    4 e. C* x1 f' T3 k8 ts1=abs(sum(yuce_0(1:end-1))+0.5*yuce_0(end));4 r. V  s! P/ F+ ^% K
    tt=yuce_0-x1_all_0;1 V! ^1 G% P8 I2 _" M+ N! B+ A" @
    s1_s0=abs(sum(tt(1:end-1))+0.5*tt(end));& _$ H! u1 ?, N: a, P) \
    absdegree=(1+s0+s1)/(1+s0+s1+s1_s0) %计算灰色绝对关联度  T$ \6 a0 S( M1 D0 I/ H( e
    c=std(epsilon,1)/std(x1_all,1) %计算标准差比值2 ^5 L- G# I- l

    3 |- w5 M! r) X, G2 y 4 结语
    , A2 A' \2 \: K5 o道路交通安全系统是一个灰色系统,可以应用灰色系统理论进行研究和分析,其中 灰色预测模型和方法简便易用,在交通事故预测中得到了较多应用。GM(1,1)模型适用 于具有较强指数规律的序列,只能描述单调的变化过程,而 Verhulst 模型则适用于非单 调的摆动发展序列或具有饱和状态的 S 形序列。& y( w* g1 e, y* f/ z) r" o; ?
    ————————————————
    / U' V! Y3 `. ?版权声明:本文为CSDN博主「wamg潇潇」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
      {. g- T; w( o# [' u. L原文链接:https://blog.csdn.net/qq_29831163/article/details/897150391 X- d1 U! w+ @
    ) a+ i- G; T" p- p! E# ?, F2 P
    & X& V6 f( ]+ R) [+ D2 X' {$ T

    $ a1 d5 t" b* j/ \! 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-4-11 21:48 , Processed in 0.433842 second(s), 51 queries .

    回顶部