数学建模社区-数学中国

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

作者: lijiustc    时间: 2009-8-17 16:52
标题: 巴黎环岛设计(本队拙见)
巴黎环岛车流控制模型
摘要
' D1 B& x2 P9 v/ F
本文就巴黎凯旋门环岛的交通问题,建立了控制进入、环绕、流出此环岛车流量的红绿灯模型,目的是使环岛内交通顺畅,并且尽量让堵车时间短,堵车数量少。
+ V) o( T; t" |) p+ j. B0 N& E, i    通过分析,发现环岛内的最大车流量为1000,波动范围为+200,还可根据车道宽度计算出每个路口的最大车流量。这两个因素对环岛交通有着很大影响。因此,主要考虑车流量和环岛内的车辆数目的影响。并设定,在建立模型时,环内车辆总数最好不超过1000辆。
$ r& l+ w5 b: f- B根据各时段车流量的多少,本文将车流分布为四种情况:高峰期、次高峰、一般情况、稀疏情况。再根据各时期的车流量,建立了环岛内车辆总数Q关于流入量与流出量的方程: 。通过随机模拟,得出环岛12个路口的车流量,并根据堵车时间尽量短,堵车数量尽量少的原则,找出所有可能的红绿灯组合(前提是每个路口都有红绿灯),通过比较,得出最优化的组合(具体组合见模型建立与求解部分)。
' {9 S- f" B& H- m* Q" B4 n通过随机模拟,对于不同时期,得到不同最佳方案:% N7 l3 m9 ]+ \+ H9 }# j
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秒。
) u: y4 Q9 Z& b2.对于次高峰的方案,红绿灯组合与开关顺序与高峰期完全相同只是各时段持续时间不同:T1=T3=35秒,T2=T4=23秒。( f1 Z: T* G& L
3.对于一般情况和稀疏情况,红绿灯顺序为:在所有路口,先红灯亮,持续时间为T=30秒;之后绿灯亮,持续时间为T=50秒。之后,重复循环。
# i/ E2 G( u3 h7 b3 H+ w由以上方案来模拟计算一天内环岛内车流量Q,其值超过最大容量的平均概率不超过5.00%,较为理想科学,所以此方案可行性较高。 * E6 ?  b! q7 Q2 t2 r' C: l* q) ~
最后,对模型进行了改进与评价。# S( F" T) f8 c' k$ j  k
6 T) p7 h2 ~4 {- ^
5 L9 G- X' e5 Y4 S: \2 t0 B. |- l2 \
关键词:环岛车流控制 红绿灯控制 排列组合 随机模拟 等待时间
* E  d6 N( e# k, n4 i 7 }, g4 ^( a  I" ^8 S; I" r/ ^0 E( E
& h( K0 P8 S* I5 O' s

6 e2 Z5 z0 F/ O. i6 Z - s3 w( P; T" \- K$ c1 m) d) ~: _5 g

& Q# c6 P- S: s( P) u # T2 l0 Z6 V( `3 ?# e! P; ?6 d5 I
一.问题的提出
巴黎凯旋门环岛有12个路口,其中有2条主道,10条支道。在进入该环岛的道路入口处可以设计有一些信号灯,或其他标志来控制车辆的流通。即为环岛制定车流控制模型,要综合考虑各时刻的车流量,环岛内最大车流量,天气情况,工作日与周末情况等因素。
/ y& `' c: y: x$ \    我们的目标是,根据已知的信息,建立控制环岛车流量的具体模型,并分析该模型的优劣与稳定情况。
& M1 X  ]3 U& A1 B0 I* C' r 8 D& m. R) X9 }! O! t5 ^+ o
1 环岛平面图
, Y" h6 }% L& j4 k

+ c' |- d; Q2 T & ~% a% l" u4 r/ x1 ?

$ Q9 ~  [  a* C( E( M' n+ T+ I ' c$ B: p& _- E+ A% }

, v5 y/ K# V$ u8 C; H, I* E
二.模型假设
1.假设每个路口的进入车辆服从均匀分布(具体的分布情况见问题分析)。' v" d+ w& X# W, _1 a5 v& [8 `3 @
2.假设每个路口的离开车辆也服从均匀分布。
8 l* ^4 {- ]! Z0 L6 {+ a* w  Y3.假设每个路口都配置有红绿灯装置。
7 x5 X! i2 p& [( d. j4.假设环岛为单行道,只允许进入车辆沿着俯视逆时针方向行驶。2 M) G6 I  Z, M6 \$ _
5.假设进入环岛的车辆最多只在环内行驶一圈,不能多次在环内循环。, E8 ?- g* o" S$ T, ?! P
6.设环岛内与各路口处的车速为20km/h~ 30km/h5.6m/s~8.3m/s
( z8 ^7 e% _. E3 a6 \2 P  ^8 c7.假设只考虑正常情况下的交通,不考虑发生车祸和路面维修等意外情况。" \, q( N9 v/ u8 B& q0 D
( i+ f" g6 l6 {; o! t  b+ O2 {
. {7 ~- F7 G5 l7 `. p7 y
  m: C; Q9 V0 \
三.变量说明
:环岛内半径。: }% J( O6 N5 S7 B) m  }$ F# h
:环岛外半径。$ E. s: h3 A8 I" h& f( ~
:车底面积。
/ ~# L5 W$ t5 M1 m; F:环岛路面面积。其值应该为两圆面积之差,
4 |3 k" D6 k: j& A:环岛可容最大车辆数。 取整。
- S9 x( L* w* K3 }:环岛内车辆总数。
0 R1 Y9 V5 |0 [:环岛内车辆总数的当前值。& i5 z6 D4 U- Y; Z3 ]4 h8 D8 ?
:各路口进入的车流量。(1<i<12& o: K% z0 J5 D( o; L& ~
:各路口离开的车流量。(1<i<12& }: T2 A: I, l2 e
:逻辑控制变量,用于表示各路口的通堵情况。 =1表示通路,即绿灯亮; =0表示堵车,即红灯亮。(1<i<12
9 P7 @/ T* h8 s2 u' S$ c* c! c* @( x' n/ o* k5 V
:表示所有路口的流出车流量。1 a) g6 A0 a/ F2 S' D: F
( r, m$ E4 @+ `# ^( `
:表示红绿灯持续时间,具体是红灯或绿灯,模型中会具体说明。  L5 W4 D# L4 h2 Z
. _- x! I8 ?$ f& A  {, _" U
:为某种情况下的堵车数量,具体模型中会说明。7 t3 O. M$ `1 X# u
1 P2 `6 W* g' ~9 i% _1 @
:车流密度,作为参考因素,将影响对车流量的模拟。) y. B0 I4 o5 @6 }8 B* y% q5 }+ G) n
+ g4 I2 W  A; U$ k

: ?/ `! c& B3 \  K
% K2 V7 G4 e# E2 }
四.问题分析
此问题属于交通流问题,我们在初步考虑这个问题时,参考了交通流模型的结构方程。我们认为影响环岛车流量的因素有很多:红绿灯,时刻(高峰期,平时等),天气情况,游客人数(虽然凯旋门游客时从地下进入凯旋门的,但是每个路口还是设置了人行道,所以游客的多少也会影响到车流速度,因而影响到车流量)。正常情况下我们不再考虑路面维修和车祸的影响。  `5 {5 @: f; V. w  T9 P' x( L
由上分析,我们需要做的是通过对交通流情况的模拟,找到最优化的红绿灯控制情况,从而达到车辆最优化控制的目的。
  E: t, v7 c/ C" j2 b" A因此,我们将此问题归类为最优规划类问题。4 p0 P2 P/ X, F" B% m- m1 b
我们查找到了以下参数:
+ B4 Y2 H7 q& l1 v凯旋门环岛每天平均车流量:110/天。
" }$ Z9 C& c( i7 O% u环岛外半径:80m
- I# Q$ q( m7 q" q, o1 ]环岛内半径:53m9 W/ ^, d; O& P4 \' C
一般中型车的底座面积:(7~10m2
$ \* r9 B! _2 w. I+ o/ |主道可以同时并行3~4辆车;支道可以同时并行1~2两车。$ O: S2 H" M5 [* ^
$ {; _  U2 I. ?8 h8 ?
+ H% ^+ {1 I0 Z5 p% j. b0 }/ K
4.1 环岛最大车容量:
' F- U1 e! W- Y# U由上面搜集的数据,我们可以计算出环岛最大车容量。. T: w( A! O. F4 U, F% _
环岛内半径为 ,外半径为 ,车底面积为 ; v" T. }% C9 r  D9 E' B
则环岛路面面积应该为两圆面积之差:- y. Q- N2 {, ?5 Z' @0 E
, A. P3 L: m; `! P1 f) J
则环岛可容最大车辆数为:   (取整)* O2 s3 x# \' i& q2 D
可得环岛最大可容车辆数目为: =1327(辆)。# F9 L$ R6 w% i+ `1 e9 D
考虑到车之间应该有一定的间距,并且应保证环岛有一定的畅通,流畅性,我们设定环岛最大可容车辆数为N=1000(稍微超过1000也行,我们只要保证严格地不超过1200)
4 {) W! z$ X- L) ?* n$ ]/ ?& `
2 ^1 G. c+ B! a: G9 f3 f
% U) X& Z. q) @  Q6 V2 W4 }4.2 各时段的车流情况
, z+ a1 Y8 B9 H8 u2 N4 b6 G
$ |2 }, l  z7 p3 ^1 W工作日' ]( I' Y0 ^. j- r
时间分布
3 e. z: D/ h: S( |3 q, h
时期分布
1 j( \  L  M! o# q2 b; g' I
000~500
: z8 J0 E+ u$ J! a; g! ~/ i+ d
稀疏情况
) U9 A" v  y( v0 x; z- T. r, U' W
500~600
5 E/ @8 i+ u7 w$ {
一般情况$ d( V4 D6 A  w- V" u* y6 ]& f
600~730
, p! S2 I7 E7 j
次高峰9 f' ?% s; c9 i) l! v
730~900
9 R6 O5 l+ o; h, G1 k6 s- l  B3 J
高峰期
$ O+ A$ H9 {  l$ T5 F5 ?
900~1730& J$ K  \; ^4 v  U' w
次高峰! w) O! f+ v9 d
1730~1930
1 h8 h1 `3 j3 m9 U- N* Q- d
高峰期
( ~9 @( X6 f8 e( a" z6 U
1930~21008 G; W* L! e# {
次高峰; D! T8 d0 d; |/ }* l0 R
2100~2300
, }+ f  H, X7 w$ w
一般情况" n+ y+ ?) c* s  _) x2 _
2300~24000 ^3 F) ~% ?1 a3 f
稀疏情况! i3 u0 `& A( q$ o; g
+ ~0 i( E$ t8 c4 G+ V+ @3 N

% `7 L3 ~6 H6 e; c4 x周末
8 n5 m( U6 ?  S& M! g
时间分布
$ t/ @/ k8 v/ h/ e
时期分布
# M  n4 J" h2 ]2 p0 V3 e6 c
000~5007 j" N9 K9 D+ R6 r7 e" ~! \+ O. ^
稀疏情况
# u; z, b. m' T
500~600# y* G& t3 {5 e! B3 A' N+ L- O! B
一般情况
% p8 x* h: ?  q, A6 q4 P* r! |! U5 x
600~8007 \& ~/ G) s/ L: m% T
次高峰
1 G+ \6 v+ t2 f( i4 w7 f: \, B
800~1730
2 [2 @- S# T+ r, @2 U
高峰期
- n: j# s- g" {! [3 ?& d
1730~2300
" K1 m6 w2 s( T7 B
次高峰
; l( p& s  x. w, @3 a
2300~0008 U% r+ V6 O- T; y3 i' E* P
一般情况8 {1 h3 w$ m0 d( O2 \
1
% i8 K, j6 A0 _4 b7 l! I: V
说明:8 }! S, J' w% @+ M
在巴黎和法国其他主要城市,高峰时段的交通最为挤塞。法国每日的交通高峰时段是早上7时30分至9时及下午5时30分至7时30分的上下班时间。在星期五法国人一般都会外出旅游,所以交通高峰期会较平日来得更早,在下午4时起便开始阻塞,其中尤以离开巴黎的各条公路最为繁忙,而非高峰时段的交通一般非常顺畅。
: Q4 x; R) z+ Q3 N% y2 [
8 k( S9 ?3 ^% x9 |! D, A4.3 对于交通模型的假设与估计
4 S7 |3 V- D/ M, B对于交通流模型: " V5 a3 d( c# D$ r; L
其中:q为车流量(即单位时间内通过的车辆数);" v- j* {% n& A) ~8 J1 T' n

2 A, i3 _% t0 R* y" P, D3 q+ x, g2 Q; B7 V0 B) E  K% `
为车流密度(单位路长的车辆数);* d. O) C# Q$ e/ w

) e9 Y: m- _" t% I8 w, ^5 d2 z0 ~# W: v+ h9 W( p
6 Q. j5 U4 |5 N1 }1 r* Z  Y
为最大车流密度。/ }  }7 y7 r1 A$ J4 e* n0 w
  `9 X& X; h4 u) C# r

" C$ V/ y) T7 g1 o/ c$ D; k! O: y5 `3 w- d5 f) ~  ]
为最大车速(注意:车速时车流密度的函数, )。$ A' O: d+ p: @+ `! U& t
根据上面的方程,我们可以估计出每个路口不同阶段的车流量,这包括流入与流出。
, e& f7 c+ k, A# X3 A2 y* O, q为了保证总塞车量最小,同时等车时间最短。我们针对不同时段对车流量进行了不同的划分:
  u+ e$ ~9 ~+ {5 C) D
环岛内车辆总数Q/ a$ H4 g/ I6 h- F4 F% A7 f6 \
   
' _+ q# y  V9 N' a* X
有红灯亮
/ G; j6 v$ r8 H& s
无红灯亮5 ~, q2 b  W/ H1 a9 w

, r* v5 F; `7 }. N

  A7 b4 ]% `( i3 c; w5 J

7 y; Y( k) z  K5 f
! Y0 g& T) ~* y2 F, w
主道y
: d& o- D5 ]; R$ h) q5 x2 A5 I$ A
支道y
2 h) k4 N! i4 b
主道w
; H9 I( @' q2 U; U
支道w
! c3 o8 [! E4 h0 L! P
主道y) b+ ^1 v! @* I, q; O1 Q
支道y4 K) q( K4 d/ `
主道w+ m" x: P0 g3 r
支道w
8 {9 X/ Y2 n' g
800~1000( E5 f* [, F2 v( E4 C& W! y% W
高峰期  U! h/ g% |  i
3~4! h5 Y0 c' z  l
1~21 J# g. p  L% q
0~4
2 J7 u' N  P- w" m$ @- a/ ^
0~2
# n- N; N: q" t" t3 m6 D
3~49 e8 e, r5 g9 z3 j6 ~8 U$ v& @
1~2
, M- l0 p7 T) Z* E  J( z
0~48 T$ a2 d: S! @3 c. J3 X/ l
0~2+ T( {3 d/ a$ m4 @1 }! F' {1 W
500~800
: P" y7 }6 ?5 Y9 H+ c" F# A% M" F
次高峰4 @* r+ G  ]. x& X
2~42 T2 j( V9 |& I* @, Z
0~23 O! n; g6 S& M+ S& k
0~4
6 v6 I; T3 C2 f+ R- N/ `" Z
0~23 U. v3 w7 \1 s- Z: _
2~41 j3 {9 q! s: N0 v4 o+ u
0~2$ A, T' z2 Z( C7 ?, t
0~2
6 j4 S- R0 f' d9 i1 l0 \  T3 L* v; o8 \
0~1
( |% A4 k/ ?$ e
200~500
# \6 ~5 E& v5 U$ C
一般情
) f3 F. N2 G4 }# m2 ]
1~2
, d6 c" G6 R0 p4 p
0~2
6 E; D1 l7 c' Z0 Z, q8 E
0~4
# V7 R  v, |& l# n! A
0~22 J8 z: h; R' M- f* N+ C/ n
1~2  h8 {6 O/ w8 R# r2 r% p( o
0~26 z1 g2 F& q: w% p% V, n4 A
0~2
7 W; b5 i& B2 L  H
0~1' W" i7 }6 T$ J5 M% H
0~200
/ J( H+ m1 U( P; f& K! T
稀疏情
* Q% ]1 E, D% L
*
& S/ j1 @( J: _. ?
*
5 b& Y# E) G4 O. d
*4 L* f3 _7 z  l- z6 ?6 H
*
4 C4 T# j& `+ q: Z5 T0 C) a
*
% I. b- B8 v- ~4 \0 {& Y
*  W+ J$ {7 k  F. q7 H
*
" E- \4 y5 P" j2 n* E9 S/ Z
*' b, J6 _! G# I; g8 G: d. k
2
五.模型的建立和求解
我们先设立一个逻辑控制变量 ( P0 o+ c, `9 G. E. T6 o& j
对第il路口,当有车进入时, =1(即认为绿灯亮)。* Q  j$ U, y" U6 T, a3 S
               当没有车进入时, =0(即认为绿灯灭)。/ K9 x- N4 r8 M3 I
又设 为第i个路口的车流量(辆/秒)。+ _* Q7 I) ?) E* t( v9 l. W
则我们可以列出下列等式:* j+ e6 Q! V8 @- ~+ o; p8 ^
      根据:单位时间内,环路车流量的增量=流入的车流量—流出的车流量。& n. i1 j7 c* R1 Y8 n
* F$ ?$ y, u! S0 {

9 t4 E: e' K# ?% S6 k
: A& Q% a5 k& s0 t: U- ~0 \$ F  e; Bdq表示单位时间内环路车流量的增量。
' N4 F0 ?7 x$ {% I9 ?
1 \8 A( B/ d7 @对于 以及 我们可以用rand模拟。
5 G( a  i. H" e1 y) F- | / `7 j! V5 n3 O) S" t: \$ ]2 _3 d: v
因此,环岛内车辆总数Q满足:
; S  P% m+ F/ |3 V( _( i; O9 |
( j1 n  J$ o' Z) E. X+ t  P1 v注:
5 A1 i" A" n& X5 f/ p/ U( f& {由于 的组合有很多种,我们加入限定条件,即要保证等待时间最短(红灯亮的时间最短),以及等车数量最少。
3 r" `  Z* V( `) i' U
& u+ p8 w. K4 l. Z0 E; W因为等待时间就是红灯亮的时间T,等车数量又与车速和等车时间有关。) x: N( P# D; y+ V2 p" o

* }: U- \4 f2 t9 N2 ~9 R为此,我们设立下列函数:
( N3 e1 E# M, ^& c; ]& m
1 O- r7 ?; O& v6 i5 Z1 q6 g
7 y7 l1 Y9 p( u/ Y

7 k! z) L0 q! o7 \, z" B
2 ^1 L0 u* f' E6 P6 g) x说明:
7 t5 U# Q& h8 ]1 R7 O( m' J% _" E
为各路口的逻辑值(通为1,不通为0( o' G% ^$ g' S  y3 Q

2 s, G, C& a7 O, O( x. R为第i个路口的车流量(辆/秒) : J/ x4 I+ F0 O  G
为循环中第一次亮红灯时的堵车量, 为第二次亮红灯时( 的对立面)的堵车辆。! g! G5 ?- q& e0 {( e6 k, y
为总堵车辆。
/ p" N4 u, W6 P- P6 A* o
* o$ G2 G% ?/ b. D) {$ u上面的分析可能需用到下列参数值:
4 ~! T3 {$ W) y8 e3 A  e5 k1.2 @4 U1 }" z- G- y/ d, L# R% l! I
每条路段上的最大车流量。
. F; P) I9 D6 A, A( I
2.
) ]8 f, ~: g/ E0 j/ u
每天路段上的最大车流密度。
% N& \( h' i4 U* g" F% E) o1 v: \
3.1 x- _7 A6 W/ [! r7 C) r# g6 y
每条路口进入的车流量(辆/秒)。
! K- \" F$ W. I" W) Y. r  i7 l' }! @
4.' r# ]! j- Z$ j, q# B: x$ I1 g
每条路口开出的车流量(辆/秒)。

: \% K2 o6 Z& K3 c/ l! o
+ H9 ^2 D- S! w3 |. K通过模拟,我们将在不同的组合中找出最佳的红绿灯方案,并通过多次模拟,确定时间分配。' h% o  q. J, R. b* H/ B

$ R; K3 O) r1 D5 n* ?9 ~% h  h 3 D- ~; P5 h2 d6 x! _1 D
一、对于高峰期时,我们对于下列组合进行了模拟(程序见附件):! l0 e4 x9 U  k: k. {
红灯亮的个数(盏)
  U* @' X% k7 L) ]
12
( w6 [; p( ^# X% A" z4 ~/ Q
11
4 W' G/ O1 b; a3 k; E# j! e# A$ [
103 x5 U" `& W! E8 ~. E
9
" d4 m: k7 K2 T! s; |
8% s3 k5 ^/ O0 t! W: Z" b
7- g8 k: i" C# i( }
61 Y( e# G( E2 u$ r0 z5 m& n
5- F( O* {2 B# q  Q# w8 [
4
3 ?. h  A: A) B: ^/ r
3
% z  A+ Z# Y, c! A/ |* L2 h
2( n8 b7 S* o6 m6 V
1
, B5 A! |5 ~$ \) a5 x
0
. A6 H/ i% g/ |9 A6 A6 ~# H( v
平均最短等待时间(秒)( E, @, c2 p- `1 y) c3 x
16
- e' u- ]0 w( M3 Z2 b
206 Z* b) s0 q- M+ E. @: h
22
. L2 r( |0 x! z  b$ X7 D3 [5 _# Q' g
27
" l, @) R5 x7 n6 F
30
6 W. s! b+ e3 }# S
428 @( p* T- y! d5 v6 a
70" |# L# h& n' `, @; W/ j4 d+ Z
154: h" B6 d$ M! {& _$ L" D# [0 B
Inf" e% _# {$ X! T& S
(无穷大). j1 ~$ p8 w6 ?- c# F
Inf
) L4 f/ C# v* C. Y, g" n
Inf
# G! e6 w, B1 ?: Z4 V8 C; H* u
Inf
3 }5 i; _2 \' U6 \& x* }! ]
Inf
) }* w  b8 o$ _( Y6 S8 R* f
3
注释:
% `9 b9 q4 b* R. `5 h' T) K对于红灯亮的盏数,我们可以有很多种组合方式,比如红灯亮1盏,可以是1~12编号中任何一个亮,但这些组合中总是有一种或多种为最优组合,这从我们程序结果可以看出。
: M3 Z1 j2 T- P; T) p+ x% N ' ?$ o% I: ^: M( w* J, Y
分析:# B4 U1 j( V9 V

! F" W0 A0 K, i4 e0盏红灯亮:9 E, |7 ]' D/ t, s! N' j
此情况显然不合理,因为没有红灯就无法控制环岛总量。
9 X' j) i; J. B
4 q  B. d/ H) d" o# ^5 V  x1盏红灯亮:
! o- D1 X7 t' M- i" N: \对于此种情况,经过模拟发现不可能达到降低环岛车辆的目的,反而,环岛内将更加拥堵。(过程见程序)
' `8 Q4 B2 {1 Y& M3 S5 ~
2 v2 Z  F& |- o! E2盏红灯亮:2 o- S& v# k7 ~& H, F% V4 @
此情况结果同上,不可能达到降低车辆的目的。9 @0 [2 x6 N+ P; P; T2 K; c* S0 u; e
$ J7 X0 R) z( v; v0 m* R
3盏红灯亮:# \, `+ Q  D  w7 Q& R2 L( a& B) X
此情况结果同上,不可能达到降低车辆的目的。4 N/ D  F. {8 s  r  w" p* n
2 z% r4 P& z# p( n- h4 e& `
4盏红灯亮:
) U8 p& R+ f" N# X5 D此情况结果同上,不可能达到降低车辆的目的。
! k# @9 ]9 q2 G- ` 2 @, @/ {3 H9 |) S4 F
由上分析说明,红灯至少应该亮五盏以上。' w) e& y( S* k* V

9 @3 |$ t! [1 _4 W/ }* t为此,我们排出一下组合:
, m) d2 x+ l4 y1 |: h) [0 O5——7; H% N( K. G: I3 ?
此种组合方式下,可以分为:
' [& s( L$ |- W% F- Na.开五盏红灯时(包括一个主道)的等待时间为144秒,开七盏红灯时(包括另一个主道及其他支道)的等待时间为484 A$ T; {$ ]7 {0 p
此时,总塞车量为:" a! w) N# |( U) h! Q7 l

& O0 z# Z7 q! R! ]/ @b. 开五盏红灯时(不包括主道)的等待时间为inf秒,故此情况不成立。
- }# i  `2 m8 c* p) R" X- p - X" l! L8 G+ O4 `% c; }, C
6——6
8 U$ k7 F3 F$ w: [! P此种组合方式下,开六盏红灯时(包括一个主道)的等待时间为68秒,开另外六盏红灯时(包括另一个主道及其他支道)的等待时间也为67(由于分布相同,其实两个等待时间应该一样,但由于是模拟,不可避免的造成一定的差异)。
% ^0 L6 i- P0 Y/ ]9 i! a此时,总塞车量为:
/ q: h2 o/ E; W# o) k8 [2 ^6 r+ Z- |9 j4 w# q
- T* P# z2 H6 X: a. P# v8 K
在保持堵车时间尽量短,堵车数量尽量少的原则下:
8 i% V; m7 s! u; x' U! ?! Y4 i, T只有选择6——6组合是最优的。  U  k8 }& Q8 }# Q+ G
根据等概率原理,各条支道应看做概率上相同的路口,而两条大道也是等效的,因此,在模拟时,我们就可以人为地设定组合,只需保证总数按红灯亮的盏数分布即可。比如:对有6盏红灯亮,我们选定组合编号为:1 3 5 7 9 111为主道),此组合方式与2 4 6 8 10 12等效。
4 n$ s- {# l3 q6 Q ) q( p% q  Z( ~: T( w0 T& E  s! k
这时我们可以确定红绿灯的循环模式。: f$ o0 u1 f% k1 s
不妨设定,先使编号为1 3 5 7 9 11 的红灯亮,在经过T(T=68)后,打开所有绿灯(包括原来的绿灯),再等环岛内车辆上升至限定值后(经计算t=25),再打开另外路口6盏红灯,其编号为2 4 6 8 10 12。之后,重复上述循环。/ B: u, @; U1 }& b3 v# r9 N% J
2 z$ W1 ~  G/ b% P, f

0 c9 K# \1 T2 R, ~二、对次高峰,模拟结果如下(程序见附件):. s* `+ [( P" P) e' X6 j7 ?
亮红灯个数(盏)
$ F/ a0 ]# A; N/ K- \* h
122 l- B+ F1 ~7 ~: \
11
& [9 @- i- M2 d5 G) w. Z( x  c& o
10
% b) q3 ^, h' Q& R2 B7 S
9* u' ]; p. q! }! v4 }" ?/ o
8
9 [7 z& y7 p) a2 ~6 L5 L
79 P5 Q2 f! \8 q+ q- j9 c
67 t" v$ R6 h; T9 ]' S+ J
5
  L/ x; ]* ~5 x" x" i: }* E8 l
4
" r: I( s0 z/ `* S7 S" Q0 U( Q
3# `6 h- e2 ]5 t' s* F! b# \6 O- z
2
; U9 W* C9 G+ h  a* ~) B+ X% y9 ?
14 D, U2 @9 X" c; V( {$ Q. {9 C, |
0
4 C) M8 y" P7 K% p# j" B" d
平均等待时间(秒)7 ?. r+ u; ?+ r3 j$ x* \' I
24
1 w- [6 r+ J0 c* G" q- X
30' d6 j! _) S) X& b
31. U  c: U; |9 Q7 v
32# p$ t, l. l9 S) o  m& D
356 i2 i5 e2 j7 a: @" t
43
/ ?' k8 X" t( C: r; P9 [% w9 g
57
% P5 ^4 p8 K5 u+ P4 e3 j
68
& O& B& ~  [% V; q9 @
966 H: n3 \! n8 n6 |+ _5 z
Inf
1 L6 n4 j* ]& {4 U2 [+ W ' S0 `: v: w+ a  K/ M% H- a
Inf
& l5 E7 I$ r2 Z6 J! Y
Inf
! \7 @9 T1 S, q4 E' g# V' _
Inf9 K1 t% e( n! `$ M
4
7 C* ^7 _' i8 M+ i
说明:
* a0 p8 I, ]* X4 X  h; K4 \0 v对于红灯数目小于4的情况,实际上有的模拟值满足要求,但由于等待时间太长(100秒),并且情况及其不稳定,多次出现inf,也就是不能达到降低车辆的效果,我们认为这些情况都不现实,均统一成inf类。4 \/ d0 z) ?7 f1 D; J+ N

- k& v- A; B: E& K$ D# x' I由上分析说明:红灯至少应该亮四盏以上。
0 G1 B! b; t1 e0 r9 R6 B. f$ u : W( Q0 a: Y1 L# x& [; J' H
为此,我们排出下列组合:
4 H# w; `8 s5 G) U! `. P4
——4——4
" [3 S( [! E" a此种组合方式下,开4盏红灯时(编号为1 3 4 5)的等待时间为80秒,开另外4盏红灯(编号为2 6 7 8)的等待时间为77秒,开最后剩下的4盏红灯(9 10 11 12)的等待时间为147秒。
) K0 X' D9 B8 S  [. q此时,总塞车量为:
/ G: R9 f% m- ^. f2 U4 |: H2 ^. u& Q
4——8. e5 h6 i( F3 b7 D9 u5 A3 G
此种组合方式下,开4盏红灯时(编号为1 3 4 5)的等待时间为80秒,开另外8盏红灯(编号为2 6 7 8 9 10 11 12)的等待时间为39秒。$ r$ J* N! t7 H* C! P
此时,总塞车量为:
( t! N9 O2 m3 u
' j5 C5 v+ Y/ |5 h$ Y2 k: e
! P9 \( v  O1 E2 M3 N5 k5——7. v# u: M7 h/ W) |  t9 d1 U
开五盏红灯时(包括一个主道)的等待时间为58秒,开七盏红灯时(包括另一个主道及其他支道)的等待时间为45
8 O) @. k& b. j此时,总塞车量为:) @- O, V2 d& }0 V8 P

6 Z# [$ h* M/ o6 q
8 c" A4 X( ]) V8 n& m& T6——69 s; t; N$ y" A9 s9 Y
此种组合方式下,开六盏红灯时(包括一个主道)的等待时间为50秒,开另外六盏红灯时(包括另一个主道及其他支道)的等待时间也为50(由于分布相同,其实两个等待时间应该一样,但由于时模拟,不可避免的造成一定的差异)。
  o! J& c0 |. N: |此时,总塞车量为:
, ^% P" v! F8 S; z# p
/ z, a& p: y; }8 {7 k 6 u9 p1 G4 u8 o  C
由上可知:3 j* O& ^. e6 f8 Y( V
对于高峰期和次高峰期都应该选取6——6的组合,并且将两条主道分配到不同的组合中。
5 h& L' r5 U  f* a1 o5 h$ P5 a. {9 m
" Q7 m4 {& ]9 A: s8 A/ H
- t1 C, v: i0 |- N; ^6 Z2 B7 y- |说明:(为什么选取组合时两条大道不能同时选取?)0 w2 @) y. y; F# E
下面只针对高峰期说明:
+ J4 E* g& \9 A8 ]" c* [* ^对于高峰期同时选取两条大道的情况:
, s- _2 `; t" N' r. J. T) N, Q, F2盏红灯亮:如果同时选取两条大道通路时,经模拟,其等待时间T=inf,也就是说不可能达到降低车辆的目的。
: w3 y. x& g$ E& {7 Z3盏红灯亮:如果同时选取两条大道通路时,经模拟,其等待时间T=inf,也就是说不可能达到降低车辆的目的。
- Q8 K. ~/ X; t4盏红灯亮:如果同时选取两条大道通路时,经模拟,其等待时间T=158秒,并且多次模拟发现其等待时间出现为inf的几率很大,也就是说不可能达到降低车辆的目的。: y' v: ^3 f5 ]" g
5盏红灯亮:如果同时选取两条大道通路时,经模拟,其等待时间T=101秒,并且多次模拟发现其等待时间出现为inf的几率很大,也就是说不可能达到降低车辆的目的。
6 G3 t& Z  ]" E  p. ], K6盏红灯亮:如果同时选取两条大道通路时,经模拟,其等待时间T=63秒。& k7 M7 Y* K. K: y- i) k0 l# G
7盏红灯亮:如果同时选取两条大道通路时,经模拟,其等待时间T=50秒。3 i5 W& `4 w( e- z0 m$ z
8盏红灯亮:如果同时选取两条大道通路时,经模拟,其等待时间T=45秒。
4 T# k8 G5 Q! z1 V' B3 Q$ q9盏红灯亮:如果同时选取两条大道通路时,经模拟,其等待时间T=35秒。
- @2 [, f( C) A7 Z( T10盏红灯亮:如果同时选取两条大道通路时,经模拟,其等待时间T=30秒。* |( ~: X) t% J. ?- l) T

6 \* S, U' {' X! L0 m+ Q/ K2 @同样地,考虑到我们设计的算法,对于高峰期,不可能不选取某一条大道,所以我们只需考虑对称选取,即组合时尽可能的将大道分配在不同组合中。
( O) T1 G4 R  j6 R2盏红灯亮:只选取一个大道通路,另一个大道堵塞时,经模拟,其等待时间多次出现T=inf,说明此种情况不可能大道降低车辆的目的。5 Z' P4 G$ O, U4 Q: G1 Y- `
3盏红灯亮:只选取一个大道通路,另一个大道堵塞时,经模拟,其等待时间T=96秒,但也多次出现inf的情况,因此不考虑此种情形。
9 d8 C4 w+ O$ f! z7 b4盏红灯亮:只选取一个大道通路,另一个大道堵塞时,经模拟,其等待时间
1 c* A+ M/ h) S3 Y2 QT=65秒,但也有很大的几率出现inf的现象,也不考虑。
8 Q9 i/ D# i$ h7 F, N6 y5盏红灯亮:只选取一个大道通路,另一个大道堵塞时,经模拟,其等待时间
  z: ~, V9 j. m2 Z5 f; F& v4 bT=45秒。
) J" }9 }4 x+ |8 c6盏红灯亮:只选取一个大道通路,另一个大道堵塞时,经模拟,其等待时间
) z$ _  O+ Q+ P) R2 u5 aT=35秒。+ i. o9 _. K( _+ R) s: m
7盏红灯亮:只选取一个大道通路,另一个大道堵塞时,经模拟,其等待时间
. c5 h+ y0 n/ z+ u- \8 w4 MT=31秒。3 `, A8 A) G; W0 B; u
8盏红灯亮:只选取一个大道通路,另一个大道堵塞时,经模拟,其等待时间$ b3 Z1 ?+ f% J0 Q: X: u9 U  ^
T=27秒。
; Q+ s, a2 ^4 G+ b9盏红灯亮:只选取一个大道通路,另一个大道堵塞时,经模拟,其等待时间
# \3 _* e! }5 I$ X7 [! @8 rT=25秒。: o: L+ E/ \6 U7 N0 o% P+ z9 Q
10盏红灯亮:只选取一个大道通路,另一个大道堵塞时,经模拟,其等待时间=23秒。1 v! ?0 K) @2 Z0 M

, {. R7 P- l' y对比上面的两种组合下的结果,显然第二种情况更为节约时间,对于所有红灯亮的情况,只选取一个大道通畅的情况能保证等车时间。因此,我们认为,选取组合时两条大道不能同时选取。
; ?' {  Q: t" e* y( y/ W
! W2 _% j$ E, {3 X由此,我们可以得出高峰期和次高峰期的红绿灯控制方案:" N; Q+ |1 Y( Z1 B7 @+ p( |
对于高峰期的方案:
4 d5 u! u! ^4 T( L7 \# B先亮6盏红灯(包括主道的那个红灯),其持续时间为T=65秒,此后,红灯全灭,绿灯全部打开(包括原来的),持续时间为T=27秒(在高峰期,对绿灯全部打开的情况,即所有路口通畅时,经模拟,通畅时间为T=27秒,此后若不打开红灯限制车流入,将超过环岛最大车容量,因此,时间不能超过27秒,但是,我们为方便设计考虑,将时间定为27秒)。之后,又打开另外一组没亮过的红灯,持续时间为T=65秒。结束后重复上述过程。3 A  S$ P6 W$ L  D: T4 u
' x6 T2 _5 Z6 e$ t" A6 m7 Q
对于次高峰的方案:
6 u+ k/ t3 b' r+ X; M+ F先亮6盏红灯(包括主道的那个红灯),其持续时间为T=35秒,此后,红灯全灭,绿灯全部打开(包括原来的),持续时间为T=23秒(在高峰期,对绿灯全部打开的情况,即所有路口通畅时,经模拟,通畅时间为T=25秒,此后若不打开红灯限制车流入,将错过环岛最大车容量,因此,时间不能超过25秒,为此,我们为方便设计考虑,将时间定为20秒)。之后,又打开另外一组没亮过的红灯,持续时间为T=35秒。结束后重复上述过程。6 R+ F+ w2 i" a+ T4 u9 e7 O3 U

& b; u, s$ M( C7 a+ \
6 _: p$ \+ r1 C0 U% h三、对于一般情况与稀疏情况的说明:' R0 ^& r3 ]! l. v3 f/ u

8 |) \% ~1 s) P# n- g7 eA.
# M# P, P# w5 B( A) C3 B5 O9 i5 d
一般情况:

5 Q1 B; q+ D" ^对于6盏灯的组合(每个组合只分配有一个大道),其等待时间T>150秒,如果红灯时间仍然按此时间设计的话,肯定是不科学的,因为不可能让汽车等待如此之久。因此,我们从尽可能减少等待时间为标准,经过模拟,发现当所有路口均亮红灯时,其等待时间最少,为T=23秒,而这也符合一般城市中非高峰期的等车时间,我们为了方便设计,将此时间定位30秒,而30秒也是一个可承受的等候时间。对于绿灯全开时的情况,更趋前面的假设,经过模拟,畅通时间为T=50秒。因此,我们选定一般情况时,红绿灯亮灭的原则时,所有路口红灯全亮,持续时间为T=30秒,此后红灯灭,绿灯开,持续时间为50秒。之后,重复循环。8 j9 @% W/ f' T1 ^
B.稀疏情况:% e6 P/ s8 }2 Q8 S% ?
对于稀疏情况,车流量具有不确定性,我们无法估计具体的车流量,但由于此种情况下车流量很小,我们可以将之归到一般情况,并且以一般情况的红绿灯规则来控制。8 }! v) e5 N" I' v
, O, U! Q' Z9 n
0 m$ R* E. P- p7 q

& x4 R5 T3 c5 ^
六.模型检验
根据我们的方案,我们采取随机模拟的方法,分别对高峰期,次高峰,一般情况和稀疏情况进行随机模拟。: U5 n/ c: ?; O. y
为了保证环岛内交通的流畅,我们设定环岛内的车辆总数Q不能超过1000,但实际上换岛内最大车容量为1327,因此,我们在考虑交通流畅性的前提下,可以适当地放宽这个限制,严格规定Q不能超过1200& C+ r  r8 r" p/ h
我们检验的目的是为了了解模型的稳定性,为此,我们对四种情况分别进行了24小时的模拟,其结果如下:: G; q5 |. U7 J+ s+ E( N, s
1.高峰期:(程序见附录)
% h$ f& _6 ~$ `: q第一阶段红灯持续时间t=65
) I( k5 S/ _) O- ]$ I第二阶段绿灯持续时间t=27
9 z2 u; ?! Y) Y' i+ D第三阶段红灯持续时间t=65( H$ ]6 ?; I7 W: T% W
第四阶段绿灯持续时间t=274 E4 Z3 K% F' r1 o- `
总周期T=1844 S/ P/ V% y0 \# M9 d, M

, A6 q# L1 ^1 E) I3 S对于此方案,我们在模拟时发现,由于每周期都会累积一定的车辆,也就是误差,在很长时间后,其累积的误差将达到非常大并且不合理(超出最大容量)的数值。因此,我们需要增加一个修正时间,并且此时间应该很小,只在车辆超过一定数量时才加入。0 @& ]4 _$ m& s. B) A
我们的做法是,当环岛内车辆大于1000时就对红灯持续时间加3秒钟,即此时红灯持续时间t=65+3=68秒。在车总量Q没有超过1000时,我们仍然以65秒的规定时间运行红灯。
# F9 ^; A/ U$ ~! K7 ?这样,我们模拟24小时高峰期后:超过1200的车辆次数为37,占一天内车辆总数的比例为1.97%。(这只是模拟一次的情况,在模型改进中,我们模拟八次后取平均,得出更加准确的比例:2.74%
3 m. H, o* o. f: P* z- y8 d对于此比例,我们认为是相当小的,也就是说,发生环岛堵车的概率时非常小的,因为我们是对1天进行模拟,累积误差显然会相当大。而一般的高峰期只持续2小时左右,累积误差必然很小,其堵车概率也应该低于1.97%
* z8 V$ `# a: {: [' @6 [ 6 F8 }8 b- b: w7 T
2.次高峰期:(程序见附录)
$ @' @2 B# o3 X# K3 t7 W第一阶段红灯持续时间t=35
5 G0 t% b+ J% L8 c: r! t' h& B第二阶段绿灯持续时间t=230 y7 C  e5 g! O0 e- B3 X" M* m
第三阶段红灯持续时间t=35
7 }: s1 z9 Y( u2 A* G0 K第四阶段绿灯持续时间t=238 b" L" m; R. B4 w
总周期T=116
9 J7 u+ b% {5 X' Z$ v1 R' e对于此方案,我们为了保证环岛被最大利用,同时又能使交通运转顺畅,设定环岛内最大车辆数不超过800,经我们模拟24小时次高峰:超过800辆的几率为:
: ?4 c, h! g3 R, v) Z,
显然这是非常好的方案,鉴于此,我们不对此方案做修正,即沿用模型建立中确定的红绿灯持续时间。
0 A6 O5 T& M; O+ k4 I  M3.一般情况和稀疏情况:
3 g  @. }/ G% |# C5 _( k  n因为车流量的原因,不可能造成交通的拥堵,因此,我们不在对此情况做模型检验。为了说明时间安排的科学性,可参考其他大城市的一般情况的红绿灯时间。" f% a% A3 T) O8 i! \

9 D8 ^( C' K' y( F9 T8 i. y- ?. d7 Q 5 B6 J; `# e. |. Y8 U9 q( W

: d8 R5 g8 w; R4 [3 x: g% X
七.模型改进
1.对于工作日和非工作日,由于车流量的分布不同,我们可以根据表1来设计红绿灯时间安排。
- l6 G) z9 Q* k2.我们只考虑了每个路口流入与流出的关系,并没有考虑到车辆在环岛内的绕行情况。所以可以增加限制条件:环岛内并行车辆不碰撞,这样可以选出更加优化的方案。& o" O. o+ W9 _
3.不妨考虑车辆在环路中的相位问题,这项可以细化到每辆车的行驶情况,但这样相对来说较为复杂,我们不予考虑。8 l0 S! {% K6 o) ?& ~9 g" ]
4.对高峰期时间的修正:
$ V$ h1 y% N* T4 m9 f" n7 j若不对高峰期的红灯持续时间作修正,则经长时间后,累积误差将使环岛内车总量超过1200(我们称之为危险),这是非常可怕和不安全的。为此,我们对红灯持续时间做一点微小的修正。经过我们的模拟:(程序见附录)
5 d: G) L3 A3 f  I8 p4 N: N/ S0 R修正时间t=0时,出现危险的几率:89.62%0 @; \* n- K3 T  x' h! _3 k- r
修正时间t= -1时,出现危险的几率:88.56%
) S: v- b* x+ @& ~5 c/ D修正时间t= -2时,出现危险的几率:98.03%
% Q/ b! l; A0 z1 p* \其实,如果减少红灯时间,显然,这时在这段时间内进入的车辆数目就会增加,在不修正时已经危险的情况下当然就会照成危险几率变大。' R6 K: S" F5 Q5 i
所以,我们应该将修正时间调为正值。
" O) S( K* b$ N- y7 _: y, f6 Y5 \修正时间t=1时,出现危险的几率:93.33%
/ C2 K- v/ z+ J% D! `, e* ~修正时间t=2时,出现危险的几率:13.74 %
9 h# G& X9 [" k3 _修正时间t=3时,出现危险的几率:2.74%
7 t) q  Z  A9 ]0 D! R% j# C6 P因此,我们以5%为限定,确定出修正时间为3秒。. ~, x8 Z7 x* Z2 g! t/ ~
1 R7 g! T! g/ L( w  [+ N
八.模型评价
8.1 优点; j! p+ _2 ]# U/ o9 u" I5 ]* K& F
( E5 p+ v" b$ p- G
1
.本文对不同车流时段(高峰期、次高峰、一般情况与稀疏情况)模型分别进行了模拟计算,得到了最优组合下的红绿灯循环时间。由于车流量是基于模拟的,并且环岛内车辆总数也是先设定的,因此,我们的模型可以适用于很多情况。并且,根据我们的模型,对于已知车总量和具体车流分布情况,可以重新确定出最优化的红绿灯控制模型。
) ]% s4 G2 x1 W& K+ S6 z5 p( x

/ p( t( d' E: Z' I# f% b3 P2
.在建模过程中,我们对所有可能出现的红绿灯组合情况进行了模拟,这样最终得到的最优组合的方法是很科学的。

) u5 z& ?& g  i) @
4 T2 j! l+ a: {/ z8 }8.2 缺点
: U/ P  D( e2 [% ?2 v8 z/ k( j+ d4 I- G
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 4 Q& T% }# G; u$ h# a9 H) X
  S+ [* H$ K/ _: W/ e6 z
! k; g8 U4 |6 `! t' W0 H
thank 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相似
  ~1 K( h+ O' Q& }- l% e
作者: 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