发明名称 单向路段交通构成的测定方法
摘要 单向路段交通构成的测定方法:初始化交通需求;初始化城市道路网;初始化各个单向路段的阻抗、交通量及交通量构成;初始化循环指针i=1;判断i≤∏,如果是则执行阻抗矩阵生成算法,用其计算当前的阻抗矩阵及分别以任意一节点为源点且相对于任意另一节点的前置节点,为交通分配中查找最短路径做准备;否则,结束,得到每条路段上的交通量构成;用交通分配算法将交通需求ODi矩阵分配到前次有向网络Gi-1(V,E)上,形成当前有向网络Gi(V,E),并记录有向网络Gi(V,E)上的每条单向路段上的交通量构成,包括起点、终点和量;令i=i+1,继续判断i≤∏,循环执行,直至分配完所有的OD矩阵;将所有单向路段上的交通量构成按起点、终点进行累计,形成最终的单向路段交通构成,以表格的形式表现。
申请公布号 CN101930666B 申请公布日期 2012.04.11
申请号 CN201010139939.8 申请日期 2010.04.02
申请人 东南大学 发明人 段进;翁芳玲;徐中
分类号 G08G1/00(2006.01)I;G08G1/01(2006.01)I 主分类号 G08G1/00(2006.01)I
代理机构 南京经纬专利商标代理有限公司 32200 代理人 黄雪兰
主权项 1.一种单向路段交通构成的测定方法,其特征在于:步骤1:初始化交通需求,将表达交通需求的OD矩阵平均拆分为∏等分:OD<sub>1</sub>矩阵、OD<sub>2</sub>矩阵,...,OD<sub>∏</sub>矩阵,∏为大于1的正整数,每个拆分后的OD矩阵包含Γ个起点终点对间的交通需求,即q<sub>i</sub>(o<sub>1</sub>,d<sub>1</sub>),q<sub>i</sub>(o<sub>2</sub>,d<sub>2</sub>),...,q<sub>i</sub>(o<sub>n</sub>,d<sub>n</sub>),...,q<sub>i</sub>(o<sub>Γ</sub>,d<sub>Γ</sub>),其中q<sub>i</sub>(o<sub>n</sub>,d<sub>n</sub>)表示OD<sub>i</sub>矩阵中起点为节点<img file="FSB00000652706300011.GIF" wi="78" he="34" />终点为节点<img file="FSB00000652706300012.GIF" wi="59" he="36" />的交通需求,步骤2:将城市道路网设定为有阻抗的有向网络G(V,E),以城市道路网中的交叉口和单向路段的终端作为所述有阻抗的有向网络G(V,E)的节点,形成节点集V,记为:V={v<sub>1</sub>,v<sub>2</sub>,...,v<sub>τ</sub>},τ为节点的个数,v<sub>1</sub>,v<sub>2</sub>,...,v<sub>τ</sub>为有向网络的节点,以城市道路网中的单向路段作为所述有阻抗的有向网络G(V,E)的有向边,边集记为:E={e<sub>1</sub>,e<sub>2</sub>,...,e<sub>σ</sub>,...,e<sub>η</sub>},e<sub>1</sub>,e<sub>2</sub>,...,e<sub>σ</sub>,...,e<sub>η</sub>表示有向网络的有向边所代表的单向路段,σ为某一条单向路段的下标,η为有向网络中单向路段的个数,对有向网络G(V,E)进行初始化,得到初始化有向网络G<sub>0</sub>(V,E),步骤3:初始化阻抗、交通量及交通量构成,令有向网络G<sub>0</sub>(V,E)中所有单向路段上的累计交通量<img file="FSB00000652706300013.GIF" wi="165" he="46" />σ=1,2,...,η,<img file="FSB00000652706300014.GIF" wi="62" he="34" />表示单向路段e<sub>σ</sub>上的累计交通量;令所有单向路段上的交通量构成<img file="FSB00000652706300015.GIF" wi="268" he="49" />σ=1,2,...,η,<img file="FSB00000652706300016.GIF" wi="164" he="49" />表示单向路段e<sub>σ</sub>上由节点v<sub>o</sub>至v<sub>d</sub>的交通量,单向路段的阻抗为:<maths num="0001"><![CDATA[<math><mrow><msub><mi>w</mi><msub><mi>e</mi><mi>&sigma;</mi></msub></msub><mo>=</mo><msubsup><mi>w</mi><msub><mi>e</mi><mi>&sigma;</mi></msub><mn>0</mn></msubsup><mrow><mo>(</mo><mn>1</mn><mo>+</mo><mi>&alpha;</mi><msup><mrow><mo>(</mo><mfrac><msub><mi>x</mi><msub><mi>e</mi><mi>&sigma;</mi></msub></msub><msub><mi>c</mi><msub><mi>e</mi><mi>&sigma;</mi></msub></msub></mfrac><mo>)</mo></mrow><mi>&beta;</mi></msup><mo>)</mo></mrow></mrow></math>]]></maths>其中<img file="FSB00000652706300018.GIF" wi="68" he="56" />为当单向路段上没有任何车辆时,车辆通过的时间花费,它为已知的单向路段的几何长度除以已知的设计车速;<img file="FSB00000652706300019.GIF" wi="61" he="34" />为单向路段交通量,<img file="FSB000006527063000110.GIF" wi="56" he="34" />为单向路段最大交通容量,<img file="FSB000006527063000111.GIF" wi="142" he="49" />即为单向路段饱和度;α与β为经验参数,α=0.15,β=4.0,步骤4:初始化循环指针i=1,步骤5:判断i≤∏,如果是则执行步骤6;否则,结束,得到每条路段上的交通量构成<img file="FSB000006527063000112.GIF" wi="188" he="56" />σ=1,2,...,η,1≤o≤τ,1≤d≤τ,步骤6:用阻抗矩阵生成算法计算当前的阻抗矩阵及分别以任意一节点为源点且相对于任意另一节点的前置节点,为交通分配中查找最短路径做准备,步骤7:用交通分配算法将交通需求OD<sub>i</sub>矩阵分配到前次有向网络G<sub>i-1</sub>(V,E)上,形成当前有向网络G<sub>i</sub>(V,E),并记录有向网络G<sub>i</sub>(V,E)上的每条单向路段上的交通量构成,步骤8:令i=i+1,返回步骤5,所述阻抗矩阵生成算法为:步骤6.1:初始化循环指针j=1,步骤6.2:如果j≤τ,则执行步骤6.3,否则,阻抗矩阵生成完毕,得到各节点之间的阻抗,以及得到分别以任意一节点为源点且相对于任意另一节点的前置节点,步骤6.3:采用单源阻抗生成算法计算任一节点v<sub>j</sub>作为源点到所有节点v<sub>k</sub>的阻抗r<sub>j</sub>[v<sub>k</sub>],k=1,2,...τ,并得到相对于源点的任一节点的前置节点,步骤6.4:令j=j+1,返回步骤6.2,步骤6.3.1:初始化p<sub>j</sub>[·]数组、r<sub>j</sub>[·]数组、集合S、集合Q,p<sub>j</sub>[u<sub>k</sub>]表示以节点v<sub>j</sub>为源点的节点v<sub>k</sub>的前置节点,k=1,2,...τ,令:p<sub>j</sub>[v<sub>k</sub>]=φr<sub>j</sub>[v<sub>k</sub>]表示以源点v<sub>j</sub>为起点、节点v<sub>k</sub>为终点的路径阻抗,k=1,2,...τ,令:<maths num="0002"><![CDATA[<math><mrow><msub><mi>r</mi><mi>j</mi></msub><mo>[</mo><msub><mi>v</mi><mi>k</mi></msub><mo>]</mo><mo>=</mo><mfenced open='{' close=''><mtable><mtr><mtd><mn>0</mn></mtd><mtd><mi>k</mi><mo>=</mo><mi>j</mi></mtd></mtr><mtr><mtd><mo>&infin;</mo></mtd><mtd><mi>k</mi><mo>&NotEqual;</mo><mi>j</mi></mtd></mtr></mtable></mfenced></mrow></math>]]></maths>集合S用于存放已处理的节点,初始化S,令S=φ;集合Q用于存放未处理的节点,初始化Q,令Q=V,步骤6.3.2:判断Q集合是否为空,如果为空,则得到节点v<sub>j</sub>作为源点到所有节点v<sub>k</sub>的阻抗r<sub>j</sub>[v<sub>k</sub>],k=1,2,...,τ,并得到相对于源点的任一节点的前置节点;否则,执行步骤6.3.3,步骤6.3.3:设当前集合Q中有Ψ个节点,Ψ≤τ,对当前Q中的节点按照节点下标从小到大的顺序排列,并将顺序排列的节点下标分别对应于l<sub>1</sub>,l<sub>2</sub>,...,l<sub>Ψ</sub>,得到<maths num="0003"><![CDATA[<math><mrow><mi>Q</mi><mo>=</mo><mo>{</mo><msub><mi>v</mi><msub><mi>l</mi><mn>1</mn></msub></msub><mo>,</mo><msub><mi>v</mi><msub><mi>l</mi><mn>2</mn></msub></msub><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><msub><mi>v</mi><msub><mi>l</mi><mi>&xi;</mi></msub></msub><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><msub><mi>v</mi><msub><mi>l</mi><mi>&Psi;</mi></msub></msub><mo>}</mo><mo>,</mo></mrow></math>]]></maths>1≤l<sub>ξ</sub>≤τ,步骤6.3.4:查看<img file="FSB00000652706300023.GIF" wi="489" he="80" />从中找出最小的<img file="FSB00000652706300024.GIF" wi="132" he="51" />1≤λ≤Ψ,并将节点<img file="FSB00000652706300025.GIF" wi="53" he="38" />作为节点u,步骤6.3.5:分别确定源点v<sub>j</sub>至节点u的各邻接节点的阻抗,并确定源点v<sub>j</sub>的节点u的邻接节点的前置节点,步骤6.3.6:将节点u由Q集合移至S集合,执行步骤6.3.2,其中,步骤6.3.5所述分别确定源点v<sub>j</sub>至节点u的各邻接节点的阻抗,并确定源点v<sub>j</sub>的节点u的邻接节点的前置节点的方法为:步骤6.3.5.1:设节点u有Ω个相邻节点,Ω≤τ,对节点u的邻接节点按照下标从小到大的顺序排列,并将顺序排列的节点下标分别对应于m<sub>1</sub>,m<sub>2</sub>,...,m<sub>Ω</sub>,得到顺序排列的节点u的邻接节点<maths num="0004"><![CDATA[<math><mrow><msub><mi>v</mi><msub><mi>m</mi><mn>1</mn></msub></msub><mo>,</mo><msub><mi>v</mi><msub><mi>m</mi><mn>2</mn></msub></msub><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><msub><mi>v</mi><msub><mi>m</mi><mi>&rho;</mi></msub></msub><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><msub><mi>v</mi><msub><mi>m</mi><mi>&Omega;</mi></msub></msub><mo>,</mo></mrow></math>]]></maths>1≤m<sub>ρ</sub>≤τ,步骤6.3.5.2:设循环指针g=1,步骤6.3.5.3:如果g≤Ω,则执行步骤6.3.5.4,否则,得到当前源点v<sub>j</sub>至节点u的各邻接节点的阻抗,以及源点v<sub>j</sub>的节点u的邻接节点的前置节点,步骤6.3.5.4:如果<img file="FSB00000652706300032.GIF" wi="506" he="69" />则执行步骤6.3.5.5;否则,跳至步骤6.3.5.7,其中,<img file="FSB00000652706300033.GIF" wi="149" he="44" />表示由节点u至相邻节点<img file="FSB00000652706300034.GIF" wi="69" he="41" />的单向路段阻抗,如果u至<img file="FSB00000652706300035.GIF" wi="68" he="40" />之间有多条单向路段,则<img file="FSB00000652706300036.GIF" wi="150" he="55" />指的是阻抗最小的那条单向路段上的阻抗,步骤6.3.5.5:令源点v<sub>j</sub>到邻接节点<img file="FSB00000652706300037.GIF" wi="69" he="41" />的阻抗等于源点v<sub>j</sub>到u的阻抗加上u与<img file="FSB00000652706300038.GIF" wi="69" he="38" />单向路段上的阻抗,即令<maths num="0005"><![CDATA[<math><mrow><msub><mi>r</mi><mi>j</mi></msub><mo>[</mo><msub><mi>v</mi><msub><mi>m</mi><mi>g</mi></msub></msub><mo>]</mo><mo>=</mo><msub><mi>r</mi><mi>j</mi></msub><mo>[</mo><mi>u</mi><mo>]</mo><mo>+</mo><msub><mi>w</mi><mrow><mi>u</mi><mo>&RightArrow;</mo><msub><mi>v</mi><msub><mi>m</mi><mi>g</mi></msub></msub></mrow></msub><mo>,</mo></mrow></math>]]></maths>步骤6.3.5.6:令<img file="FSB000006527063000310.GIF" wi="70" he="40" />相对于v<sub>j</sub>为起点的前置节点为u,即令<img file="FSB000006527063000311.GIF" wi="247" he="54" />步骤6.3.5.7:令g=g+1,返回步骤6.3.5.3,步骤7所述“用交通分配算法将交通需求OD<sub>i</sub>矩阵分配到前次有向网络G(V,E)上,形成当前有向网络G(V,E),并记录前有向网络G(V,E)上的每条单向路段上的交通量构成”的方法是:步骤7.1:设交通需求OD<sub>i</sub>矩阵中包含Γ个起点终点对间的交通需求,即q<sub>i</sub>(o<sub>1</sub>,d<sub>1</sub>),q<sub>i</sub>(o<sub>2</sub>,d<sub>2</sub>),...,q<sub>i</sub>(o<sub>n</sub>,d<sub>n</sub>),...,q<sub>i</sub>(o<sub>Γ</sub>,d<sub>Γ</sub>),其中q<sub>i</sub>(o<sub>n</sub>,d<sub>n</sub>)表示OD<sub>i</sub>矩阵中起点为节点<img file="FSB000006527063000312.GIF" wi="95" he="65" />终点为节点<img file="FSB000006527063000313.GIF" wi="61" he="52" />的交通需求,步骤7.2:设循环指针n=1,步骤7.3:如果n≤Γ,则执行步骤7.4;否则,得到当前单向路段交通量以及路段交通细成,步骤7.4:用起点-终点对间的分配算法分配由步骤1得到的起点<img file="FSB000006527063000314.GIF" wi="78" he="34" />终点<img file="FSB000006527063000315.GIF" wi="59" he="35" />间的交通需求q<sub>i</sub>(o<sub>n</sub>,d<sub>n</sub>),步骤7.5:令n=n+1,返回步骤7.3,其中,步骤7.4中所述的起点-终点对间的分配算法为:步骤7.4.1:设指针s=d<sub>n</sub>,d<sub>n</sub>为两点间交通需求的终点的节点下标,步骤7.4.2:如果指针s=o<sub>n</sub>,则得到交通需求q<sub>i</sub>(o<sub>n</sub>,d<sub>n</sub>)在起点为<img file="FSB000006527063000316.GIF" wi="81" he="37" />终点为<img file="FSB000006527063000317.GIF" wi="61" he="37" />的最短路径上的分配结果,否则,执行步骤7.4.3,步骤7.4.3:找到源点为<img file="FSB00000652706300041.GIF" wi="60" he="40" />的节点v<sub>s</sub>的前置节点<img file="FSB00000652706300042.GIF" wi="242" he="53" />则节点v<sub>s</sub>与源点为<img file="FSB00000652706300043.GIF" wi="59" he="38" />的节点v<sub>s</sub>的前置节点v′<sub>s</sub>间的单向路段阻抗最小的单向路段为e<sub>a</sub>,步骤7.4.4:在单向路段阻抗最小的单向路段e<sub>a</sub>上分配交通量,令累计单向路段交通量<maths num="0006"><![CDATA[<math><mrow><msub><mi>x</mi><msub><mi>e</mi><mi>a</mi></msub></msub><mo>=</mo><msub><mi>x</mi><msub><mi>e</mi><mi>a</mi></msub></msub><mo>+</mo><msub><mi>q</mi><mi>i</mi></msub><mrow><mo>(</mo><msub><mi>o</mi><mi>n</mi></msub><mo>,</mo><msub><mi>d</mi><mi>n</mi></msub><mo>)</mo></mrow><mo>,</mo></mrow></math>]]></maths>步骤7.4.5:记录单向路段阻抗最小的单向路段ea上的交通量构成,令累计交通量构成<maths num="0007"><![CDATA[<math><mrow><msub><mi>T</mi><msub><mi>e</mi><mi>a</mi></msub></msub><mrow><mo>(</mo><msub><mi>o</mi><mi>n</mi></msub><mo>,</mo><msub><mi>d</mi><mi>n</mi></msub><mo>)</mo></mrow><mo>=</mo><msub><mi>T</mi><msub><mi>e</mi><mi>a</mi></msub></msub><mrow><mo>(</mo><msub><mi>o</mi><mi>n</mi></msub><mo>,</mo><msub><mi>d</mi><mi>n</mi></msub><mo>)</mo></mrow><mo>+</mo><msub><mi>q</mi><mi>i</mi></msub><mrow><mo>(</mo><msub><mi>o</mi><mi>n</mi></msub><mo>,</mo><msub><mi>d</mi><mi>n</mi></msub><mo>)</mo></mrow><mo>,</mo></mrow></math>]]></maths>步骤7.4.6:令指针s=s′,然后返回步骤7.4.2。
地址 210096 江苏省南京市四牌楼2号
您可能感兴趣的专利