数学建模社区-数学中国

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

作者: lijiustc    时间: 2009-8-17 16:52
标题: 巴黎环岛设计(本队拙见)
巴黎环岛车流控制模型
摘要
& l% v' |5 g6 W6 ?8 F3 j0 c: z
本文就巴黎凯旋门环岛的交通问题,建立了控制进入、环绕、流出此环岛车流量的红绿灯模型,目的是使环岛内交通顺畅,并且尽量让堵车时间短,堵车数量少。( H& Q' N* m9 S
    通过分析,发现环岛内的最大车流量为1000,波动范围为+200,还可根据车道宽度计算出每个路口的最大车流量。这两个因素对环岛交通有着很大影响。因此,主要考虑车流量和环岛内的车辆数目的影响。并设定,在建立模型时,环内车辆总数最好不超过1000辆。
" T6 n) I- s) g6 `+ F$ ]4 V根据各时段车流量的多少,本文将车流分布为四种情况:高峰期、次高峰、一般情况、稀疏情况。再根据各时期的车流量,建立了环岛内车辆总数Q关于流入量与流出量的方程: 。通过随机模拟,得出环岛12个路口的车流量,并根据堵车时间尽量短,堵车数量尽量少的原则,找出所有可能的红绿灯组合(前提是每个路口都有红绿灯),通过比较,得出最优化的组合(具体组合见模型建立与求解部分)。! C( r" m- a/ \5 _- G
通过随机模拟,对于不同时期,得到不同最佳方案:
( J9 |  |, S* v4 V1.对于高峰期,将红绿灯时间分为四个阶段: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秒。
( A5 U" e& ]$ ]+ x2.对于次高峰的方案,红绿灯组合与开关顺序与高峰期完全相同只是各时段持续时间不同:T1=T3=35秒,T2=T4=23秒。" H4 x" U& i/ {! j% f+ {% o& u
3.对于一般情况和稀疏情况,红绿灯顺序为:在所有路口,先红灯亮,持续时间为T=30秒;之后绿灯亮,持续时间为T=50秒。之后,重复循环。% P" K1 g) y; Y" Q
由以上方案来模拟计算一天内环岛内车流量Q,其值超过最大容量的平均概率不超过5.00%,较为理想科学,所以此方案可行性较高。
2 i! k. P1 k# |& f2 M- }* t: x  t; U最后,对模型进行了改进与评价。1 _  A3 M6 @% S: E

0 p' t* v1 [* S- s7 u" {9 }  g; @ 4 N1 i3 z5 H3 X1 d% N
关键词:环岛车流控制 红绿灯控制 排列组合 随机模拟 等待时间
- X2 Z4 n7 Q+ O9 q3 F4 s 1 }* h: X- O, I, u! [

0 s9 y+ J5 a$ Z # ^8 e% h$ {) w8 e5 `

5 G( M; r. ^) n7 Q 1 [! a4 Q0 D8 A9 D$ l& s

9 C' [7 |& @' l, F  N
一.问题的提出
巴黎凯旋门环岛有12个路口,其中有2条主道,10条支道。在进入该环岛的道路入口处可以设计有一些信号灯,或其他标志来控制车辆的流通。即为环岛制定车流控制模型,要综合考虑各时刻的车流量,环岛内最大车流量,天气情况,工作日与周末情况等因素。
/ Q3 A" P$ R* i    我们的目标是,根据已知的信息,建立控制环岛车流量的具体模型,并分析该模型的优劣与稳定情况。
( L7 n1 _" N+ L: Z1 D5 ` 8 Z$ w/ h, o8 h. s* ?; W- X5 D! P% q
1 环岛平面图
% y0 j( v, `8 g

) v) H$ G3 b" ^' f! F* ]: ^ 8 C1 o% X( }8 N& H$ G+ _4 ~$ h0 m
7 {$ B" p% s5 a6 A: b
4 x5 y. a) }4 P' X' o4 Z* U

2 G0 y! L' P; G! b( l
二.模型假设
1.假设每个路口的进入车辆服从均匀分布(具体的分布情况见问题分析)。* N2 r+ u# v" e- v( |( P% ^1 k
2.假设每个路口的离开车辆也服从均匀分布。" Q* f8 h  c' ?3 g$ |
3.假设每个路口都配置有红绿灯装置。
3 e( g% [7 A9 s( j/ q; z  e4.假设环岛为单行道,只允许进入车辆沿着俯视逆时针方向行驶。3 ]- R, Q7 n7 o! t; a. v
5.假设进入环岛的车辆最多只在环内行驶一圈,不能多次在环内循环。. h2 }9 E& o4 a5 C
6.设环岛内与各路口处的车速为20km/h~ 30km/h5.6m/s~8.3m/s& h0 R9 W; d1 w  I
7.假设只考虑正常情况下的交通,不考虑发生车祸和路面维修等意外情况。- Y4 P) I- q" g  g- S
0 z- ~! I0 Y8 ]; y

9 S8 k: o& _9 r  }9 O/ s$ h
6 H  \  R6 P" m2 \$ u
三.变量说明
:环岛内半径。
! Q8 W7 \" p8 G  L! T:环岛外半径。
4 u4 T" w; m# A- X1 o( G:车底面积。
% ^2 U" y2 T/ J# T% `:环岛路面面积。其值应该为两圆面积之差,
% b# y# e5 M5 s! a7 m6 Y, m:环岛可容最大车辆数。 取整。# y, `2 c/ u; k/ n! g
:环岛内车辆总数。4 ~; n3 d+ N' G6 H9 E) L
:环岛内车辆总数的当前值。: {- J2 \: E2 z
:各路口进入的车流量。(1<i<12
0 ]+ b/ f3 c# i* ^$ j' z. U) Q+ v% Y:各路口离开的车流量。(1<i<12
- Z* }8 @; ?! u) Y% h& P3 l/ N7 P:逻辑控制变量,用于表示各路口的通堵情况。 =1表示通路,即绿灯亮; =0表示堵车,即红灯亮。(1<i<12# ]1 X3 o0 @  m

; h+ \7 m) C& D+ ^" N2 W:表示所有路口的流出车流量。9 B' p; n- X4 f# S0 ~) g* U9 b

9 W+ a( `, z, i& N:表示红绿灯持续时间,具体是红灯或绿灯,模型中会具体说明。
' t& t; E% n# w 7 q( K& A0 G. b  F9 n0 i1 q) d- E
:为某种情况下的堵车数量,具体模型中会说明。
$ a2 [9 d6 J+ B% S+ S9 h 8 F$ n/ n, l1 k( ?# w" X6 W6 b
:车流密度,作为参考因素,将影响对车流量的模拟。# W8 n& D+ K& O
* k1 }& g, B& B: f0 k0 z2 N9 S3 ^
& _+ B# H% Y- j

. Y' i3 o. _8 S2 P" p1 i* U# X
四.问题分析
此问题属于交通流问题,我们在初步考虑这个问题时,参考了交通流模型的结构方程。我们认为影响环岛车流量的因素有很多:红绿灯,时刻(高峰期,平时等),天气情况,游客人数(虽然凯旋门游客时从地下进入凯旋门的,但是每个路口还是设置了人行道,所以游客的多少也会影响到车流速度,因而影响到车流量)。正常情况下我们不再考虑路面维修和车祸的影响。! M  G" {% v* w9 f* `
由上分析,我们需要做的是通过对交通流情况的模拟,找到最优化的红绿灯控制情况,从而达到车辆最优化控制的目的。% M6 v/ w: k6 a8 E/ Y6 l- Z
因此,我们将此问题归类为最优规划类问题。! d: m* _$ R- L; D- |' K2 f, U
我们查找到了以下参数:
: f( y) O( r. `+ X- ^8 S凯旋门环岛每天平均车流量:110/天。* T8 u3 j; {2 P/ A0 }- h
环岛外半径:80m
# d  @' {4 ^" I& F- Z环岛内半径:53m. S  D+ d) O7 r) K4 y
一般中型车的底座面积:(7~10m2
& Q* c. I7 g4 A3 S2 x; R主道可以同时并行3~4辆车;支道可以同时并行1~2两车。
" w9 j* T+ Y4 E) ? 4 x0 k5 f; X0 z9 M" D

/ b4 [$ y4 R! j6 Y4.1 环岛最大车容量:1 `3 O: m5 n  M, I6 i
由上面搜集的数据,我们可以计算出环岛最大车容量。. j4 y+ I& Y3 f( ?7 [/ Q6 g
环岛内半径为 ,外半径为 ,车底面积为 9 ^5 g* F4 X8 T0 V, v
则环岛路面面积应该为两圆面积之差:& v/ F- j$ r) g

( `9 q0 S, o. `" w7 G, G则环岛可容最大车辆数为:   (取整)
2 z6 F1 w5 ^0 p( ?5 N可得环岛最大可容车辆数目为: =1327(辆)。
- U! @9 }# Z* [2 @考虑到车之间应该有一定的间距,并且应保证环岛有一定的畅通,流畅性,我们设定环岛最大可容车辆数为N=1000(稍微超过1000也行,我们只要保证严格地不超过1200)
  Z; D5 @9 W$ h5 _5 I. c1 i- h# H: j
; ]2 k6 N0 K+ w0 {5 T. A$ _ ' z* d( w. E: N1 a  o1 F4 X
4.2 各时段的车流情况! w5 N3 _* T; [3 l. _2 Q; E

+ I6 e6 `" e  f工作日+ |% H- a+ h4 p* z5 g* f: T  j
时间分布
: f0 t# V+ o3 T$ _0 T0 R
时期分布
( G+ _  U! r# P8 U% G
000~500
0 A' ?$ j: V( o, Y  \$ d
稀疏情况
( p, A) V6 T# U1 y0 `/ ~
500~600
0 ]" }1 |' v4 l2 n" g: C* q
一般情况
0 n! k* S9 j& ?8 p2 q
600~730+ s9 }& K) D8 s% s
次高峰
! B8 C. `  ]/ e4 ]! m( J+ [
730~900
4 @; e' Y0 m% P9 v& J* Y1 k
高峰期" F8 q' |2 }- u
900~1730# H3 y+ H- q/ }; i- T
次高峰
- \1 V! p! K7 r7 h* Z( l
1730~1930
8 _( B+ t8 g7 o) h9 }
高峰期
  B8 b/ [* ?) d/ m4 q# D* a
1930~21001 a. T3 Y. D' \4 f& x/ u
次高峰
; u  `7 X: J: R' a" U
2100~2300" j0 r4 u- \9 o# J' b; x
一般情况
0 I& K! K' @/ L
2300~2400
  l7 X, ]1 k- C7 \7 E) }
稀疏情况) x, M# f) I5 e

' Y' I& A6 L6 f9 k# |& F/ O
5 E1 ~3 Q# h0 g: F0 r8 [周末
2 Q( ?( Z, F* B
时间分布$ s: o4 z4 i1 z0 j
时期分布, k' I* E) n* O- ^
000~500
1 ]. v6 q( ~9 X
稀疏情况
' d/ L; Z$ m& K/ E7 L0 Q
500~600# f1 p( C/ L# R1 }+ {
一般情况
8 T! V4 ]6 L! w- Y
600~8007 a! v: L3 y$ J7 b0 Q
次高峰
, q6 ]/ G  _2 N" n' [
800~17303 S8 y$ q5 y& o$ ~) e9 R5 m% r9 R
高峰期
3 k9 M5 R6 h; J) l; V
1730~2300
% H4 g- R) F4 S9 W7 R' x" |
次高峰
: P/ D8 o! a/ G6 X; p$ ]
2300~000; b$ i9 _/ `: W2 o' ~- ]
一般情况' {7 p6 p6 }9 V) ]6 l/ K+ @/ v
1

. \& e; i+ r: z8 t9 n) s说明:# p' s# w3 D" X" e* ^; }2 ?: ~
在巴黎和法国其他主要城市,高峰时段的交通最为挤塞。法国每日的交通高峰时段是早上7时30分至9时及下午5时30分至7时30分的上下班时间。在星期五法国人一般都会外出旅游,所以交通高峰期会较平日来得更早,在下午4时起便开始阻塞,其中尤以离开巴黎的各条公路最为繁忙,而非高峰时段的交通一般非常顺畅。
. E* O" B! T* H+ L8 B2 `% Q) h   }% v9 Z7 [6 Q0 H0 D& B
4.3 对于交通模型的假设与估计, |# x# a" u( X; R4 X( ^) O7 ^4 w
对于交通流模型:
" P3 e2 b4 f; f/ Q2 ~& N3 }其中:q为车流量(即单位时间内通过的车辆数);
2 f, H6 t8 J2 W) q7 A- E( J  V5 J4 T. y2 ]% z7 G
2 G" ]! b" _9 Q
为车流密度(单位路长的车辆数);3 s6 ~% ]4 E! A: K: r

( @' U$ W+ b# y$ x& o6 |" F; e4 N
/ {1 P$ W  T) g  q6 D( _5 f0 k8 i. P/ u* m
为最大车流密度。4 m% m+ i4 g4 N: A- c" r0 f

6 L) W9 w# l! o6 F1 h2 q, Q3 J6 N0 Y9 \
0 {# T5 P% m$ M9 o9 q
为最大车速(注意:车速时车流密度的函数, )。& q$ y* @. m( u1 Q" l8 x  x
根据上面的方程,我们可以估计出每个路口不同阶段的车流量,这包括流入与流出。
+ i/ C* X; n# }7 _7 Q为了保证总塞车量最小,同时等车时间最短。我们针对不同时段对车流量进行了不同的划分:. N% {9 x$ s. c* `  S% l
环岛内车辆总数Q
( }8 ^/ q$ G0 M9 ^( Q1 z) v
   5 q) |+ M8 h1 e( T! t
有红灯亮( B' D) T2 J) A/ M* T3 ~5 J0 [1 n4 u0 a
无红灯亮
" a9 ]- b+ B+ d6 K% Z
5 u6 O4 P+ I1 j
" c) `* g9 }! _/ {% k; \/ h

/ J/ p3 k. N' I& p9 o

  F) k! r  @; J! \9 Z
主道y
  C8 K9 n; v1 \) }6 l; K! m
支道y& E' g& o5 u( B
主道w
; M- V/ l; C7 G3 M: e$ e
支道w+ ]; W3 S; u) D3 h
主道y9 Y% J8 k9 e. Q
支道y) u! P1 W1 [" E7 Q
主道w
" k# Z3 L9 J$ g; V6 M  j9 y' w
支道w
9 F' ?6 V8 p) [! ^3 L6 t( _+ p
800~1000  N) K4 C" u4 g0 r
高峰期
  }4 H! l' v8 S6 T8 h6 `% f
3~4# f; h: Y& N7 l- e  e( J3 ~7 E  b
1~24 h: I' H+ P7 S, ^
0~46 }: }  `! G! _+ r
0~2
$ ]& H+ w1 @& {0 s) L/ s
3~4- g' J5 h. Z: O, g9 p, E
1~2* ]4 ]" s4 f8 ^) Z0 x3 M
0~4! g$ Y4 W" u# }) [0 Z5 ~  R
0~2
* L8 ~8 N( w& C! c
500~800
9 ]! C+ o5 a2 ^/ x. l: c
次高峰
1 {: ?. |: w7 v
2~48 g, V0 s: |8 ]0 q8 K
0~29 r/ c( {4 l1 x+ d8 M
0~4, j! ^: k  j0 X( Z2 ?/ p
0~2  ^1 \7 O3 Y3 D" v
2~41 Z* H9 s( @% @" z. N9 b- }) Y
0~2
8 g/ \4 y& N: L
0~2$ \' P1 m" X3 t+ x& v8 I' l$ A" `
0~1* @, ^- \. T" Y2 ]& m3 G' h
200~500* H1 L4 h% |* y
一般情
. ^  d9 g% J$ u* I
1~25 q4 b3 [- d1 h
0~24 G: [* s8 j/ U3 C0 `% O! X
0~43 j  T/ _7 ?7 a) Z3 ]
0~2* V& X/ p1 P$ E$ v
1~2
$ v3 K7 j* H, W+ e( s
0~2) ?1 g- U' B+ s3 D
0~2
3 S1 V# l4 e+ c: ?5 J% b; z4 k
0~1; O8 q' B+ p" @2 A1 {; @( t6 m1 A; B
0~200
$ L: Z4 J  q9 }
稀疏情
: c' \, k  p6 Z' n+ N
*; Q# d- E6 b# [5 J  h
*- Q+ o5 s9 M+ D$ J
*1 W3 H) v& E# _9 L5 J1 G
*
; b8 y1 h* }2 g0 O( K  K7 P
*# t# {% u7 t; {; t% R
*- `9 M! B$ q' u$ U% y/ [, ~+ `
*) K, V8 ^, C) B, c7 v7 N
*
2 F" E# K/ C3 n0 _8 }% P! S
2
五.模型的建立和求解
我们先设立一个逻辑控制变量
! T  i" L* U% e对第il路口,当有车进入时, =1(即认为绿灯亮)。0 r( G+ m& U; ~4 H4 N6 M+ R
               当没有车进入时, =0(即认为绿灯灭)。: A' e0 v8 M" {( W( T: i2 n% C
又设 为第i个路口的车流量(辆/秒)。/ y9 O6 C- M: T0 {8 N
则我们可以列出下列等式:
: `; {  s& `4 a6 [9 R8 W      根据:单位时间内,环路车流量的增量=流入的车流量—流出的车流量。
3 }, g3 @, `: c3 j8 |  O" W: {
' q! ?) F5 |. M$ D
. [" h  Z& k$ r3 @9 A

( h2 i4 `5 B& m, Vdq表示单位时间内环路车流量的增量。0 E' H6 Z  y8 v! m$ e3 S$ X3 N' Y

5 _" [& R: h; ?. d. X) _2 l, q对于 以及 我们可以用rand模拟。6 Y! w5 }- ~" {" ^/ O4 q

. V9 R8 ~2 U0 F* @因此,环岛内车辆总数Q满足:1 R1 M1 A5 K6 \0 z( b/ V

$ R8 q# x( d8 N' k+ G* U3 P/ V7 [& R注: 1 `% g1 h- E# k+ Q
由于 的组合有很多种,我们加入限定条件,即要保证等待时间最短(红灯亮的时间最短),以及等车数量最少。
4 X. ?1 j) ~3 W' F+ j
1 W# G; J. T2 S: B: w0 q% G因为等待时间就是红灯亮的时间T,等车数量又与车速和等车时间有关。
. u) T6 i- f+ h* Y" } , Y' j8 M: i+ t
为此,我们设立下列函数:
" b+ r4 C" E' D+ E9 e4 \4 n! n' E: R

1 b& y4 @' R& y# E. @5 s$ z
3 r& C5 y0 f; Q/ C# W
; q, y# S3 i' q5 k3 O1 \% I
说明:% E2 z1 U6 ]) E
为各路口的逻辑值(通为1,不通为0
5 T( y- b  ]3 q! }) W9 T) p2 n
$ C, k3 [$ |! M% p# z' T& ]: e为第i个路口的车流量(辆/秒) 2 c; m: x1 T+ X6 T$ C3 I4 c
为循环中第一次亮红灯时的堵车量, 为第二次亮红灯时( 的对立面)的堵车辆。
9 n# e/ s/ J- H! m2 l/ l# ]为总堵车辆。
2 g1 z- Y' i6 A. o9 ]6 @& w$ J " V! C8 t( z  Q8 W* ~/ p6 |5 ^
上面的分析可能需用到下列参数值:
3 ~3 _8 G) {( D/ s1.4 a2 I5 C7 H( B8 s' U
每条路段上的最大车流量。
6 M- ^: b4 u1 \- M
2.
6 a, }1 X) x6 k/ R
每天路段上的最大车流密度。
: t7 S2 H9 y! J2 L7 H' Y2 P
3.
# d" O* R  ?, R% U3 E& D
每条路口进入的车流量(辆/秒)。

8 M$ J% z9 x/ ?% ~" D4.* o- o) A! n' W
每条路口开出的车流量(辆/秒)。
* ^) g! F, O, y8 k

8 S6 X: f( e2 o* Q. M7 O通过模拟,我们将在不同的组合中找出最佳的红绿灯方案,并通过多次模拟,确定时间分配。) `8 [: v( _! d) ~3 O5 [

+ G0 ?2 X# o7 R, k5 h0 s0 A
/ A) m, y& O- p; c( [/ U一、对于高峰期时,我们对于下列组合进行了模拟(程序见附件):2 P: Z: C" p# w) P9 a: y/ e
红灯亮的个数(盏)
" C/ {) `6 s; i3 `2 D# V
12
* ^8 X6 A' E# {* v/ Z6 a+ Q/ V1 C; j
11( N% y" p/ `& V2 y
10
# s5 a1 `, R4 \0 L
94 S  K& y, `8 k  s
87 v( Y9 W+ I$ l- m, `! h
7
5 P# _- d, P' W2 p5 p3 [2 k
6
- y$ U1 Y  F+ s' U
54 t& f" D: _5 @) @7 e1 C; `
46 y% {. G+ C" k, u4 ~3 [5 ?' a
3' E  `6 ]9 V2 M$ D, D
2
. _4 F; }+ `( H1 ~9 [
1, r6 ]7 L. B% ]1 @" R1 K
0/ J+ O/ E3 [6 \4 U3 C, F0 `
平均最短等待时间(秒)3 K) S. x6 v! |6 k/ q% }$ ]+ f0 ~0 Y4 F" M
16
! z. w9 K: I4 e6 o
20
7 U8 G" V7 G1 x, A
22( C4 d% u" U- C) z$ R
27
: }. M) g% J% ~5 l
30( i( k9 X) G2 x" G, q) ]  E0 s) j2 L
42
. U! w" k, x6 e" ?
701 I; s7 M5 s' W9 r4 C, q5 o
154
5 W$ P/ C6 G' A+ Q: e0 d$ i
Inf( u% u8 G5 a# A& V  x3 j2 L3 Z
(无穷大)
4 |; g% E* U% I) y. ~
Inf
8 L: l0 o3 Q/ |9 v
Inf
- ]5 f- M  K! I3 h% x- ^8 W
Inf+ h2 A6 w9 R. n) |! M! }' F
Inf
6 i" c1 ~* A* l( O$ g( O; @
3
注释:
$ `" J  O! C. m9 {. ^+ A8 ~& A( y对于红灯亮的盏数,我们可以有很多种组合方式,比如红灯亮1盏,可以是1~12编号中任何一个亮,但这些组合中总是有一种或多种为最优组合,这从我们程序结果可以看出。
5 k8 Z$ M7 i/ ]( H; e1 q1 L 1 A2 r7 Q. O% T
分析:
5 ]$ A  `) n. i1 s$ S6 K! h : ]5 @7 n; g: h/ V% L' y
0盏红灯亮:( I: ~% g3 g) W5 m
此情况显然不合理,因为没有红灯就无法控制环岛总量。# W' _2 q4 Y" @% Y2 O, f8 ^

4 ^9 H" W, z! z1盏红灯亮:7 c5 l; X) J+ h! N" U+ ]. J3 v
对于此种情况,经过模拟发现不可能达到降低环岛车辆的目的,反而,环岛内将更加拥堵。(过程见程序)
: [. ]; v. E4 r 3 G! _8 Z0 _3 r, l/ x
2盏红灯亮:  ?- _/ R- A9 W6 b" b" v& i% i4 o1 m
此情况结果同上,不可能达到降低车辆的目的。
5 c, R8 L) a2 K( y4 K3 i, n
  R/ J1 z$ K, c& P$ ~4 K3 M, ^( S3盏红灯亮:, Q9 [; U4 I. @2 a0 c, z! t
此情况结果同上,不可能达到降低车辆的目的。; H6 w9 d, A8 P! ]$ k$ i9 S

# o& `( C- _+ i/ @" G0 H4盏红灯亮:
" l$ p) O, F8 i0 r/ w此情况结果同上,不可能达到降低车辆的目的。) a0 h: m+ j2 z& @

( W; n5 [# `& M& @, p& Y9 s由上分析说明,红灯至少应该亮五盏以上。. R6 ~" h8 e6 {$ F

9 d" i1 n9 b& l# t7 z- z为此,我们排出一下组合:2 ?# j" [6 A* h
5——7
* p+ q6 R9 t7 M$ [: }此种组合方式下,可以分为:
2 l' t) J4 I+ n/ ja.开五盏红灯时(包括一个主道)的等待时间为144秒,开七盏红灯时(包括另一个主道及其他支道)的等待时间为48
. y6 i; V- W& I: E# F+ l& i5 j* R6 Q此时,总塞车量为:
: n# j5 O6 e7 Z3 a' E! f7 B9 }" }  X1 T0 ?
b. 开五盏红灯时(不包括主道)的等待时间为inf秒,故此情况不成立。
- w! e. X! q5 L% w1 S& o* ^
  |7 @! ?3 Y3 o1 x* \% {5 v6——6* `" @. M0 D7 H; |) ~" {
此种组合方式下,开六盏红灯时(包括一个主道)的等待时间为68秒,开另外六盏红灯时(包括另一个主道及其他支道)的等待时间也为67(由于分布相同,其实两个等待时间应该一样,但由于是模拟,不可避免的造成一定的差异)。
9 ^2 W+ c6 X% I, ]. n此时,总塞车量为:  F5 s- x3 c5 r; y7 K, \" l

4 ^& o7 \' ~' N
) U) }8 g) v- @9 g9 k" c- A在保持堵车时间尽量短,堵车数量尽量少的原则下:
+ W% L& U/ m& L6 I只有选择6——6组合是最优的。5 f. m6 A% @. K7 I) d2 @, M. ~
根据等概率原理,各条支道应看做概率上相同的路口,而两条大道也是等效的,因此,在模拟时,我们就可以人为地设定组合,只需保证总数按红灯亮的盏数分布即可。比如:对有6盏红灯亮,我们选定组合编号为:1 3 5 7 9 111为主道),此组合方式与2 4 6 8 10 12等效。
$ ~0 J; m1 m. ]7 R; V
! O1 C) X- Z6 U这时我们可以确定红绿灯的循环模式。
- }7 e+ P0 L) @3 X7 W不妨设定,先使编号为1 3 5 7 9 11 的红灯亮,在经过T(T=68)后,打开所有绿灯(包括原来的绿灯),再等环岛内车辆上升至限定值后(经计算t=25),再打开另外路口6盏红灯,其编号为2 4 6 8 10 12。之后,重复上述循环。
' E1 C, a4 U. S9 |  V! `7 D + ^% N7 L: p' A9 P
' x! ]# F3 [; N& _! v! Y7 b. x
二、对次高峰,模拟结果如下(程序见附件):
$ d9 C/ [9 M* c; W% P% z! ^/ M
亮红灯个数(盏)% a$ ^7 |( G; `1 L2 C
12/ B: A0 W8 B" u9 b
11+ H. L) U( y- r
10
# z8 ~- C" C# e% G, {. q
96 [6 k2 M( O. A" I
8
9 N, z$ v# @# I2 T# G1 Z
7
8 D+ u* B: W" s7 g/ X/ I- g
6
; G' Z, ]+ k1 B* a# ?
5
* f" N% i, e* U" L2 `
4
& W- F  r6 n8 x) e5 _5 Y# V
3- \* x# W: F: ^- u
2" }. e: N1 r0 f2 f7 g  ^
1
8 e. B/ Z: M/ h' h
06 P1 |1 @( x3 ?  J3 z7 T1 K
平均等待时间(秒)
% z) H+ x, {. z" w, @1 F
24
% \5 S2 `( H! `/ N4 Q: h7 h; ]- ~
308 l! q4 R0 i+ V: v4 O5 c
31/ ^7 \6 v; a: V  G3 Q
32
2 N$ `% s  l! M" x" b& Z
35. [# \; w* X+ e& ]) N& @! w
433 z# \. o7 a2 S
575 @; H; c2 _, c1 t* N# O# T8 F
68( S5 j! L" e' X$ o+ D9 ^+ T& H
96
# r  w" l1 f) Z: t! g2 K
Inf
, V4 |" P, p4 f' R7 c- M 6 N6 [: I8 g$ ]1 i- p, Z3 _
Inf
8 z# a0 x. G: d1 R4 y* J
Inf
: M5 o9 O/ [2 ^( E8 Q
Inf
% x6 \" j& V. u9 [5 L$ m+ @) `
4
/ h" c3 y0 D: M5 A, ?& |9 h7 {
说明:
: Y1 _8 q) u5 Y# [对于红灯数目小于4的情况,实际上有的模拟值满足要求,但由于等待时间太长(100秒),并且情况及其不稳定,多次出现inf,也就是不能达到降低车辆的效果,我们认为这些情况都不现实,均统一成inf类。+ ^1 U8 S7 f7 S" @. J( x

% d& x9 y8 l8 U: S0 o5 Z9 u由上分析说明:红灯至少应该亮四盏以上。: c* g/ n/ c- D5 H! H
: a! d) H) \$ s: s5 v$ {
为此,我们排出下列组合:
7 r' g' K2 `4 N) c! x4
——4——4
/ T% @/ A3 w$ @此种组合方式下,开4盏红灯时(编号为1 3 4 5)的等待时间为80秒,开另外4盏红灯(编号为2 6 7 8)的等待时间为77秒,开最后剩下的4盏红灯(9 10 11 12)的等待时间为147秒。0 }) G5 @0 x, I- f: c8 ]& P/ _
此时,总塞车量为:, F/ Q4 Y/ ^" G5 Y# Q# U% Q' Z9 S

1 J& h  F" Q& i8 {4——8
1 {! o$ v, P* [  F4 B6 d0 \6 e9 b. v此种组合方式下,开4盏红灯时(编号为1 3 4 5)的等待时间为80秒,开另外8盏红灯(编号为2 6 7 8 9 10 11 12)的等待时间为39秒。% h; i$ H. ]6 I% C9 m1 v- O5 B% ]
此时,总塞车量为:
+ P; L3 I6 l' P3 k7 d8 k
6 E/ c8 m* ~, i9 T; x 3 ^/ L3 g' B5 r3 c
5——7
7 I& P8 e2 |% l% _开五盏红灯时(包括一个主道)的等待时间为58秒,开七盏红灯时(包括另一个主道及其他支道)的等待时间为45. t* V7 O" Q9 J+ d4 B( ?
此时,总塞车量为:6 A9 M  F2 x1 v' q
3 R/ O( z  ~3 l

2 p0 V4 H$ t. K% _/ Z$ j3 `5 ]! n6——6
9 e7 z7 u; x- X此种组合方式下,开六盏红灯时(包括一个主道)的等待时间为50秒,开另外六盏红灯时(包括另一个主道及其他支道)的等待时间也为50(由于分布相同,其实两个等待时间应该一样,但由于时模拟,不可避免的造成一定的差异)。
( z& A% ?; f+ G) d9 f此时,总塞车量为:
5 H& f' A4 t" u/ O
# q$ I  }5 |: S  N * x; x# u) m) t0 Q) p5 ^& z8 E" K
由上可知:
% b2 S& }6 p, Z" E对于高峰期和次高峰期都应该选取6——6的组合,并且将两条主道分配到不同的组合中。
9 U; z6 S4 C: @6 P# W: D
" M& `- a0 k- ?
* B, s4 a) G. t说明:(为什么选取组合时两条大道不能同时选取?)
6 D  H, e5 b" y/ Q下面只针对高峰期说明:+ E& |& Q4 _% b* {1 i
对于高峰期同时选取两条大道的情况:
9 }4 d* K4 x3 j2盏红灯亮:如果同时选取两条大道通路时,经模拟,其等待时间T=inf,也就是说不可能达到降低车辆的目的。
, H! K2 P$ d) s: K. b! P+ y. v8 e' b3盏红灯亮:如果同时选取两条大道通路时,经模拟,其等待时间T=inf,也就是说不可能达到降低车辆的目的。" ]# Q% @( m4 K' w0 C0 s0 N
4盏红灯亮:如果同时选取两条大道通路时,经模拟,其等待时间T=158秒,并且多次模拟发现其等待时间出现为inf的几率很大,也就是说不可能达到降低车辆的目的。
3 e. l- C$ ]+ D) o1 M3 f5盏红灯亮:如果同时选取两条大道通路时,经模拟,其等待时间T=101秒,并且多次模拟发现其等待时间出现为inf的几率很大,也就是说不可能达到降低车辆的目的。7 M7 L& u8 L4 q5 V; V
6盏红灯亮:如果同时选取两条大道通路时,经模拟,其等待时间T=63秒。8 u( t8 U/ Y% i& _
7盏红灯亮:如果同时选取两条大道通路时,经模拟,其等待时间T=50秒。
5 t0 s7 |4 ~# F; W8 E8盏红灯亮:如果同时选取两条大道通路时,经模拟,其等待时间T=45秒。
1 U  @8 r3 b/ t/ S9 j9盏红灯亮:如果同时选取两条大道通路时,经模拟,其等待时间T=35秒。9 R1 M: q. C" H: C
10盏红灯亮:如果同时选取两条大道通路时,经模拟,其等待时间T=30秒。
7 p, P+ A) y/ s4 x5 P! W$ n , y( V3 j# Z, r& M6 B
同样地,考虑到我们设计的算法,对于高峰期,不可能不选取某一条大道,所以我们只需考虑对称选取,即组合时尽可能的将大道分配在不同组合中。
8 z; ?. q; S: l1 C* F2盏红灯亮:只选取一个大道通路,另一个大道堵塞时,经模拟,其等待时间多次出现T=inf,说明此种情况不可能大道降低车辆的目的。$ [. q0 l1 @% _
3盏红灯亮:只选取一个大道通路,另一个大道堵塞时,经模拟,其等待时间T=96秒,但也多次出现inf的情况,因此不考虑此种情形。
6 |" u3 A! y' W4盏红灯亮:只选取一个大道通路,另一个大道堵塞时,经模拟,其等待时间+ W5 R; V  C+ x
T=65秒,但也有很大的几率出现inf的现象,也不考虑。9 |5 b0 D# V4 L
5盏红灯亮:只选取一个大道通路,另一个大道堵塞时,经模拟,其等待时间
1 ~! s9 w: A! J8 H' QT=45秒。: P, {# y) C2 Z% J8 p# f+ _
6盏红灯亮:只选取一个大道通路,另一个大道堵塞时,经模拟,其等待时间
6 ^" B5 [: u/ K# {# o$ tT=35秒。
$ L/ i0 Z9 j, ]2 {+ s* y% U7盏红灯亮:只选取一个大道通路,另一个大道堵塞时,经模拟,其等待时间
) c' y3 p0 {% N; a8 p. z1 UT=31秒。8 Z- B  }7 d( v! P9 u( ~
8盏红灯亮:只选取一个大道通路,另一个大道堵塞时,经模拟,其等待时间
; ~, g9 A6 v0 B; |# mT=27秒。% v$ p4 a2 z3 v3 ^0 m9 X* M$ ~+ Q
9盏红灯亮:只选取一个大道通路,另一个大道堵塞时,经模拟,其等待时间. Z* f, Z8 M5 ]0 V* j
T=25秒。
9 d! X/ K8 ~. C5 l6 M4 q  M10盏红灯亮:只选取一个大道通路,另一个大道堵塞时,经模拟,其等待时间=23秒。
; G- C* n+ _! E 8 a/ Q& l& [) e& p" m
对比上面的两种组合下的结果,显然第二种情况更为节约时间,对于所有红灯亮的情况,只选取一个大道通畅的情况能保证等车时间。因此,我们认为,选取组合时两条大道不能同时选取。1 e* O( C  ^3 r% `

; a9 h, K, W5 @! V由此,我们可以得出高峰期和次高峰期的红绿灯控制方案:
# Q1 O* f8 i  d对于高峰期的方案:
# M' N  X% H7 n* {6 N, `8 Z先亮6盏红灯(包括主道的那个红灯),其持续时间为T=65秒,此后,红灯全灭,绿灯全部打开(包括原来的),持续时间为T=27秒(在高峰期,对绿灯全部打开的情况,即所有路口通畅时,经模拟,通畅时间为T=27秒,此后若不打开红灯限制车流入,将超过环岛最大车容量,因此,时间不能超过27秒,但是,我们为方便设计考虑,将时间定为27秒)。之后,又打开另外一组没亮过的红灯,持续时间为T=65秒。结束后重复上述过程。
3 e" c% Z# G0 k7 F) T2 r & T8 R! ^/ E$ }* p3 s
对于次高峰的方案:
9 d' l; W7 j5 |$ B: m/ s% p先亮6盏红灯(包括主道的那个红灯),其持续时间为T=35秒,此后,红灯全灭,绿灯全部打开(包括原来的),持续时间为T=23秒(在高峰期,对绿灯全部打开的情况,即所有路口通畅时,经模拟,通畅时间为T=25秒,此后若不打开红灯限制车流入,将错过环岛最大车容量,因此,时间不能超过25秒,为此,我们为方便设计考虑,将时间定为20秒)。之后,又打开另外一组没亮过的红灯,持续时间为T=35秒。结束后重复上述过程。* V) M* s+ d/ T& w7 \5 R0 F
( T' {; ]# L/ d+ }7 X  m) G9 W4 v2 }
9 Q& N) e/ L; c" N  a! S
三、对于一般情况与稀疏情况的说明:
$ L- r) f! k- p% g1 f 7 _0 G6 C  `1 u& G% D3 b' z# ^
A.4 `- U2 N3 U& }9 u
一般情况:
$ I+ i- y( ]( [& c4 Z
对于6盏灯的组合(每个组合只分配有一个大道),其等待时间T>150秒,如果红灯时间仍然按此时间设计的话,肯定是不科学的,因为不可能让汽车等待如此之久。因此,我们从尽可能减少等待时间为标准,经过模拟,发现当所有路口均亮红灯时,其等待时间最少,为T=23秒,而这也符合一般城市中非高峰期的等车时间,我们为了方便设计,将此时间定位30秒,而30秒也是一个可承受的等候时间。对于绿灯全开时的情况,更趋前面的假设,经过模拟,畅通时间为T=50秒。因此,我们选定一般情况时,红绿灯亮灭的原则时,所有路口红灯全亮,持续时间为T=30秒,此后红灯灭,绿灯开,持续时间为50秒。之后,重复循环。
2 y8 E6 w* M* L+ gB.稀疏情况:
* c" p0 H* j: a/ t" c. x" @对于稀疏情况,车流量具有不确定性,我们无法估计具体的车流量,但由于此种情况下车流量很小,我们可以将之归到一般情况,并且以一般情况的红绿灯规则来控制。
  g5 U3 A3 ?& S
/ I/ z# o, z0 h; ^9 x , K& Q9 y. i, ]
, B1 l4 w9 J5 b9 d! V; |
六.模型检验
根据我们的方案,我们采取随机模拟的方法,分别对高峰期,次高峰,一般情况和稀疏情况进行随机模拟。" S+ k+ H5 Y1 b; _  F0 f
为了保证环岛内交通的流畅,我们设定环岛内的车辆总数Q不能超过1000,但实际上换岛内最大车容量为1327,因此,我们在考虑交通流畅性的前提下,可以适当地放宽这个限制,严格规定Q不能超过1200
- X+ A: i( u) p+ i2 t$ L( q1 s& ]( b我们检验的目的是为了了解模型的稳定性,为此,我们对四种情况分别进行了24小时的模拟,其结果如下:9 e3 Q& b- j* w  u$ m
1.高峰期:(程序见附录)+ a9 b4 a) O5 _
第一阶段红灯持续时间t=65
6 i# Q6 j. Y4 p6 Q: W第二阶段绿灯持续时间t=27
! U+ |! F, R0 w5 ^" j# N# q* f( W第三阶段红灯持续时间t=658 r; }3 K( E% G" L& ^. |2 X; b
第四阶段绿灯持续时间t=27
$ p/ Z- R: y, K1 w" x& I; b' f6 Y总周期T=184
3 ^7 h3 {/ A: [- B 1 c% c) v0 Z& W, C# v% |3 r: N
对于此方案,我们在模拟时发现,由于每周期都会累积一定的车辆,也就是误差,在很长时间后,其累积的误差将达到非常大并且不合理(超出最大容量)的数值。因此,我们需要增加一个修正时间,并且此时间应该很小,只在车辆超过一定数量时才加入。
$ p6 q% H' k' R" G( p& C我们的做法是,当环岛内车辆大于1000时就对红灯持续时间加3秒钟,即此时红灯持续时间t=65+3=68秒。在车总量Q没有超过1000时,我们仍然以65秒的规定时间运行红灯。
, e$ {2 J- y, N0 f; z  ?这样,我们模拟24小时高峰期后:超过1200的车辆次数为37,占一天内车辆总数的比例为1.97%。(这只是模拟一次的情况,在模型改进中,我们模拟八次后取平均,得出更加准确的比例:2.74%
, d0 N" i# {% Q& t对于此比例,我们认为是相当小的,也就是说,发生环岛堵车的概率时非常小的,因为我们是对1天进行模拟,累积误差显然会相当大。而一般的高峰期只持续2小时左右,累积误差必然很小,其堵车概率也应该低于1.97%
' F+ q; Z. V, G2 r+ B / e# K- [$ }- z" h5 ]
2.次高峰期:(程序见附录)
5 r, a+ ]2 z; [- i% V$ a第一阶段红灯持续时间t=35; q) R- B' l' B( k; j3 [4 b4 s! k7 L
第二阶段绿灯持续时间t=232 c% P: o( o  y& {  B
第三阶段红灯持续时间t=35. D9 K7 k0 o  d" T
第四阶段绿灯持续时间t=23  g& L6 f/ {# ^$ l
总周期T=116
! a2 m, \: y, G, E对于此方案,我们为了保证环岛被最大利用,同时又能使交通运转顺畅,设定环岛内最大车辆数不超过800,经我们模拟24小时次高峰:超过800辆的几率为: 5 T; a& s2 ]+ n& p  a; n' w! l) `
,
显然这是非常好的方案,鉴于此,我们不对此方案做修正,即沿用模型建立中确定的红绿灯持续时间。
# ~% Q; W5 [  C4 _' t' c3.一般情况和稀疏情况:- }% z" y& m5 O* H. @
因为车流量的原因,不可能造成交通的拥堵,因此,我们不在对此情况做模型检验。为了说明时间安排的科学性,可参考其他大城市的一般情况的红绿灯时间。
- x. {+ p0 O) E: T$ O
; R3 x! Q  j. m5 c; _ 2 K& h* A: d0 y! y2 s
$ W+ k8 u. u3 }+ d/ K1 U7 H3 Q
七.模型改进
1.对于工作日和非工作日,由于车流量的分布不同,我们可以根据表1来设计红绿灯时间安排。
- {/ v  A" F  {; N0 A7 q& `2.我们只考虑了每个路口流入与流出的关系,并没有考虑到车辆在环岛内的绕行情况。所以可以增加限制条件:环岛内并行车辆不碰撞,这样可以选出更加优化的方案。# t4 c5 p1 r# e1 t+ m
3.不妨考虑车辆在环路中的相位问题,这项可以细化到每辆车的行驶情况,但这样相对来说较为复杂,我们不予考虑。
. R7 {0 c& v- B: }4.对高峰期时间的修正:
6 t' b3 y7 a3 n* U& j若不对高峰期的红灯持续时间作修正,则经长时间后,累积误差将使环岛内车总量超过1200(我们称之为危险),这是非常可怕和不安全的。为此,我们对红灯持续时间做一点微小的修正。经过我们的模拟:(程序见附录)5 A5 e7 n, K( K' l( Y
修正时间t=0时,出现危险的几率:89.62%
0 B3 ~1 o; _% c0 x修正时间t= -1时,出现危险的几率:88.56%
) O3 C6 K6 i# v( s; e$ d6 j8 z修正时间t= -2时,出现危险的几率:98.03%
% Z5 `0 q9 F% T5 ^! k8 m& K; ?其实,如果减少红灯时间,显然,这时在这段时间内进入的车辆数目就会增加,在不修正时已经危险的情况下当然就会照成危险几率变大。/ A/ h6 a- j" F& Z6 I7 P# m
所以,我们应该将修正时间调为正值。0 b. O9 k0 x% A: S  [
修正时间t=1时,出现危险的几率:93.33%9 A- h, s$ |) `! H0 i. ~/ [1 x
修正时间t=2时,出现危险的几率:13.74 %
/ X' h' F) v8 S* p, H' i- P6 Z5 p修正时间t=3时,出现危险的几率:2.74%( r5 t8 W, |. Q! Z" D: x
因此,我们以5%为限定,确定出修正时间为3秒。
9 f* e& M" D  d0 n ' Y; {- W4 B2 |* C) E  G
八.模型评价
8.1 优点  }) R2 @! S/ h3 c: q
: g: s" l) o3 g: o4 j- @
1
.本文对不同车流时段(高峰期、次高峰、一般情况与稀疏情况)模型分别进行了模拟计算,得到了最优组合下的红绿灯循环时间。由于车流量是基于模拟的,并且环岛内车辆总数也是先设定的,因此,我们的模型可以适用于很多情况。并且,根据我们的模型,对于已知车总量和具体车流分布情况,可以重新确定出最优化的红绿灯控制模型。
! n9 d' a$ }, ]) W6 K+ s& z4 i
$ o. g+ b; ~/ V
2
.在建模过程中,我们对所有可能出现的红绿灯组合情况进行了模拟,这样最终得到的最优组合的方法是很科学的。

& U/ z1 r; C/ n; M+ B6 ~9 L 6 k  F0 F% F1 m" z! c) G
8.2 缺点
" G  `  n' Z# Y! w+ y% m, ^8 s1 F- @! [& f8 \1 |
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- s9 G3 y$ a# g
2 S! s) A- [0 N; `9 h

2 J+ I( k9 ]  G+ sthank 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相似& p: L8 A6 }) P2 A1 Q) S

作者: 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