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