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