数学建模社区-数学中国

标题: 巴黎环岛设计(本队拙见) [打印本页]

作者: lijiustc    时间: 2009-8-17 16:52
标题: 巴黎环岛设计(本队拙见)
巴黎环岛车流控制模型
摘要

$ S3 D% I. T4 y/ C本文就巴黎凯旋门环岛的交通问题,建立了控制进入、环绕、流出此环岛车流量的红绿灯模型,目的是使环岛内交通顺畅,并且尽量让堵车时间短,堵车数量少。
$ |" v* D2 i6 |9 @  b% k$ r9 J    通过分析,发现环岛内的最大车流量为1000,波动范围为+200,还可根据车道宽度计算出每个路口的最大车流量。这两个因素对环岛交通有着很大影响。因此,主要考虑车流量和环岛内的车辆数目的影响。并设定,在建立模型时,环内车辆总数最好不超过1000辆。
) y) M6 S8 v& w5 g根据各时段车流量的多少,本文将车流分布为四种情况:高峰期、次高峰、一般情况、稀疏情况。再根据各时期的车流量,建立了环岛内车辆总数Q关于流入量与流出量的方程: 。通过随机模拟,得出环岛12个路口的车流量,并根据堵车时间尽量短,堵车数量尽量少的原则,找出所有可能的红绿灯组合(前提是每个路口都有红绿灯),通过比较,得出最优化的组合(具体组合见模型建立与求解部分)。6 ]- q( c  O9 I9 e
通过随机模拟,对于不同时期,得到不同最佳方案:
0 b' U( R) V/ r: ^4 g# t* k1.对于高峰期,将红绿灯时间分为四个阶段: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秒。
# _# M/ u  ]9 C' F2 r9 O, E6 O0 D. g4 O2.对于次高峰的方案,红绿灯组合与开关顺序与高峰期完全相同只是各时段持续时间不同:T1=T3=35秒,T2=T4=23秒。
0 ?; Y8 {0 }( B1 \. W3.对于一般情况和稀疏情况,红绿灯顺序为:在所有路口,先红灯亮,持续时间为T=30秒;之后绿灯亮,持续时间为T=50秒。之后,重复循环。0 t; C0 u3 B' P3 a! a- z; \
由以上方案来模拟计算一天内环岛内车流量Q,其值超过最大容量的平均概率不超过5.00%,较为理想科学,所以此方案可行性较高。   _/ p1 ]: M5 `8 u7 `
最后,对模型进行了改进与评价。
3 @1 D) _! E6 {1 Y" }& S$ `% J
  H! [' F- {  |8 y
6 t0 B0 [9 f( r7 O$ A" Y关键词:环岛车流控制 红绿灯控制 排列组合 随机模拟 等待时间 5 u& T9 T$ w" ]  q- a

; |4 {; q1 W; P) A
, x" l5 j( _. B7 ~9 R - l; [: W7 o5 _2 Q
3 s9 `/ g7 S  a6 g  d
- v) j8 X- c/ L  {* w& X
6 |" p" k, {8 {
一.问题的提出
巴黎凯旋门环岛有12个路口,其中有2条主道,10条支道。在进入该环岛的道路入口处可以设计有一些信号灯,或其他标志来控制车辆的流通。即为环岛制定车流控制模型,要综合考虑各时刻的车流量,环岛内最大车流量,天气情况,工作日与周末情况等因素。
; M7 [) i' r* t: v4 N4 n- k    我们的目标是,根据已知的信息,建立控制环岛车流量的具体模型,并分析该模型的优劣与稳定情况。
: y2 }& h7 i! e  R9 J/ ~, W7 I9 d7 [
5 P6 f5 v1 h; {) U4 \
1 环岛平面图

$ n# n9 @- B# z! y
; l$ U3 U! b( C
9 E" V  w! Y) C" I- \$ N
, |# P5 m/ {9 u% F2 U
& o- E- Q' q" ~$ [# V
4 c0 A5 F" ?, {- K# F" B
二.模型假设
1.假设每个路口的进入车辆服从均匀分布(具体的分布情况见问题分析)。
! q; I* B6 L4 b- w5 U6 \2.假设每个路口的离开车辆也服从均匀分布。
( t: w& R2 j  z1 A2 k3.假设每个路口都配置有红绿灯装置。& R% V8 h- Z* V
4.假设环岛为单行道,只允许进入车辆沿着俯视逆时针方向行驶。3 I4 G: B  Y  a- x# [/ @! t" d6 J+ j
5.假设进入环岛的车辆最多只在环内行驶一圈,不能多次在环内循环。6 t0 R7 }  F' q5 t( Z
6.设环岛内与各路口处的车速为20km/h~ 30km/h5.6m/s~8.3m/s
$ \6 Y6 ?! b* f7.假设只考虑正常情况下的交通,不考虑发生车祸和路面维修等意外情况。6 C& k( L3 U1 Z; {8 b

" y* I, m9 m2 n0 P2 q, W5 ]
' A6 q5 H1 G3 p, G1 ~- E) D7 P

9 N7 B$ ]- {0 {. @/ L  C5 [
三.变量说明
:环岛内半径。0 ]7 r( {' r+ U$ S" K8 V
:环岛外半径。, t5 ]- I& R7 E% r" O; s
:车底面积。! s& w2 L6 G7 q
:环岛路面面积。其值应该为两圆面积之差,
5 G  s# n: V' K:环岛可容最大车辆数。 取整。
( P* `$ z$ W& i( m  ]:环岛内车辆总数。& \( H6 I5 B2 U5 r2 d
:环岛内车辆总数的当前值。
1 w9 D, S+ K+ F; y% H3 A:各路口进入的车流量。(1<i<128 R# r# |+ E" a& H/ h
:各路口离开的车流量。(1<i<12, r; B4 \6 W% y, D
:逻辑控制变量,用于表示各路口的通堵情况。 =1表示通路,即绿灯亮; =0表示堵车,即红灯亮。(1<i<128 r& ~' u% `. t4 Z' f
1 J/ n' p' D3 K5 s, }( e
:表示所有路口的流出车流量。
: k+ ^( G# _. `- _" u3 R# G . `: g2 W3 K4 k- q% `
:表示红绿灯持续时间,具体是红灯或绿灯,模型中会具体说明。
6 q$ m4 _8 s$ v; Q6 ~
4 b. _2 G  i5 L:为某种情况下的堵车数量,具体模型中会说明。: z/ R% ~( ~" V. g) O6 i

# p  b. |/ E. r( k:车流密度,作为参考因素,将影响对车流量的模拟。
5 {, H4 H! u, ^  R : }, n; ]; u7 e: T$ C+ Q: [3 A
. P6 R* r% [; C" W% x( R

5 A8 k2 `, `- n& d7 n- |1 v+ c
四.问题分析
此问题属于交通流问题,我们在初步考虑这个问题时,参考了交通流模型的结构方程。我们认为影响环岛车流量的因素有很多:红绿灯,时刻(高峰期,平时等),天气情况,游客人数(虽然凯旋门游客时从地下进入凯旋门的,但是每个路口还是设置了人行道,所以游客的多少也会影响到车流速度,因而影响到车流量)。正常情况下我们不再考虑路面维修和车祸的影响。; S% W, r8 _' @  }$ n# {+ V7 z
由上分析,我们需要做的是通过对交通流情况的模拟,找到最优化的红绿灯控制情况,从而达到车辆最优化控制的目的。  _$ j8 G1 i1 v! I) |; H
因此,我们将此问题归类为最优规划类问题。
# y2 h7 Z: m4 T/ d! `# a! \% m; p我们查找到了以下参数:% r2 y( @5 S: D2 a0 t" Z* L9 w
凯旋门环岛每天平均车流量:110/天。
% w% _& u# P" k# Y7 Q. R" `环岛外半径:80m% i/ S% P1 w3 E
环岛内半径:53m) {: l9 s5 \' d- o+ C" V2 u
一般中型车的底座面积:(7~10m2: R, M4 I( ~/ d; q* {6 w
主道可以同时并行3~4辆车;支道可以同时并行1~2两车。
* a+ c& s& K. f; x& R( Q7 Q7 ` . s% z0 @+ u' x% `9 [1 ?
0 L; g3 D  l% M
4.1 环岛最大车容量:
3 c* V- [! s2 v* P# b! a; |7 N由上面搜集的数据,我们可以计算出环岛最大车容量。$ ^6 r$ e/ r  W) U
环岛内半径为 ,外半径为 ,车底面积为
) Z; U! ~! s0 Y则环岛路面面积应该为两圆面积之差:1 g! d$ e  n9 I  J9 x

3 K7 P% j# V, t  t+ t7 r则环岛可容最大车辆数为:   (取整)3 x. ~3 L  [) P( C7 G5 v+ ?0 k7 b
可得环岛最大可容车辆数目为: =1327(辆)。+ P  }7 r# a2 s+ V# y
考虑到车之间应该有一定的间距,并且应保证环岛有一定的畅通,流畅性,我们设定环岛最大可容车辆数为N=1000(稍微超过1000也行,我们只要保证严格地不超过1200)& ~: v6 E  I' A  ~) P/ c) v  y

8 D2 }3 [& c7 T- @5 ]
9 v/ ~, v# G# s4 O8 Y4.2 各时段的车流情况6 p1 j4 C3 `- y: a/ K1 `
" [6 g- a& O8 \7 L* |
工作日5 _' E2 m4 p' r' v5 s
时间分布6 ?& k7 D3 ^6 t: R3 t! t
时期分布8 I5 f( ?6 d6 s$ w+ J
000~500
% R. w, S) }% B( E' A* y
稀疏情况
" m4 b" g8 \8 v$ z' O2 ^! O
500~600
/ ^# A, m6 V& ]* K8 a
一般情况" @* d# K, ]* l7 ?, q
600~7301 T6 h1 v! `  }8 w) I' C
次高峰+ J; F5 j/ Z- x
730~900
. O- \1 E* S9 `0 [! Z* }( A9 g
高峰期/ L0 n0 R6 a/ _2 n
900~1730% ?0 q- E4 W) o: y' v
次高峰1 z) V. c$ O" q* j  `
1730~19305 B# Z1 x( l/ @; l
高峰期
) H$ h( n- C9 }2 {9 K4 Y. s# e7 r7 l2 P
1930~21009 I3 A4 x  q6 ?0 k, w4 k
次高峰
9 B, Z. C. B0 L$ W" a1 _0 u& h0 T; E
2100~2300- q9 v9 ~2 x  ^$ A- t
一般情况. k$ A% n# f: a- ]
2300~2400
" T. N7 }1 m& U8 X- V2 X1 j$ ]4 b- g- ^
稀疏情况
; C' u# ?* w; q' N4 z

( z0 Z8 x  D# z" f * {  j  m6 F1 M' j7 }
周末* B* U; ?2 c% v: w' R1 |& a
时间分布
7 I" p+ _7 {# ^: X* o( P' x
时期分布
% I' y# L  y5 k9 d
000~500: x9 m' l% {0 x5 ~, Y
稀疏情况
7 ~# @) G+ _9 n, s( u
500~600
) O6 i  e3 P. p3 @8 X5 S5 L0 q
一般情况
8 U/ D: ^0 ^9 c! @; M1 c9 I
600~8000 a, z# R$ ^8 L6 s% n- k9 }
次高峰. T/ W  L- R3 j
800~1730- ], C! [5 E( ~8 `# u6 N6 i
高峰期; g2 h9 W; Q+ e3 v- k
1730~2300/ c6 ?5 G# f4 w/ \
次高峰- U4 t% M2 m$ F2 s
2300~0006 T( J" }: i4 [$ G  `6 p
一般情况
) ?$ s( `) a# G/ ?) M; d' o
1
& z/ U. g& \/ G& [2 L
说明:
' {% F1 C$ ?: {- Y: l+ `. f& M6 k在巴黎和法国其他主要城市,高峰时段的交通最为挤塞。法国每日的交通高峰时段是早上7时30分至9时及下午5时30分至7时30分的上下班时间。在星期五法国人一般都会外出旅游,所以交通高峰期会较平日来得更早,在下午4时起便开始阻塞,其中尤以离开巴黎的各条公路最为繁忙,而非高峰时段的交通一般非常顺畅。
2 n/ t# g6 j5 _' R3 |" ]; X" f
; F0 D/ ~4 C  g6 `4.3 对于交通模型的假设与估计+ L. s# ]  |$ R
对于交通流模型:
+ |. }3 M. d1 O. p2 j其中:q为车流量(即单位时间内通过的车辆数);9 @4 O8 m, J) Q' [1 X5 E5 Z' }

/ T  ^3 T( L' L& Y9 k2 F
  @" p1 s- L: _
为车流密度(单位路长的车辆数);: q0 w# k9 b; n6 P3 Q5 S. a4 o# i

+ U4 g; j  ~; M& k7 ^) m( q7 [3 @9 ~3 r, D) H" k

3 j3 \. g* V2 ^3 f, t
为最大车流密度。
/ S, c4 C" G' V- L2 H$ @1 k4 r/ m9 h# @* ~+ s* B$ J- e! z$ d3 k1 g( h
1 U9 W, H$ [! r, L$ a

" e, l4 Z4 J" p
为最大车速(注意:车速时车流密度的函数, )。
6 ]; Y! v) B% `' @6 a# ]6 ^! Y根据上面的方程,我们可以估计出每个路口不同阶段的车流量,这包括流入与流出。) Q/ E8 s' p% i4 X/ L" Q
为了保证总塞车量最小,同时等车时间最短。我们针对不同时段对车流量进行了不同的划分:
& k4 Y% l4 Y" K2 l
环岛内车辆总数Q
% `* Q6 K$ Q) v2 I1 u7 O+ O# }
   # E" B3 v' x* j1 N% c
有红灯亮$ H# J4 }8 }. m1 c2 Y
无红灯亮- L- N, D9 N- r, A5 i1 L) a# E) F, u

9 P( ?3 f7 w7 }5 n* l
3 i5 ^$ W: e& C( j" B$ z

% x; @2 R: [7 `4 V2 G/ P0 D/ M
6 i  p9 Q( ^- o# K5 ]) e7 E
主道y# V0 h, O: n6 B" n" ~& G" X
支道y+ h' O9 a$ {( V: e
主道w* K( d. e! Z& @  L& Y, l
支道w; G" q! A) i* B
主道y
! `. X7 Q! {, J4 A
支道y
" z: ^$ {2 t' b/ \; D# {& {
主道w
8 C+ S. p7 E/ S' {# p6 Y. ^
支道w6 `" F6 B8 f  i" ?% Z
800~1000! @: d+ t" a% L# `* `. i
高峰期
/ T1 H& `5 P3 \" k8 ^  s; g
3~4- j8 j- a0 v& }
1~2
7 K" [; G' \/ W' l
0~4. e: H6 K! y6 P: t
0~2/ }% `! d2 X% ]! j  J$ w
3~4
: [. [: I, V# j
1~28 r7 L8 \  X, K- _- n1 ?% o$ Q
0~4  T7 E, r5 `8 c* s8 L  b$ a
0~2
4 a! r; s% R$ D3 I+ ?
500~800
) r# w; U5 J2 x) A. o( W
次高峰% I; l; g" V# Z" D7 K
2~42 |- g( W) Y5 [- E  z8 ~( k: p
0~2; \  _4 S+ V% u9 e) Z6 _7 T
0~4/ |: Q' j$ Y# m) a, j2 c
0~2
6 Z' _3 j; j7 @& z5 {
2~4
. M5 |( `6 h% c! W: h" j% \$ N+ g
0~21 s# s& T9 U+ w: f
0~2
1 d6 M( x2 I& c4 \
0~1
3 g% F! s2 X/ K! U0 r. ^7 A
200~500
  n/ V$ [  x- T1 r- v
一般情
6 B- c( i$ h8 c! l
1~2% U/ M' a0 `/ n( }
0~27 n0 q7 Q2 q8 @) L3 Y
0~4% h9 ]0 Y7 ~. d0 }( N
0~2) d- ?* O. D& b5 L" Q/ R
1~2
, x# B: f+ P/ c* k
0~2) o6 d. W: s& @8 E: e; O
0~2
4 n8 E1 s  c# ?  h$ {% d
0~1
! c- y! n+ E; U
0~200
4 `( B+ L' T7 x5 W& c/ W
稀疏情
) G6 M: U; }! r( `& k' A
*  _; d4 o" @) M3 v7 L9 Z
*2 L. |3 x3 a! K- l; z
*. C% F0 G7 A$ y5 \
*2 ^9 K' q) p) ~5 r( b
*9 r( a: K/ G* z2 B; w" X
*
+ Z. E2 I9 A# L8 C
*
; ]6 r- J0 D: P
*& x6 ^* s0 ^' E, s( f
2
五.模型的建立和求解
我们先设立一个逻辑控制变量
3 C8 w3 z: v9 Y; V对第il路口,当有车进入时, =1(即认为绿灯亮)。
, d& z1 U" B! b9 @4 v! E! H$ {               当没有车进入时, =0(即认为绿灯灭)。; \2 F# Z" S# O, [$ D' q
又设 为第i个路口的车流量(辆/秒)。+ B$ u; }% S: O6 @2 Y% ~& P+ B
则我们可以列出下列等式:- J  B* h; f  p
      根据:单位时间内,环路车流量的增量=流入的车流量—流出的车流量。
$ _6 D: s2 x, N; [( M0 z# P
- u( Z. m% p2 e4 c
; N% [6 V: c" z  `( C

2 q; Y; w2 p6 x" v- ]8 b6 Ldq表示单位时间内环路车流量的增量。
- Z6 V, [0 e9 Y% U& e$ o " n2 s% E3 {$ A5 I% k4 z5 x
对于 以及 我们可以用rand模拟。
- Y5 n. g, Q( {- D0 P
% c6 C% d; I# N2 Q( d- U/ T- Z' H" X因此,环岛内车辆总数Q满足:& h% [. x8 o3 D, m! P8 s8 E4 a9 k7 m

, r. u, H# C: z6 p5 @; I注:
9 m$ ?2 |; C; e6 E6 o+ b- r由于 的组合有很多种,我们加入限定条件,即要保证等待时间最短(红灯亮的时间最短),以及等车数量最少。3 Q4 K) H3 b" j# M) Z6 U9 b

6 c1 \+ Q+ `0 g$ H因为等待时间就是红灯亮的时间T,等车数量又与车速和等车时间有关。; R% N6 o0 I8 ?8 d/ j: R( @( {
! Y: G( |4 `9 z) B6 E
为此,我们设立下列函数:0 m3 h- q& S+ y$ D1 S) L; Z
( r. K1 V: g& g6 F8 a+ a( k
( ?4 u) {% I/ t4 w' S3 z: V

/ C" W0 x4 s1 Q8 r3 w
5 L" I1 T  ^" v+ N$ y- {说明:8 l. h- |$ d6 T: P
为各路口的逻辑值(通为1,不通为0
2 m" U- k. A9 G7 U' p) H
; l) g7 I  L6 P为第i个路口的车流量(辆/秒)
% S; b; h) Q1 P9 a为循环中第一次亮红灯时的堵车量, 为第二次亮红灯时( 的对立面)的堵车辆。- V& c' q/ A7 l% C
为总堵车辆。
9 ^, Y( e3 Y9 w* b9 A% R3 ^5 W! b % X  a% N$ P2 `$ Q& I
上面的分析可能需用到下列参数值:& U5 g# T  d: }" \. {. r
1., w  q7 v% e/ r
每条路段上的最大车流量。

& w: d, J# k0 f% N. {: Y4 I, D) v2.3 J1 i9 }; X* @# l' V$ y
每天路段上的最大车流密度。
/ H' D" A" T! l$ y
3.
  d, c/ C+ D0 ~( c) q7 y
每条路口进入的车流量(辆/秒)。
6 y: D' W& H' e# a% }3 e
4.4 D4 o; Z- O; h, n- k  y, H
每条路口开出的车流量(辆/秒)。

  m; v$ E" e% {( j  ~# Z  [7 A8 W 7 I+ ~2 R2 Z3 ?) `0 c
通过模拟,我们将在不同的组合中找出最佳的红绿灯方案,并通过多次模拟,确定时间分配。4 d* ?! F5 X2 A: F) J& T
7 G/ a0 [' P! ]2 P0 N( t& K- M
& x8 I; E1 ~& W" x2 {0 C1 Y$ h) G, M
一、对于高峰期时,我们对于下列组合进行了模拟(程序见附件):
. p3 [  {  j/ m: r/ v) e1 X* e
红灯亮的个数(盏)
1 O- d) Y! ~, A( z1 b0 X
12  d/ h( y* j+ A0 d
11
$ L( y  c* s, |! s* n' D# Y& d
10* m. G) O$ b2 P; L# I- |4 a
9
$ o( g, N% T4 }5 x( S' h' M- `
8
. d, p3 e& G3 u+ }
7/ `5 M! ^/ _* d% Y) W9 O
6
* p# V7 Z6 _$ D( C0 ^
5' p& c& C5 d$ l( ^  m) B
4
/ t) t1 ?$ c8 F" {8 x3 m7 L8 i
34 E8 `6 u. L& R2 P$ p* Y
2
  \( V3 A7 q/ _5 p# m  K: H
1
5 m6 D+ E6 ^9 G  B0 G6 h3 r! k
0
! u$ R. {7 F  |0 J/ Z$ V- H
平均最短等待时间(秒)7 m' P: Z' u! d+ @$ q4 h9 p& P
167 s  `" }5 {& @
201 i% [$ ^* c' l1 ?8 h0 V
22
5 ]8 q; \" S0 ~0 R+ \4 ~5 d1 d! P
27: \, }: B* R$ G
308 K3 e: a( _$ k$ N# {0 C2 R7 Z
42' n. r; P8 z: ^' H% \
70  G0 _: x1 c6 n
1541 K5 d0 ?# _# c% ^' l
Inf
2 E2 a- W8 _  A' R, s$ f(无穷大)
) P6 H* ?3 m. m, C) ?% Z8 [! _# S
Inf- U' {! I1 z- q" J: z" B
Inf" E6 p8 {* y2 i4 S) i
Inf2 m- C  L4 R9 o$ C6 B/ i) w# V, [
Inf
. [0 K8 C6 G# o; m% {" f/ F/ b
3
注释:
: X# d1 g; i/ v/ e! H5 Q! H& G& m# j对于红灯亮的盏数,我们可以有很多种组合方式,比如红灯亮1盏,可以是1~12编号中任何一个亮,但这些组合中总是有一种或多种为最优组合,这从我们程序结果可以看出。
- x0 P$ _0 q+ }' G% b5 E
+ T* Q1 d- B- z" t  O, f分析:
" {: d$ M1 {3 ]) L" ^; d  D
% e3 u3 _2 c4 _' ]0盏红灯亮:5 L& ~5 {2 M  s# U) E. ?6 r
此情况显然不合理,因为没有红灯就无法控制环岛总量。) _: R% X- A$ e
# ~3 q1 e2 g4 t9 \" `9 L  {. q
1盏红灯亮:
: q8 t, \: e: s+ d对于此种情况,经过模拟发现不可能达到降低环岛车辆的目的,反而,环岛内将更加拥堵。(过程见程序)
" z  F( _$ g6 {2 ?
, L0 x1 {; V# g- y1 }2盏红灯亮:
7 K; h  a9 U* Z! b+ V3 n. j此情况结果同上,不可能达到降低车辆的目的。5 s& [0 D& P* c6 `+ K/ J

1 W! A$ B0 |$ u3盏红灯亮:
# U8 u2 y, x7 g2 T! N5 R& m此情况结果同上,不可能达到降低车辆的目的。
5 i7 P" ?9 b3 L% a; u8 R
3 O( u) Z5 D: @( v- }& C6 ~4 Z1 M. Y4盏红灯亮:
5 A$ z% c4 A  G% m4 C/ w: B2 z9 v此情况结果同上,不可能达到降低车辆的目的。
4 D' r8 e" ]" ]  K8 Z , v7 d( Q/ E/ Q! s+ _- [  G# s
由上分析说明,红灯至少应该亮五盏以上。
2 Q4 h: g" w# w! x; T- S8 `: M
# d  f3 r' j" F4 O为此,我们排出一下组合:
) O6 n% @! ]  s0 l# v: I5——7
/ Y# p! Q, C4 `- i; x此种组合方式下,可以分为:$ q2 @' U7 ?; l- w# X
a.开五盏红灯时(包括一个主道)的等待时间为144秒,开七盏红灯时(包括另一个主道及其他支道)的等待时间为48, U$ x* K- [5 f% M3 G3 U$ M  e
此时,总塞车量为:+ c4 R# f7 m3 P* [: y- d
( M# v2 j, F5 H; J5 j1 f3 W5 D
b. 开五盏红灯时(不包括主道)的等待时间为inf秒,故此情况不成立。
! H7 k/ B6 s* `3 R; l5 ?
1 }8 h5 |! J# `* q; X% e( `$ W6——6
' b5 {9 |7 g/ q! b3 d2 I8 O$ g- C此种组合方式下,开六盏红灯时(包括一个主道)的等待时间为68秒,开另外六盏红灯时(包括另一个主道及其他支道)的等待时间也为67(由于分布相同,其实两个等待时间应该一样,但由于是模拟,不可避免的造成一定的差异)。5 ?+ L  q! B4 L0 h. X7 i
此时,总塞车量为:
' e1 y# H$ V" `. M& D6 F9 L7 F8 ~& H7 \1 N( c

7 C+ v$ x' ~7 Q: t7 R在保持堵车时间尽量短,堵车数量尽量少的原则下:
, k1 ^% a0 ?. B8 X& p, v; B只有选择6——6组合是最优的。; a/ }: [) I3 r- d4 B2 _8 ~! ^
根据等概率原理,各条支道应看做概率上相同的路口,而两条大道也是等效的,因此,在模拟时,我们就可以人为地设定组合,只需保证总数按红灯亮的盏数分布即可。比如:对有6盏红灯亮,我们选定组合编号为:1 3 5 7 9 111为主道),此组合方式与2 4 6 8 10 12等效。
* Y# j* d& Y2 o: P+ g& z ! y% v5 k# V0 |% e2 r6 y0 x
这时我们可以确定红绿灯的循环模式。# A8 f3 O+ j. V8 d7 `. A9 L
不妨设定,先使编号为1 3 5 7 9 11 的红灯亮,在经过T(T=68)后,打开所有绿灯(包括原来的绿灯),再等环岛内车辆上升至限定值后(经计算t=25),再打开另外路口6盏红灯,其编号为2 4 6 8 10 12。之后,重复上述循环。
" F: W7 Y! `3 t8 X1 T7 x 9 z  q( |+ R! Z% }; E) ?

' l2 V( V- h, n9 h二、对次高峰,模拟结果如下(程序见附件):
( y9 O) ]  g  `8 L
亮红灯个数(盏)
: f) T7 z' ?. c9 w" E& B( p
12: E/ b, T' [$ W4 c/ l
118 J8 q% g+ m# [
10- V0 i/ Y7 v# U% O8 {$ T
9
- E/ {8 Z$ C: U( a
8! |3 _7 {; E' A# y! O5 x# C8 h& V2 ]
7- K8 v: X3 X( b5 T, V9 B) l
6' @+ ]' N) M. i" b0 V! Q
5. s/ E) h+ v, w1 m  u5 }2 X
4
9 o7 w# v' X0 S& F0 u( I! t
3
+ x" J1 d  I+ f1 j/ Y$ Q
2
' @8 }+ Y+ l8 ?$ [, S1 f7 _$ R
1- {7 L5 o( ], P9 M  C( I
0
( n3 {: j2 ~) `& ?4 g/ Q5 U% X
平均等待时间(秒)4 L: G, x! g( M/ v+ E
24! n( I% s8 @) B
30( F: v$ O& p+ c6 U! V
31! |* a8 g! W- M1 X
32
( t' G" J4 ]2 N6 U$ W. C
35$ v: H; {6 c" b9 L
43
1 W. V3 m1 J( u& ~0 I
574 F4 a3 D0 Z$ N
68
3 p7 w+ F- y; O, I. ?+ ?
96% T/ k0 i- Q2 n, D* v
Inf% t3 `$ e& j+ O. U" d3 G& D& f

8 w$ K6 m  ?& i+ O' b7 s
Inf" i* E; J, x# g4 Q+ y) r2 B% j  l
Inf% b* d- T& q  d7 d! b+ _# k
Inf& @" d( Y' Q2 A- [
4

$ ]; J: `& W  F# f* z' e# F8 ^: T+ `. B6 m说明:
" c6 Q7 f! ]( R对于红灯数目小于4的情况,实际上有的模拟值满足要求,但由于等待时间太长(100秒),并且情况及其不稳定,多次出现inf,也就是不能达到降低车辆的效果,我们认为这些情况都不现实,均统一成inf类。
. _- H" f5 ]6 W
+ R9 ?' l$ I5 I/ d由上分析说明:红灯至少应该亮四盏以上。1 l8 s1 q/ b! A: m% n

' r: A& ~* W0 J4 l7 `- J& `$ t2 H为此,我们排出下列组合:7 }# E7 a. o) g, b+ H& U* E
4
——4——4- f% ]0 Y- j/ B/ f" [6 d8 W
此种组合方式下,开4盏红灯时(编号为1 3 4 5)的等待时间为80秒,开另外4盏红灯(编号为2 6 7 8)的等待时间为77秒,开最后剩下的4盏红灯(9 10 11 12)的等待时间为147秒。
6 o0 x5 L+ H( C, l此时,总塞车量为:
2 X. R1 [! Z1 n- c! i( ?* p' D9 t
0 C8 g+ k1 Y! _0 H# K% c4——8; f( s5 X; \3 c4 w' T. A& }
此种组合方式下,开4盏红灯时(编号为1 3 4 5)的等待时间为80秒,开另外8盏红灯(编号为2 6 7 8 9 10 11 12)的等待时间为39秒。/ x5 t1 s# I" H* G" t' L: T) R4 I0 f
此时,总塞车量为:
- [; p2 w+ k3 F; J6 P, r
" q# S# o" y8 U9 _
; f/ s- f  Q1 U# `* |5——7: p$ }, f" a, h; ~/ u; M4 e
开五盏红灯时(包括一个主道)的等待时间为58秒,开七盏红灯时(包括另一个主道及其他支道)的等待时间为45
5 Z7 o, Q% B6 J6 ]( G! k此时,总塞车量为:/ B0 a4 @8 R  S

0 u: D! |0 a# i7 E% o7 v
+ _* S0 o$ o% W5 m% w- J- }& L6——6  f$ ^5 n) ~7 B% U3 p. C
此种组合方式下,开六盏红灯时(包括一个主道)的等待时间为50秒,开另外六盏红灯时(包括另一个主道及其他支道)的等待时间也为50(由于分布相同,其实两个等待时间应该一样,但由于时模拟,不可避免的造成一定的差异)。
5 t9 ~: Q( J' B# O/ X# H此时,总塞车量为:/ c& z0 Z$ D1 j" R3 p* y" z" [

9 \3 X0 ^/ o! ]- { ' \9 s8 M+ A! L2 w
由上可知:
- Y0 q! p" }% r* s' \# _" s对于高峰期和次高峰期都应该选取6——6的组合,并且将两条主道分配到不同的组合中。
" |& `2 C6 F, F+ H% Q 8 {8 A9 D: c+ E) v( W, n  g  G' }. v

  Q! o: w* K3 b+ ?8 i9 f说明:(为什么选取组合时两条大道不能同时选取?)
' u) ^6 f# @3 {3 Z% a; O$ v0 a2 M下面只针对高峰期说明:
7 x, d4 X* M+ ]1 q' m# ]对于高峰期同时选取两条大道的情况:  q& y" v% [7 N
2盏红灯亮:如果同时选取两条大道通路时,经模拟,其等待时间T=inf,也就是说不可能达到降低车辆的目的。
  \1 R. x  B; c, F% ]. x$ U3盏红灯亮:如果同时选取两条大道通路时,经模拟,其等待时间T=inf,也就是说不可能达到降低车辆的目的。
% r5 E+ n- l" ?4 n4盏红灯亮:如果同时选取两条大道通路时,经模拟,其等待时间T=158秒,并且多次模拟发现其等待时间出现为inf的几率很大,也就是说不可能达到降低车辆的目的。
! Q1 M1 h" m' ^: k9 b/ C5盏红灯亮:如果同时选取两条大道通路时,经模拟,其等待时间T=101秒,并且多次模拟发现其等待时间出现为inf的几率很大,也就是说不可能达到降低车辆的目的。
4 S$ p% Q, L2 U- p6盏红灯亮:如果同时选取两条大道通路时,经模拟,其等待时间T=63秒。
& B) {0 x2 `5 N& @7盏红灯亮:如果同时选取两条大道通路时,经模拟,其等待时间T=50秒。
9 q# a5 r! }, {% r' Y( K  _8盏红灯亮:如果同时选取两条大道通路时,经模拟,其等待时间T=45秒。, P# O8 t; C5 U1 k2 M! n& c% ]
9盏红灯亮:如果同时选取两条大道通路时,经模拟,其等待时间T=35秒。# Q1 {) \7 U( Y* u) a: x& N- B
10盏红灯亮:如果同时选取两条大道通路时,经模拟,其等待时间T=30秒。3 x- i, o% l" y! B8 n# f: V6 E9 ]

9 d, Z# h  D  G/ S同样地,考虑到我们设计的算法,对于高峰期,不可能不选取某一条大道,所以我们只需考虑对称选取,即组合时尽可能的将大道分配在不同组合中。3 {1 U, g0 S, P  n+ Y  ~1 y
2盏红灯亮:只选取一个大道通路,另一个大道堵塞时,经模拟,其等待时间多次出现T=inf,说明此种情况不可能大道降低车辆的目的。( c8 O* K2 J% G: v' R
3盏红灯亮:只选取一个大道通路,另一个大道堵塞时,经模拟,其等待时间T=96秒,但也多次出现inf的情况,因此不考虑此种情形。/ s; q5 G5 u4 Y3 P
4盏红灯亮:只选取一个大道通路,另一个大道堵塞时,经模拟,其等待时间: e  Z5 q1 E9 Z5 C$ p: {
T=65秒,但也有很大的几率出现inf的现象,也不考虑。+ Y1 F) Y2 }. J# j- n( _7 w
5盏红灯亮:只选取一个大道通路,另一个大道堵塞时,经模拟,其等待时间  P9 ?$ N# |$ r6 L9 Y$ x3 C# P
T=45秒。
4 ]1 E( b+ R( M! J! n% D$ h6盏红灯亮:只选取一个大道通路,另一个大道堵塞时,经模拟,其等待时间* i3 {+ V9 F# [2 S- Z/ `
T=35秒。  S6 U% G" Q- p- g" M& m6 K7 {
7盏红灯亮:只选取一个大道通路,另一个大道堵塞时,经模拟,其等待时间; f, B/ z& m; I3 a
T=31秒。
. J' G9 Q, B; {- I; O# c( i) B8盏红灯亮:只选取一个大道通路,另一个大道堵塞时,经模拟,其等待时间$ g& r" Q) X, m2 e2 n% O
T=27秒。: q5 @7 Y5 C# c, Z1 y6 l
9盏红灯亮:只选取一个大道通路,另一个大道堵塞时,经模拟,其等待时间. R* Y& Z( X( E* f
T=25秒。" H2 P7 A6 b9 e/ D
10盏红灯亮:只选取一个大道通路,另一个大道堵塞时,经模拟,其等待时间=23秒。
* n; k! m2 |0 L, w% Z: t) \
3 [" Z0 |/ L5 U1 L0 h! S对比上面的两种组合下的结果,显然第二种情况更为节约时间,对于所有红灯亮的情况,只选取一个大道通畅的情况能保证等车时间。因此,我们认为,选取组合时两条大道不能同时选取。  j0 M! X# F( N( Z) }) F

5 C- W' a* D- R4 q4 q3 b由此,我们可以得出高峰期和次高峰期的红绿灯控制方案:: G: f! k! f' U. Y
对于高峰期的方案:8 ]9 h( B1 h( I) |
先亮6盏红灯(包括主道的那个红灯),其持续时间为T=65秒,此后,红灯全灭,绿灯全部打开(包括原来的),持续时间为T=27秒(在高峰期,对绿灯全部打开的情况,即所有路口通畅时,经模拟,通畅时间为T=27秒,此后若不打开红灯限制车流入,将超过环岛最大车容量,因此,时间不能超过27秒,但是,我们为方便设计考虑,将时间定为27秒)。之后,又打开另外一组没亮过的红灯,持续时间为T=65秒。结束后重复上述过程。
) L& Q  p7 g1 B( h
6 Z# b" C" S# o( S( X7 F/ {* g对于次高峰的方案:: [( M; Q7 j3 R8 h; `) z, ~
先亮6盏红灯(包括主道的那个红灯),其持续时间为T=35秒,此后,红灯全灭,绿灯全部打开(包括原来的),持续时间为T=23秒(在高峰期,对绿灯全部打开的情况,即所有路口通畅时,经模拟,通畅时间为T=25秒,此后若不打开红灯限制车流入,将错过环岛最大车容量,因此,时间不能超过25秒,为此,我们为方便设计考虑,将时间定为20秒)。之后,又打开另外一组没亮过的红灯,持续时间为T=35秒。结束后重复上述过程。
1 L1 T, H5 X) v3 k0 X
5 s) A2 q! e/ \1 h' }0 h
, p$ R( F6 A) ?; D# F' t& P$ T& X三、对于一般情况与稀疏情况的说明:
! e: g( N8 y' Q/ `2 q
* j! X. h7 L) v  ?% wA.
2 B/ }9 X. s8 e8 R
一般情况:

  @$ @) T9 e( L( j3 ~8 Q对于6盏灯的组合(每个组合只分配有一个大道),其等待时间T>150秒,如果红灯时间仍然按此时间设计的话,肯定是不科学的,因为不可能让汽车等待如此之久。因此,我们从尽可能减少等待时间为标准,经过模拟,发现当所有路口均亮红灯时,其等待时间最少,为T=23秒,而这也符合一般城市中非高峰期的等车时间,我们为了方便设计,将此时间定位30秒,而30秒也是一个可承受的等候时间。对于绿灯全开时的情况,更趋前面的假设,经过模拟,畅通时间为T=50秒。因此,我们选定一般情况时,红绿灯亮灭的原则时,所有路口红灯全亮,持续时间为T=30秒,此后红灯灭,绿灯开,持续时间为50秒。之后,重复循环。( I  l7 B1 N0 [, t6 W5 ?' w+ d, d4 p
B.稀疏情况:
% A) {4 Z% _! J9 Y对于稀疏情况,车流量具有不确定性,我们无法估计具体的车流量,但由于此种情况下车流量很小,我们可以将之归到一般情况,并且以一般情况的红绿灯规则来控制。
% c& I! q1 }0 z
4 t' t+ O' {% Z( d7 m' z9 x
/ |5 {. x; d5 H9 z, ]( i $ \0 X4 s( _# ]& i+ `7 D
六.模型检验
根据我们的方案,我们采取随机模拟的方法,分别对高峰期,次高峰,一般情况和稀疏情况进行随机模拟。
3 y2 O7 c+ y5 P0 ]5 {# d为了保证环岛内交通的流畅,我们设定环岛内的车辆总数Q不能超过1000,但实际上换岛内最大车容量为1327,因此,我们在考虑交通流畅性的前提下,可以适当地放宽这个限制,严格规定Q不能超过1200
# ~0 U( t3 x- \9 d我们检验的目的是为了了解模型的稳定性,为此,我们对四种情况分别进行了24小时的模拟,其结果如下:) h, h0 d1 t; N+ o8 J7 _! t! U
1.高峰期:(程序见附录)
: e: Y! B/ U0 W7 U0 _7 z第一阶段红灯持续时间t=65# r) r6 ]8 y" |
第二阶段绿灯持续时间t=27
8 {. e$ ~" d; M7 i- {/ O7 Q0 r第三阶段红灯持续时间t=65
2 G) R0 D( ~( Z, I4 V4 O& |第四阶段绿灯持续时间t=27
/ u; t! o0 C& k/ _6 D7 h2 x) _' k总周期T=184' w! f% F* S! |! F# O7 O1 f

  q( t1 O0 Q( v4 C6 T# K+ a/ q对于此方案,我们在模拟时发现,由于每周期都会累积一定的车辆,也就是误差,在很长时间后,其累积的误差将达到非常大并且不合理(超出最大容量)的数值。因此,我们需要增加一个修正时间,并且此时间应该很小,只在车辆超过一定数量时才加入。
# A" u& C: ?2 y" g7 f* ?+ y我们的做法是,当环岛内车辆大于1000时就对红灯持续时间加3秒钟,即此时红灯持续时间t=65+3=68秒。在车总量Q没有超过1000时,我们仍然以65秒的规定时间运行红灯。
0 c  ~6 N3 e4 ]7 Q$ _+ A这样,我们模拟24小时高峰期后:超过1200的车辆次数为37,占一天内车辆总数的比例为1.97%。(这只是模拟一次的情况,在模型改进中,我们模拟八次后取平均,得出更加准确的比例:2.74%
) j6 z2 U2 H% _) q- o对于此比例,我们认为是相当小的,也就是说,发生环岛堵车的概率时非常小的,因为我们是对1天进行模拟,累积误差显然会相当大。而一般的高峰期只持续2小时左右,累积误差必然很小,其堵车概率也应该低于1.97%& l7 q7 \, @( w* b

  l, x1 [" T0 z( G2.次高峰期:(程序见附录): p) [1 R/ v* {: M7 I
第一阶段红灯持续时间t=35+ E3 ~7 W" {; O4 C
第二阶段绿灯持续时间t=23
/ S4 l7 }, b! [, k* B第三阶段红灯持续时间t=35$ j. M1 R9 c  `; S" I
第四阶段绿灯持续时间t=23; Q2 Z. F8 j5 `" Z+ f+ s2 o! W5 {
总周期T=116
$ w) y* @4 Z+ [3 G/ W/ j" p. n对于此方案,我们为了保证环岛被最大利用,同时又能使交通运转顺畅,设定环岛内最大车辆数不超过800,经我们模拟24小时次高峰:超过800辆的几率为:
- u7 d/ l0 `( f! @,
显然这是非常好的方案,鉴于此,我们不对此方案做修正,即沿用模型建立中确定的红绿灯持续时间。
! v5 `; r. Q! v( J- b* `2 l, P3.一般情况和稀疏情况:
7 v, t8 j9 J0 q! j因为车流量的原因,不可能造成交通的拥堵,因此,我们不在对此情况做模型检验。为了说明时间安排的科学性,可参考其他大城市的一般情况的红绿灯时间。
  s& @  G+ U9 g5 Y- H: |* ~  ~
; K- f; Q+ X/ y! t) c
0 M* U% D, D7 ~/ q% V- o& M2 F' J) w
9 W; }* k* D8 e! L- e+ H
七.模型改进
1.对于工作日和非工作日,由于车流量的分布不同,我们可以根据表1来设计红绿灯时间安排。8 ?1 _/ O. U- J2 N5 Y, Z
2.我们只考虑了每个路口流入与流出的关系,并没有考虑到车辆在环岛内的绕行情况。所以可以增加限制条件:环岛内并行车辆不碰撞,这样可以选出更加优化的方案。! Y4 j+ K6 N/ p* G% }
3.不妨考虑车辆在环路中的相位问题,这项可以细化到每辆车的行驶情况,但这样相对来说较为复杂,我们不予考虑。
" V; ~! q) D' W( c4.对高峰期时间的修正:9 F: w! f! N" H) C) M8 T4 m, r& F
若不对高峰期的红灯持续时间作修正,则经长时间后,累积误差将使环岛内车总量超过1200(我们称之为危险),这是非常可怕和不安全的。为此,我们对红灯持续时间做一点微小的修正。经过我们的模拟:(程序见附录)2 _6 i2 |) {& Q3 c2 _1 C
修正时间t=0时,出现危险的几率:89.62%9 O! C, L& H" b' Q: X6 G
修正时间t= -1时,出现危险的几率:88.56%6 D" L5 _( z  U5 \; u" d+ M  a& h
修正时间t= -2时,出现危险的几率:98.03%  |, L: k% f: z9 ^% w6 k, a% L
其实,如果减少红灯时间,显然,这时在这段时间内进入的车辆数目就会增加,在不修正时已经危险的情况下当然就会照成危险几率变大。1 R" `& t% p, D4 S" B  V6 p
所以,我们应该将修正时间调为正值。
* Q! T) [2 x' Z2 B7 Q- W修正时间t=1时,出现危险的几率:93.33%6 X- B2 @& g/ }5 A$ I7 }) _4 D
修正时间t=2时,出现危险的几率:13.74 %/ _0 l3 n' A# Y) }# ]
修正时间t=3时,出现危险的几率:2.74%+ {% b' V* B5 ^
因此,我们以5%为限定,确定出修正时间为3秒。
" w! T4 H( v, ]1 A; z7 l , M1 v) m" s* K" v# f$ ^2 l0 H
八.模型评价
8.1 优点& f: g1 ?/ y' }, T
: d7 B' i) f" y5 \+ r
1
.本文对不同车流时段(高峰期、次高峰、一般情况与稀疏情况)模型分别进行了模拟计算,得到了最优组合下的红绿灯循环时间。由于车流量是基于模拟的,并且环岛内车辆总数也是先设定的,因此,我们的模型可以适用于很多情况。并且,根据我们的模型,对于已知车总量和具体车流分布情况,可以重新确定出最优化的红绿灯控制模型。
" Q; B$ G/ q1 G2 d; J2 R+ y' v
& N* r  i3 @5 c* I9 i7 A
2
.在建模过程中,我们对所有可能出现的红绿灯组合情况进行了模拟,这样最终得到的最优组合的方法是很科学的。

  J5 {" s6 c2 F! L
8 |, M4 p' A  W& Z! f6 d8.2 缺点" `( H. T. q, S- y  S
9 r$ C: I0 p/ Q: s# [
1.
在模拟模型的过程中,我们假定车流量服从均匀分布,这带有一定的主观性,并且我们并没有考虑每一辆车的具体行驶情况,比如车辆在环路中的相位问题,这可能造成某些紧急事件发生时不能及时疏通道路的问题。

作者: lijiustc    时间: 2009-8-17 16:52
希望大家多多指正批评~~~小子不才,愿听高见~~
作者: lijiustc    时间: 2009-8-17 16:53
再补充一句:我有回比复~~~谢谢~!~~
作者: jun362801    时间: 2009-8-17 18:12
支持原创!
作者: lijiustc    时间: 2009-8-18 15:53
4# jun362801
$ w; `' U5 A! q
( {7 x$ u/ S4 d/ H4 |5 T
) a: v+ t& ^" c3 s' ~+ o$ B  Wthank u
作者: renran    时间: 2010-4-26 15:49
无比感谢你的思路~!!!!!!!!!!!!!!!!!!!!!!
作者: monana    时间: 2010-11-24 21:58
强人~~~~~~~~~~~~~~~~~~~~~~~
作者: daodao_2011    时间: 2010-11-26 11:15
请问有程序附件么?
作者: 陈阳康    时间: 2011-1-15 17:16
                        
作者: xnight23    时间: 2011-2-3 22:59
今天做这题,参考一下
作者: h5961576    时间: 2011-2-9 18:38
有的字母和公式看不见
作者: 小马屎    时间: 2011-4-23 11:29
谢谢诶  对我有所启发
作者: 小小小小丶莫    时间: 2011-5-8 19:11
写得不错....
作者: 日月星辰591    时间: 2012-1-28 09:21
我也开始做啦!顶一下
作者: 婷婷玉立    时间: 2012-1-28 09:25
(*^__^*) 嘻嘻……。。。。。。
作者: 婷婷玉立    时间: 2012-1-28 09:25

作者: li_meng41    时间: 2012-1-29 21:20
感谢楼主分享~~学习了~~
作者: hejiezhihun    时间: 2012-2-3 10:46
这是09mcm相似5 v; Q+ b$ `6 j6 C3 ^

作者: xuanwoxingxi    时间: 2012-2-4 10:20
感觉没什么图表 哎
作者: 逸涵    时间: 2012-2-4 15:39
看       看        呗
作者: pcyaoqiang    时间: 2013-7-7 13:27
支持一下啊!




欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) Powered by Discuz! X2.5