QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2992|回复: 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)模型等更适用。
    - \! t) C* n$ O3 u! _# w
    + `# M4 s9 {# Q5 t6 Y1 A! ZVerhulst 模型主要用来描述具有饱和状态的过程, 即 S 形过程,常用于人口预测、生物生长、繁殖预测及产品经济寿命预测等。今年来 中国道路交通事故表现为具有饱和状态的 S 形过程,故可采用 Verhulst 模型对其进行预 测。
    " P8 Y; Y/ c2 F0 `
    ! b7 o  k! q+ h* }2 x, [1 Verhulst 模型简介
    $ e" A+ w' _2 w$ u* ~2 s$ pVerhulst 模型的基本原理和计算方法简介图下
    * x: \1 D) @5 Q% Y- i7 e# i8 T! ?

    2 j$ M- \2 U! {! e# o& E9 v6 Y. F2 N
    参数列的最小二乘估计
    6 [- ?) Q1 i  q/ ]7 S/ Q2 a+ N/ `( w0 C8 T% r" U7 l
    0 h) K1 |8 f4 g( J+ M3 w+ Z

    ) W' n5 M; ^# @, u  t1 |$ B, G$ }' t+ e6 n7 ~
    定理 2       设灰色 Verhulst 模型如上所述,则白化方程的解(时间响应函数)为
    - {% _/ X& d( D
    " W4 Z7 \. L# C& N0 r, B7 q) c
    ; N) O8 A- x1 f  A+ R# o$ L# Z- |) Y4 B
    灰色 Verhulst 模型的时间响应序列为& l5 p+ N. F/ A: Y2 S; Q
    & c3 |7 M6 ]$ j* B& m( d7 c
    * n5 W- Y$ o% j! J+ Y; W1 X6 a  p

    : x1 l; x% {9 y" O, Z& [: p4 ]累减还原式为* q' Z' q5 w- k( \0 s3 W. J- M
    + d" z: K9 G6 a8 c2 x0 I

    : D5 s9 ?. y: }! v* p
    & p$ D$ V; N/ ?" h& \: h2 道路交通事故 Verhulst 预测模型
    2 q/ b5 A: |7 Y7 \$ \" ~  z; ?) p
    * u0 z5 j+ i: z2 n' R) A# w4 q, B& k5 G9 z. \+ F, ^
    + l  t: v2 d  l: u
    1990~2003 年中国道路交通事故死亡人数曲线见图 2,可见曲线呈 S 形,故可建立 Verhulst 模型进行预测,其建模过程如下。- m$ C3 x" n$ R8 s

    - z+ F1 r* F; o# ^! T0 a! @( U( T" l8 e- b3 V' u3 ~4 Z

    . G  m/ [- t$ c) T/ A; `  X) h8 w5 \0 }2 S1 \2 X1 y

    " j' W, K1 {' M0 p0 B
    ; y% H0 x" W. U' h0 d
    / v: d3 n2 C# e
    " K+ l/ m. A( k0 v3 U/ S3 Q. _; |
    (7)模型精度检验。* j: R2 F+ o- D; Z; V: K

    * J" ?) m' `! f" [2 l一个灰色模型要经过检验才能判定其是否合理。只有通过检 验的模型才能用来进行预测。检验方法有以下几种。
    + G! G0 i' s; ^6 s1 B! `9 O* I( O+ u9 p" t! U' E
    ① 残差合格模型
    - G7 w" `7 `+ D8 K4 p( g
    + O, M: ~& C+ V
    ) T: p' u( k, m% T, S* x' B5 [+ E. b- F6 r5 ?, D% ^, V% x! H

    + `" G' }( m8 ^8 H' \* J: }$ q. Q5 L
    ② 关联度合格模型
    ! M5 f% D3 N+ C$ a  }( D) H. u+ p* Z4 }5 J5 C( i5 b

    / x. ~! T$ G7 d2 h1 F5 x6 I, u. K# p! B# }9 _) l
    ③ 均方差比合格模型" L1 j# i/ w- h# |& k

    2 s9 E# v% y7 D& g' b6 Z+ z8 Z$ z" z6 x/ {
    * @6 x$ t: h: @5 [: D
    ④ 小误差概率合格模型3 L8 ^2 p# g! T6 s! n- m

    # d2 e, J% Y( P' v$ m! N6 b5 Q" }8 e: i

    ! c2 ?& ^1 R+ J1 U# y3 ?4 l; h! a1 D由上可知,给定一组取值,就确定了检验模型精度的一个等级。常用的精度等级见 表 15,可供检验模型参考。一般情况下,最常用的是相对误差检验指标。  @( N: i* s5 L! D6 R5 ^1 g# Z

    . S5 H6 f) z2 n' G6 c! N" s; |# P/ ^( f1 ~

    $ U1 \' y/ c  v4 w由以上检验方法,可得 1990~2003 年中国道路交通事故死亡人数 Verhulst 模型误 差检验值见表 16。
    + x1 O# V! _/ z
    $ ?) y0 R' }8 r/ j7 m7 @8 d) W9 Z, T, J" }
    $ B% |' A9 U0 Z: R! k

    3 C' [3 w! ]5 m
    8 C$ s5 }& p3 E, p0 ~! ]9 P: S, ]计算的 MATLAB 程序如下:) g' d1 M' [1 e* U& D- X: B( g

    4 d4 k' k/ t# ^& x5 @1 M: h( oclc,clear
    ( H. ~1 t3 B! ?9 l2 zx1=[4.93 5.33 5.87 6.35 6.63 7.15 7.37 7.39 7.81 8.35
    1 `: O3 q% N! W! C7 ?6 v, \9.39 10.59 10.94 10.44];  o+ ?: _% V1 m* B& Q" ~6 |5 n
    n=length(x1);# ~3 v0 e1 q; M0 U/ T. a$ I' R
    nian=1990:2003;
    / t. \( }% d6 ?7 y) L4 ]1 jplot(nian,x1,'o-');9 c0 @6 o" u( [- j
    x0=diff(x1);' u$ [/ |! k- {7 Q* m. E5 t
    x0=[x1(1),x0]
    / j- [0 D) g4 [5 |% \7 J4 lfor i=2:n. z1 U8 Y5 J: |9 A. u1 B7 T2 n0 y+ b5 n
        z1(i)=0.5*(x1(i)+x1(i-1));
    6 U, Q! m5 \  f  jend! B9 V) |% @- b. ~3 W2 c4 g
    z1
    9 d$ A: Z6 M0 X. {2 P, FB=[-z1(2:end)',z1(2:end)'.^2]
    ( s! j% u( M! |7 `Y=x0(2:end)'
    - @7 ^1 c1 I. ?9 R/ L8 ~1 yabhat=B\Y %估计参数 a,b 的值9 e( h4 H2 M( s, L. P- l
    x=dsolve('Dx+a*x=b*x^2','x(0)=x0'); %求解常微分方程- P. A& o+ A8 ?% H! q
    x=subs(x,{'a','b','x0'},{abhat(1),abhat(2),x1(1)}); %代入参数值
    ' k) v! a0 Q  Z0 ]; s3 @+ X* ^yuce=subs(x,'t',0:14) %计算预测值5 _7 W$ O% ?, L8 _
    digits(6); x=vpa(x) %显示微分方程的解,为了提高计算精度,把该语句放在计算预测值之后,或者不使用该语句
    * S- E3 F; A' D* r9 A/ g1 ~# [yuce(16)=yuce(15);( j) Y9 a7 m1 {0 l2 Z+ b
    x1_all=[x1,9.92,10.71];
    # t$ E1 p# D, oepsilon=x1_all-yuce %计算残差
    2 F6 b) \% I: V2 _2 k" Udelta=abs(epsilon./x1_all) %计算相对误差1 Z2 E! S9 r% ]( j, L( w; t) ?' S
    delta_mean=mean(delta) %计算平均相对误差
    " Z+ I* k" G1 L1 E( l* ?& k5 n( }5 bx1_all_0=x1_all-x1_all(1); %数据列的始点零化像
    ! _8 @: L5 \& e- w; K; nyuce_0=yuce-yuce(1); %数据列的始点零化像
    + a2 L" j% L# h2 N% g  cs0=abs(sum(x1_all_0(1:end-1))+0.5*x1_all_0(end));$ E) \* J' |8 x
    s1=abs(sum(yuce_0(1:end-1))+0.5*yuce_0(end));1 a: p) M! }+ x  M( @4 ~4 m
    tt=yuce_0-x1_all_0;5 B0 o/ k3 x- B$ Q
    s1_s0=abs(sum(tt(1:end-1))+0.5*tt(end));( h( l7 n9 u8 D4 W
    absdegree=(1+s0+s1)/(1+s0+s1+s1_s0) %计算灰色绝对关联度) [, m0 Y. n! Z- m+ ?
    c=std(epsilon,1)/std(x1_all,1) %计算标准差比值4 d2 P/ H* f- E8 x$ }% B8 a

    7 P& f! b) x+ E2 ^! x. ~- |3 预测结果比较
    0 X3 l2 }" b3 r9 s: K. l& P9 i; m0 a' n  U+ x' t& q
      a- L! ~* }" k/ Y! P, Y4 c5 W
    % i* L4 M, y9 z0 H6 R

    2 p8 [- k2 u- G6 ~6 @" v5 {比较表 16 和表 17 可知,Verhulst 模型预测精度与 GM(1,1)模型几乎没有差别。 计算的 MATLAB 程序如下:
    # k4 d6 V6 i0 ]+ L3 B
    ; H# ]: E+ S+ p8 L5 C1 dclc,clear/ S) g! t2 \6 u: E) G+ `. ]* B
    x1=[4.93 5.33 5.87 6.35 6.63 7.15 7.37 7.39 7.81 8.35
    , I6 \5 N9 K# C; f% ?% v( E9.39 10.59 10.94 10.44];
    , N6 l. u; a3 w5 tn=length(x1);
    ; |% |; @9 a! y' Y* X; ~1 _% D1 \x0=diff(x1);/ j' _1 h; N5 C8 C2 g" C
    x0=[x1(1),x0]
    - t1 Q) H- R+ Z* C" |2 h- M" W. Yfor i=2:n; U5 ~4 B" t2 i/ T( F
        z1(i)=0.5*(x1(i)+x1(i-1));
    + I) T. b& [4 O6 |% ~' J, M/ Gend
    6 b( B7 M1 o# ~0 ~: W% mB=[-z1(2:end)',ones(n-1,1)];% {, v) ?% C8 `4 P& F6 J3 l* M/ C
    Y=x0(2:end)';
      q, c0 b4 i4 u5 wabhat=B\Y %估计参数 a,b 的值
    & c* Y9 Z* {' k+ ]$ Qx=dsolve('Dx+a*x=b','x(0)=x0');+ F; t+ A) a, D2 G5 V
    x=subs(x,{'a','b','x0'},{abhat(1),abhat(2),x1(1)});0 m+ A# O/ m+ S6 H) F- F
    yuce=subs(x,'t',0:14) %计算预测值
    & |) T) ~& b( E! fdigits(6); x=vpa(x) %显示微分方程的解,为了提高计算精度,把该语句放在计算预测
    1 Z, E7 u+ [# C( y6 `& v# p值之后,或者不使用该语句5 t: a7 D' ^  B6 H6 V0 ?8 P7 E
    yuce(16)=yuce(15);
    5 N4 ]7 U) t5 B3 X% i9 V: rx1_all=[x1,9.92,10.71];
    . r. r# S! f  w! Z! Tepsilon=x1_all-yuce %计算残差
    ( W  X8 {, T. V- B5 `1 ?' s  `delta=abs(epsilon./x1_all) %计算相对误差
    ! L9 A6 X4 ?% H" W$ [delta_mean=mean(delta) %计算平均相对误差, C3 N* z8 h# l5 u
    x1_all_0=x1_all-x1_all(1); %数据列的始点零化像5 e% n" }- X! h7 r7 S
    yuce_0=yuce-yuce(1); %数据列的始点零化像$ D; {5 Z  w6 {6 \' R( @3 ?# m$ R, F
    s0=abs(sum(x1_all_0(1:end-1))+0.5*x1_all_0(end));
    7 s/ k- s: o/ l& [$ Js1=abs(sum(yuce_0(1:end-1))+0.5*yuce_0(end));
    ! C6 h# ^1 O( K& j! z1 `  ~tt=yuce_0-x1_all_0;; e4 e- q3 V6 g6 W( z: T6 |+ |
    s1_s0=abs(sum(tt(1:end-1))+0.5*tt(end));. P6 x" }/ F# u9 Q4 E0 U
    absdegree=(1+s0+s1)/(1+s0+s1+s1_s0) %计算灰色绝对关联度* a$ J4 p8 [2 Q9 J( _9 m6 M9 j
    c=std(epsilon,1)/std(x1_all,1) %计算标准差比值6 v: A' D# f# Q" l& L
    0 p1 @- @9 [% P2 j# Z" {
    4 结语" `/ V! ~7 ~. l6 R5 G, C$ j
    道路交通安全系统是一个灰色系统,可以应用灰色系统理论进行研究和分析,其中 灰色预测模型和方法简便易用,在交通事故预测中得到了较多应用。GM(1,1)模型适用 于具有较强指数规律的序列,只能描述单调的变化过程,而 Verhulst 模型则适用于非单 调的摆动发展序列或具有饱和状态的 S 形序列。+ U; g( m( F3 I3 W( j( s3 A0 s
    ————————————————
    8 h" a8 r7 X1 F- f7 t* i. u) G版权声明:本文为CSDN博主「wamg潇潇」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。6 r. g+ r+ V. L8 z4 C
    原文链接:https://blog.csdn.net/qq_29831163/article/details/89715039
    + e9 h* K1 U, ?# [
    : x0 t: P% ~& a( X
    9 k4 x$ }* p' }. c& `+ A: o2 ~; p4 D
    : ]& b/ ^3 F4 i6 m5 R" k" ?
    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-31 00:56 , Processed in 0.398671 second(s), 51 queries .

    回顶部