- 在线时间
- 791 小时
- 最后登录
- 2022-11-28
- 注册时间
- 2017-6-12
- 听众数
- 15
- 收听数
- 0
- 能力
- 120 分
- 体力
- 36311 点
- 威望
- 11 点
- 阅读权限
- 255
- 积分
- 13854
- 相册
- 0
- 日志
- 0
- 记录
- 1
- 帖子
- 616
- 主题
- 542
- 精华
- 12
- 分享
- 0
- 好友
- 225
TA的每日心情 | 开心 2020-11-14 17:15 |
|---|
签到天数: 74 天 [LV.6]常住居民II
 群组: 2019美赛冲刺课程 群组: 站长地区赛培训 群组: 2019考研数学 桃子老师 群组: 2018教师培训(呼伦贝 群组: 2019考研数学 站长系列 |
灰色预测是通过原始数据的处理和灰色模型的建立,发现和掌握系统发展规律,对 系统的未来状态作出科学的定量预测。目前应用较多的灰色预测模型是 GM(1,1)模型、 灰色马尔可夫预测模型等,可用于预测交通事故发生次数、死亡人数、受伤人数和财产 损失等指标。GM(1,1)模型适用于具有较强指数规律的序列,只能描述单调的变化过程。但是道路交通系统是一个动态的时变系统,道路交通事故作为道路系统的行为特征量, 具有一定的随机波动性,它的发展呈现某种变化趋势的非平稳随机过程,因此可建立交 通事故灰色马尔可夫预测模型,以提高预测精度。但灰色马尔可夫预测模型的应用难点 是如何进行状态划分,故对于非单调的摆动发展序列或具有饱和状态的 S 形序列, Verhulst 模型,GM(2,1)模型等更适用。
- f" m/ s4 p% f8 `' g) V$ r' o
# r0 v+ \9 p. G' WVerhulst 模型主要用来描述具有饱和状态的过程, 即 S 形过程,常用于人口预测、生物生长、繁殖预测及产品经济寿命预测等。今年来 中国道路交通事故表现为具有饱和状态的 S 形过程,故可采用 Verhulst 模型对其进行预 测。( {2 g; P0 a8 ]$ Y! s& \
' v8 l8 l& W; m: s1 Verhulst 模型简介4 m) l7 _1 D8 D% Z) R
Verhulst 模型的基本原理和计算方法简介图下4 x" A* ]+ J6 _( O6 l6 j. |# ]
- b4 G2 @3 v9 z! B* B- [9 ^ 2 ?/ i, c- T, w3 ^( M- D e t
& \; e, X/ i9 U
参数列的最小二乘估计' q' @8 n$ F- N% C5 h
4 s( R: @: c+ W( ~/ @2 C 1 ~, S/ }$ P: S8 {
+ {9 G& |. b A8 d/ ?. f1 @2 ]* \+ G& ]
定理 2 设灰色 Verhulst 模型如上所述,则白化方程的解(时间响应函数)为, ]$ Y8 D" R; G9 Z& A5 k
1 q* v9 s9 E( h6 f! w- f1 |
![]()
4 B8 A! X6 z8 j; @2 o6 I$ d' ~( K X- M5 O$ c4 m
灰色 Verhulst 模型的时间响应序列为
- [ i) _+ O. H2 p5 C+ r1 E6 s2 p- |( q, ?5 m' _
+ Q9 b, t) [1 m3 q# m5 N. W! M8 p
! Y+ s4 ?. Q7 ], x4 w累减还原式为
1 N) w& r& _8 |" r2 Q
9 L* R) p! [3 p4 ]" p" R" @ ; }( R; l+ {' W
8 g- @) Y- U, H- U, n7 p6 B
2 道路交通事故 Verhulst 预测模型1 Q) M7 o# r. \( a# R
" ~ B# t+ e! m( h, M0 o - g. e9 [9 I! l1 {. _# G5 j [: X
Y: `1 c. F+ x { w1 F
1990~2003 年中国道路交通事故死亡人数曲线见图 2,可见曲线呈 S 形,故可建立 Verhulst 模型进行预测,其建模过程如下。# y" a! X' w t' z- g7 o5 R
+ y' f/ S* a' Q( K![]()
7 Q: E9 K" u8 q# {7 }3 c: o) Q R4 I+ a- V
, a7 \# K8 A3 L+ t7 j1 Y8 g
2 e0 u8 y; E; E9 O- i2 Y6 N![]()
' g* u7 Q$ G* R+ M6 ]+ i' C" P0 _; Z9 y4 C2 u3 D+ ?1 ?& f" ]
7 Y2 n5 J1 v$ w* Q$ D. T' t; K4 U/ E% F0 G3 W; f* {
(7)模型精度检验。% i. j$ O* v* u @: y% V9 I# n1 s: |
9 A3 G" W. J" R) w, |一个灰色模型要经过检验才能判定其是否合理。只有通过检 验的模型才能用来进行预测。检验方法有以下几种。
; @8 m+ s/ @6 X1 b& m% r+ m0 f/ B& f1 I3 R! C Y
① 残差合格模型
+ n5 @6 E4 \8 U2 G Z
1 Y' ]7 ~9 V4 \& d6 j8 k/ V8 ?# X4 c 0 e* B9 Q+ {" _4 \5 @' v
" ]$ `3 W u% A2 L. B* |1 P- p![]()
9 t3 z. k6 p8 f- S9 _/ \" V6 J* o5 {- b- B5 M
② 关联度合格模型
# k+ Y5 F, [' C% N$ A
2 Q& }3 b: ^6 j2 R % n; _9 R2 D% p0 m$ m' Z! ~
# Y# z: ~$ _9 y* T; F& | ③ 均方差比合格模型% C5 u; B' K& Q6 S
Y, N# J3 A. }- Q7 S( P* K![]()
+ {4 p6 J; e, s9 G2 c; J! C
0 h S1 d& B! Y& P; H8 L" `④ 小误差概率合格模型
: _/ t: E: ?' @- [( b- V5 B# I# b1 G# ~5 E
![]()
9 ^3 d; E0 C: X# \9 Q2 I& _4 i3 q) Y9 i t/ B% G# x0 Q! [0 E
由上可知,给定一组取值,就确定了检验模型精度的一个等级。常用的精度等级见 表 15,可供检验模型参考。一般情况下,最常用的是相对误差检验指标。3 z! G/ N. T5 O0 Z& ~9 c3 |% ~
' W+ |# _( b' N3 M& X! X- L% h 5 I" h$ J7 o* P4 g
0 n7 n! B9 g) a9 C7 |5 x
由以上检验方法,可得 1990~2003 年中国道路交通事故死亡人数 Verhulst 模型误 差检验值见表 16。
2 T; V [' y9 u) B9 ^5 ?9 i5 n5 o: K% L+ C1 o
![]()
/ C) _# E. H. u) y ^( L2 P# z y( j; r$ [3 e
![]()
1 f/ f( p" a" m2 x9 S
x6 K! |" [' d! T计算的 MATLAB 程序如下:
# M0 i' Y0 e A2 K2 f" }$ q
* U/ o0 M5 a0 B0 f2 z+ m$ u- rclc,clear# G. j6 y/ a- N) g* b% k6 \6 _7 z
x1=[4.93 5.33 5.87 6.35 6.63 7.15 7.37 7.39 7.81 8.35/ T* V4 t& b; N4 R% }2 V
9.39 10.59 10.94 10.44];! e1 J1 x9 r8 v. u; [1 d
n=length(x1);
0 b0 i5 w: a& `/ Y9 r: _% bnian=1990:2003;; ^( r& s$ K4 M% r# m9 q3 R
plot(nian,x1,'o-');
2 n' F U0 F4 y* ax0=diff(x1);: L, }* s) w' I( O, @6 x% ] I, K6 G
x0=[x1(1),x0]2 T ?) w4 i( I& i! z/ i% n
for i=2:n
) ]0 i( R* T: m% @2 D7 B' L z1(i)=0.5*(x1(i)+x1(i-1));9 k) Q) D$ E+ P; e' F
end
$ [# F5 W5 R3 s; hz15 _( x0 x& d! ?1 J
B=[-z1(2:end)',z1(2:end)'.^2]
( N: i0 v% D; _( lY=x0(2:end)'
/ o) ~8 d2 V" n0 _- U* h7 sabhat=B\Y %估计参数 a,b 的值
- e* V) c H- @. R9 [/ P" ^x=dsolve('Dx+a*x=b*x^2','x(0)=x0'); %求解常微分方程
3 g& J, O' L' R$ B3 c# V/ t7 ?' Ix=subs(x,{'a','b','x0'},{abhat(1),abhat(2),x1(1)}); %代入参数值
4 H+ B }6 X% n& Ryuce=subs(x,'t',0:14) %计算预测值
) C% U9 o7 o5 T: Q( xdigits(6); x=vpa(x) %显示微分方程的解,为了提高计算精度,把该语句放在计算预测值之后,或者不使用该语句
6 R3 W5 o7 N1 P/ R1 s$ ] Dyuce(16)=yuce(15);5 z8 q7 G6 r+ d4 C$ ^0 X0 n
x1_all=[x1,9.92,10.71];9 P# R/ M* t8 C7 M4 t; L% T% f
epsilon=x1_all-yuce %计算残差
* [! r: q* C0 _: j" pdelta=abs(epsilon./x1_all) %计算相对误差) Q4 D% I S2 @( e
delta_mean=mean(delta) %计算平均相对误差& x) Z4 E/ ~4 @( |2 o3 L4 j
x1_all_0=x1_all-x1_all(1); %数据列的始点零化像
* s% t- {2 f6 Xyuce_0=yuce-yuce(1); %数据列的始点零化像
% g+ s0 v8 C- ds0=abs(sum(x1_all_0(1:end-1))+0.5*x1_all_0(end));
' J- _1 n/ l& W6 ys1=abs(sum(yuce_0(1:end-1))+0.5*yuce_0(end)); p6 B7 t. s) i: U
tt=yuce_0-x1_all_0;0 v' c! ? [6 b( P
s1_s0=abs(sum(tt(1:end-1))+0.5*tt(end));& Q L5 E! S8 Q0 K2 W
absdegree=(1+s0+s1)/(1+s0+s1+s1_s0) %计算灰色绝对关联度 J/ i6 _! d$ u
c=std(epsilon,1)/std(x1_all,1) %计算标准差比值
. Q6 J. F9 Z0 f
8 v! N5 d/ a; F( v7 B3 预测结果比较
. O1 S0 q# y! a% W ?7 y 2 t3 c$ z9 \/ j1 j) b% J
9 @- q% r) ]2 P$ }. y! `
8 y; u) P* K% w7 U
. L% u+ n8 L) y0 h
比较表 16 和表 17 可知,Verhulst 模型预测精度与 GM(1,1)模型几乎没有差别。 计算的 MATLAB 程序如下:) l, u! X/ Z$ h- s, t
7 l( K" a9 v0 j9 aclc,clear" U- _0 |6 ~2 ~% e% E2 ~
x1=[4.93 5.33 5.87 6.35 6.63 7.15 7.37 7.39 7.81 8.35, m: W9 B! }9 H& z9 y# I" A. _
9.39 10.59 10.94 10.44];
' ~# U7 v4 a* z/ ]8 e& B+ rn=length(x1);
* w, c( W4 n, w( z' Nx0=diff(x1); {2 a* f! f9 N8 @: o/ g. S
x0=[x1(1),x0]
0 A6 s J9 y1 \8 N! T4 bfor i=2:n
4 ?! a. o7 t6 K% |4 D1 v& a/ O3 P9 \ z1(i)=0.5*(x1(i)+x1(i-1));4 Y7 H, O3 K5 M5 W- w
end
# [5 @ w5 k: j% N$ O+ |+ OB=[-z1(2:end)',ones(n-1,1)];: i7 T0 [& I- I5 u" e& V1 N
Y=x0(2:end)';" \6 r ^: ?7 K% I
abhat=B\Y %估计参数 a,b 的值$ R+ F1 {" r% U0 Y- u8 a! k
x=dsolve('Dx+a*x=b','x(0)=x0');
9 l: b7 j& e2 r: x- [x=subs(x,{'a','b','x0'},{abhat(1),abhat(2),x1(1)});4 o5 C- I4 \' ]
yuce=subs(x,'t',0:14) %计算预测值
* d: L: R0 V# B+ Mdigits(6); x=vpa(x) %显示微分方程的解,为了提高计算精度,把该语句放在计算预测) T5 ^" |( X! C3 L5 b* \
值之后,或者不使用该语句
, O1 x# {6 A7 t! A& Hyuce(16)=yuce(15);. N% @9 L, r' S
x1_all=[x1,9.92,10.71];
. G6 R7 h- {! Y9 T# s) V7 [epsilon=x1_all-yuce %计算残差, r! \) R, m: x/ O
delta=abs(epsilon./x1_all) %计算相对误差
' B( z4 _4 [/ gdelta_mean=mean(delta) %计算平均相对误差
; A$ [" Z* E6 [$ Q9 Zx1_all_0=x1_all-x1_all(1); %数据列的始点零化像
( ]! h) ]- H' x& `. w$ e: syuce_0=yuce-yuce(1); %数据列的始点零化像# N6 a1 c" {9 d _0 z' ]( e. k
s0=abs(sum(x1_all_0(1:end-1))+0.5*x1_all_0(end));( C c2 Y. h& Q( a( L0 h
s1=abs(sum(yuce_0(1:end-1))+0.5*yuce_0(end));
1 }3 w) P/ \- ~8 _8 d& ett=yuce_0-x1_all_0;
9 ~2 U9 H$ F; Y0 cs1_s0=abs(sum(tt(1:end-1))+0.5*tt(end));5 }8 u" N/ j- D3 p9 z5 Y% m8 l: J
absdegree=(1+s0+s1)/(1+s0+s1+s1_s0) %计算灰色绝对关联度4 G9 K! G5 S7 f! F8 c- Z% M
c=std(epsilon,1)/std(x1_all,1) %计算标准差比值
; ?& _7 e) O" }; Q
- |& e" {1 J# e& ~6 Z 4 结语
6 @2 D2 ?6 |3 V) X0 H* |! D* E7 r道路交通安全系统是一个灰色系统,可以应用灰色系统理论进行研究和分析,其中 灰色预测模型和方法简便易用,在交通事故预测中得到了较多应用。GM(1,1)模型适用 于具有较强指数规律的序列,只能描述单调的变化过程,而 Verhulst 模型则适用于非单 调的摆动发展序列或具有饱和状态的 S 形序列。
5 o5 N+ q% D, T5 n8 G————————————————
( D6 B: G8 k. R3 \' R7 [版权声明:本文为CSDN博主「wamg潇潇」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。/ U- e7 c" V( f3 b. c0 F
原文链接:https://blog.csdn.net/qq_29831163/article/details/89715039# z' G8 S; y) q7 A- k
& g0 U. u: @+ }4 Z6 F! c' T5 C1 s
# s* a2 R; g! B) h- j0 u4 }# r- V3 i$ M! {6 O! n7 m
|
zan
|