在线时间 4 小时 最后登录 2017-2-18 注册时间 2009-7-27 听众数 5 收听数 0 能力 0 分 体力 36 点 威望 2 点 阅读权限 20 积分 53 相册 0 日志 1 记录 0 帖子 43 主题 7 精华 0 分享 0 好友 1
升级 50.53%
TA的每日心情 奋斗 2014-2-8 12:28
签到天数: 5 天
[LV.2]偶尔看看I
4 s4 X( a* O7 I0 n% s
本文就巴黎凯旋门环岛的交通问题,建立了控制进入、环绕、流出此环岛车流量的红绿灯模型,目的是使环岛内交通顺畅,并且尽量让堵车时间短,堵车数量少。
, j8 j: H: R( ] 通过分析,发现环岛内的最大车流量为 1000, 波动范围为 +200 ,还可根据车道宽度计算出每个路口的最大车流量。这两个因素对环岛交通有着很大影响。因此,主要考虑车流量和环岛内的车辆数目的影响。并设定,在建立模型时,环内车辆总数最好不超过 1000 辆。
. N+ |: O. ]+ m5 G 根据各时段车流量的多少,本文将车流分布为四种情况:高峰期、次高峰、一般情况、稀疏情况。再根据各时期的车流量,建立了环岛内车辆总数 Q 关于流入量与流出量的方程: 。通过随机模拟,得出环岛 12 个路口的车流量,并根据堵车时间尽量短,堵车数量尽量少的原则,找出所有可能的红绿灯组合(前提是每个路口都有红绿灯),通过比较,得出最优化的组合(具体组合见模型建立与求解部分)。 ; e# Z- _! H2 D8 A: c
通过随机模拟,对于不同时期,得到不同最佳方案: ; n h( R: j* z, F
1 .对于高峰期,将红绿灯时间分为四个阶段: 1. 编号为 1 3 5 7 9 11 (见图一)的红灯亮,其余的绿灯亮,持续时间 T1=65 秒; 2. 红灯灭,所有绿灯亮,持续时间 T2=27 秒; 3. 编号为 2 4 6 8 10 12 的红灯亮,其余绿灯亮,持续时间 T3=65 秒; 4. 绿灯全亮,持续时间 T4=27 秒。之后重复上述循环。红绿灯总周期为 T=184 秒。
7 I1 L' A. `" d& W; Z 2 .对于次高峰的方案,红绿灯组合与开关顺序与高峰期完全相同只是各时段持续时间不同: T1=T3=35 秒, T2=T4=23 秒。 # C4 D7 i7 w+ T, H7 G7 ^/ r
3 .对于一般情况和稀疏情况,红绿灯顺序为:在所有路口,先红灯亮,持续时间为 T=30 秒;之后绿灯亮,持续时间为 T=50 秒。之后,重复循环。
" j- x" J8 x6 K* k& W! Z, }( R 由以上方案来模拟计算一天内环岛内车流量 Q ,其值超过最大容量的平均概率不超过 5.00% ,较为理想科学,所以此方案可行性较高。
& _1 u" y9 d+ W 最后,对模型进行了改进与评价。 $ G9 r2 c4 { \0 q
* m0 @4 r. K% R* _
% k1 h' s! \4 ^2 `6 m+ t3 `( s! z 关键词 :环岛车流控制 红绿灯控制 排列组合 随机模拟 等待时间 $ }, Z ^- C) A- {; `7 J& E5 ^2 u
. H. {! ^7 y3 v% S& E; ]
7 X' A- o: [1 g! @ 8 E' t% H& Q+ E) \" r }
9 ^" M3 {* |6 ]1 | s
/ V) v' B+ a* ^0 w4 _) @1 ~ * a& T# o E, d1 D* D
巴黎凯旋门环岛有 12 个路口,其中有 2 条主道, 10 条支道。在进入该环岛的道路入口处可以设计有一些信号灯,或其他标志来控制车辆的流通。即为环岛制定车流控制模型,要综合考虑各时刻的车流量,环岛内最大车流量,天气情况,工作日与周末情况等因素。 / x: V0 B: F6 U5 r! k. h: r
我们的目标是,根据已知的信息,建立控制环岛车流量的具体模型,并分析该模型的优劣与稳定情况。 ; x$ Z* _4 U% R: A+ X; w. y
" ?# ~- P9 E, D2 G. k W4 t5 ?% s2 B
4 b0 ?3 a9 k+ f" L' N! {& x
) |% P9 P% V: Z* Z8 G& Y* B! [! T ; v/ U, F- u2 f6 ~
9 e2 ?& M% m, D$ j* Z ' T5 ~- e+ o7 W" a/ a. I
i1 `* y2 L% ]% @7 U9 g" J0 w4 A 1 .假设每个路口的进入车辆服从均匀分布(具体的分布情况见问题分析)。
( }! f$ p; P3 z 2 .假设每个路口的离开车辆也服从均匀分布。
( r% _8 a! A) h8 Q, X 3 .假设每个路口都配置有红绿灯装置。 3 v" f& d F3 }/ O/ R3 i
4 .假设环岛为单行道,只允许进入车辆沿着俯视逆时针方向行驶。 3 e2 k1 T7 n5 Z: B" z, n$ y8 J8 f
5 .假设进入环岛的车辆最多只在环内行驶一圈,不能多次在环内循环。
1 W. Z& o H0 t 6 .设环岛内与各路口处的车速为 20km/h ~ 30km/h 即 5.6m /s~8.3m/s 。
6 i, @! {" F/ R! f7 [ 7 .假设只考虑正常情况下的交通,不考虑发生车祸和路面维修等意外情况。 ( d- y, v, [1 q' f. \& v$ |$ s
) ~, Y: Q) j# U- E
/ q4 V" ?% U* }4 g8 } V
- v% z% w; H& N6 z1 I. { :环岛内半径。
/ l6 _0 t2 f; C+ _! R :环岛外半径。 3 ~! K+ C7 `$ T+ P7 Y
:车底面积。 & B: J8 b. J z' b% a% V
:环岛路面面积。其值应该为两圆面积之差, 。
8 V. e3 {* `/ O+ w1 v3 @; f: C9 p :环岛可容最大车辆数。 取整。 . B. s6 F _( q1 r: u
:环岛内车辆总数。
% l, X5 Q8 A5 q% s, y :环岛内车辆总数的当前值。
# F6 x1 W6 X; C- L2 Q :各路口进入的车流量。( 1<i<12 )
) F8 X b- z/ g: ]7 s :各路口离开的车流量。( 1<i<12 )
2 X+ k* b$ K% P& n :逻辑控制变量,用于表示各路口的通堵情况。 =1 表示通路,即绿灯亮; =0 表示堵车,即红灯亮。( 1<i<12 )
2 U) J+ o# Z* {, l; y& F+ t
: |: I7 q( b/ Q3 @' K( a :表示所有路口的流出车流量。 $ o% J2 A1 i# }$ y% {! j
$ m% A6 s2 V8 c2 e$ N
:表示红绿灯持续时间,具体是红灯或绿灯,模型中会具体说明。
. R2 S. T* r* i- D1 U, N. y
7 f$ \, P7 v* `3 ]4 g :为某种情况下的堵车数量,具体模型中会说明。 5 K. m& v2 @' O7 z4 y
/ k5 [6 M: d7 R9 ]$ w
:车流密度,作为参考因素,将影响对车流量的模拟。 & J+ m8 L& [7 n$ Y5 L* }9 ?! _
; `+ e$ }* n9 n- h
7 V7 r) @' |' k v' x; i
5 S! t8 I8 m' m% M: c! W# v4 e
此问题属于交通流问题,我们在初步考虑这个问题时,参考了交通流模型的结构方程 。我们认为影响环岛车流量的因素有很多:红绿灯,时刻(高峰期,平时等),天气情况,游客人数(虽然凯旋门游客时从地下进入凯旋门的,但是每个路口还是设置了人行道,所以游客的多少也会影响到车流速度,因而影响到车流量)。正常情况下我们不再考虑路面维修和车祸的影响。 9 n# h( T$ }& o! L
由上分析,我们需要做的是通过对交通流情况的模拟,找到最优化的红绿灯控制情况,从而达到车辆最优化控制的目的。 1 E& u8 H' z4 \! T8 Z% Z
因此,我们将此问题归类为最优规划类问题。 # e. ~% u$ \% _, S, ]
我们查找到了以下参数:
6 C9 ?1 ?9 s; O# q2 Y 凯旋门环岛每天平均车流量: 110 万 / 天。
0 E4 R: ~, L, c3 W- F4 E 环岛外半径: 80m 。 @$ _ t) t, _' C, G
环岛内半径: 53m 。
+ m+ X' a. x: H G6 H' j" S 一般中型车的底座面积:( 7~10 ) m2
) z* k |9 R9 J: ?' u2 ` 主道可以同时并行 3~4 辆车;支道可以同时并行 1~2 两车。
2 m5 l6 r- K. S# L . F* |" h0 k S- c
% D& q l* Z! J- z1 ` 4.1 环岛最大车容量: 5 M/ F( R$ c1 W% A
由上面搜集的数据,我们可以计算出环岛最大车容量。
3 o2 B$ V$ d) r 环岛内半径为 ,外半径为 ,车底面积为 6 S/ _8 [0 f1 _4 o1 c
则环岛路面面积应该为两圆面积之差:
8 |. j! w, K4 P+ A 。
& Y0 z, j) A3 z% ?, ]- k. y( z 则环岛可容最大车辆数为: (取整)
4 U- b7 C# P" X! A+ J0 X 可得环岛最大可容车辆数目为: =1327 (辆)。
- L( Q s& j1 ^7 Z/ |. g% L( a 考虑到车之间应该有一定的间距,并且应保证环岛有一定的畅通,流畅性,我们设定环岛最大可容车辆数为 N=1000 辆 ( 稍微超过 1000 也行,我们只要保证严格地不超过 1200) 。
+ l6 y( w) z4 n9 T
* p8 u7 h7 n: Z/ E
/ ^2 x) b5 ^3 V0 e6 a+ X) Z { 4.2 各时段的车流情况 " D! y4 \2 w- K2 Z0 W9 @) _
8 {8 H3 O, Y, p 工作日 ! `. e2 N: E1 z( y; e5 f0 |" l9 G
时间分布
' {2 `, m7 h7 x) a 时期分布
, C F3 M3 n' Q0 P* n/ c, n 0 : 00~5 : 00 0 {8 y/ X, Q* U( U% C) @; ?6 h; H
稀疏情况
$ t' M& _! \" B; {1 f/ V& ~ 5 : 00~6 : 00 / a( K9 M* V3 B& M: ]6 P& U# Q8 C% @$ \
一般情况 $ Z" y5 U. D' b
6 : 00~7 : 30 5 X4 X, p& D! w6 Z5 q
次高峰
! X) B# _0 Y: X 7 : 30~9 : 00
: }; W8 E$ a" Z$ i8 s 高峰期 3 j) s! {# q( G( C$ [2 t1 g7 ~
9 : 00~17 : 30 / s; E/ G) c2 J8 U0 o/ B0 K! C) |
次高峰
$ I: w3 {2 `4 R4 J6 V 17 : 30~19 : 30 + B! h5 H: T: E) F2 W
高峰期 % m) ?; e( I' M2 C6 s, S# z
19 : 30~21 : 00
. \# D' ^# C& `" u2 o, `* \ 次高峰
! a1 v; J& E2 F* G$ t* B+ e5 G 21 : 00~23 : 00 3 W& g3 _/ D/ g7 D( J7 g2 ^ R
一般情况 - `3 a* d8 o1 x6 V5 [1 y
23 : 00~24 : 00 ! m; T9 k; g! ]3 A3 R
稀疏情况
; I7 c7 R4 z* f6 S4 T5 Q f5 t
+ u% Z- _; X8 I. A$ g+ d. m
; @$ y( y3 H& T7 }1 @* M 周末 # v6 `/ y9 I1 B
时间分布
, K$ \- P+ r. P* I+ K/ F 时期分布 1 _% k1 s9 L/ n" H& ^# x7 H
0 : 00~5 : 00 % T% a/ D9 K9 C% B
稀疏情况 : e4 q4 Q" K/ P- U+ I+ D0 Q5 D8 z
5 : 00~6 : 00 o1 z' x0 T4 N! J& Z v
一般情况 0 U; K" b) A# P$ g: i( p% s
6 : 00~8 : 00 # m, X% |0 F8 M2 R7 t
次高峰 3 \+ w( S# T0 P' c# p& J& \. _/ o) {. X/ b
8 : 00~17 : 30 7 w Y7 l: Y( _& I7 V+ a% E) _
高峰期
# v) K4 _: I' b4 D4 k6 @ 17 : 30~23 : 00
: o: x& @! e! p2 u! [ 次高峰
- I( W7 U# R& w7 A( g/ w/ e 23 : 00~0 : 00
" g) l7 M" [: ? 一般情况
! x s# f4 U& X" f2 J# k$ m
) M- a/ {4 e( ~ 说明:
+ A: T, \! R+ G1 d/ V7 T y/ @ 在巴黎和法国其他主要城市,高峰时段的交通最为挤塞。法国每日的交通高峰时段是早上7时30分至9时及下午5时30分至7时30分的上下班时间。在星期五法国人一般都会外出旅游,所以交通高峰期会较平日来得更早,在下午4时起便开始阻塞,其中尤以离开巴黎的各条公路最为繁忙,而非高峰时段的交通一般非常顺畅。
0 ?, F2 u4 \8 F' d# T
* ]0 D9 i' C! W. Y 4.3 对于交通模型的假设与估计
( `& p* ?% c3 H 对于交通流模型: & {$ l! P9 l# w. K
其中: q 为车流量(即单位时间内通过的车辆数);
: ? @$ K! L& a6 h
6 W# H8 x: w- {5 ~$ n0 f E5 g
, s5 |/ [& x) M8 [1 @9 z 为车流密度(单位路长的车辆数); ) q! U3 |. s4 q# W4 U
1 d/ Z8 N8 i' r( ]( T. F
8 I# M L& ?% O/ d$ |( ~
+ A+ }- D1 ~/ \# [; M0 A
为最大车流密度。
- O6 e* |* N- C
: e6 C" B3 d. M( A! H4 w
# d3 T& f2 u; _8 J$ K* ?# s# p
' Q% z% ]2 d! W5 ^( ]6 ~& u# z% m 为最大车速(注意:车速时车流密度的函数, )。
, }9 n0 U# K# e' V! m. ?! k- r$ s! ? 根据上面的方程,我们可以估计出每个路口不同阶段的车流量,这包括流入与流出。
3 q. D* J9 }0 @( H( s' d0 Q 为了保证总塞车量最小,同时等车时间最短。我们针对不同时段对车流量进行了不同的划分: 7 ?- _! _% s# K3 c
环岛内车辆总数 Q
' e* [+ j; `+ b" S5 L' H 时 期 ! o6 K t9 H& \! D+ e& B9 Y
有红灯亮
8 L+ |3 K0 V0 s a/ t' |5 {* i 无红灯亮
. E0 r! X3 Y. j3 q8 ]6 K. R7 k 进
, ~ o6 E. R" _8 g( E; K 出
8 T- Z' K8 S) v) V7 m8 W 进
# W" N3 y8 Z" _$ d: m, j 出 2 x" D4 {2 H0 w# s7 `$ `! c
主道 y
( x# l; @/ h0 c+ T2 r% Z: W4 q 支道 y 0 C7 i8 k; v1 T+ V
主道 w
. t9 \ _+ w: z4 N. F 支道 w
& ~2 X* u# a D 主道 y
# I9 U ~% T4 F* { 支道 y R o; N& u& v9 W
主道 w
$ O# o, \7 s6 p" |2 i& B2 ^ 支道 w ! n9 b+ r5 @. s! c8 l! z
800~1000 ! d' c* x* n8 o$ N, B
高峰期
/ _; S6 }" T( C# ~' T: e 3~4 n6 H- h. c3 B) Z6 O# u9 ^3 c
1~2 9 U$ j/ Q% _: ~/ _) Q4 t$ m
0~4 ( d. o+ x# O& s: c$ @
0~2
! s: L4 E! T9 q+ k* N$ M6 ]% t- } 3~4
, u" h3 x3 C% O& q 1~2
6 k \8 H5 w7 X! e' k% r9 S" I2 Y 0~4
: W0 P u. f8 m7 p. Q0 V 0~2
6 D4 U5 l$ H+ f9 G: y: p; t 500~800 5 D+ {& |" v# N* _ i
次高峰
: @ N) U5 l% ^$ l4 r+ s! \ 2~4
3 @5 G8 U/ h" j5 r 0~2
& B- h) p4 T# l$ S% e% }+ w( `. y 0~4
5 T- @$ T8 {! B3 _# L 0~2
" w+ w+ V/ D) U, i; ^- o. w1 w z+ y 2~4
. @; j7 z1 n1 ~( i 0~2
! J( A2 I+ l& b3 I: x, z- [* m' c" Q 0~2
5 X. t/ |" p1 |: m3 h% Q( h/ Y4 h 0~1
. s6 c+ y9 t: K 200~500
9 i0 D; n2 `) b8 T" Z% G/ } 一般情 况 3 Y2 b2 a, ?8 W7 W6 F
1~2
6 e; @1 s0 j1 X0 `( m; i" R! E" ^ 0~2
4 I7 R8 N0 I5 v9 g 0~4
1 g4 O+ G& i; N9 j3 e 0~2
/ N. E9 G. ]3 w+ m. Z! x( r* Z 1~2
: v7 k; |$ w4 K 0~2
5 z: k% E! @$ u" a' W1 m' ?/ t! w 0~2
9 y3 b* \0 u) b 0~1
: T1 u$ @% ~8 ~ K4 Y' d2 y 0~200
7 H) X$ c7 ]' h$ B6 _ 稀疏情 况
' Y$ P: L+ d+ f! L' @. V *
4 F: X% j+ i, l/ w( r0 R& ` J/ Y *
8 k' F; n$ v m9 y; k * 2 `1 T9 h& F3 Q1 D) ~! S) N+ S3 c
* . t2 }6 y* x+ Z5 a. ]9 N
*
, _+ h( g0 @' }- E *
5 M' ? e3 \, r6 h7 t *
5 i$ X+ @, L) |' m9 T * : |: `4 N& z' I( k2 q/ j+ `
我们先设立一个逻辑控制变量 ,
2 I3 r. |) F3 ~) n. V8 _7 P2 Y8 E4 D 对第 i 个 l 路口,当有车进入时, =1 (即认为绿灯亮)。
2 Z' y3 u4 y2 W' V+ ` 当没有车进入时, =0 (即认为绿灯灭)。
8 M9 Q: m$ ]3 Q8 c! K 又设 为第 i 个路口的车流量(辆 / 秒)。
8 F! C& o2 e( i 则我们可以列出下列等式: 5 M; C7 _& E' \8 R7 s) I" _; L
根据:单位时间内,环路车流量的增量 = 流入的车流量—流出的车流量。 , p5 B5 a/ y+ S. j+ o/ {. {
0 V1 K7 [& N/ j1 O% Q6 P. n- E
9 K1 }$ G/ s- M4 L# O
5 y9 D2 Y+ r* V" S
dq 表示单位时间内环路车流量的增量。
* X1 H7 X( @( g+ _9 k4 r+ R+ U
# x5 O# ?6 s7 t% j. J/ m) p 对于 以及 我们可以用 rand 模拟。
/ @9 V% P5 E" U) Q 5 ` M( I) `/ Q i% F4 W
因此,环岛内车辆总数 Q 满足: 1 ~% S3 H+ [. Q3 b' P+ p
3 E& l! ^. K4 F) e8 f6 `- R- D
注:
$ L& {5 X% J# A0 V 由于 的组合有很多种,我们加入限定条件,即要保证等待时间最短(红灯亮的时间最短),以及等车数量最少。 ( J0 j1 W! K1 y' k7 m B) O
0 f& V$ u& a! ~% z1 S, T! O7 v' U
因为等待时间就是红灯亮的时间 T ,等车数量又与车速和等车时间有关。
1 u" A7 q$ ]8 L2 l0 ? . t8 s, }2 ?2 N! c. b( B- r( ]
为此,我们设立下列函数:
: w2 E' z1 }& j" q
6 z* o; @$ B0 Z" N8 `! x: H# u9 H ( \, B8 p! C1 b% k
& z7 t5 R" p% o3 q5 @; ^; C$ e
5 e% w2 l* `5 f: k6 C8 ^$ G 说明: ; D% a, b+ R+ |3 W
为各路口的逻辑值(通为 1 ,不通为 0 )
1 Z! ^% X- ~8 O+ F2 E 5 n3 ~. P: O2 I
为第 i 个路口的车流量(辆 / 秒)
4 u$ K; T4 z" H; F' D3 B) ] 为循环中第一次亮红灯时的堵车量, 为第二次亮红灯时( 的对立面)的堵车辆。
6 h- x" T) b' `" E( U* W0 \5 I 为总堵车辆。 $ P( W7 u* Y# o: w4 T7 S
2 W( s$ l# S% w8 l9 S k2 t( R" P
上面的分析可能需用到下列参数值:
# @& D' I$ a- Q$ v$ m 1.
% ]$ }% u; h/ @7 r8 O: S! g 每条路段上的最大车流量。
" c6 _; P% B1 x3 c5 ?* d 2.
8 f# U6 M ^/ H: m$ P8 S! L. l 每天路段上的最大车流密度。
; w$ ?# u% H# l, E- G 3.
, F5 ?2 A) ]$ } 每条路口进入的车流量(辆 / 秒)。 2 p5 I3 E* ]" N: n
4.
) Q& N. q$ n2 Z7 c5 ] 每条路口开出的车流量(辆 / 秒)。
( ], b6 {/ a7 V9 X+ K
, x+ u: g+ p. f! O$ u" x e' w$ w 通过模拟,我们将在不同的组合中找出最佳的红绿灯方案,并通过多次模拟,确定时间分配。 ! A2 Q. c% o$ D
% j+ j1 W: u9 { Q9 n
; n! ~) ~0 n9 {: {, `/ ]; | 一、对于高峰期时,我们对于下列组合进行了模拟(程序见附件):
& [; C$ A) q9 v2 A1 {+ n 红灯亮的个数(盏) " l, J& _0 u7 W& e
12
8 w+ q* |- {# d0 j3 s+ |, H, ?3 Y 11
# R) {& c& [7 q 10 ' x8 U) @, r- [4 {; o1 j
9
1 a J# z& S8 W/ T! q& H* [: C 8
# |+ X: K7 ?( a 7 , D/ e7 q8 e( k }4 K- G" V
6 / N9 P2 L% X& V5 K9 z( Y- B
5 " l, [' C2 ~# D" q% N9 q
4 7 s, G" M8 r. D3 P! I3 j2 g
3
3 P; W+ ?/ O) M$ A+ o$ ?! \5 _9 N 2
3 I& J: M2 H' M5 w( C4 c 1 1 y) y' g7 r# B& S |: e
0 ) T1 x- G: w$ \
平均最短等待时间(秒)
7 E* C* a+ m. ` 16
: |- h v5 I) D# N5 |, X- j- y# n 20 * M7 @8 Q6 ?% b' U# ]5 q
22 / |8 R- g" J R
27 5 B% @$ T+ B- S9 h9 D- Q
30 / M; h' G5 o1 x& c$ D x
42
' S3 y! X( M4 G 70
8 G1 L7 e+ L( ?) n 154 ! \4 n- ^/ \6 c" v* H
Inf
8 O, c& |! D" x ( 无穷大) 1 |& R1 k# R& W; d5 s9 h
Inf k* V d- l" y4 }; K
Inf 5 P' g5 |7 E( f
Inf
( q1 s% x9 w( V1 O ]2 j: i, z Inf
: X% x# r1 Q% w. l9 {
注释: 9 n4 \' I6 ~9 D8 I) j4 P( N/ W# i/ Y
对于红灯亮的盏数,我们可以有很多种组合方式,比如红灯亮 1 盏,可以是 1~12 编号中任何一个亮,但这些组合中总是有一种或多种为最优组合,这从我们程序结果可以看出。
1 a1 j9 |4 e8 R
. S6 g0 K- @* F% g 分析:
& a7 ^, P, q5 Z
4 U F3 ]8 t$ |8 ?/ ?, P7 T 有 0 盏红灯亮:
: ~4 ?7 c; b3 S# R2 U 此情况显然不合理,因为没有红灯就无法控制环岛总量。
a. J% ^0 T; \; g$ O % H5 y: x9 t ?( O2 \( V+ m
有 1 盏红灯亮:
9 n2 N6 O/ s, M 对于此种情况,经过模拟发现不可能达到降低环岛车辆的目的,反而,环岛内将更加拥堵。(过程见程序) 4 u' g! w/ _& R- N W* ]2 s2 R0 \
6 q# B( Y6 z8 F l, H 有 2 盏红灯亮: 7 x/ r& |1 @$ Y h& W
此情况结果同上,不可能达到降低车辆的目的。
- ?# |$ r2 J3 m% B% j , b& v6 R8 Q8 P. N# W9 r: i
有 3 盏红灯亮:
9 v5 L8 [; F" `6 t4 M 此情况结果同上,不可能达到降低车辆的目的。
, z0 b6 x1 o. B 4 K2 n2 d% N/ G1 J. E* W. x: D
有 4 盏红灯亮: 6 T* ]( W! Q8 Q5 ^. A$ |3 ^; [
此情况结果同上,不可能达到降低车辆的目的。
7 @8 R: ^. L5 O" x
2 U! J4 v( m0 p5 y) d 由上分析说明,红灯至少应该亮五盏以上。
9 j: q! E6 N8 w' o4 _ ( }+ B5 l1 ]$ _2 z. n' n( s: q5 M
为此,我们排出一下组合: 1 L0 Z/ b8 f* g" k! Q7 P: m4 x- |
5 —— 7 :
: c! {' e; n4 Y5 i ]( \- V' I 此种组合方式下,可以分为:
: X! U, l8 J9 m0 R a. 开五盏红灯时(包括一个主道)的等待时间为 144 秒,开七盏红灯时(包括另一个主道及其他支道)的等待时间为 48 。 7 s' G, b( r* u( o! `7 f
此时,总塞车量为: ! \! b. x! W* |9 O0 ~
+ Q" F) G7 v5 W: M* k" N) Q
b. 开五盏红灯时(不包括主道)的等待时间为 inf 秒,故此情况不成立。 : [0 O8 w# v# t a
' P5 w, O/ U2 E( |' u& Y+ D& I 6 —— 6 :
# k0 y- m8 X# X$ d 此种组合方式下,开六盏红灯时(包括一个主道)的等待时间为 68 秒,开另外六盏红灯时(包括另一个主道及其他支道)的等待时间也为 67 (由于分布相同,其实两个等待时间应该一样,但由于是模拟,不可避免的造成一定的差异)。
: S& N$ x, V5 J& y3 i* F 此时,总塞车量为:
9 F* b. Q3 m! g P, W
7 @6 Z) J/ q' h' a
8 B* c! J! W2 B/ R$ _ 在保持堵车时间尽量短,堵车数量尽量少的原则下:
% f0 C- T- B8 o d7 }% h0 _( j 只有选择 6 —— 6 组合是最优的。 ' T# p1 Z6 w) b% ~% F
根据等概率原理,各条支道应看做概率上相同的路口,而两条大道也是等效的,因此,在模拟时,我们就可以人为地设定组合,只需保证总数按红灯亮的盏数分布即可。比如:对有 6 盏红灯亮,我们选定组合编号为: 1 3 5 7 9 11 ( 1 为主道),此组合方式与 2 4 6 8 10 12 等效。
, F+ p& G# k+ e
% q! S H0 `0 q8 ?- D+ T+ F 这时我们可以确定红绿灯的循环模式。 ; | @9 j0 _# }4 u. i9 W5 Q
不妨设定,先使编号为 1 3 5 7 9 11 的红灯亮,在经过 T(T=68 秒 ) 后,打开所有绿灯(包括原来的绿灯),再等环岛内车辆上升至限定值后(经计算 t=25 ),再打开另外路口 6 盏红灯,其编号为 2 4 6 8 10 12 。之后,重复上述循环。
- x% n7 D6 V! N p
# e4 N) T0 w" @6 O7 W. ~ 8 t. i" [/ i# @7 {/ f- e* y
二、对次高峰,模拟结果如下(程序见附件): 4 y- Q3 }- R) I" F6 k; C; G7 M
亮红灯个数(盏) : J& ~1 e* o6 z& S" M" e
12
5 T: F' \0 Z. [( l- l5 a: c3 f$ i 11 , x5 Y' @# P* s" p1 t8 ]& B
10 0 f S& \$ Q J j
9
0 p% }* u; Y# H1 U. }8 i' W 8
5 m5 u' e% k0 H6 i; f8 A 7
( O! _- i3 C* g, d* m+ \ 6 ; c7 ]% s7 }8 n
5 # _) T/ \3 o, P* `( i
4 ) m9 X8 Z! q# y6 r, }# \# W, v
3 5 Z1 }7 B: o& e. c0 ~( D) K8 m
2 : q F- \8 c. ]+ m9 Q. G6 {
1 - s8 M( T( x6 p. H+ } f, |. U& \
0 . B: N- G& R; B t+ M, s1 F! S2 {
平均等待时间(秒) # Y+ k+ x% J( v" I
24
; p3 v3 H% Z- T 30 - b) t, L! U, ] y" V" [
31
5 }( D) C* `! Y 32
# N$ p; A5 E; l* E4 g* p, y 35
! j6 o: r% K9 h$ ?6 x5 t& q 43 0 `& j1 u, Y/ t2 a( F7 c! N
57 ) J/ c; P, B i' y
68
4 b$ ~8 Q5 F$ O" M 96
- A, _4 I3 |0 `. C; | Inf * ~+ W' ^7 ?/ L; }, o
" G% o _( n) T
Inf
. }2 c1 j0 M& \9 x5 `, j Inf 0 V. b& L5 Z$ c8 m6 o+ I
Inf 0 F: @" e3 \& b$ ^! h& v
9 {# ~! ?7 ?1 ]- N- J 说明: : ]! {: r6 m; ^
对于红灯数目小于 4 的情况,实际上有的模拟值满足要求,但由于等待时间太长( 100 秒),并且情况及其不稳定,多次出现 inf ,也就是不能达到降低车辆的效果,我们认为这些情况都不现实,均统一成 inf 类。 1 C* e, L. F4 e9 ~6 \& S
6 y+ S7 Y$ I/ l1 q
由上分析说明:红灯至少应该亮四盏以上。 $ T/ C) F4 e" M$ {3 y- \% J. I
0 Z) ^- W; w9 C6 N
为此,我们排出下列组合:
4 t3 p* O4 O' w6 Y' }: r9 a 4 —— 4 —— 4 : p5 Y% a# C9 L; |* z v M
此种组合方式下,开 4 盏红灯时(编号为 1 3 4 5 )的等待时间为 80 秒,开另外 4 盏红灯(编号为 2 6 7 8 )的等待时间为 77 秒,开最后剩下的 4 盏红灯( 9 10 11 12 )的等待时间为 147 秒。
: b3 Z* b: J6 Y# E1 t 此时,总塞车量为:
; u* _1 ^' l( R2 ] u5 }1 T . T8 J* Z! w5 O( d
4 —— 8 : 7 b6 s8 r+ h! q& d
此种组合方式下,开 4 盏红灯时(编号为 1 3 4 5 )的等待时间为 80 秒,开另外 8 盏红灯(编号为 2 6 7 8 9 10 11 12 )的等待时间为 39 秒。
~$ C/ U; h9 y- Q: w1 X) \ 此时,总塞车量为: 8 O' C9 Y, B. B, L8 ?
/ @$ }; ~- ]9 C: R. k% b( `0 X
+ w0 K* l' p9 r# @ 5 —— 7 :
6 S) l# ~/ H& l' Y/ t1 B" v 开五盏红灯时(包括一个主道)的等待时间为 58 秒,开七盏红灯时(包括另一个主道及其他支道)的等待时间为 45 。 % j( q' T* `' ]% Z: G6 N
此时,总塞车量为: 3 Y" s2 k6 ]% k6 g# ?
- u+ P: p4 t: n( `4 B% J/ \& [
' o/ C$ @. h% ?& \ 6 —— 6 : # |5 {& T" c7 d" P* ~& B
此种组合方式下,开六盏红灯时(包括一个主道)的等待时间为 50 秒,开另外六盏红灯时(包括另一个主道及其他支道)的等待时间也为 50 (由于分布相同,其实两个等待时间应该一样,但由于时模拟,不可避免的造成一定的差异)。
7 Q% ^; g8 X. `/ z- s h4 f 此时,总塞车量为: % C, L- y% B9 Z6 z
2 j4 E( c$ W- u8 O) b8 a* r 6 L# y8 L& O* V8 K* M
由上可知:
5 i" C! n% L% A. |. p% ` 对于高峰期和次高峰期都应该选取 6 —— 6 的组合,并且将两条主道分配到不同的组合中。 # i, A: r( c* K
" u8 `$ q; @: }
7 g$ ~) ]4 r0 D- ~5 r: ^; N 说明:(为什么选取组合时两条大道不能同时选取?)
6 T z( V0 \. D. d 下面只针对高峰期说明:
" f, s& T1 l- Q% t% M8 N 对于高峰期 同时选取两条大道的情况:
5 H% P0 R( B; j. Z i, d6 ^ 有 2 盏红灯亮:如果同时选取两条大道通路时,经模拟,其等待时间 T=inf ,也就是说不可能达到降低车辆的目的。
9 ?+ Z$ w3 ~ C" d3 U 有 3 盏红灯亮:如果同时选取两条大道通路时,经模拟,其等待时间 T=inf ,也就是说不可能达到降低车辆的目的。 ' U$ l+ Y, p! R. q
有 4 盏红灯亮:如果同时选取两条大道通路时,经模拟,其等待时间 T=158 秒,并且多次模拟发现其等待时间出现为 inf 的几率很大,也就是说不可能达到降低车辆的目的。 4 |- \; ^- B; d! p/ b; H
有 5 盏红灯亮:如果同时选取两条大道通路时,经模拟,其等待时间 T=101 秒,并且多次模拟发现其等待时间出现为 inf 的几率很大,也就是说不可能达到降低车辆的目的。
O- g5 t7 V) \0 D# r# o. B 有 6 盏红灯亮:如果同时选取两条大道通路时,经模拟,其等待时间 T=63 秒。
% f' U! N. d* m! h6 x4 s 有 7 盏红灯亮:如果同时选取两条大道通路时,经模拟,其等待时间 T=50 秒。 ( R6 f% X$ U, d
有 8 盏红灯亮:如果同时选取两条大道通路时,经模拟,其等待时间 T=45 秒。
3 M. |8 l" b, ], f( C4 T$ k( ] 有 9 盏红灯亮:如果同时选取两条大道通路时,经模拟,其等待时间 T=35 秒。 6 U" j8 o5 c- D3 n& _! V
有 10 盏红灯亮:如果同时选取两条大道通路时,经模拟,其等待时间 T=30 秒。 ; P+ p _3 G2 k) `& ~
9 x% L9 {! L; @6 h& c 同样地,考虑到我们设计的算法,对于高峰期 ,不可能不选取某一条大道,所以我们只需考虑对称选取,即组合时尽可能的将大道分配在不同组合中。
2 c: r% n5 J6 I3 l 有 2 盏红灯亮:只选取一个大道通路,另一个大道堵塞时,经模拟,其等待时间多次出现 T=inf ,说明此种情况不可能大道降低车辆的目的。 9 a( \1 Z% P, T
有 3 盏红灯亮:只选取一个大道通路,另一个大道堵塞时,经模拟,其等待时间 T=96 秒,但也多次出现 inf 的情况,因此不考虑此种情形。
( N! j) Q& m( Z# ^; z 有 4 盏红灯亮:只选取一个大道通路,另一个大道堵塞时,经模拟,其等待时间
. c1 A6 Y& n( ~" |: Z T=65 秒,但也有很大的几率出现 inf 的现象,也不考虑。
! _' {# R5 j: [" k9 N4 {$ G 有 5 盏红灯亮:只选取一个大道通路,另一个大道堵塞时,经模拟,其等待时间 " f1 e. b. @4 H7 |8 [8 G
T=45 秒。 3 s$ u* z c5 z; J- f. y
有 6 盏红灯亮:只选取一个大道通路,另一个大道堵塞时,经模拟,其等待时间 & W: B. o8 z, M& F8 ~
T=35 秒。
* B+ f( `" s' ~- W: U, A 有 7 盏红灯亮:只选取一个大道通路,另一个大道堵塞时,经模拟,其等待时间
) x! E3 u! H! b, @& b T=31 秒。 ; J+ r3 s. _. X
有 8 盏红灯亮:只选取一个大道通路,另一个大道堵塞时,经模拟,其等待时间
; S$ `* [/ g+ P2 D, t/ t; i T=27 秒。 & L' q9 Y* G U9 ?1 ]: H; E
有 9 盏红灯亮:只选取一个大道通路,另一个大道堵塞时,经模拟,其等待时间
! n& G0 C# O d- ]2 {. f T=25 秒。 4 l) i% Q2 S( c4 V2 ^7 i
有 10 盏红灯亮:只选取一个大道通路,另一个大道堵塞时,经模拟,其等待时间 =23 秒。 $ D! {/ Y* _, R4 ?6 ]
8 f+ }8 g( [) M4 S$ m0 y 对比上面的两种组合下的结果,显然第二种情况更为节约时间,对于所有红灯亮的情况,只选取一个大道通畅的情况能保证等车时间。因此,我们认为,选取组合时两条大道不能同时选取。 + B/ | W/ r- v! H3 ~
6 S0 _3 U! x( L% f/ V* l/ F$ }
由此,我们可以得出高峰期和次高峰期的红绿灯控制方案:
) h0 o. h3 `& y" _% `1 z2 J 对于高峰期的方案:
& R7 B; q: `" t3 z5 U! J6 `( l! U3 ~ 先亮 6 盏红灯(包括主道的那个红灯),其持续时间为 T=65 秒,此后,红灯全灭,绿灯全部打开(包括原来的),持续时间为 T=27 秒(在高峰期,对绿灯全部打开的情况,即所有路口通畅时,经模拟,通畅时间为 T=27 秒,此后若不打开红灯限制车流入,将超过环岛最大车容量,因此,时间不能超过 27 秒,但是,我们为方便设计考虑,将时间定为 27 秒)。之后,又打开另外一组没亮过的红灯,持续时间为 T=65 秒。结束后重复上述过程。 0 x8 v! c5 z; p$ \. l( Q% G$ d) V( U2 ?
: N- K. d% E) ^* w
对于次高峰的方案: ) r% L5 T$ P7 |8 U' A
先亮 6 盏红灯(包括主道的那个红灯),其持续时间为 T=35 秒,此后,红灯全灭,绿灯全部打开(包括原来的),持续时间为 T=23 秒(在高峰期,对绿灯全部打开的情况,即所有路口通畅时,经模拟,通畅时间为 T=25 秒,此后若不打开红灯限制车流入,将错过环岛最大车容量,因此,时间不能超过 25 秒,为此,我们为方便设计考虑,将时间定为 20 秒)。之后,又打开另外一组没亮过的红灯,持续时间为 T=35 秒。结束后重复上述过程。
i q/ t9 Q A; }0 z# ? 1 i; m" Y8 j" O3 `' G# E2 H# h
/ Y0 f4 J9 h% t3 O 三、对于一般情况与稀疏情况的说明: : x. J$ W N9 u5 L, a! b2 h' x
- W( J; W9 E# i, T+ e
A.
" Z2 [8 L5 O9 S9 F 一般情况:
1 c5 @4 o9 h; n% p% l: r. @ 对于 6 盏灯的组合(每个组合只分配有一个大道),其等待时间 T>150 秒,如果红灯时间仍然按此时间设计的话,肯定是不科学的,因为不可能让汽车等待如此之久。因此,我们从尽可能减少等待时间为标准,经过模拟,发现当所有路口均亮红灯时,其等待时间最少,为 T=23 秒,而这也符合一般城市中非高峰期的等车时间,我们为了方便设计,将此时间定位 30 秒,而 30 秒也是一个可承受的等候时间。对于绿灯全开时的情况,更趋前面的假设,经过模拟,畅通时间为 T=50 秒。因此,我们选定一般情况时,红绿灯亮灭的原则时,所有路口红灯全亮,持续时间为 T=30 秒,此后红灯灭,绿灯开,持续时间为 50 秒。之后,重复循环。 / c* w* T' D: |3 e. d
B. 稀疏情况:
$ b6 i @& Q# y" {) l 对于稀疏情况,车流量具有不确定性,我们无法估计具体的车流量,但由于此种情况下车流量很小,我们可以将之归到一般情况,并且以一般情况的红绿灯规则来控制。 1 h- P p; [5 c) N
& I2 E. j6 ^# y/ H0 ^9 _
* L8 O" K4 t- a! {8 A7 N7 p. J3 P ' w7 a7 e" \5 u' \, t2 @' { A
根据我们的方案,我们采取随机模拟的方法,分别对高峰期,次高峰,一般情况和稀疏情况进行随机模拟。 i* g' |$ P$ p5 U$ q
为了保证环岛内交通的流畅,我们设定环岛内的车辆总数 Q 不能超过 1000 ,但实际上换岛内最大车容量为 1327 ,因此,我们在考虑交通流畅性的前提下,可以适当地放宽这个限制,严格规定 Q 不能超过 1200 。 1 p% `6 o9 i D8 N6 k
我们检验的目的是为了了解模型的稳定性,为此,我们对四种情况分别进行了 24 小时的模拟,其结果如下:
4 V$ H1 Q5 c0 O 1. 高峰期:(程序见附录)
$ z! c+ Y# h2 X+ | 第一阶段红灯持续时间 t=65 秒 " I% n) Q6 t0 m/ h
第二阶段绿灯持续时间 t=27 秒
0 x% n! j" u" H$ {+ V3 h 第三阶段红灯持续时间 t=65 秒
7 [. B4 M9 x4 q6 k" A, b9 h 第四阶段绿灯持续时间 t=27 秒
* Y, I# \$ z/ K) @# ? 总周期 T=184 秒
9 Z1 z0 f0 K) L, G
2 s' N& ^4 I* w D% i I 对于此方案,我们在模拟时发现,由于每周期都会累积一定的车辆,也就是误差,在很长时间后,其累积的误差将达到非常大并且不合理(超出最大容量)的数值。因此,我们需要增加一个修正时间,并且此时间应该很小,只在车辆超过一定数量时才加入。 ] Q( j0 a H$ w0 Z
我们的做法是,当环岛内车辆大于 1000 时就对红灯持续时间加 3 秒钟,即此时红灯持续时间 t=65+3=68 秒。在车总量 Q 没有超过 1000 时,我们仍然以 65 秒的规定时间运行红灯。 ) E4 ?/ Y# Q- W7 u" A! [
这样,我们模拟 24 小时高峰期后:超过 1200 的车辆次数为 37 ,占一天内车辆总数的比例为 1.97% 。(这只是模拟一次的情况,在模型改进中,我们模拟八次后取平均,得出更加准确的比例: 2.74% )
! a2 y4 A0 b& b6 A4 ~ 对于此比例,我们认为是相当小的,也就是说,发生环岛堵车的概率时非常小的,因为我们是对 1 天进行模拟,累积误差显然会相当大。而一般的高峰期只持续 2 小时左右,累积误差必然很小,其堵车概率也应该低于 1.97% 。
+ R: |1 x1 s3 o0 S0 G4 ?2 O- l7 s
; [5 \3 w: b4 I/ ?0 w 2. 次高峰期:(程序见附录) 8 O! d6 a! \8 U3 D$ {; v
第一阶段红灯持续时间 t=35 秒
: m# ]* f* a, b/ _. u) y 第二阶段绿灯持续时间 t=23 秒
. f+ x. z8 x5 G$ s( y 第三阶段红灯持续时间 t=35 秒 $ H. [. d1 r3 |; D ?% Z
第四阶段绿灯持续时间 t=23 秒
% s# r* z! F1 j* Z- w; z6 j V 总周期 T=116 秒 & ?; ]/ a6 ~5 q3 R3 G9 K
对于此方案,我们为了保证环岛被最大利用,同时又能使交通运转顺畅,设定环岛内最大车辆数不超过 800 ,经我们模拟 24 小时次高峰:超过 800 辆的几率为: & ]6 T! m5 K% O
,显然这是非常好的方案,鉴于此,我们不对此方案做修正,即沿用模型建立中确定的红绿灯持续时间。
- V! S& r( u* h1 X0 n ~ 3. 一般情况和稀疏情况: 4 x g& F7 k6 x+ E' W
因为车流量的原因,不可能造成交通的拥堵,因此,我们不在对此情况做模型检验。为了说明时间安排的科学性,可参考其他大城市的一般情况的红绿灯时间。
9 J0 G8 }, n W: P
- h4 } Z2 n+ ~& u! P+ I! i
8 x8 ^# q/ d7 w1 e( K. Z: {
# }) w! _1 {8 I1 u! X 1 .对于工作日和非工作日,由于车流量的分布不同,我们可以根据表 1 来设计红绿灯时间安排。
. W# `" e( w; z5 x% d! X# O. f 2 .我们只考虑了每个路口流入与流出的关系,并没有考虑到车辆在环岛内的绕行情况。所以可以增加限制条件:环岛内并行车辆不碰撞,这样可以选出更加优化的方案。 - L6 W; G' W( G# f$ o
3 .不妨考虑车辆在环路中的相位问题,这项可以细化到每辆车的行驶情况,但这样相对来说较为复杂,我们不予考虑。 3 ^8 S8 c9 c. A
4 .对高峰期时间的修正:
% C( U7 K7 J A; ? S! D/ f 若不对高峰期的红灯持续时间作修正,则经长时间后,累积误差将使环岛内车总量超过 1200 (我们称之为危险),这是非常可怕和不安全的。为此,我们对红灯持续时间做一点微小的修正。经过我们的模拟:(程序见附录) $ @4 S; O9 x% ], h f+ o- K+ n
修正时间 t=0 时,出现危险的几率: 89.62% 。
$ T, [* X0 m) P 修正时间 t= -1 时,出现危险的几率: 88.56% 。 3 x/ D& E5 g: m& X2 }" @
修正时间 t= -2 时,出现危险的几率: 98.03% 。
( @7 L! ?; F: \0 h! ` x/ u$ \ 其实,如果减少红灯时间,显然,这时在这段时间内进入的车辆数目就会增加,在不修正时已经危险的情况下当然就会照成危险几率变大。
4 f, F' h* G; m 所以,我们应该将修正时间调为正值。
( A, x) F2 `; v! x9 Z 修正时间 t=1 时,出现危险的几率: 93.33% 。 / o' X: T$ }& ]+ L9 C; j, a
修正时间 t=2 时,出现危险的几率: 13.74 % 。 . w4 k% u- H' u w& q' G; [1 X
修正时间 t=3 时,出现危险的几率: 2.74% 。
8 a0 M6 D6 L* i% [, o, z 因此,我们以 5% 为限定,确定出修正时间为 3 秒。
r; ? ^5 \# H6 [3 j ; X) z9 T" E; c- {8 Y$ g7 \5 _
8.1 优点
# n! Z: I* @7 w 7 b5 P, d3 \# D e. s1 @8 _
1.本文对不同车流时段(高峰期、次高峰、一般情况与稀疏情况)模型分别进行了模拟计算,得到了最优组合下的红绿灯循环时间。由于车流量是基于模拟的,并且环岛内车辆总数也是先设定的,因此,我们的模型可以适用于很多情况。并且,根据我们的模型,对于已知车总量和具体车流分布情况,可以重新确定出最优化的红绿灯控制模型。 5 f0 l {6 u8 T# V6 L, R! v
k0 y' A% o& n6 C& `' U
2.在建模过程中,我们对所有可能出现的红绿灯组合情况进行了模拟,这样最终得到的最优组合的方法是很科学的。 . Q t2 z" ~+ n- J
6 J7 M. |- m9 p6 T, ?3 \8 I 8.2 缺点 & U1 Q0 ?# C: D; D
9 O( i& [* z: K
1.在模拟模型的过程中,我们假定车流量服从均匀分布,这带有一定的主观性,并且我们并没有考虑每一辆车的具体行驶情况,比如车辆在环路中的相位问题,这可能造成某些紧急事件发生时不能及时疏通道路的问题。
zan
总评分: 体力 + 1
查看全部评分