城轨站行人流线网络客流分配算法与软件实现

2018-09-11 08:45顾保南
关键词:流线结点客流

何 彬, 顾保南

(同济大学 道路与交通工程教育部重点实验室,上海 201804)

城市轨道交通车站站内的行人设施包括出入口通道、换乘通道、安检仪、检票闸机、楼梯、自动扶梯以及可供行人走行的站厅、站台空间,上述行人设施的要素(布置数量、放置位置、摆放角度、设施种类等)的任一变化就会形成一个行人设施布置方案.在规划设计阶段,这些要素存在许多变化可能性,因而可形成很多可能的行人设施布置方案.

为了评价行人设施布置方案的优劣,目前广泛使用的是微观仿真法.该方法采用微观行人流仿真软件对轨道交通车站内部行人集散情况进行微观仿真,并利用输出的时间、饱和度等参数对车站行人设施布置方案进行评价.文献[1]利用NOMAD系统评价里斯本3个火车站的检票闸机布置方案.文献[2]利用其开发的SRAIL系统评估以铁路客运站为核心的综合交通枢纽设施.文献[3-6]分别利用Legion、MassMotion、VISSIM、AnyLogic等微观行人流仿真平台对不同的轨道交通车站的行人设施布置方案进行了仿真评价.尽管这类主流仿真平台的运行效率已有显著提高,但是,一旦方案需要调整,设计人员必须返回设计软件修改并重新建立仿真场景,这一过程耗费了设计人员大量的时间和精力.由于规划设计阶段存在着大量变化方案需要评价分析,繁琐的仿真场景构建过程依然是微观仿真法用于轨道交通车站行人设施布置方案规划设计的瓶颈,即微观仿真法并不适用于规划设计阶段大量变化方案的快速评价.

国内部分研究人员提出了“网络法”[7-12],即:首先将车站可供行人走行的区域内抽象为行人网络,然后通过网络客流分配得到行人站内走行时间、设施流量及饱和度等指标,最终结合流线交织情况来评价方案.与微观仿真法不同,该方法采用行人网络抽象表达包括行人设施在内的行人走行环境,通过改变边属性(能力、长度、自由走行时间等)赋值能够模拟大量行人设施布置变化方案;将行人流视为整体,通过网络交通分配得到相关指标,能够节省方案分析时间,提高方案分析效率.可见,“网络法”能够适应规划设计阶段大量变化方案的快速评价.文献[7]提出了客运枢纽网络配流的基本思路,并基于单路径分配构建了枢纽站内网络的旅客流量分配模型.文献[8-10]提出了多种站内网络构建方法,但是普适性较差.文献[9]提出了基于系统最优的站内疏散网络客流分配模型,由于实际网络中不可能出现系统最优原则所描述的情况[13],因此,该模型得到的分配结果不符合实际情况.

目前最具可操作性的“网络法”是文献[11-12]中提出的行人流线网络法.该方法把安检通道、闸机组、楼梯、自动扶梯等行人设施以及设施间的各股行人流抽象为边,把站内易拥堵区域抽象为实结点;将不考虑结点阻抗的用户均衡分配与实结点阻抗计算模型相结合,实现行人流线网络分配.但是在分配算法及实现工具上仍然存在以下问题:

(1)由于代表自动扶梯、闸机组及安检仪的边的时间阻抗与其流量无关,同时实结点阻抗与流量间的关系尚未确定,故不具备使用用户均衡分配的条件.即使用户均衡分配可以使用,既有算法也未将上述实结点时间模型真正加入分配迭代,并未起到与边阻抗相同的作用.

(2)TransCAD、VISUM等客流分配软件虽然能够通过二次开发实现行人流线网络客流分配,但是开发成果仅能在该种客流分配软件中应用,普遍适用性较差.另外,构建交通小区及小区与网络连接对于客流起讫点皆为网络结点的行人流线网络而言属无用步骤,利用TransCAD、VISUM等开发的软件实际上降低了工作效率.

本文以连续平均法作为行人网络客流分配方法的基本框架,考虑边阻抗与实结点阻抗的共同作用,提出适用于城市轨道交通车站行人流线网络的站内客流分配算法,并利用C#与Matlab混合编程开发相应工具,实现基于行人流线网络的城市轨道交通车站行人设施客流分配.

1 站内行人流线网络客流分配算法

行人站内走行时间包括在各个行人设施的通过时间以及在通过诸如闸机组前、自动扶梯前、流线交织区等易拥堵区域(实结点)耗费的时间.一般地,不同乘客通过闸机组本身耗费的时间相差不大[14-15],通过自动扶梯对于任一乘客而言均相同,二者不会对路径分配结果产生影响;通过安检设备的时间虽然差别较大[16],但是由于乘客会选择与自己经过的进站口相对应的安检仪进站,故乘客的安检时间也不能作为影响客流分配的时间因素.因此,行人站内走行时间的变化取决于拥堵区域及各类通道的通过时间.因此,站内网络客流分配必须加入行人通过拥堵区域所耗费的时间,即把实结点时间阻抗加入路径阻抗.

当某实结点处进入边与离开边同时存在且数量之和大于2时,该实结点处存在着多个方向的行人流.为了区分多方向行人流在同一实结点处产生的时间阻抗,本文定义分方向实结点时间阻抗为行人流由上游结点iu经过当前结点i到达下游结点id时在当前结点i处所耗费的时间,并用t(iu,i,id)表示分方向实结点阻抗,其中,iu为实结点i的上游结点编号,id为实结点的下游结点编号.(iu,i,id)表示行人流可以由上游结点iu经过当前结点i到达下游结点id,称为结点客流方向.

在文献[12]所构建的实结点模型下,两股客流通过相同实结点区域所耗费的时间相等,并未考虑分方向实结点时间阻抗的差异.而既有的排队模型则是将多个上游设施的输出率之和作为下游设施的输入率[17-18],效果与文献[12]相同.对于同一实结点,路径阻抗中只能包含一个方向的时间阻抗.因此,将实结点延误模型加入客流分配实际上就是将分方向实结点阻抗及结点客流方向加入给定OD对间最短路径识别过程.文献[12,17-18]的做法会对给定OD对间最短路径识别产生不利影响,可能导致分配结果出现错误.

为了在客流分配中考虑分方向实结点时间阻抗的差异性,本文将结点客流方向与分方向实结点时间阻抗引入最短路径识别过程.由于站内流线情况复杂,最短路径中可能包含不可行的结点客流方向,从而导致客流分配结果出错,因此,还需要识别最短路径是否可行.综上,最短路径识别过程具体步骤如下:①遍历给定OD对间的所有非成环路径.②每一路径与结点客流方向比较,若存在不符合结点客流方向的情况,则将该路径剔除出路径集.③取剩余路径中阻抗最小的路径作为最短路径.

行人流线网络在现阶段并不具备建立用户均衡分配模型的条件,而增量分配法目前并没有适用于实结点时间阻抗的OD矩阵拆分比例,因此,本文采用简单实用却又最接近平衡分配法的连续平均法[13]作为行人流线网络交通分配方法的基本架构,将上述最短路径识别过程嵌入连续平均法的算法流程,提出城市轨道交通车站站内客流分配方法,具体步骤如下:

(1)初始化.行人流线网络中任一边a的阻抗函数ta,k=ta(xa,k),非交叉结点阻抗tk(iu,i,id),交叉结点阻抗tk(ju,j,jd).令k=1,ta,1=ta(0),t1(iu,i,id)=0,t1(ju,j,jd)=0,i,j∈N,执行一次全有全无分配,得到各边的分配交通量[xa,1].

(2)更新阻抗矩阵.更新边阻抗矩阵[ta,k]、交叉结点阻抗[tk(ju,j,jd)]及分方向非交叉结点阻抗[tk(iu,i,id)].

(3)综合上述3个阻抗矩阵,得到边综合阻抗[tZ,k].

(4)按照(1)中得到的边综合阻抗[tZ,k],根据基于结点客流方向的最短路径识别结果,执行一次全有全无分配,得到一组附加交通量[ya,k].

(6)如果[xa,k+1]与[xa,k]满足下式(K取0.001)时,则停止计算,[xa,k+1]为最终结果;否则,令k=k+1,转(1).

2 算法的软件实现

TransCAD等软件除了在客流分配的工作流程上与行人流线网络自身特点存在矛盾外,还存在以下问题:

在路径识别过程中,没有考虑结点客流方向;网络构建时添加虚拟边,用边阻抗代替分方向结点阻抗,该做法大大增加了建模工作量,并且还存在“分方向结点阻抗转化为边阻抗”这一难题;不能够将分配结果直观体现于设计图纸或BIM模型;利用软件提供的二次开发函数实现站内客流分配方法难度较大.

基于上述问题,同时,行人流线网络在现阶段均在AutoCAD中构建,因此,本文选择AutoCAD作为环境平台,利用C#与Matlab语言混合开发城市轨道交通车站行人设施客流分配软件,软件实现过程如图1所示.

图1 城市轨道交通车站行人设施客流分配软件实现流程

与TransCAD相比,为匹配分方向实结点时间阻抗的表示方法,软件专门使用结点对表示网络各边;增加了交叉点数据获取、结点客流方向获取两个模块,用于获取网络中所有结点的客流方向,包括非交叉结点客流方向和交叉结点客流方向.

下面将主要说明交叉点坐标、结点客流方向的获取方法以及客流分配中最短路径识别的实现方法,并简述流线数据获取、网络结点标号等必要过程的实现方法,图中BPR参数即美国联邦公路局函数中的α和β.

2.1 行人网络数据提取

2.1.1流线数据提取

利用AutoCAD的.NET程序开发接口AutoCAD.NET API从AutoCAD图形文件(DWG文件)中获取构成行人网络的各直线(Line)属性,包括句柄、起点三维坐标、终点三维坐标以及长度.另外,流线类型则通过流线所在图层获取,即:各条流线根据边的拓扑方向及客流组成被分别存储于单向进站图层、单向出站图层、单向换乘图层、单向复合图层或双向复合图层中,因此,每条流线的流线类型属性与图层名称存在一一对应的关系,例如,若流线属于单向出站图层,则其类型就是单向出站流线.

2.1.2交叉点坐标提取

AutoCAD.NET API提供Line.IntersectWith()函数用于获取两两相交线段的交点坐标,若只采用上述函数遍历线段交点,限于AutoCAD本身性能,交点坐标提取效率较低.

判断任意两边是否相交,实际上首先应该判断两边相交的可能性,当同一平面上任意两线段在x轴和y轴上的投影同时存在交集时,两线段具有相交的可能性[19].当两边具有相交可能性时,再利用API提供的函数获取交点坐标.

行人流线网络交叉点坐标提取算法如下:

(1)初始化.设流线Lm的x区间和y区间分别表示为[xm,min,xm,max]和[ym,min,ym,max],流线Ln的x区间和y区间分别表示为[xn,min,xn,max]和[yn,min,yn,max].令m=0,n=m+1,j=0.

(3)当n

(4)利用Line.IntersectWith()获取并记录交点坐标,记录交叉结点顺序号j=j+1,记录Lm与Ln的句柄.转(3).

2.2 结点标号

在2.1.2中已经获取了交叉结点坐标并且进行了排序,这里从1开始按照当前的顺序对交叉结点连续编号.

非交叉结点的标号方法如下:

首先将行人流线网络中各流线的起点坐标和终点坐标放入同一集合内,并去除集合中的重复元素,然后对非交叉结点按以下规则排序:优先按照非交叉结点横坐标从小到大的顺序排序,当多个非交叉结点的横坐标相同时,则按照纵坐标从小到大的顺序排序.当排序完成后,按照上述顺序,从1开始连续对每个非交叉结点标号.

当所有标号过程完成后,使用非交叉结点标号代替非交叉结点的平面坐标,使用非交叉结点对表示拓扑网络中的边.

2.3 结点客流方向及获取方法

结点客流方向指的是某一结点处客流的可能流向,以一组结点标号(iu,i,id)或(ju,j,jd)表示,前者表示非交叉结点的客流方向,后者表示交叉结点的客流方向.(iu,i,id)表示客流可以通过上游结点iu经过当前结点i到达下游结点id,此时(iu,i)称为进入边,(i,id)称为离开边.(ju,j,jd)表示客流从ju流向jd时途径两流线交点j,在交点j处客流不会改变前进方向.

当结点i处存在多组结点客流方向(特别是多条进入边与一条离开边相连接的情况)时,每组结点客流方向所对应的结点阻抗一般不同,不能采用统一的结点阻抗表示各进入边客流在相同结点处的结点阻抗,这时采用由结点客流方向构成的三维矩阵就可以存储相同结点处的不同结点阻抗.

2.3.1非交叉结点客流方向获取

非交叉结点按其进入边和离开边的存在性,可分为3类:第1类结点:进入边和离开边同时存在.第2类结点:只有离开边,没有进入边.第3类结点:只有进入边,没有离开边.

采用以下规则判断任一非交叉结点i∈I(I为非交叉结点集合)的类型,设U为起点集合、V为终点集合,则有:

当i∈U且i∈V时,则该结点为第1类结点.当i∈U且i∉V时,则该结点为第2类结点.当i∉U且i∈V时,则该结点为第3类结点.

行人流线网络上的任一边具有双重性,既是现实层面的一条起终点固定的线段,又是拓扑层面上的一条有向边或无向边,因此,获取非交叉结点客流方向时需要同时考虑与结点相连的任意两边的实际方向与拓扑方向,分类讨论如下:

设边a1、a2分别与i相连接.另设点对(u,v)表示点u与点v相连的边,边的实际起点为u、实际终点为v.

(1)当结点i为第一类结点时,同一结点的邻接两边组合,可分为图2所示的3种情况.

按照两边单双向组合,可分为表1所示的4种情况.

表1 第1类结点相邻两边方向组合

综合图2与表1所示类别,第1类结点的可行客流方向共有9种,如图3所示,具体情况见表2.

(2)当结点i为第2类结点时,根据流线单双向使用方向及流线数量可以分为以下情况:①所有流线均为单向,实际上没有上游结点,则设上游结点等于当前结点,即iu=i.②所有流线不全为单向,则此时的各种结点客流方向如图4所示,具体情况见表3.

(3)当结点i为第3类结点时,根据流线单双向可以分为以下情况:①所有流线均为单向,实际上没

表2 第1类结点的结点客流方向

表3 第2类结点的结点客流方向

有下游结点,则设下游结点等于当前结点,即id=i.②所有流线不全为单向,则此时的各种结点客流方向如图5所示,具体情况见表4.

Fig.5Nodepassengerflowdirectionofthethirdclassnodes

表4 第3类结点的结点客流方向

(4)不可行结点客流方向识别

根据上述方法获得的非交叉结点客流方向仍存在一些不可行的记录.由于城市轨道交通车站行人设施布局的多样性,行人流线网络也相应地复杂多变,除了“使单向进站流线、单向出站流线、单向换乘流线相互贯通的”这一类不可行结点客流方向可以准确判断外,其余不可行的结点客流方向准确识别的难度较大.这里提供一种粗略的识别方法,准确识别及剔除工作仍需要人工完成,即:

由于行人一般不会在站内折返走行,一旦结点i的某个客流方向使行人产生折返,则应高度怀疑该结点客流方向不可行.设结点ii及其上游结点iu、下游结点id的平面坐标分别为(xi,yi)、(xu,yu)和(xd,yd),当三者满足下式时,认为行人流产生折返,即该结点客流方向可能不可行.

2.3.2交叉结点客流方向

交叉结点客流方向的获取主要是判断任意两边ap=(up,vp)和aq=(uq,vq)(p≠q)是否相交,若两边相交于任一点j∈J(J为交叉结点集)时,记录交叉结点的客流方向数组[up,j,vp]和[uq,j,vq].也就是说,在完成交叉点数据提取及交叉结点标号的过程中,已经隐含了交叉结点客流方向.这里只需要对重复记录作剔除并重新排序,不再赘述.

需要注意的是,节2.1.2中获取的交叉点坐标包含有辅助流线与其余类型(通道、自动扶梯、楼梯、闸机组、安检通道)流线的交叉点.

在分配完成之前,从站厅进入站台的进站或换乘流量在各组楼梯和自动扶梯间的分配比例是未知的.为了得到各梯组的分配流量,需要将多个梯组站台端连接到同一点,该点是本线站台的拓扑抽象,是进站客流的终点.该终点与各进站梯组站台端的连线称为辅助流线.

辅助流线在CAD环境中几乎不可避免地与其余类型(通道、自动扶梯、楼梯、闸机组、安检通道)流线存在交叉,这些交叉点应在交叉结点客流方向获取过程中予以剔除.

2.4 最短路径识别的实现

本文第1部分提出了基于行人流线网络的城市轨道交通车站客流分配方法,该方法实现的关键是两个最短路径识别,即一般最短路径识别和基于结点客流方向的最短路径识别.

一般最短路径识别通过Matlab内置的函数graphshortestpath函数实现,这里使用的重载形式为

[~, path]=graphshortestpath(T,i,j)

式中:T为时间邻接矩阵;path则负责按先后顺序存储结点i到结点j的最短路径上的结点编号.

基于结点客流方向的最短路径识别的实现关键在于给定结点间任一路径是否符合结点客流方向.设给定结点间路径数组path中包含N(N>2)个结点,按照Matlab规定,数组元素位置从1开始,设k表示路径数组位置,则结点客流方向判定流程如图6所示.

图6 给定路径的可行结点客流方向判定流程

3 算例

以上海轨道交通某非换乘站站厅层为例,对上文所述的站内客流分配方法及工具功能进行说明.

案例车站为两层车站,地下二层为站台层,岛式站台,地下一层为站厅层.车站站厅层行人设施布置方案如图7所示.

本站共设3个出入口,其中,左侧1个,右侧2个.进站闸机组和出站闸机组各2组,闸机类型为门扉式.安检设备单独设于进站闸机组前,并形成单独通道.付费区内均匀布置3组楼扶梯,两端为2扶1楼,2部扶梯为1部上行扶梯和1部下行扶梯,每组的楼梯位于两扶梯之间;中部为T型楼梯,一端位于站厅层,其余两端位于站台层.

图7 站厅层行人设施布置

在车站CAD图纸上构建的行人流线网络如图8所示.

图8 站厅层行人流线网络

本文所开发的插件PedestrianNetwork共包含4个命令,即GetLinePointData、GetNetwork Attributes、PedestrianAssignment以及Show Results,其中,GetLinePointData命令负责行人网络数据提取及网络结点编号,GetNetwork Attributes命令负责边属性赋值及结点客流方向获取,PedestrianAssignment命令负责站内客流分配及客流分配结果输出,ShowResults则负责执行客流分配结果分析以及结果显示.

在准备好的存有行人流线网络的DWG文件中载入PedestrianNetwork插件,启动GetLinePoint Data命令,弹出如图9所示窗体进行图层匹配选择,然后点击“确定”,进行行人网络数据提取与网络结点编号,部分结点编号如图10所示.

启动GetNetworkAttributes命令,弹出如图11所示窗体进行边属性赋值,点击“确定”按钮,执行结点客流方向获取,并将拓扑网络边属性及结点客流方向保存于Excel表格中.

图9 图层匹配窗体

图10 网络结点标号结果

本文不涉及实结点阻抗时间计算,故假设类型属性为闸机组、自动扶梯、安检通道的各条边的起点为实结点,每个实结点的时间阻抗为10 s.先后启动PedestrianAssignment命令和ShowResults命令,对站内OD进行客流分配,表5所示OD表为尽可能剔除0值行列之后的剩余OD表.如图12所示,经过117次迭代算法收敛,各流线饱和度如图13所示.

上述流程若通过TransCAD完成,至少增加了导入网络、交通小区构建、连接小区形心等步骤.网络导入时由于平面坐标转换为地理坐标,流线长度减小且程度不同,需要予以修正.更重要的是,TransCAD的网络客流分配结果与图纸分离,设计人员不能够简单直观地观察到设施情况.VISUM则需要以CAD图纸为底图绘制行人设施布置方案,然后再构建行人流线网络进行分析,前期准备工作繁琐程度等同于微观仿真法.因此,TransCAD、VISUM在行人流线网络客流分配这一问题上较算例所述软件均显不足.

图11 边属性赋值窗体

表5 算例OD

Tab. 5 Table of OD

OD127505152532020 00000001240004004000021200020020000292000200200004040004004000051020 000000053020 0000000

图12 算例收敛曲线(117次迭代)

4 算法特点及软件效果

与既有分配方法相比,本文提出的基于行人流线网络的城市轨道交通车站行人设施客流分配算法将结点阻抗细化为分方向结点阻抗,并将分方向结点阻抗加入全有全无分配,使其与边阻抗共同影响站内客流分配;以连续平均法为基础,可以适应多种形式的阻抗计算方法.

为逐步实现行人网络客流分配而开发的PedestrianNetwork插件依托于AutoCAD,在不考虑结点时间阻抗计算准确性的情况下,能够实现“从图纸数据提取到分配结果可视化返回原始图纸”这一站内行人设施客流分配过程.与TransCAD、VISUM等商业软件相比,减少了导入网络、设置交通小区、小区形心与网络连接等两个操作步骤,设计人员只需要对行人网络各边参数进行赋值并检查结点客流方向就可以操作软件进行分析,一定程度上减轻了设计人员的软件学习及分析工作量.

图13 行人设施饱和度

5 结论

将分方向结点阻抗引入最短路径识别过程,提出了结点客流方向概念用于识别可行路径以及分方向结点阻抗表示,并基于连续平均法构建了考虑分方向结点阻抗的城市轨道交通车站行人设施客流分配算法.基于AutoCAD环境开发了城市轨道交通车站行人设施客流分配软件,并在软件实现过程中提出了结点客流方向的获取及初步的有效性判别方法.

以上海轨道交通某个处于规划设计阶段的车站为例,对上述分配方法及软件进行了测试.从分配结果看,分配算法有效,软件能够完成除分方向实结点时间阻抗计算外的工作流程.但是,由于未涉及分方向实结点时间阻抗计算方法及其特性研究,软件的客流分配结果尚不能作为车站规划设计调整的依据.

未来将结合分方向实结点时间阻抗计算方法及其特性的研究成果,完善分配软件,同时,为了符合车站设计行业趋势,将尝试以Autodesk Revit作为环境平台,进行后续的软件开发.

猜你喜欢
流线结点客流
客流增多
LEACH 算法应用于矿井无线通信的路由算法研究
信息熵控制的流场动态间距流线放置算法
基于八数码问题的搜索算法的研究
城市轨道交通节假日期间大客流行车组织思考与实践
几何映射
基于特征分布的三维流线相似性研究
基于自学习补偿的室内定位及在客流分析中的应用
大型客运站旅客流线设计及优化方法研究
人工免疫算法在电梯客流时段划分的应用