一种浮动车车载终端的路径搜索方法及系统的制作方法

文档序号:9784549阅读:252来源:国知局
一种浮动车车载终端的路径搜索方法及系统的制作方法
【技术领域】
[0001] 本发明涉及智能交通车载定位技术领域,具体涉及一种基于深度优先搜索的浮动 车车载终端的路径搜索方法及系统。
【背景技术】
[0002] 基于浮动车卫星定位数据的城市道路交通拥堵分析技术被认为是实现先进的交 通诱导的重要途径,基于浮动车卫星定位数据交通参数检测技术作为一种新的检测方式, 如何提高其检测性能是目前的核心问题。城市道路拥堵分析主要包括浮动车卫星定位数据 获取、地图匹配、路径搜索、路段交通状态及路网拥堵计算、交通决策等内容。
[0003] 卫星定位系统包括美国的GPS全球定位系统、中国的北斗卫星定位系统,俄罗斯的 格洛纳斯全球卫星导航系统(GLOBAL NAVIGATION SATELLITE SYSTEM,简称:GLONASS)和欧 洲的伽利略卫星定位系统。卫星定位系统能够提供实时、全天候和全球性的导航服务,可以 提供车辆定位、行驶路线监控等功能,具有的全天候、高精度和自动测量的特点,已经融入 了国民经济建设、国防建设和社会发展的各个应用领域。随着城市车辆保有量的急剧增加, 城市道路拥挤不堪,交通事故频频发生,把卫星定位系统用于城市道路拥堵收费,将显著提 高城市道路运营的效率和增加行车的安全性。
[0004] 浮动车数据采集是以交通信息获取为目的,不同于车载端每秒采集一次GPS数据, 由于考虑经济因素,以及后台计算机数据处理的实时性的考虑,GPS数据采集的周期一般都 在20-60S,导致周期内车辆行驶距离较长,GPS定位点之间相差好几个路段,从而需要搜索 GPS定位点所在道路之间可能存在的路径。本发明正是针对该问题而提出了一种浮动车车 载终端的路径搜索方法及系统。

【发明内容】

[0005] 针对现有技术中存在的缺陷,本发明的目的在于提供一种能够得到车载终端的相 邻两个定位点之间所有可能路径的一种车载终端的路径搜索方法及系统。
[0006] 为实现上述目的,本发明采用的技术方案如下:
[0007] -种浮动车车载终端的路径搜索方法,包括以下步骤:
[0008] 步骤一、建立用于路径搜索的道路结点集合nlndNodes;建立结点集合nlndNodes 的方式包括:
[0009] (11)采集浮动车的卫星定位数据,选取相邻的两个定位点,并根据卫星定位数据 将两个定位点匹配到相应的道路,前一个定位点所在道路记为第一道路,后一个定位点所 在道路记为第二道路;
[0010] (12)获取第一道路和第二道路的道路结点信息,选取第一道路的任一道路结点为 起始点startpoint,选取第二道路的任一道路结点为终止点endpoint,将与起始点 startpoint的最短路径长度和与终止点endpoint的最短路径长度均小于预设的路径搜索 长度nPathLenLmt的道路结点添加到结点集合nlndNodes中,并建立结点集合nlndNodes的 邻接矩阵ADJ;
[0011] 其中,邻接矩阵ADJ中的第p行第q列的元素为第p个道路结点与第q个道路结点间 的路径长度,不互为邻接点的两个道路结点之间的路径长度设置为预设值Mval;
[0012] 步骤二、根据所述结点集合nlndNodes和其邻接矩阵ADJ进行起始点startpoint和 终止点endpoint之间的路径搜索。
[0013] 进一步,如上所述的一种浮动车车载终端的路径搜索方法,其特征在于:步骤二 中,进行起始点startpoint和终止点endpoint之间路径搜索的方式包括:
[0014] (21)设置路径结点集合partialPath,并记录路径结点集合partialPath的长度 pathLength,集合中的元素为按搜索顺序存放的每次路径搜索时的搜索起始结点; pathLength是指路径结点集合partialPath中元素的个数,初始化时,partialPath[l]= startpoint,pathLength = 1;
[0015] 设置每次搜索时的搜索起始结点为las tnode,las tnode = partialPath [last], partialPath [last]表示路径结点集合partialPath的最后一个元素;初始化时,lastnode = startpoint ;
[0016] (22)根据邻接矩阵ADJ获取搜索起始结点lastnode的邻接点,将得到的邻接点记 录在邻接点集合nextNodes中;
[0017] (23)判断邻接点集合nextNodes是否为空,若是,则进入步骤(24),若否,则进入步 骤(26);
[0018] (24)判断路径结点集合partialPath中的元素是否只有起始点startpoint,若是, 则路径搜索搜索回到起始点,路径搜索完毕;若否,则进入步骤(25);
[0019] (25)删除路径结点集合partialPath中partialPath [last],更新路径结点集合 partialPath和搜索起始结点lastnode,并返回步骤(22);
[0020] (26)从邻接点集合nextNodes中选取下一个搜索起始道路结点,选取方式为:
[0021 ] 1 )遍历邻接点集合nextNodes中的道路结点nextNodes i,判断道路结点 nextNodes i是否为终止点endpoint,若是,则将nextNodes i从结点集合nextNodes中删除, 将邻接矩阵中搜索起始结点lastnode和nextNodesi之间的路径长度设置为预设值Mval,将 路径结点集合partialPath中的道路结点顺次连接生成startpoint和终止点endpoint之间 的一条路径,进入步骤2);若否,则进入步骤2);
[0022] 2)判断nextNodesi是否在路径结点集合partialPath中,若是,则将nextNodesi从 邻接点集合nextNodes中删除,将邻接矩阵中搜索起始结点lastnode和nextNodesi之间的 路径长度设置为预设值Mval,进入步骤3);若否,则进入步骤3);
[0023] 3)判断邻接点集合nextNodes是否为空,若是,则返回步骤(24);若否,则选取邻接 点集合nextNodes中的一个道路结点为下一个搜索起始结点;
[0024] (27)根据选取的下一个搜索起始结点更新路径结点集合partialPath和起始标识 lastnode,清空邻接点集合nextNodes,并返回步骤(22)。
[0025] 进一步,如上所述的一种浮动车车载终端的路径搜索方法,步骤二中,在进行起始 点startpoint和终止点endpoint之间的路径搜索之前,还包括:
[0026] 根据第一道路和第二道路的经炜度信息判断两条道路是否直接相连,若是,则确 定起始点startpoint和终止点endpoint之间的唯一路径为起始点startpoint和终止点 endpoint连接成的路径;若否,则进入步骤(21);两条道路直接相连是指两条道路为一条道 路且起始点与终止点之间的路径不存在其它道路结点。
[0027]进一步,如上所述的一种浮动车车载终端的路径搜索方法,在每次更新完路径结 点集合partialPath后,若路径结点集合partialPath的长度pathLength满足pathLength之 3,该方法还包括:
[0028]判断路径结点集合partialPath中的元素是否满足以下任一条件,若是,贝lj进入步 骤(25),若否,则进入步骤(22);
[0029] 条件1 :pathLength大于预设的路径搜索深度nPathNumLmt;
[0030] 条件2:路径结点集合partialPath中的路径结点顺次连接生成的路径的路径长度 大于预设的路径搜索长度nPathLenLmt。
[0031] 进一步,如上所述的一种浮动车车载终端的路径搜索方法,所述路径搜索长度 nPathLenLmt根据浮动车时速和浮动车的定位时间间隔确定;路径搜索长度=浮动车时速 X定位时间间隔。
[0032]进一步,如上所述的一种浮动车车载终端的路径搜索方法,所述路径搜索深度 nPathNumLmt = 20;所述路径搜索长度 nPathLenLmt = 2km。
[0033]进一步,如上所述的一种浮动车车载终端的路径搜索方法,所述预设值Mval = 999999〇
[0034]本发明还提供了一种浮动车车载终端的路径搜索系统,包括:
[0035]道路结点集合建立模块,用于建立用于路径搜索的道路结点集合nlndNodes;该模 块:
[0036] 定位点道路匹配单元,用于采集浮动车的卫星定位数据,选取相邻的两个定位点, 并根据卫星定位数据将两个定位点匹配到相应的道路,前一个定位点所在道路记为第一道 路,后一个定位点所在道路记为第二道路;
[0037] 结点集合与邻接矩阵建立单元,用于获取第一道路和第二道路的道路结点信息, 选取第一道路的任一道路结点为起始点startpoint,选取第二道路的任一道路结点为终止 点endpoint,将与起始点startpoint的最短路径长度和与终止点endpoint的最短路径长度 均小于预设的路径搜索长度nPathLenLmt的道路结点添加到结点集合nlndNodes中,并建立 结点集合nlndNodes的邻接矩阵ADJ;
[0038] 其中,邻接矩阵ADJ中的第p行第q列的元素为第p个道路结点与第q个道路结点间 的路径长度,不互为邻接点的两个道路结点之间的路径长度设置为预设值Mval;
[0039]路径搜索模块,用于根据所述结点集合nlndNodes和其邻接矩阵ADJ进行起始点 startpoint和终止点endpoint之间的路径搜索。
[0040]进一步,如上所述的一种浮动车车载终端的路径搜索系统,路径搜索模块进行路 径搜索的方式为:
[0041 ] (21)设置路径结点集合partialPath,并记录路径结点集合partialPath的长度 pathLength,集合中的元素为按搜索顺序存放的每次路径搜索时的搜索起始结点; pathLength是指路径结点集合partialPath中元素的个数,初始化时,partialPath[l]= startpoint,pathLength = 1;
[0042] 设置每次搜索时的搜索起始结点为las tnode,las tnode = partialPath [last], 口81'1:丨31?31:11[1381:]表示路径结点集合。31'1:丨31?31:11的最后一个元素;初始化时,1381:110(16 = startpoint;
[0043] (22)根据邻接矩阵ADJ获取搜索起始结点lastnode的邻接点,将得到的邻接点记 录在邻接点集合nextNodes中;
[0044] (23)判断邻接点集合nextNodes是否为空,若是,则进入步骤(24),若否,则进入步 骤(26);
[0045] (24)判断路径结点集合partialPath中的元素是否只有起始点startpoint,若是, 则路径搜索
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1