通行费用确定方法、路网节点关系模型构建方法及装置与流程

文档序号:16737567发布日期:2019-01-28 12:44阅读:235来源:国知局
通行费用确定方法、路网节点关系模型构建方法及装置与流程

本发明涉及智能交通技术领域,特别是涉及高速通行费用的确定方法、装置、计算机设备和存储介质,以及,路网节点关系模型构建的方法、装置、计算机设备和存储介质。



背景技术:

为了达到更高效的省际通行效率,全国高速联网变为一种需求;全国联网后随着高速路段、收费站、标识站数量的增加,路网复杂程度剧增。基于全国联网,较为常用的高速通行费用计算方法是通过查表法和基于关系型数据库下,得到路网参数路径,由此得出费用。然而,在实现本发明的过程中,发明人发现现有技术中存在如下问题,全国范围内总的收费站预计达8000个以上,任意两个收费站的路网参数路径将达到千万亿级别,现有方法存在通行费用计算耗时长的问题。



技术实现要素:

基于此,有必要针对现有通行费用计算耗时长的问题,提供一种高速通行费用的确定方法、装置、计算机设备和存储介质。

一方面,本发明实施例提供一种高速通行费用的确定方法,包括:

接收查询请求消息,所述查询请求消息中包括入口站、出口站和标识点的信息;

查询预先构建的收费路网节点关系模型,得到以所述入口站、出口站为起止点并经过所述标识点的最短路径;所述收费路网节点关系模型存储在图数据库中,收费路网节点关系模型在图数据库中按照节点、关系、节点/关系的属性的形式存储;

将所述最短路径按同一路段进行合并,得到多条路段;计算每条路段对应的里程和费率;

根据所述多条路段各自对应的里程和费率,得到所述最短路径对应的总里程以及总通行费。

在其中一个实施例中,还包括:

获取路网实体包含的收费站信息、虚拟站信息以及标识点信息,存储为所述图数据库的节点;所述虚拟站为两条高速公路的互通节点或连接点;

获取收费站之间的第一连通关系、收费站与虚拟站之间的第二连通关系、收费站与标识点之间的第三连通关系以及虚拟站与虚拟站之间的第四连通关系,存储为所述图数据库的关系;

获取路段编码以及站编码,存储为所述图数据库中的节点的属性;

获取路段内的里程以及路段内的费率,存储为所述图数据库中关系的属性;费率为路单位距离的通行费用;

根据所述图数据库中的节点、节点的属性、关系以及关系的属性,得到所述收费路网节点关系模型。

在其中一个实施例中,还包括:

根据所述虚拟站确定出路由节点,所述路由节点由两个相邻虚拟站组成;

建立所述两个相邻虚拟站之间的连通关系,作为所述路由节点在图数据库中的关系,将所述关系添加到所述图数据库中;

设置所述两个相邻虚拟站之间的里程、费率均为0,作为所述路由节点在图数据库中的关系的属性;

由此,在所述收费路网节点关系模型中增加所述路由节点的模型。

在其中一个实施例中,还包括:

确定标识点相邻的第一收费站和第二收费站;

将所述标识点与第一收费站之间的里程、费率分别设置为第一收费站与第二收费站之间的里程、费率,作为所述标识点与第一收费站之间的连通关系在所述图数据库中关系的属性;

将所述标识点与第二收费站之间的里程、费率均设置为0,作为所述标识点与第二收费站之间的连通关系在所述图数据库中关系的属性。

在其中一个实施例中,还包括:

根据所述图数据库中存储的节点和关系,确定出没有连通关系且相邻的第一节点和第二节点;

识别与所述第一节点距离最近且存在连通关系的第三节点;

建立所述第三节点与所述第二节点之间的连通关系,将所述连通关系添加到所述图数据库的关系中。

在其中一个实施例中,所述建立所述第三节点与所述第二节点之间的连通关系,将所述连通关系添加到所述图数据库的关系中之后,还包括:

若所述第三节点对应的路网实体为标识点,获取第四节点;所述第四节点为距离所述第三节点最近的且对应的路网实体为收费站的节点;

将所述所述第三节点与所述第二节点之间的里程、费率分别设置为所述第四节点与所述第二节点之间的里程、费率,作为所述第三节点与所述第二节点之间的连通关系在所述图数据库中关系的属性。

在其中一个实施例中,所述接收查询请求消息之后,还包括:

若所述通行查询信息中不包含标识点的信息,查询预先构建的收费路网节点关系模型,得到以所述入口站、出口站为起止点的最短路段,作为最短路径;

根据所述最短路段对应的里程和费率,得到所述最短路径对应的总里程以及总通行费。

另一方面,还提供一种收费路网节点关系模型的构建方法,包括:

获取路网实体包含的收费站信息、虚拟站信息以及标识点信息,存储为所述图数据库的节点;所述虚拟站为两条高速公路的互通节点或连接点;

获取收费站之间的第一连通关系、收费站与虚拟站之间的第二连通关系、收费站与标识点之间的第三连通关系以及虚拟站与虚拟站之间的第四连通关系,存储为所述图数据库的关系;

获取路段编码以及站编码,存储为所述图数据库中的节点的属性;

获取路段内的里程以及路段内的费率,存储为所述图数据库中关系的属性;费率为路单位距离的通行费用;

根据所述图数据库中的节点、节点的属性、关系以及关系的属性,得到所述收费路网节点关系模型。

又一方面,还提供一种高速通行费用的确定装置,其特征在于,包括:

通行信息获取模块,用于接收查询请求消息,所述查询请求消息中包括入口站、出口站和标识点的信息;

路径确定模块,用于查询预先构建的收费路网节点关系模型,得到以所述入口站、出口站为起止点并经过所述标识点的最短路径;所述收费路网节点关系模型存储在图数据库中,收费路网节点关系模型在图数据库中按照节点、关系、节点/关系的属性的形式存储;

路径分析模块,用于将所述最短路径按同一路段进行合并,得到多条路段;计算每条路段对应的里程和费率;

里程及费用统计模块,用于根据所述多条路段各自对应的里程和费率,得到所述最短路径对应的总里程以及总通行费。

又一方面,还提供一种收费路网节点关系模型的构建装置,包括:

节点存储模块,用于获取路网实体包含的收费站信息、虚拟站信息以及标识点信息,存储为所述图数据库的节点;所述虚拟站为两条高速公路的互通节点或连接点;

关系存储模块,用于获取收费站之间的第一连通关系、收费站与虚拟站之间的第二连通关系、收费站与标识点之间的第三连通关系以及虚拟站与虚拟站之间的第四连通关系,存储为所述图数据库的关系;

节点属性存储模块,用于获取路段编码以及站编码,存储为所述图数据库中的节点的属性;

关系属性存储模块,用于获取路段内的里程以及路段内的费率,存储为所述图数据库中关系的属性;费率为路单位距离的通行费用;

模型构建模块,用于根据所述图数据库中的节点、节点的属性、关系以及关系的属性,得到所述收费路网节点关系模型。

又一方面,还提供一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述程序时实现上述任一实施例所述方法的步骤。

再一方面,本发明实施例提供一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述任一实施例所述方法的步骤。

上述技术方案中的一个技术方案具有如下优点或有益效果:基于图数据库预先构建收费路网节点关系模型,在获取到通行查询信息时,所述查询请求消息中包括入口站、出口站和标识点的信息;查询收费路网节点关系模型,能够快速得到以所述入口站、出口站为起止点并经过所述标识点的最短路径;将所述最短路径按同一路段进行合并,得到多条路段;计算每条路段对应的里程和费率;根据所述多条路段各自对应的里程和费率,得到所述最短路径对应的总里程以及总通行费。由于采用图数据库存储收费路网节点关系模型,数据存储量大大减少,能够快速确定出最短路径,并且相对传统技术,总通行费计算性能优越,全国联网费率计算耗时大大缩短。

附图说明

图1为一个实施例中高速通行费用的确定方法的应用环境图;

图2为一实施例的收费路网节点关系模型构建方法的示意性流程图;

图3为另一实施例的图数据库中收费路网节点关系模型的示意图;

图4为一实施例的在图数据库中存储收费路网节点关系模型的示意性流程图;

图5为另一实施例的收费路网节点关系模型构建方法的示意性流程图;

图6为一实施例的高速通行费用的确定装置的示意性结构图;

图7为一实施例的收费路网节点关系模型构建装置的示意性结构图;

图8为一个实施例中计算机设备的内部结构图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。

在一个实施例中,如图1所示,提供了一种高速通行费用的确定方法,包括步骤:s110,接收查询请求消息,所述查询请求消息中包括入口站、出口站和标识点的信息;s120,查询预先构建的收费路网节点关系模型,得到以所述入口站、出口站为起止点并经过所述标识点的最短路径;所述收费路网节点关系模型存储在图数据库中,收费路网节点关系模型在图数据库中按照节点、关系、节点/关系的属性的形式存储;s130,将所述最短路径按同一路段进行合并,得到多条路段;计算每条路段对应的里程和费率;s140,根据所述多条路段各自对应的里程和费率,得到所述最短路径对应的总里程以及总通行费。

其中,图数据库是一种非关系型数据库,它应用图形理论存储实体之间的关系信息。需要说明的是,图数据库可以为neo4j、allegrograph、orientdb、cosmosdb或者titan,在实施例中采用neo4j作为图数据库,但不局限于neo4j。neo4j作为图数据库的典型代表,有其独特的数据存储结构,数据存储主要分为节点、关系、节点/关系的属性这三类;借助图数据库技术,海量节点、关系的存储与查询成为可能。在实施例中,通过使用图数据库,可以轻松实现全国高速联网收费路径的存储及收费路径还原,相比传统的基于内存构建的图有更高的效率。

上述实施例的一种高速通行费用的确定方法,基于图数据库预先构建收费路网节点关系模型,在获取到通行查询信息时,所述查询请求消息中包括入口站、出口站和标识点的信息;查询收费路网节点关系模型,能够快速得到以所述入口站、出口站为起止点并经过所述标识点的最短路径;将所述最短路径按同一路段进行合并,得到多条路段;计算每条路段对应的里程和费率;根据所述多条路段各自对应的里程和费率,得到所述最短路径对应的总里程以及总通行费。由于采用图数据库存储收费路网节点关系模型,数据存储量大大减少,能够快速确定出最短路径,并且相对传统技术,总通行费计算性能优越,全国联网费率计算耗时大大缩短。

在一个实施例中,参考图2所示,基于图数据库构建收费路网节点关系模型的步骤可以包括:

s210,获取路网实体包含的收费站信息、虚拟站信息以及标识点信息,存储为所述图数据库的节点;所述虚拟站为两条高速公路的互通节点或连接点;s220,获取收费站之间的第一连通关系、收费站与虚拟站之间的第二连通关系、收费站与标识点之间的第三连通关系以及虚拟站与虚拟站之间的第四连通关系,存储为所述图数据库的关系;s230,获取路段编码以及站编码,存储为所述图数据库中的节点的属性;s240,获取路段内的里程以及路段内的费率,存储为所述图数据库中关系的属性;费率为路单位距离的通行费用;s250,根据所述图数据库中的节点、节点的属性、关系以及关系的属性,得到所述收费路网节点关系模型。

通过对现实世界的路网实体进行分析,路网实体中的连通关系与图数据库中的关系相一致,基于图数据库可快速实现收费路网节点关系模型。路网实体由收费站、虚拟站、标识点、路段内费率、路由节点构成,收费站、虚拟站、标识点映射成图数据库中的节点,路段编码、站编码、站名称以键值对的形式映射成节点的属性。路段内费率存储了站与站之间的里程、费率等信息,通过分析路段内费率,找出相邻收费站的连通关系、里程、费率,对于相邻收费站的连通性映射成图数据库中的关系,以边的形式进行表达,里程、费率、路段编码、站编码以键值对的形式映射成关系的属性。因此,收费路网节点关系模型在图数据库中的存储实现:根据收费路网节点关系模型,实现模型在图数据库中的存储。收费站、虚拟站、标识点作为图数据库中的节点,节点的属性可以包含路段编码、站编码、站名称。相邻收费站、收费站和相邻标识点、两条高速互通节点或分支上的虚拟站之间的连通性可以采用边进行连接,作为关系存储在图数据库中,关系的属性可以包括里程、费率、路段编码、进入站编码、驶出站编码等信息。

进一步地,基于图数据库,还可以存储路由节点的模型,其模型存储方法为:

根据所述虚拟站确定出路由节点,所述路由节点由两个相邻虚拟站组成;建立所述两个相邻虚拟站之间的连通关系,作为所述路由节点在图数据库中的关系,将所述关系添加到所述图数据库中;设置所述两个相邻虚拟站之间的里程、费率均为0,作为所述路由节点在图数据库中的关系的属性;由此,在所述收费路网节点关系模型中增加所述路由节点的模型。

在一些场景中,路由节点特指路段间的互通立交,以及路段与路段之间的连接点;每一个路由节点由两个虚拟站组成,用于描述路由节点的连通性。路由节点对应的两个虚拟站之间的连通性映射成其对应的图数据库中的关系,里程和费率设置为0,映射成关系的属性。通过标识点查找标识点的前收费站a和后收费站b,将标识点与收费站a、收费站b的连通性映射成图数据库中的关系,标识点与收费站a的里程和费率设置为与收费站a、b的里程和费率相等,标识点与收费站b的里程和费率设置为0,将里程和费率映射成关系的属性。

在一实施例中,标识点对应节点和关系属性在图数据库中的存储方法可以为:确定标识点相邻的第一收费站和第二收费站;将所述标识点与第一收费站之间的里程、费率分别设置为第一收费站与第二收费站之间的里程、费率,作为所述标识点与第一收费站之间的连通关系在所述图数据库中关系的属性;将所述标识点与第二收费站之间的里程、费率均设置为0,作为所述标识点与第二收费站之间的连通关系在所述图数据库中关系的属性。

在一些场景中,第一收费站为所述标识点之前的收费站,第二收费站为所述标识点之后的收费站,前后位置的参照为路段通行方向。即第一收费站为所述标识点上游的收费站,第二收费站为所述标识点下游的收费站。当然,基于实际情况,可以将是第一收费站为所述标识点下游的收费站,第二收费站为所述标识点上游的收费站。

在一实施例中,还可以对初步构建的收费路网节点关系模型进一步完善,包括:根据所述图数据库中存储的节点和关系,确定出没有连通关系且相邻的第一节点和第二节点;识别与所述第一节点距离最近且存在连通关系的第三节点;建立所述第三节点与所述第二节点之间的连通关系,将所述连通关系添加到所述图数据库的关系中。

进一步地,上述新增的关系的属性的确定方法可以为:若所述第三节点对应的路网实体为标识点,获取第四节点;所述第四节点为距离所述第三节点最近的且对应的路网实体为收费站的节点;将所述所述第三节点与所述第二节点之间的里程、费率分别设置为所述第四节点与所述第二节点之间的里程、费率,作为所述第三节点与所述第二节点之间的连通关系在所述图数据库中关系的属性。

如图3所示的图数据库中收费路网节点关系模型示意图,下面以广东部分高速公里站点为例,说明构建收费路网节点关系模型的方式:

1)首先对路网实体进行分析,建立路网实体与图数据库的映射模型。图中标①的圆圈表示虚拟站,用于描述两条高速公路互通节点或连接点。图中标②的圆圈表示实体收费站。图中标③的圆圈表示标识点。站间的双向连通性用双向箭头连接,单向连通用单向箭头连接,里程和费率作为连通关系的属性。

2)图中标④的区域为路由节点,由两个虚拟站构成,现实中是广肇高速和西二环南的互通立交,物理位置相同。为保证图的连通性,在构建模型时,需创建分属两条道路的节点,节点之间用双向箭头连通,由于是同一位置,连通属性中的里程和费率为0。

3)图中标⑤的区域为标识点,由于标识点与前后收费站的距离和里程未知,但是经过该标识点则一定会经过其对应的前后收费站。因此,可设置标识点与前后收费站中的任意一个之间的费率和里程为0,与另一个收费站的费率和里程设置为与前后收费站的费率和里程相同。如图:连广肇和丹灶之间的里程为5600米,费率为300分,因此可设置连广肇与西二e1之间的里程为5600米,费率为300分,西二e1与丹灶之间的里程和费率为0。依据此规则,可完成标识点在图数据库中的模型构建。

4)图中标⑥的区域为不可达路径。针对不可达路径,需找到下一个可达的收费站、虚拟站或标识点,并建立连通关系。如图:连西二环南与金白不可达,不能建立连通关系,连西二环与广明e1可达,为保证路网的连通性,连西二环南与广明e1需建立连通关系。由于广明e1为标识点,连西二环南与广明e1的里程和费率可设置为连西二环南与荷城的里程和费率。

5)以此类推,可完成全国联网收费路网节点关系模型的构建。

在一实施例中,如图4所示,收费路网节点关系模型在图数据库中存储的流程图可以包括下面几个步骤:

步骤1:从路网实体中获取收费站、虚拟站、标识点信息,以图数据库中的节点形式进行存储。路段编码、站编码、站名称作为节点的属性进行存储。

步骤2:对同路段的收费站、虚拟站、标识点按站顺序进行排序,根据路段内费率表判断相邻收费站是否连通,连通则将连通关系以图数据库中的关系进行存储,不连通则查找与下一个收费站的连通关系,直至找到最近的连通的收费站。里程、费率、路段编码、站编码作为边的属性进行存储。

步骤3:遍历路由节点表中的记录,将路由节点包含的两个虚拟站建立连通关系,以关系的形式插入图数据库中。里程、费率、路段编码、站编码作为边的属性进行存储,里程和费率均为0。

步骤4:遍历标识点表中的记录,建立标识点与前后收费站的连通关系,以关系的形式插入图数据库中。标识点与前收费站的里程和费率设置为与前后收费站的里程和费率相等,标识点与后收费站的里程和费率设置为0。

进一步地,随着新建高速公路的陆续通车以及现有收费站的撤销,图数据库中的收费路网节点关系模型还可以按照设定周期进行更新,更新的方法可以为:预先开发相应的更新接口,实现节点、关系以及属性的快速更新;基于这些更新接口,首先删除现有的收费路网节点关系模型;其次从路网实体中获取收费站、虚拟站、标识点信息,调用图数据库的节点创建接口,完成节点的添加;第三:从路段内费率中查找相邻收费站的连通性,调用图数据库的关系创建接口,完成相邻收费站连通关系的创建;第四:从路由节点中找出对应的虚拟站,调用图数据库的关系创建接口,完成虚拟站连通关系的创建;最后:从标识点中找出前后收费站,建立标识点与前后收费站的连通关系,至此,路网节点关系模型更新完成。

基于图数据库存储的收费路网节点关系模型,可以通过相应的费率计算接口程序,采用java语言编写费率计算接口,通过传入入口站、出口站和标识点信息,系统返回相对应的里程和费率,当入口站、出口站信息丢失时,系统返回的费率和里程为0。外部程序调用费率计算接口时,只需传入入口站、出口站编码、标识点编码序列,或者入口站、出口站编码、出口站编码、标识点编码序列,即可快速获取相应的里程和费率。具体高速通行费用的确定过程的示意图还可以参考图5所示。

在一些场景中,接收查询请求消息之后,还需要判断通行查询信息中的标识点是否为空,如果标识点为空则根据入出口站信息还原出最短路径,否则根据入出口站信息和标识点还原出途径指定标识点的最短路径。

采用上述收费路网节点关系模型构建方法,可以解决收费路网节点关系模型、路网节点关系模型存储及更新、基于权重和指定节点的最短路径搜索及费率计算等问题。通过对路网实体数据进行分析,收费站、标识点、虚拟站及其连通性与图数据库中的节点、关系、属性相一致,基于图数据库可快速实现收费路网节点关系模型。neo4j提供了java、.net、php等多种语言二次开发接口,便于数据模型存储及更新。费率计算参数通过节点、关系和属性的方式存储于图数据库中,形成联网收费路径图。图数据库的apoc存储过程库中封装了dijkstra、a*、d*等路径搜索算法,可以快速查询出经过指定标识点的最短路径,从而进一步计算通行费。图数据库的最大优势在于存储海量的节点和关系,并从海量的节点和关系中快速找出最短路径。

采用上述高速通行费用的确定方法的优势包括:(一)数据模型简单,扩展性强;(二)采用图数据库存储收费路径图,数据量大大减少;(三)采用图数据库存储相邻收费站、虚拟站的连通关系和费率计算权重,存储量大大降低;(四)费率计算性能优越,全国联网费率计算耗时在10ms以内;(五)能解决复杂路径的快速费率计算。

应该理解的是,对于前述的各方法实施例,虽然流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,方法实施例的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

基于与上述实施例中的高速通行费用的确定方法相同的思想,本文还提供高速通行费用的确定装置。

在一个实施例中,如图6所示,高速通行费用的确定装置包括:

通行信息获取模块601,用于接收查询请求消息,所述查询请求消息中包括入口站、出口站和标识点的信息;

路径确定模块602,用于查询预先构建的收费路网节点关系模型,得到以所述入口站、出口站为起止点并经过所述标识点的最短路径;所述收费路网节点关系模型存储在图数据库中,收费路网节点关系模型在图数据库中按照节点、关系、节点/关系的属性的形式存储;

路径分析模块603,用于将所述最短路径按同一路段进行合并,得到多条路段;计算每条路段对应的里程和费率;

里程及费用统计模块604,用于根据所述多条路段各自对应的里程和费率,得到所述最短路径对应的总里程以及总通行费。

进一步地,在一个实施例中,所述高速通行费用的确定装置还包括:关系模型构建模块,该模块具体包括:

节点存储单元,用于获取路网实体包含的收费站信息、虚拟站信息以及标识点信息,存储为所述图数据库的节点;所述虚拟站为两条高速公路的互通节点或连接点;

关系存储单元,用于获取收费站之间的第一连通关系、收费站与虚拟站之间的第二连通关系、收费站与标识点之间的第三连通关系以及虚拟站与虚拟站之间的第四连通关系,存储为所述图数据库的关系;

节点属性存储单元,用于获取路段编码以及站编码,存储为所述图数据库中的节点的属性;

关系属性存储单元,用于获取路段内的里程以及路段内的费率,存储为所述图数据库中关系的属性;费率为路单位距离的通行费用;

模型构建单元,用于根据所述图数据库中的节点、节点的属性、关系以及关系的属性,得到所述收费路网节点关系模型。

进一步地,在一个实施例中,所述关系模型构建模块,还包括:

路由节点存储单元,用于根据所述虚拟站确定出路由节点,所述路由节点由两个相邻虚拟站组成;建立所述两个相邻虚拟站之间的连通关系,作为所述路由节点在图数据库中的关系,将所述关系添加到所述图数据库中;设置所述两个相邻虚拟站之间的里程、费率均为0,作为所述路由节点在图数据库中的关系的属性;由此,在所述收费路网节点关系模型中增加所述路由节点的模型

进一步地,在一个实施例中,所述关系存储单元,具体包括:

标识点分析子单元,用于确定标识点相邻的第一收费站和第二收费站;

第一标识点关系属性确定子单元,用于将所述标识点与第一收费站之间的里程、费率分别设置为第一收费站与第二收费站之间的里程、费率,作为所述标识点与第一收费站之间的连通关系在所述图数据库中关系的属性;

第二标识点关系属性确定子单元,用于将所述标识点与第二收费站之间的里程、费率均设置为0,作为所述标识点与第二收费站之间的连通关系在所述图数据库中关系的属性。

进一步地,在一个实施例中,所述关系模型构建模块,还包括:

模型优化单元,用于根据所述图数据库中存储的节点和关系,确定出没有连通关系且相邻的第一节点和第二节点;识别与所述第一节点距离最近且存在连通关系的第三节点;建立所述第三节点与所述第二节点之间的连通关系,将所述连通关系添加到所述图数据库的关系中。

进一步地,在一个实施例中,所述关系模型构建模块,还包括:

关系属性添加单元,用于若所述第三节点对应的路网实体为标识点,获取第四节点;所述第四节点为距离所述第三节点最近的且对应的路网实体为收费站的节点;将所述所述第三节点与所述第二节点之间的里程、费率分别设置为所述第四节点与所述第二节点之间的里程、费率,作为所述第三节点与所述第二节点之间的连通关系在所述图数据库中关系的属性。

通过上述实施例的高速通行费用的确定装置,基于图数据库预先构建收费路网节点关系模型,在获取到通行查询信息时,所述查询请求消息中包括入口站、出口站和标识点的信息;查询收费路网节点关系模型,能够快速得到以所述入口站、出口站为起止点并经过所述标识点的最短路径;将所述最短路径按同一路段进行合并,得到多条路段;计算每条路段对应的里程和费率;根据所述多条路段各自对应的里程和费率,得到所述最短路径对应的总里程以及总通行费。由于采用图数据库存储收费路网节点关系模型,数据存储量大大减少,能够快速确定出最短路径,并且相对传统技术,总通行费计算性能优越,全国联网费率计算耗时大大缩短。

在一个实施例中,如图7所示,收费路网节点关系模型构建装置包括:

节点存储模块701,用于获取路网实体包含的收费站信息、虚拟站信息以及标识点信息,存储为所述图数据库的节点;所述虚拟站为两条高速公路的互通节点或连接点;

关系存储模块702,用于获取收费站之间的第一连通关系、收费站与虚拟站之间的第二连通关系、收费站与标识点之间的第三连通关系以及虚拟站与虚拟站之间的第四连通关系,存储为所述图数据库的关系;

节点属性存储模块703,用于获取路段编码以及站编码,存储为所述图数据库中的节点的属性;

关系属性存储模块704,用于获取路段内的里程以及路段内的费率,存储为所述图数据库中关系的属性;费率为路单位距离的通行费用;

模型构建模块705,用于根据所述图数据库中的节点、节点的属性、关系以及关系的属性,得到所述收费路网节点关系模型。

进一步地,在一个实施例中,上述收费路网节点关系模型构建装置包括:还包括:

路由节点存储模块,用于根据所述虚拟站确定出路由节点,所述路由节点由两个相邻虚拟站组成;建立所述两个相邻虚拟站之间的连通关系,作为所述路由节点在图数据库中的关系,将所述关系添加到所述图数据库中;设置所述两个相邻虚拟站之间的里程、费率均为0,作为所述路由节点在图数据库中的关系的属性;由此,在所述收费路网节点关系模型中增加所述路由节点的模型

进一步地,在一个实施例中,所述关系存储模块702,具体包括:

标识点分析单元,用于确定标识点相邻的第一收费站和第二收费站;

第一标识点关系属性确定子单元,用于将所述标识点与第一收费站之间的里程、费率分别设置为第一收费站与第二收费站之间的里程、费率,作为所述标识点与第一收费站之间的连通关系在所述图数据库中关系的属性;

第二标识点关系属性确定单元,用于将所述标识点与第二收费站之间的里程、费率均设置为0,作为所述标识点与第二收费站之间的连通关系在所述图数据库中关系的属性。

进一步地,在一个实施例中,上述收费路网节点关系模型构建装置包括:还包括:

模型优化模块,用于根据所述图数据库中存储的节点和关系,确定出没有连通关系且相邻的第一节点和第二节点;识别与所述第一节点距离最近且存在连通关系的第三节点;建立所述第三节点与所述第二节点之间的连通关系,将所述连通关系添加到所述图数据库的关系中。

进一步地,在一个实施例中,上述收费路网节点关系模型构建装置包括:还包括:

关系属性添加模块,用于若所述第三节点对应的路网实体为标识点,获取第四节点;所述第四节点为距离所述第三节点最近的且对应的路网实体为收费站的节点;将所述所述第三节点与所述第二节点之间的里程、费率分别设置为所述第四节点与所述第二节点之间的里程、费率,作为所述第三节点与所述第二节点之间的连通关系在所述图数据库中关系的属性。

通过上述收费路网节点关系模型构建装置,得到的收费路网节点关系模型具有以下优点:(一)数据模型简单,扩展性强;(二)采用图数据库存储收费路径图,数据量大大减少;(三)采用图数据库存储相邻收费站、虚拟站的连通关系和费率计算权重,存储量大大降低。

关于高速通行费用的确定装置/收费路网节点关系模型构建装置的具体限定可以参见上文中对于高速通行费用的确定方法/收费路网节点关系模型构建方法的限定,在此不再赘述。上述高速通行费用的确定装置/收费路网节点关系模型构建装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

此外,上述示例的高速通行费用的确定装置/收费路网节点关系模型构建装置的实施方式中,各程序模块的逻辑划分仅是举例说明,实际应用中可以根据需要,例如出于相应硬件的配置要求或者软件的实现的便利考虑,将上述功能分配由不同的程序模块完成,即将所述高速通行费用的确定装置/收费路网节点关系模型构建装置的内部结构划分成不同的程序模块,以完成以上描述的全部或者部分功能。

在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图8所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储收费路网节点关系模型构建装置/高速通行费用的确定装置的数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种高速通行费用的确定方法。

本领域技术人员可以理解,图8中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:

接收查询请求消息,所述查询请求消息中包括入口站、出口站和标识点的信息;

查询预先构建的收费路网节点关系模型,得到以所述入口站、出口站为起止点并经过所述标识点的最短路径;所述收费路网节点关系模型存储在图数据库中,收费路网节点关系模型在图数据库中按照节点、关系、节点/关系的属性的形式存储;

将所述最短路径按同一路段进行合并,得到多条路段;计算每条路段对应的里程和费率;

根据所述多条路段各自对应的里程和费率,得到所述最短路径对应的总里程以及总通行费。

在一个实施例中,处理器执行计算机程序时还实现上述其他实施例的高速通行费用的确定方法的步骤。

在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:

获取路网实体包含的收费站信息、虚拟站信息以及标识点信息,存储为所述图数据库的节点;所述虚拟站为两条高速公路的互通节点或连接点;

获取收费站之间的第一连通关系、收费站与虚拟站之间的第二连通关系、收费站与标识点之间的第三连通关系以及虚拟站与虚拟站之间的第四连通关系,存储为所述图数据库的关系;

获取路段编码以及站编码,存储为所述图数据库中的节点的属性;

获取路段内的里程以及路段内的费率,存储为所述图数据库中关系的属性;费率为路单位距离的通行费用;

根据所述图数据库中的节点、节点的属性、关系以及关系的属性,得到所述收费路网节点关系模型。

在一个实施例中,处理器执行计算机程序时还实现上述其他实施例的收费路网节点关系模型的构建方法的步骤。

在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:

接收查询请求消息,所述查询请求消息中包括入口站、出口站和标识点的信息;

查询预先构建的收费路网节点关系模型,得到以所述入口站、出口站为起止点并经过所述标识点的最短路径;所述收费路网节点关系模型存储在图数据库中,收费路网节点关系模型在图数据库中按照节点、关系、节点/关系的属性的形式存储;

将所述最短路径按同一路段进行合并,得到多条路段;计算每条路段对应的里程和费率;

根据所述多条路段各自对应的里程和费率,得到所述最短路径对应的总里程以及总通行费。

或者,计算机程序被处理器执行时实现以下步骤:

获取路网实体包含的收费站信息、虚拟站信息以及标识点信息,存储为所述图数据库的节点;所述虚拟站为两条高速公路的互通节点或连接点;

获取收费站之间的第一连通关系、收费站与虚拟站之间的第二连通关系、收费站与标识点之间的第三连通关系以及虚拟站与虚拟站之间的第四连通关系,存储为所述图数据库的关系;

获取路段编码以及站编码,存储为所述图数据库中的节点的属性;

获取路段内的里程以及路段内的费率,存储为所述图数据库中关系的属性;费率为路单位距离的通行费用;

根据所述图数据库中的节点、节点的属性、关系以及关系的属性,得到所述收费路网节点关系模型。

在一个实施例中,计算机程序被处理器执行时还实现上述其他实施例的高速通行费用的确定方法的步骤,或者,上述其他实施例的收费路网节点关系模型的构建方法的步骤。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。

本文实施例的术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或(模块)单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。

在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。

在本文中提及的“第一\第二”仅仅是是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二”在允许的情况下可以互换特定的顺序或先后次序。应该理解“第一\第二”区分的对象在适当情况下可以互换,以使这里描述的实施例能够以除了在这里图示或描述的那些以外的顺序实施。

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1