请选择 进入手机版 | 继续访问电脑版

QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 1742|回复: 0

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

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

542

主题

15

听众

1万

积分

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

    [LV.6]常住居民II

    邮箱绑定达人

    群组2019美赛冲刺课程

    群组站长地区赛培训

    群组2019考研数学 桃子老师

    群组2018教师培训(呼伦贝

    群组2019考研数学 站长系列

    发表于 2020-5-28 10:03 |显示全部楼层
    |招呼Ta 关注Ta |邮箱已经成功绑定
    灰色预测是通过原始数据的处理和灰色模型的建立,发现和掌握系统发展规律,对 系统的未来状态作出科学的定量预测。目前应用较多的灰色预测模型是 GM(1,1)模型、 灰色马尔可夫预测模型等,可用于预测交通事故发生次数、死亡人数、受伤人数和财产 损失等指标。GM(1,1)模型适用于具有较强指数规律的序列,只能描述单调的变化过程。但是道路交通系统是一个动态的时变系统,道路交通事故作为道路系统的行为特征量, 具有一定的随机波动性,它的发展呈现某种变化趋势的非平稳随机过程,因此可建立交 通事故灰色马尔可夫预测模型,以提高预测精度。但灰色马尔可夫预测模型的应用难点 是如何进行状态划分,故对于非单调的摆动发展序列或具有饱和状态的 S 形序列, Verhulst 模型,GM(2,1)模型等更适用。
    $ y' w- n! D( m8 u) }9 Q; u/ L
    9 L' K1 Z+ s& lVerhulst 模型主要用来描述具有饱和状态的过程, 即 S 形过程,常用于人口预测、生物生长、繁殖预测及产品经济寿命预测等。今年来 中国道路交通事故表现为具有饱和状态的 S 形过程,故可采用 Verhulst 模型对其进行预 测。
    2 H  K: {1 L. U) U5 Q. L. m4 [
    6 L0 E5 Y6 |' t  l  u0 l1 Verhulst 模型简介. W5 ~6 W! c, t. z9 W. B
    Verhulst 模型的基本原理和计算方法简介图下
    " i' `0 I8 p% {5 r% E* U1 @/ F$ m- N/ a4 F. V/ _  V3 {

    5 o# \/ P: Z8 ], z4 Q
    * o; ~1 a, q9 x+ L( Y+ O  u参数列的最小二乘估计
    8 `, S8 {$ R" l) E; j; }) S! V8 C9 A5 t, d

    2 L6 _, P+ C  U- @; F5 y7 h, q( m" \9 b! a: P, K8 l- t& h

      z7 W4 }1 j8 s 定理 2       设灰色 Verhulst 模型如上所述,则白化方程的解(时间响应函数)为) N, i/ _: ^1 J6 J

    ) n. c" M+ y' J& A( S  U+ b1 r% h$ \3 {1 h8 d

    # D# p8 A6 v: A. U4 ~灰色 Verhulst 模型的时间响应序列为
    $ B: W& M- r: c* }
    ( T+ M1 ~% f1 Y( I! z& G$ Y! O
    4 {6 u) z0 _& q# b, U( ?4 @0 P* d5 r; Q# I9 U9 C
    累减还原式为
    ; E3 l9 k6 O: d/ v1 Z+ ~/ ?( i' _8 W# S

    # [2 s/ }$ Y1 y- i0 l" o  m% i2 H$ S0 Z  P1 u
    2 道路交通事故 Verhulst 预测模型( d% Y- }$ X2 S& g# u
    8 h# Y: T+ K( E0 W" ], b
    1 j+ f! v3 F8 h
    9 P8 o3 q3 R4 \2 i, O+ W
    1990~2003 年中国道路交通事故死亡人数曲线见图 2,可见曲线呈 S 形,故可建立 Verhulst 模型进行预测,其建模过程如下。
    - {; R3 }1 N. Z9 B: w$ a( a; A- _1 j9 r% p# G' G, f

    / U& `. t7 w( n2 i  D3 P( E, S7 }3 G' O; z! w6 G5 S& N
    $ h! n6 o4 k, R7 R
    8 g! O) c5 V& z8 u9 k  q! i

    0 d" D- Z: a( J5 |. W2 c6 F
    ) m+ E7 @6 R, z% l
    0 H9 O  ~% N, _, g, M# d: n9 ~* \8 p: `2 z! n
    (7)模型精度检验。" i0 S- k# ?+ a8 f. k
    - g! `/ ?2 V5 |% X! `" `" g- I7 n
    一个灰色模型要经过检验才能判定其是否合理。只有通过检 验的模型才能用来进行预测。检验方法有以下几种。) S- A( R. Z: }# G- B. X

    ' g* O5 A/ H) \7 ?① 残差合格模型8 A; W. X5 F1 n- Q0 x

    # r) m( c3 Z3 {; B0 z% g; u' b4 h. O$ |5 x  K; I

    2 l: B2 v4 m4 |4 B! O- |( z5 F' i+ h, _& w9 q! r2 U$ S
    . L8 W' u' |: h, F; B* {
    ② 关联度合格模型
    9 I4 L; _" R( @/ Q5 @: q/ e3 Y+ n" {
    ' u& s  }7 Q( q8 l. r4 [

    * z6 K" x6 a4 w0 ?3 L$ f ③ 均方差比合格模型
    9 |" x; Q1 \! G0 ~
    1 J8 k* s0 U7 f' J: g/ w
    + ^' f! V% j1 t
    " Z& z- I) E2 s5 K# E) e$ }④ 小误差概率合格模型# K# D# V2 j  F
    4 Z3 A5 D5 W& T- }/ }
    * c( T: r8 ?4 l

    * l& D, o% L9 C  S: [$ B由上可知,给定一组取值,就确定了检验模型精度的一个等级。常用的精度等级见 表 15,可供检验模型参考。一般情况下,最常用的是相对误差检验指标。
    ) {+ Z8 ]& J( s! D/ p4 y7 }) m& R7 G! l. S& I  S4 p8 E

    + p* m2 s% h# z1 w  W  y5 O& _; Q. a7 t8 Z6 V; R# e2 H
    由以上检验方法,可得 1990~2003 年中国道路交通事故死亡人数 Verhulst 模型误 差检验值见表 16。
    3 L. p* b! e/ D$ P- O9 h* i" Z2 e: l1 N8 ^

    ! z2 n- g/ S& l; D( ^
    0 M7 y( z8 L/ K9 Y: J. k
    3 r! L1 T3 f7 M- }5 o# m
    . |6 s6 g# g/ h5 g6 k计算的 MATLAB 程序如下:
    4 r6 k3 l& b; C7 e/ l! n1 r2 h, w
    + x* V' R6 U& i2 a" c4 g) Tclc,clear( U' ]$ j7 v' O& U
    x1=[4.93 5.33 5.87 6.35 6.63 7.15 7.37 7.39 7.81 8.35+ _( a" p2 ~- X9 ~7 e& f
    9.39 10.59 10.94 10.44];
    5 f  s. K- @4 P2 V5 bn=length(x1);9 O, D9 q$ ?, b
    nian=1990:2003;
    + f. ^; B0 w! _- Wplot(nian,x1,'o-');
    . ~# i8 T* t% ~" S7 K% Mx0=diff(x1);' J5 t- n7 X$ ~3 M: o
    x0=[x1(1),x0]9 M3 n6 c- c9 v! b' C  @6 Q8 O  A
    for i=2:n
    " l. ?2 |! ]) N    z1(i)=0.5*(x1(i)+x1(i-1));
    ; S* c: U1 v7 H2 nend
    5 T- x& G9 h+ l/ K% Jz1( q6 d5 f% c- q, L- F8 _7 Q4 S
    B=[-z1(2:end)',z1(2:end)'.^2]* {, B: d4 b1 F. x$ T
    Y=x0(2:end)'
      l) }: @( y0 i8 k* Y2 iabhat=B\Y %估计参数 a,b 的值' C  D1 y. c0 `$ y/ p1 q! S5 k
    x=dsolve('Dx+a*x=b*x^2','x(0)=x0'); %求解常微分方程
    . W4 p6 i# z; P7 @, T% L3 O9 R" f2 Y$ Nx=subs(x,{'a','b','x0'},{abhat(1),abhat(2),x1(1)}); %代入参数值
    ! g. c9 o/ O4 o0 ~0 I. t4 Jyuce=subs(x,'t',0:14) %计算预测值
    4 o  w" ~: Z/ J; o- Vdigits(6); x=vpa(x) %显示微分方程的解,为了提高计算精度,把该语句放在计算预测值之后,或者不使用该语句- ?8 G# X' S$ v. x% g, K
    yuce(16)=yuce(15);
    , E1 D7 x: t9 L% {) {, _x1_all=[x1,9.92,10.71];6 H- a! |* ~6 z; x; A
    epsilon=x1_all-yuce %计算残差; w: U  I9 C: m" {9 L6 A
    delta=abs(epsilon./x1_all) %计算相对误差6 ?  b0 J: P8 S
    delta_mean=mean(delta) %计算平均相对误差& x( N' i; e/ Q" c5 l4 S' j9 _
    x1_all_0=x1_all-x1_all(1); %数据列的始点零化像* j4 _2 R$ a% Y( a: @- J2 I, D
    yuce_0=yuce-yuce(1); %数据列的始点零化像
    ) b6 ^/ Z3 L+ Q5 ?0 }% }1 p. _s0=abs(sum(x1_all_0(1:end-1))+0.5*x1_all_0(end));
      ?! G. \8 A* O/ S0 @+ r5 [, Zs1=abs(sum(yuce_0(1:end-1))+0.5*yuce_0(end));
    1 _; Z5 I& k; i/ utt=yuce_0-x1_all_0;
    ; w4 i1 `3 X5 d+ k4 t8 ^2 k% t) Ts1_s0=abs(sum(tt(1:end-1))+0.5*tt(end));% f9 d7 @/ L6 [1 X
    absdegree=(1+s0+s1)/(1+s0+s1+s1_s0) %计算灰色绝对关联度
    & o3 p: `0 H1 W2 a, @; }c=std(epsilon,1)/std(x1_all,1) %计算标准差比值; w' S5 s) `: n: f

    , y7 {% f& V4 p1 ?  {( B4 H3 预测结果比较
      S& [0 U) w# V; T' s6 R9 }) S# P  G8 v

    ; W6 _5 T$ E3 b8 m' h
    3 l, S7 N% t8 @4 j4 D  Q# C7 U) o" |- {3 M" i( l/ m0 \
    比较表 16 和表 17 可知,Verhulst 模型预测精度与 GM(1,1)模型几乎没有差别。 计算的 MATLAB 程序如下:
    : g0 \& ]; D6 d+ c3 }: M! ?
    ( I, }: y- r3 T' M6 Tclc,clear
    # l9 z6 h9 b2 Qx1=[4.93 5.33 5.87 6.35 6.63 7.15 7.37 7.39 7.81 8.35, I7 `+ Z( x4 t/ |* u4 L
    9.39 10.59 10.94 10.44];
    ) [1 h5 d, L7 Yn=length(x1);7 }3 _' v( n( c3 w3 i
    x0=diff(x1);
    - ]( r0 s- k  {+ r  y& _x0=[x1(1),x0]
    - X+ n* \: T* |for i=2:n. H+ E! U( \! `, }4 p2 F( M' E& b
        z1(i)=0.5*(x1(i)+x1(i-1));9 K$ [: l  h; p0 I$ J/ O) U
    end
    3 T8 e3 d$ x4 t$ SB=[-z1(2:end)',ones(n-1,1)];* |$ P) c4 S  y9 F7 E; G
    Y=x0(2:end)';
    2 H4 Z" k$ L0 ]1 v& v) ^abhat=B\Y %估计参数 a,b 的值
    * r; |$ A) m# B0 e0 s- ^! K( sx=dsolve('Dx+a*x=b','x(0)=x0');) N9 V2 i7 j8 F" m- C5 `6 P
    x=subs(x,{'a','b','x0'},{abhat(1),abhat(2),x1(1)});
    $ \8 l- k" w$ w4 Tyuce=subs(x,'t',0:14) %计算预测值  P9 [, O* g' p3 N$ f, U/ A
    digits(6); x=vpa(x) %显示微分方程的解,为了提高计算精度,把该语句放在计算预测, x+ _5 d- v1 }& i, p$ j" n
    值之后,或者不使用该语句
    0 q) k7 r$ q6 a  Hyuce(16)=yuce(15);
    # o, V) k$ J+ N  A5 C5 [' ~x1_all=[x1,9.92,10.71];* ~9 X8 g: _! S, [3 w6 j( p( U& J( @- B) a
    epsilon=x1_all-yuce %计算残差
    1 [/ ^: o% J; [! i' Pdelta=abs(epsilon./x1_all) %计算相对误差) u$ X# l4 F  C6 Z
    delta_mean=mean(delta) %计算平均相对误差
    ' j. C! B& s* _  @8 S; R. q3 ?3 i# Bx1_all_0=x1_all-x1_all(1); %数据列的始点零化像6 L" _8 D/ }! ?; @
    yuce_0=yuce-yuce(1); %数据列的始点零化像! G7 Z0 d# D5 g
    s0=abs(sum(x1_all_0(1:end-1))+0.5*x1_all_0(end));8 x" d/ b' J0 @* p6 b- _
    s1=abs(sum(yuce_0(1:end-1))+0.5*yuce_0(end));0 v* v4 u& l, d  `, z; a4 U
    tt=yuce_0-x1_all_0;
    ) E' n3 z" a3 e& A' `s1_s0=abs(sum(tt(1:end-1))+0.5*tt(end));
    ) X/ \3 W) h, Fabsdegree=(1+s0+s1)/(1+s0+s1+s1_s0) %计算灰色绝对关联度
    7 O6 U& S1 v) r5 O+ z% T# S  Kc=std(epsilon,1)/std(x1_all,1) %计算标准差比值
    9 Y; D% e) M. d
    5 r$ d2 ?9 N7 m. B7 w! }1 q 4 结语( j3 u6 Y+ ?. d; \) J
    道路交通安全系统是一个灰色系统,可以应用灰色系统理论进行研究和分析,其中 灰色预测模型和方法简便易用,在交通事故预测中得到了较多应用。GM(1,1)模型适用 于具有较强指数规律的序列,只能描述单调的变化过程,而 Verhulst 模型则适用于非单 调的摆动发展序列或具有饱和状态的 S 形序列。+ W/ Q9 p5 A0 Q" m
    ————————————————
    5 W5 _: S/ z4 l. b& N版权声明:本文为CSDN博主「wamg潇潇」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。$ R# l+ q( @" `: K/ |# R
    原文链接:https://blog.csdn.net/qq_29831163/article/details/89715039: W) i" v; `! Y5 b$ ?7 {" S6 G
    0 i8 F. O) K) f+ c& K# Z( u, x
    % ~2 z4 u* R- z) `2 k4 a* ]
    5 E" u; J5 K4 @! v" v
    zan
    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

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

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

    蒙公网安备 15010502000194号

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

    GMT+8, 2024-4-16 20:09 , Processed in 0.421764 second(s), 51 queries .

    回顶部