一种基于空间节点聚类方法的快速公交换乘方法,包括以下步骤:建立城市公交站点的邻近关系网络T;使用一种空间节点聚类方法对网络T进行站点聚类,起到降低计算网络规模的目的;将运算得到的最大完全子图映射为节点,并由这些节点生成一个新的网络P进行存储;根据实际限制与实时信息每隔一定时间更新网络P连边的权值;通过持久化存储信息找到用户查询指定的起始站点S与终止站点D各自在网络P中归属的节点SC和DC;计算节点SC和DC之间由节点构成的最小代价路径;通过存储信息反向生成起始站点S到终止站点D之间的优化换乘方案。本发明专利技术有效缩短计算时间、实时性良好。
【技术实现步骤摘要】
本专利技术涉及网络科学和公共交通领域,特别是指。
技术介绍
城市公共交通系统是城市重要的基础设施,它是维持城市有序运作的必要工具。当前我国正处于社会经济快速发展期,大力发展城市交通、进行交通的合理规划已被提上议题。作为城市交通运行的软设施,城市公共交通服务系统承载了城市中大部分人群的出行。优化和完善城市公共交通服务系统,对缓解城市拥堵和改善乘客出行有着至关重要的作用。解决城市公交换乘问题是完善城市公共交通服务系统的一个重要方面,因为它直接关系到积极有效地引导乘客合理、高效使用城市公共交通服务系统。传统上人们在解决问题时,将公交站点看成网络节点,将站点间通过公交车产生的连接看成网络连边,并依此生成一个网络矩阵,然后使用成熟的Dijkstra算法(Floyd算法)即可运算得到任意公交站点对之间的换乘方案。然而这种传统方法存在很多的不足。其中最主要的不足就是算法的运算时间过长,其计算特定站点对之间换乘的时间复杂度接近0(n2)(其中n为网络中的节点个数)。所以对于大型网络,在实际运用该方法时一般需要配合数据库技术,预先花费一定时间计算所有站点对间的换乘方案并存入数据库。当用户查询时,即可通过访问数据库查询快速获取换乘方案。
技术实现思路
为了克服已有的城市公交换乘算法计算时间过长、实时性较差的不足,本专利技术提出一种有效缩短计算时间、实时性良好的基于空间节点聚类方法的快速公交换乘方法。本专利技术解决其技术问题所采用的技术具体步骤是,包括以下步骤步骤一建立城市公交站点的邻近关系网络T,在这个网络中,当两个站点间的物理空间距离小于等于阈值时,在两个公交站点间存在一条连边;步骤二 使用空间节点聚类方法对网络T进行站点聚类,所述聚类方法是通过查找网络T中的所有最大完全子图完成;步骤三将通过步骤二运算得到的最大完全子图映射为节点,并由这些节点生成一个新的网络P并进行存储;在网络P中,当两个节点在网络T中对应的最大完全子图间存在直接的公交线路连接时,这两个节点间存在一条连边;步骤四根据实际限制与实时路况信息,每隔设定时间更新调整网络P的连边的权值;步骤五确定用户查询指定的起始站点S与终止站点D各自在网络P中归属的节点SC和DC,通过Dijkstra算法计算节点SC和DC之间由节点构成的最小代价路径,最后通过存储信息反向生成起始站点S到终止站点D之间的优化换乘方案。进一步,所述步骤三中,若存在网络P中的两个节点A和B,分别对应网络T中的两个最大完全子图SGA和SGB,如果SGA中存在至少一个站点与SGB中国的至少一个站点间存在直接的公交线路连接,那么A和B在网络P中就存在连边。再进一步,对网络T、网络P以及两者之间通过聚类算法得到的映射关系采用持久化的存储方式。所述步骤五中,通过迪杰斯特拉算法(即Di jkstra算法)计算节点SC和DC之间由节点构成的最小代价路径。所述Dijkstra算法是经典的单源最短路径算法,用于计算在一个网络中一个节点到其他所有节点的最短路径。主要特点是以起始节点为中心向外层扩展节点,直到扩展到终点为止。算法的思想是按路径长度递增次序产生最短路径。具体实现过程中算法把网络的节点集合V分成两组(I)S集合已求出最短路径的节点的集合。(2)V-S=T集合尚未确定最短路径的节点集合。算法运行过程中会将T中节点按最短路径递增的次序加入到S中。算法的具体步骤为1.令S= {源节点VO},T= {其余节点点},设置网络中任意两个节点Vi,Vj间的路径长度d(Vi,Vj)为若两节点间存在连边<Vi,Vj>,则d(Vi,Vj)为<Vi,Vj>的权值,否则d(VO1Vi)为无穷。2.从T中选取一个路径长度最小且不在S中的节点W,加入S。3.对其余T中节点的路径长度进行修改若加进W作中间顶点,从VO到Vi的距离值缩短,即 d (VO, ff) +d (W,VO) <d (VO, Vi),则修改 d (VO, Vi) =d (VO, ff) +d (ff, VO)。 4.重复上述步骤2、3,直到S中包含网络中的所有节点为止。或者是所述步骤五中,通过弗洛伊德算法(即Floyd算法)计算节点SC和DC之间由节点构成的最小代价路径。所述Floyd算法是经典的全局最短路径算法,用于计算在一个网络中任意两个节点间的最短路径。Floyd算法的原理是通过网络的权值邻接矩阵A=(该矩阵中的任意一个元素d(Vi,Vj)被定义为若两节点Vi,Vj间存在直接连边〈Vi,Vj>,则d(Vi,Vj)为<Vi,Vj>的长度,否则d(V0,Vi)为无穷)来求得网络任意两点间的最短路径矩阵。算法的基本步骤是对于一个拥有n个节点的网络,从网络的权值邻接矩阵A开始,递归地进行n 次更新,即由矩阵 D(O)=A,按一个公式 D(n+1) =min{D(n) +D(n) , Dn}(其中Dn代表算法第n次递归之前的运算矩阵Dn中的i行j列元素),构造出矩阵D(I);用同样的公式由D(I)构造出D(2);……;最后用同样的公式由D(n-l)构造出矩阵D(n)。理论上可以证明,矩阵D(n)的i行j列元素便是网络中节点i到节点j的最短路径长度。本专利技术的有益效果为综合考虑了公交站点间由公交线路与由近距离可达性产生的联系,有效降低了供换乘方案计算的网络矩阵的规模,起到了快速、实时给出换乘方案的作用。具体实施方式下面对本专利技术做进一步说明。,包括以下步骤步骤一建立城市公交站点的邻近关系网络T。在网络T中,当实际两个站点间的物理空间距离小于等于某一个阈值L时,这两个站点间存在一条连边。步骤二 使用空间节点聚类方法对网络T进行站点聚类,起到降低计算网络规模的目的。具体来说,聚类方法是通过查找网络T中的所有最大完全子图完成的(完全子图是指网络的一个子图,在这个子图中所有节点都是相互连接的;最大完全子图是指那些不能被其他完全子图包含的完全子图)。值得注意的是,查找网络的最大完全子图算法是一个NP完全问题,即当网络规模过大时,其运算会变为不可能。幸运的是,网络T是一个小型稀疏(站点数和连边均不多)的网络,所以寻找网络T的最大完全子图是相对快速的,并且得到的最大完全子图的个数会小于网络T的站点个数。步骤三将通过步骤二运算得到的最大完全子图映射为节点,并由这些节点生成一个新的网络P并存储。在网络P中,当两个节点在网络T中对应的最大完全子图间存在直接的公交线路连接时,这两个节点间存在一条连边。具体来说若存在网络P中的两个节点A和B,它们分别对应网络T中的两个最大完全子图SGA和SGB,如果SGA中存在至少一个公交站点与SGB中的至少一个公交站点间存在直接的公交线路连接,那么A和B在网络P中就存在连边。考虑到在一定时期内,一个城市的公交站点基本保持稳定,所以在实际操作时会将网络T、网络P以及他们之间的关系进行持久化存储。只有在站点出现增减的时刻,才会重新调用步骤二和步骤三进行持久化存储更新。步骤四根据实际限制与实时信息(例如城市中各个路段的拥堵信息)每隔一定时间更新调整通过聚类降维得到的网络P的连边的权值。这里的权值实际代表通过公交系统从一个站点聚类抵达另一站点聚类需要花费的代价,例如时间代价等。步骤五通过持久化存储的空间聚类信息,找到用户本文档来自技高网...
【技术保护点】
一种基于空间节点聚类方法的快速公交换乘方法,其特征在于:包括以下步骤:步骤一:建立城市公交站点的邻近关系网络T,在这个网络中,当两个站点间的物理空间距离小于等于阈值时,在两个公交站点间存在一条连边;步骤二:使用空间节点聚类方法对网络T进行站点聚类,所述聚类方法是通过查找网络T中的所有最大完全子图完成;步骤三:将通过步骤二运算得到的最大完全子图映射为节点,并由这些节点生成一个新的网络P并进行存储;在网络P中,当两个节点在网络T中对应的最大完全子图间存在直接的公交线路连接时,这两个节点间存在一条连边;步骤四:根据实际限制与实时路况信息,每隔设定时间更新调整网络P的连边的权值;步骤五:确定用户查询指定的起始站点S与终止站点D各自在网络P中归属的节点SC和DC,通过Dijkstra算法计算节点SC和DC之间由节点构成的最小代价路径,最后通过存储信息反向生成起始站点S到终止站点D之间的优化换乘方案。
【技术特征摘要】
【专利技术属性】
技术研发人员:杨旭华,陈光,赵久强,汪向飞,
申请(专利权)人:浙江工业大学,
类型:发明
国别省市: