QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2986|回复: 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)模型等更适用。
    ! P, |7 e. ~: z7 i$ D8 G0 A7 l) C  L: O- I& o2 j4 \! e
    Verhulst 模型主要用来描述具有饱和状态的过程, 即 S 形过程,常用于人口预测、生物生长、繁殖预测及产品经济寿命预测等。今年来 中国道路交通事故表现为具有饱和状态的 S 形过程,故可采用 Verhulst 模型对其进行预 测。
    ) T) E: A( E5 K3 Y8 j
    - r6 m( \3 F, Z1 Verhulst 模型简介
    & F& a; U# c- R: z- q& n( ?( Q/ j5 NVerhulst 模型的基本原理和计算方法简介图下
    3 r& B  ?& u3 L, f# i5 H: i: n6 s, `! j/ {% c% ]! r

    ! i) c4 l% Z. o* I4 z1 H
    1 Y  S( s# _: E  }( h9 a参数列的最小二乘估计
    6 |+ @# u- U" c! C% P& f6 G5 ^1 [

    4 P% V' L3 ~  ~/ Y6 l+ j9 \4 ^' W  i* w, w
    8 W" B; O% w/ N7 p+ R, h; y, _. C
    定理 2       设灰色 Verhulst 模型如上所述,则白化方程的解(时间响应函数)为
    ; i( Z1 b; o2 I* s7 P" s
    6 |" y& P' B* N
    3 y$ g6 T# M! y9 |+ U
    . o- j4 @# s  w- @$ ]+ V7 l灰色 Verhulst 模型的时间响应序列为2 [! p7 w5 F2 F: P

    " a, C) V* n0 t  f. a8 n3 ?. t

    + l: T( B8 o# V5 C# g+ k累减还原式为# z/ x7 q; j8 H2 [* Z+ K  p8 Y, b
    0 i% \- F0 ^: [0 \
      y9 t% @* U* ^4 c4 o* r$ m" R
    # C2 C. j6 m/ l2 \0 h1 U% y+ [
    2 道路交通事故 Verhulst 预测模型3 A; o! b. v7 _- D% S

    * e: I0 T# h# \1 A4 i- y$ Y! B/ @6 V$ D

    9 c3 F: a. t( r/ _$ v; c! g" |1990~2003 年中国道路交通事故死亡人数曲线见图 2,可见曲线呈 S 形,故可建立 Verhulst 模型进行预测,其建模过程如下。
    2 ?4 ^- ^& L. \2 g4 B6 J$ v3 s0 @. x5 N5 C

    * l+ E7 t7 }+ }. _5 d7 Y9 V8 U$ W- q8 r, k$ [1 w9 m* m' m; S
    4 G$ o3 d1 _) Q6 `; _) A
    & s- O* Q7 C7 {6 p2 k( \

    1 @! u3 C* ^" Q7 f5 ]! h/ J2 U1 D
    1 C, b# v8 O3 L
    9 e" w* W* L7 k
    ) o. ^' f+ A* R4 u(7)模型精度检验。
    # K% k( \# {6 d4 d8 ~5 ~" z- s. k! [5 F8 [+ b
    一个灰色模型要经过检验才能判定其是否合理。只有通过检 验的模型才能用来进行预测。检验方法有以下几种。2 ]& q. y* R. `  s9 j" W6 @& _8 g$ ~8 T

    * a9 J, p* ~( @6 @' G1 }① 残差合格模型5 K1 i; Z' i$ Y- I& W

    / d+ p; o% |" R* |7 {4 J; n% e- {4 {- P/ }3 a

    & ]) l7 V, K( y, J8 A( q
    ! ?0 a& F* B+ y: w, Z4 u: ]
    % ^% S$ }4 K* q" L! @, A② 关联度合格模型$ E/ r8 `+ Y- a+ e6 G" a
    9 `8 u0 @& V" N5 `& S

    * ?# J0 C' i! [. y8 s* M. Z( Y' v4 q  i
    ③ 均方差比合格模型
    ( @* P( N" m- a# H- k( J/ c
    & [2 c! s) M8 a) D) U" W6 Y0 y6 Z! d/ y# J) K. p7 B, P* p

    : y8 c  \: C$ v5 H④ 小误差概率合格模型
    ) J" e8 F" i0 r4 _& l, R
    2 A. |8 v2 d' V7 ^) K: O. v* T3 z4 ^3 x- Q

    + G8 P5 Y3 A' U: y2 @( A由上可知,给定一组取值,就确定了检验模型精度的一个等级。常用的精度等级见 表 15,可供检验模型参考。一般情况下,最常用的是相对误差检验指标。
    " c# s2 s3 c& m9 M8 S, Y, G1 s
    " y8 [- n* _0 ^" F  p  C% ?8 M
    . c% J- T! ?0 B' W1 |+ c' F+ r3 Q9 |% z, t* Z4 H" n2 d5 b& g0 \! j* y
    由以上检验方法,可得 1990~2003 年中国道路交通事故死亡人数 Verhulst 模型误 差检验值见表 16。+ N1 a& w8 p2 r* J: }# T) C. j
    : F  w$ ?( i: p; C' @& J
    . U2 k+ h1 R4 ?- ?6 W  O

    4 Y9 [) m0 g3 e; C9 M1 m2 ?2 X9 ?1 t0 ^5 _: M2 v

    $ i2 |  |+ e! z  X3 P2 u计算的 MATLAB 程序如下:
    ( Q) O* q, ^# k5 d$ n% `
    0 m6 I5 A; \; `# Wclc,clear
    . ^2 O) F8 d$ U: ax1=[4.93 5.33 5.87 6.35 6.63 7.15 7.37 7.39 7.81 8.35+ H: r! Q1 \" l" q
    9.39 10.59 10.94 10.44];
    2 h! i- S1 H: r* M$ {2 yn=length(x1);
    0 q* n) i5 E3 [! D7 P% b% Vnian=1990:2003;
    7 a1 X6 u5 u# X- j4 j1 @3 hplot(nian,x1,'o-');3 L+ g5 J2 c% T4 o
    x0=diff(x1);
    3 I2 C3 V- y8 _: Yx0=[x1(1),x0]' R: z' K( b. ~
    for i=2:n
    9 `$ v) h$ |6 |0 I4 z    z1(i)=0.5*(x1(i)+x1(i-1));0 l$ a/ ^" h1 c0 v/ h
    end/ d1 G& m6 k1 e3 O* }5 a4 P
    z17 R0 G# _# @8 e1 @
    B=[-z1(2:end)',z1(2:end)'.^2]
    + H0 L8 b. O- q$ Z# G! rY=x0(2:end)'( Q/ c- Q; x/ x
    abhat=B\Y %估计参数 a,b 的值
    ( A9 g; `( b" j+ qx=dsolve('Dx+a*x=b*x^2','x(0)=x0'); %求解常微分方程# Y  ]; C+ [. I# ^7 j
    x=subs(x,{'a','b','x0'},{abhat(1),abhat(2),x1(1)}); %代入参数值  V# m) r% Y3 U2 s/ m
    yuce=subs(x,'t',0:14) %计算预测值# j: |3 i4 z1 p& F/ m( G2 ~! C
    digits(6); x=vpa(x) %显示微分方程的解,为了提高计算精度,把该语句放在计算预测值之后,或者不使用该语句! a6 L+ {+ P. D, E7 @/ [
    yuce(16)=yuce(15);
    " b5 L4 _; a/ T  S" q1 tx1_all=[x1,9.92,10.71];
    5 n" V; `; A1 o7 b, r+ Kepsilon=x1_all-yuce %计算残差/ \4 _( W: h9 k
    delta=abs(epsilon./x1_all) %计算相对误差
    , V; l1 y% ^3 |* d5 u1 ddelta_mean=mean(delta) %计算平均相对误差
      ]3 m* p. Y# m0 Y1 j% Lx1_all_0=x1_all-x1_all(1); %数据列的始点零化像
    # |  i( G9 a+ w7 ^" h; l/ C4 O  l2 wyuce_0=yuce-yuce(1); %数据列的始点零化像
      r# O5 c, ?; r- Us0=abs(sum(x1_all_0(1:end-1))+0.5*x1_all_0(end));
    ( B. W8 k" h7 x3 Gs1=abs(sum(yuce_0(1:end-1))+0.5*yuce_0(end));, a- J8 F( M' [9 Y5 x
    tt=yuce_0-x1_all_0;+ W/ p+ O7 Q0 S" o1 p2 B/ l2 N, q3 `
    s1_s0=abs(sum(tt(1:end-1))+0.5*tt(end));5 B/ t  ?5 \& `6 e
    absdegree=(1+s0+s1)/(1+s0+s1+s1_s0) %计算灰色绝对关联度
    1 d$ g  B$ l+ }) Z' A* Vc=std(epsilon,1)/std(x1_all,1) %计算标准差比值2 {) c4 [5 F/ L5 p# m7 Q' u

    / ]/ B. q& ]. b9 ~, m6 S3 预测结果比较
    & ?" i4 D8 I* d; P
    , c  h/ K: r7 h0 Z8 l6 W. P+ l* f1 [) o/ z
    ! C% }8 U" G8 [. |/ B+ `

    ' Y& [) E7 K5 \$ o比较表 16 和表 17 可知,Verhulst 模型预测精度与 GM(1,1)模型几乎没有差别。 计算的 MATLAB 程序如下:8 r1 K9 N/ @4 D9 B* U. d
    ' ~/ M3 n' b& }$ s: u
    clc,clear4 v8 @' n  ^7 K: d) k# N8 @' v% o
    x1=[4.93 5.33 5.87 6.35 6.63 7.15 7.37 7.39 7.81 8.35; [* L& X4 v& k8 k; b8 b+ J
    9.39 10.59 10.94 10.44];
    4 P4 n  c$ {  G7 Qn=length(x1);! R, I& R5 @! I" y& C! p
    x0=diff(x1);
    0 ~+ Q; \9 x( Q/ x3 Z1 Zx0=[x1(1),x0]
    : v( E3 k. q2 ffor i=2:n8 q+ t" {+ r8 }% N6 L& ?9 W; T
        z1(i)=0.5*(x1(i)+x1(i-1));
    2 e& f+ K. u/ P* U0 Iend
    ( u1 B+ p! ]' H' w2 uB=[-z1(2:end)',ones(n-1,1)];
    1 x' y* T4 P7 k5 q' ^Y=x0(2:end)';
    ' l5 K- _2 h0 H  t; Xabhat=B\Y %估计参数 a,b 的值
    # v& e; `7 P9 p" J5 g5 x: O& Xx=dsolve('Dx+a*x=b','x(0)=x0');# H! G! A) ?4 j9 [* d% k
    x=subs(x,{'a','b','x0'},{abhat(1),abhat(2),x1(1)});& y1 `! y8 R6 _
    yuce=subs(x,'t',0:14) %计算预测值* d4 G9 ^7 w  ~1 u
    digits(6); x=vpa(x) %显示微分方程的解,为了提高计算精度,把该语句放在计算预测
    0 g- |+ \  y8 H! a2 c值之后,或者不使用该语句  X3 [. m$ R0 [7 q
    yuce(16)=yuce(15);6 D) ~' l6 h1 v) I6 S
    x1_all=[x1,9.92,10.71];5 w9 L! z' G6 h. f8 k+ m
    epsilon=x1_all-yuce %计算残差
    1 v* l* L* I" Z# k7 ]" \: wdelta=abs(epsilon./x1_all) %计算相对误差
    4 r+ ~6 @1 Y$ s( K% `/ gdelta_mean=mean(delta) %计算平均相对误差
    " O. |1 o8 Y- S5 `5 {. Tx1_all_0=x1_all-x1_all(1); %数据列的始点零化像7 j  h$ Q- M& I
    yuce_0=yuce-yuce(1); %数据列的始点零化像( l# G8 N/ ?4 c3 A# }0 l" O7 k* e
    s0=abs(sum(x1_all_0(1:end-1))+0.5*x1_all_0(end));7 E/ S# f$ \( T' l2 ?9 F/ y9 }4 l
    s1=abs(sum(yuce_0(1:end-1))+0.5*yuce_0(end));7 {, p: W7 o1 U! P: u# F9 e9 {
    tt=yuce_0-x1_all_0;
    $ v4 {$ k- l5 n, N' Ms1_s0=abs(sum(tt(1:end-1))+0.5*tt(end));
    . @6 [" c1 q) ^5 E6 Q2 Sabsdegree=(1+s0+s1)/(1+s0+s1+s1_s0) %计算灰色绝对关联度% l! @1 i% q6 ^
    c=std(epsilon,1)/std(x1_all,1) %计算标准差比值7 D% T; S5 M  m4 F! W; @- y& s
    % v! e% Z) m5 N7 P; m& `: @( D6 T
    4 结语
    - T! R6 Z. R2 T4 [9 P; y8 h道路交通安全系统是一个灰色系统,可以应用灰色系统理论进行研究和分析,其中 灰色预测模型和方法简便易用,在交通事故预测中得到了较多应用。GM(1,1)模型适用 于具有较强指数规律的序列,只能描述单调的变化过程,而 Verhulst 模型则适用于非单 调的摆动发展序列或具有饱和状态的 S 形序列。" U; d* m) U7 `4 U3 A0 Z. u$ h& m
    ————————————————
    ' {# L, U$ X+ |! Y( w版权声明:本文为CSDN博主「wamg潇潇」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。) d: e, a* @: D0 p8 M
    原文链接:https://blog.csdn.net/qq_29831163/article/details/89715039
    3 ]- I1 k' f: V4 U3 `1 I% U# [( C0 i2 I, F( D( }
    # h, ~8 A! p: C) q

    " w& N2 }" M# l- F) t$ a* }- A
    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-28 22:01 , Processed in 0.516036 second(s), 51 queries .

    回顶部