著录项信息
专利名称 | 一种获取汽车在途最少时间的装置及方法 |
申请号 | CN200810115585.6 | 申请日期 | 2008-06-25 |
法律状态 | 权利终止 | 申报国家 | 中国 |
公开/公告日 | 2008-10-29 | 公开/公告号 | CN101294821 |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | G01C21/26 | IPC分类号 | G;0;1;C;2;1;/;2;6;;;G;0;1;C;2;1;/;3;4查看分类表>
|
申请人 | 北京大学 | 申请人地址 | 北京市海淀区颐和园路5号
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 北京大学 | 当前权利人 | 北京大学 |
发明人 | 高军;杨冬青;王腾蛟 |
代理机构 | 北京路浩知识产权代理有限公司 | 代理人 | 戚传江 |
摘要
本发明公开了一种获取汽车在途最少时间的方法,包括以下步骤:S1,获取汽车行驶的主干道,以及从出发点进入到所述主干道的每个入口点和从所述主干道到达终点的每个出口点;S2,获取从所述出发点到达所述每个入口点的时间;S3,获取从所述每个入口点到达所有出口点的时间;S4,获取从所述每个出口点到达终点的时间;S5,根据步骤S2、S3和S4的结果,获取汽车从所述出发点到达所述终点的最少时间。本发明能够快速确定汽车的出发时间及行车路线,从而使汽车的在途时间达到最小,节约时间,减少交通拥堵。
1.一种获取汽车在途最少时间的方法,其特征在于,包括以下步骤:
S1,获取汽车行驶的主干道,以及从出发点进入到所述主干道的所有入口点和从所述主干道到达终点的所有出口点,所述主干道为城市交通中的主干道;
S2,获取从所述出发点到达所述每个入口点的时间;
S3,获取从所述每个入口点到达所有出口点的时间;
S4,获取从所述每个出口点到达终点的时间;
S5,根据步骤S2、S3和S4的结果,获取汽车从所述出发点到达所述终点的最少时间;
获取从所述出发点到达所述每个入口点的时间的方法包括以下步骤:
设置给定时间区间[t1,t4];
将给定时间区间[t1,t4]离散为多个时刻点;
针对离散的每一个时刻点,获取从所述出发点到达所述每个入口点的时间。
2.如权利要求1所述的获取汽车在途最少时间的方法,其特征在于,在获取从所述每个入口点到达所有出口点的时间之前还包括:
S31,任意选择一个入口点,获取所述定时间区间[t1,t4]内某一离散时刻时该入口点到所有出口点的最短路径,并保存所述最短路径包含的中间结果,所述中间结果包括:该入口点与所述最短路径对应的出口点之间的所有入口点,以及从该入口点到达所有入口点中任意一个入口点的时间、任意一个入口点到达所述最短路径对应的出口点的中间最短路径、以及所述最短路径对应的最终时间;
S32,判断是否还存在没有获取最短路径的入口点,如果是,则转步骤S33,如果否,则结束;
S33,判断所述中间结果中是否存在没有获取最短路径的入口点到所有出口点的最短路径,如果是,则将该最短路径设置为该入口点的最短路径;如果否,则转步骤S31。
3.一种获取汽车在途最少时间的装置,其特征在于,包括:
道路信息获取单元,用于获取汽车行驶的主干道,以及从出发点进入到所述主干道的所有入口点和从所述主干道到达终点的所有出口点,所述主干道为城市交通中的主干道;
第一时间获取单元,与所述道路信息获取单元连接,用于获取从所述出发点到达所述每个入口点的时间;
第二时间获取单元,与所述道路信息获取单元连接,用于获取从所述每个入口点到达所有出口点的时间;
第三时间获取单元,与所述道路信息获取单元连接,用于获取从所述每个出口点到达终点的时间;
第四时间获取单元,分别与所述第一、第二、第三时间获取单元连接,用于根据所述第一、第二、第三时间获取单元获取的结果,获取汽车从所述出发点到达所述终点的最少时间。
4.如权利要求3所述的获取汽车在途最少时间的装置,其特征在于,所述装置还包括:
最短路径获取单元,分别与所述道路信息获取单元、第二时间获取单元连接,用于获取任意一个入口点到所有出口点的路径中的最短路径。
一种获取汽车在途最少时间的装置及方法\n技术领域\n[0001] 本发明涉及交通领域,特别是涉及一种获取汽车在途最少时间的装置及方法。\n背景技术\n[0002] 随着城市的发展,城市交通也在飞速发展,但是城市交通的拥堵又是制约城市发展的主要问题之一。人们开车出行时,因为对道路的拥堵情况不确定,甚至对最佳行车路线的不确定,因而不能确定何时出发,走什么样的行车路线,才能使花费在路上的时间最少。\n发明内容\n[0003] 本发明的目的是提供一种能够获取准确确定出发时间,并且汽车在途时间最少的装置及方法。\n[0004] 为达到上述目的,一方面,本发明的技术方案提供一种获取汽车在途最少时间的方法,包括以下步骤:\n[0005] S1,获取汽车行驶的主干道,以及从出发点进入到所述主干道的所有入口点和从所述主干道到达终点的所有出口点;\n[0006] S2,获取从所述出发点到达所述每个入口点的时间;\n[0007] S3,获取从所述每个入口点到达所有出口点的时间;\n[0008] S4,获取从所述每个出口点到达终点的时间;\n[0009] S5,根据步骤S2、S3和S4的结果,获取汽车从所述出发点到达所述终点的最少时间。\n[0010] 其中,获取从所述出发点到达所述每个入口点的时间的方法包括以下步骤:\n[0011] 设置给定时间区间[t1,t4];\n[0012] 将给定时间区间[t1,t4]离散为多个时刻点;\n[0013] 针对离散的每一个时刻点,获取从所述出发点到达所述每个入口点的时间。\n[0014] 其中,将给定时间区间[t1,t4]离散为多个时刻点的方法包括以下步骤:\n[0015] S21,设置最大时间分片阈值、最小时间分片阈值、代价差异阈值;\n[0016] S22,获取t1时刻的最小代价c[t1]、t4时刻的最小代价c[t4];\n[0017] S23,判断两个相邻的时刻内的最小代价之差的绝对值是否小于所述代价差异阈值,且两个相邻的时刻内的时间范围是否介于所述最大时间分片阈值、最小时间分片阈值之间,如果是,则结束;如果不是,则转步骤S24;\n[0018] S24,在步骤S23得到的给定时间区间内的两个相邻的时刻构成的时间段内插入两个时刻,将所述时间段分成三个时间长度相同的时间段;\n[0019] S25,获取各个新插入时刻的最小代价;\n[0020] S26,循环步骤S23~S25,直到结束。\n[0021] 其中,在获取从所述每个入口点到达所有出口点的时间之前还包括:\n[0022] S31,任意选择一个入口点,获取所述定时间区间[t1,t4]内某一离散时刻时该入口点到所有出口点的最短路径,并保存所述最短路径包含的中间结果,所述中间结果包括:\n该入口点与所述最短路径对应的出口点之间的所有入口点,以及从该入口点到达所有入口点中任意一个入口点的时间、任意一个入口点到达所述最短路径对应的出口点的中间最短路径、以及所述最短路径对应的最终时间;\n[0023] S32,判断是否还存在没有获取最短路径的入口点,如果是,则转步骤S33,如果否,则结束;\n[0024] S33,判断所述中间结果中是否存在没有获取最短路径的入口点到所有出口点的最短路径,如果是,则将该最短路径设置为该入口点的最短路径;如果否,则转步骤S31。\n[0025] 为达到上述目的,另一方面,本发明的技术方案还提供一种获取汽车在途最少时间的装置,包括:道路信息获取单元,用于获取汽车行驶的主干道,以及从出发点进入到所述主干道的所有入口点和从所述主干道到达终点的所有出口点;第一时间获取单元,与所述道路信息获取单元连接,用于获取从所述出发点到达所述每个入口点的时间;第二时间获取单元,与所述道路信息获取单元连接,用于获取从所述每个入口点到达所有出口点的时间;第三时间获取单元,与所述道路信息获取单元连接,用于获取从所述每个出口点到达终点的时间;第四时间获取单元,分别与所述第一、第二、第三时间获取单元连接,用于根据所述第一、第二、第三时间获取单元获取的结果,获取汽车从所述出发点到达所述终点的最少时间。\n[0026] 其中,所述装置还包括:设置单元,与所述道路信息获取单元连接,用于设置给定时间区间[t1,t4]、最大时间分片阈值、最小时间分片阈值、代价差异阈值;离散单元,与所述设置单元连接,用于将所述给定时间区间[t1,t4]离散为多个时刻点,最小代价获取单元,分别与所述离散单元、第一时间获取单元连接,用于获取离散后的给定时间区间[t1,t4]内各个时刻点的最小代价,并将各个时刻点的最小代价发送给所述第一时间获取单元。\n[0027] 其中,所述装置还包括:最短路径获取单元,分别与所述道路信息获取单元、第二时间获取单元连接,用于获取任意一个入口点到所有出口点的路径中的最短路径。\n[0028] 上述技术方案仅是本发明的一个优选技术方案,具有如下优点:本发明能够快速确定汽车的出发时间及行车路线,从而使汽车的在途时间达到最小,节约时间,减少交通拥堵。\n附图说明\n[0029] 图1是本发明实施例的一种获取汽车在途最少时间的方法的流程示意图;\n[0030] 图2是本发明实施例的一种对时间区间进行离散的方法的流程示意图;\n[0031] 图3是本发明实施例的一种对主干道确定最短路径的方法的流程示意图;\n[0032] 图4是本发明实施例的一种获取汽车在途最少时间的装置的结构示意图。\n具体实施方式\n[0033] 下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。\n[0034] 从交通领域的具体特征出发,在计算最小代价的路径问题上也不需要考虑交通网络中所有的节点。例如,如果距离很大,则用户在两点间移动的时候,往往需要借助于主干道,或者用户选择其经常走的路径。这样,我们可以将整个交通网络分为两个层次,主干道或者用户经常走的道路为上一层次,全部的节点在下一层次。本实施例的基本方法是在上一层次详细计算之后,根据全部节点信息构建完整的道路网路信息。本实施例中的节点是指主干道或者用户经常走的道路的出口或入口。\n[0035] 车辆速度函数可以通过大量的数据中挖掘出来。在本发明中,我们是利用车辆的函数,而不是侧重于如何发现这些函数。函数的一些可能的表示方式是一系列线性函数组合起来。车辆速度函数,或者是车辆通过道路的时间代价函数和两个因素相关,一个是时间因素,这个时间因素是周期性的,如一天24小时。一个是地点因素(包含从一个点到另外一个点的方向)。我们可以记录一段时间内某条道路的情况,记录每辆车在特定时间点上通过这条道路的时间。然后以横轴为时间轴,纵轴为平均通过时间的点阵,用折线模拟,实现该条道路的车辆速度函数的获取。这样,就可以获取某一时刻车辆在该路段的行驶速度。\n[0036] 参见图1、图2、图3,本实施例的获取汽车在途最少时间的方法包括以下步骤:\n[0037] S1,获取汽车行驶的主干道,以及从出发点进入到所述主干道的所有入口点和从所述主干道到达终点的所有出口点;主干道可以为城市交通中的主干道,也可以为宽度较宽的道路,例如,单向两车道以上的道路,或者为用户经常走的道路。\n[0038] S2,设置给定时间区间[t1,t4];该给定时间区间是用户从出发点到终点的时间区间,例如,用户从8点到9点由家到公司上班。但是,由于道路上的汽车速度不确定,因此,并不是8点出发是最合适的,需要将该时间区间离散为多个时间点,即将给定时间区间[t1,t4]离散为多个时刻点;针对从出发点到达每个入口点的离散的每一个时刻点,获取从所述出发点到达所述每个入口点的时间;\n[0039] S3,获取从所述每个入口点到达所有出口点的时间;\n[0040] S4,获取从所述每个出口点到达终点的时间;\n[0041] S5,根据步骤S2、S3和S4的结果,就可以得到从某一个时刻出发,获取汽车从所述出发点到达所述终点的最少时间。从而节约了用户在路途中的时间。\n[0042] 其中,将给定时间区间[t1,t4]离散为多个时刻点的方法包括以下步骤:\n[0043] S21,设置最大时间分片阈值max、最小时间分片阈值min、代价差异阈值k;\n[0044] S22,获取t1时刻的最小代价c[t1]、t4时刻的最小代价c[t4];C[t1]表示在t1时刻(离散点)上开始运行最短路径需要的时间,C[t4]表示在t4时刻(离散点)上开始运行最短路径需要的时间。在确定最短路径后,结合车辆速度函数,即可求得所需时间。从出发点到各个入口点及从各个出口点到终点的最短路径通过比即可得到。从各个入口点到各个出口点的最短路径的获取方法在下面有具体描述。\n[0045] S23,判断两个相邻的时刻内的最小代价之差的绝对值是否小于所述代价差异阈值k,且两个相邻的时刻内的时间范围是否介于所述最大时间分片阈值max、最小时间分片阈值min之间,如果是,则结束对给定时间区间的离散;如果不是,则转步骤S24;\n[0046] S24,在所述给定时间区间[t1,t4]内平均插值t2、t3,使t1到t2、t2到t3、t3到t4的时间范围相同;\n[0047] S25,获取t2时刻的最小代价c[t2]、t3时刻的最小代价c[t3];\n[0048] S26,循环步骤S23~S25,直到结束对给定时间区间的离散。\n[0049] 其中,在获取从所述每个入口点到达所有出口点的时间之前还包括:\n[0050] S31,任意选择一个入口点,基于时间点插值的Dijkstra算法获取定时间区间[t1,t4]内某一离散时刻时该入口点到所有出口点的路径中的最短路径,并保存所述最短路径包含的中间结果,所述中间结果包括:该入口点与所述最短路径对应的出口点之间的所有入口点,以及从该入口点到达所有入口点中任意一个入口点的时间、任意一个入口点到达所述最短路径对应的出口点的中间最短路径、以及所述最短路径对应的最终时间。\n[0051] 以下由具体实例说明上述步骤,假设主干道有n个入口点(s1~sn),m个出口点(d1~dm),离散时刻点序列为t1,..tk(包括k个时刻点),在t1时间点,利用dijkstra算法发现一个入口s1到所有出口d1......dm的最短路径,以s1到d1为例,最短路径是s1~d1。对于最短路径中的任意节点(入口)tmp,则中间结果的形式为(cometime,tmp...d1,totalcost),其中,cometime表示从s1沿着最短路到达tmp的时间;tmp....d1表示从tmp到达d1剩余的最短路径,totalcost表示整个最短路径的最终时间,在计算t2时刻的时候,在使用的dijkstra算法中,如果发现一个节点tmp1,在t2时刻到达,tmp1的时间和tmp的某个comtime相同,则后续的路径等同于t1时刻发现的最短路。由于存在m×n×k次最短路径的计算,所以,上述中间结果存在重用的可能。\n[0052] Dijkstra算法是一个经典的图论算法,其是将图中所有的点分为两组,一组为已确定最短路径的点,另一组为尚未确定最短路径的点。然后建立两组顶点的集合,假设S为其到出发点V0的最短路径已确定的顶点集合(第一组),则初始的S只包含出发点V0,V0对应的距离值为0;第二组初始时包含除出发点V0之外的所有其他顶点,各顶点Vi对应的距离值如下确定:若图中有边的权值<V0,则Vi的距离值为此边的权值(权值即表示定点之间的距离),否则Vi的距离值为一个很大的数。最后将第二组的顶点加入到第一组中,过程如下:每次从第二组的顶点中选择一个其距离值最小的顶点Vm加入到第一组,同时修改第二组中因Vm作为中间顶点而发生改变的各顶点的距离值,如此直到图的所有顶点均从第二组移到第一组为止。关于Dijkstra算法的详细介绍可以参见以下文献:E.Dijkstra.A note ontwo problems in connection with graphs.Numerical Mathematics,1:395-412,\n1959.\n[0053] S32,判断是否还存在没有获取最短路径的入口点,如果是,则转步骤S33,如果否,则结束;\n[0054] S33,S33,判断所述中间结果中是否存在没有获取最短路径的入口点到所有出口点的最短路径,如果是,则将该最短路径设置为该入口点的最短路径;如果否,则转步骤S31。\n[0055] 主干道的发现实际上是多个入口和多个出口之间的发现算法。考虑离散的时间点,需要运行m×n×p次,其中m是入口数,n是出口数,p是最终离散点数。由于中间存在较多的重复结果,缓存重复结果,避免重复运算。\n[0056] 参见图4,本实施例的获取汽车在途最少时间的装置,包括:道路信息获取单元,其中储存有电子地图,根据电子地图,可以获取汽车行驶的主干道,以及从出发点进入到主干道的所有入口点和从主干道到达终点的所有出口点。设置单元与道路信息获取单元连接,用于根据获取的主干道及所有出口点和入口点信息,设置给定时间区间[t1,t4]、最大时间分片阈值、最小时间分片阈值、代价差异阈值,并将以上信息发送给离散单元,离散单元与设置单元连接,根据设置单元设置的给定时间区间[t1,t4],将给定时间区间[t1,t4]离散为多个时刻点,其中,离散的方法采用上述描述的离散方法。离散单元将离散后的时刻点信息发送给最小代价获取单元,最小代价获取单元获取离散后的给定时间区间[t1,t4]内各个时刻点的最小代价,并将各个时刻点的最小代价发送给第一时间获取单元。第一时间获取单元结合车辆数度函数,获取从出发点到达每个入口点的时间。最短路径获取单元,分别与道路信息获取单元、第二时间获取单元连接,用于获取任意一个入口点到所有出口点的路径中的最短路径,并将该信息发送给第二时间获取单元,第二时间获取单元结合车辆数度函数,获取从每个入口点到达所有出口点的时间。第三时间获取单元,与道路信息获取单元连接,用于获取从每个出口点到达终点的时间。第四时间获取单元,分别与第一、第二、第三时间获取单元连接,用于根据第一、第二、第三时间获取单元获取的结果,获取汽车从出发点到达终点的最少时间。\n[0057] 由以上实施例可以看出,本方法提出了一种两层次的路径发现算法。从完整交通网络中按照道路等级、用户偏好抽取出主干道,发现当前位置到主干道的若干入口的路径,结合主干道路径运行时间,发现整个时变网络中的最小代价行车路线。由于主干道网路节点远远小于原有网络,同时满足用户的行车规律,本方法能够以较小的代价获取最小代价行车路线;本方法提出了一种基于动态规划的主干道路径发现算法,通过保存中间结果,减少发现主干道中给定时间范围的最小代价行车路线发现的代价。本发明能够快速确定汽车的出发时间及行车路线,从而使汽车的在途时间达到最小,节约时间,减少交通拥堵。\n[0058] 以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
法律信息
- 2014-08-13
未缴年费专利权终止
IPC(主分类): G01C 21/26
专利号: ZL 200810115585.6
申请日: 2008.06.25
授权公告日: 2010.08.18
- 2010-08-18
- 2008-12-24
- 2008-10-29
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2008-03-26
|
2007-10-30
| | |
2
| |
2005-10-19
|
2003-07-17
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |