一种导航方法及导航服务器
技术领域
本发明涉及导航技术领域,尤其涉及一种导航方法及导航服务器。
背景技术
随着智能终端和移动互联网的普及,在线导航已经逐渐取代了传统的离线车载导航。在线导航的路径计算由导航服务器完成,与离线导航相比,不需要在导航终端事先安装庞大的地图文件,并降低了对导航终端的计算能力的要求。此外,由于导航服务器能够通过各种途径收集动态交通信息(例如通过数量庞大的导航终端上传的车速和路况信息),因此可以更准确地计算出最优路径。
然而,在线导航这种中心式的路径计算可能存在一定问题。例如,如果用户A和B同时设定相同的出发地和目的地,并且在导航应用中设置相同的路线选择策略(例如,一般在线导航应用默认的路线选择策略是躲避拥堵或高速优先),那么导航服务器对于A和B计算出的推荐路径是相同的。当使用一个导航应用的用户群数量较大时,很可能有大量用户在前往相同目的地时被推荐了相同或者重合度很高的路径,从而导致一些路线发生拥堵。例如,在节假日的早上大量用户会在导航应用中设定前往某个知名景点,此时导航服务器只是基于当时的动态路况进行路径推荐,这将导致用户可能都被导向某条高速,从而产生严重拥堵。虽然导航服务器可以在遇到拥堵时重新进行路线规划,但往往为时已晚,高速公路上陷入拥堵的车辆已经很难再转入其他路线行驶。
发明内容
为此,本发明提供一种导航方法及导航服务器,以力图解决或至少缓解上面存在的问题。
根据本发明的一个方面,提供一种导航方法,包括:接收用户的导航请求,所述导航请求中包括出发地和目的地;根据所述出发地和所述目的地获取至少一条从所述出发地到所述目的地的路径,其中,每条所述路径均包括至少一个子路径;根据每条路径所包括的子路径的成本计算该条路径的总成本;将总成本最小的路径作为最优路径推荐给用户,其中,该方法还包括根据第一时间段内接收到的从所述出发地或所述出发地的相关地去往所述目的地或所述目的地的相关地的导航请求的数量动态调整所述最优路径中的各子路径的成本。
可选地,在根据本发明的导航方法中,成本与以下项目中的至少一个有关:行驶距离、行驶时间、燃料消耗。
可选地,在根据本发明的导航方法中,出发地的相关地包括:距离所述出发地小于等于1km的其他位置;目的地的相关地包括:距离所述目的地小于等于1km的其他位置。
可选地,在根据本发明的导航方法中,动态调整所述最优路径中的各子路径的成本包括:当在第一时间段内接收到的从所述出发地或所述出发地的相关地去往所述目的地或所述目的地的相关地的导航请求的数量大于等于第一阈值时,以第一速率增加所述最优路径中的各子路径的成本。
可选地,在根据本发明的导航方法中,动态调整所述最优路径中的各子路径的成本还包括:当在第一时间段内接收到的从所述出发地或所述出发地的相关地去往所述目的地或所述目的地的相关地的导航请求的数量大于等于第一阈值,且从所述出发地或所述出发地的相关地去往所述目的地或所述目的地的相关地的导航请求的数量的增长速度大于等于第二阈值时,以第二速率增加所述最优路径中的各子路径的成本,其中,所述第二速率大于所述第一速率。
可选地,在根据本发明的导航方法中,还包括:根据所述最优路径中的各子路径的历史数据调整其成本。
可选地,在根据本发明的导航方法中,接收用户的导航请求的步骤还包括:当用户在导航请求中设置的目的地不唯一时,向用户推送兴趣点列表,所述兴趣点列表中包括至少两个与所述设置的目的地相关的兴趣点,以供用户从所述兴趣点列表中选择一个兴趣点作为目的地。
可选地,在根据本发明的导航方法中,向用户推送兴趣点列表包括:当在第二时间段内接收到的以其中一个兴趣点为目的地的导航请求的数量大于等于第三阈值时,调整这个兴趣点在兴趣点列表中的显示顺序。
可选地,在根据本发明的导航方法中,调整这个兴趣点在兴趣点列表中的显示顺序进一步包括:将这个兴趣点在兴趣点列表中的显示顺序向后调整。
根据本发明的另一个方面,提供一种导航服务器,包括:通信单元,适于接收用户的导航请求,并将最优路径推送给用户,其中,所述导航请求中包括出发地和目的地;路径规划单元,适于根据所述出发地和所述目的地获取至少一条从所述出发地到所述目的地的路径,其中,每条所述路径均包括至少一个子路径;根据每条路径所包括的子路径的成本计算该条路径的总成本,并将总成本最小的路径作为最优路径;和成本调整单元,适于根据第一时间段内接收到的从所述出发地或所述出发地的相关地去往所述目的地或所述目的地的相关地的导航请求的数量动态调整所述最优路径中的各子路径的成本。
可选地,在根据本发明的导航服务器中,成本与以下项目中的至少一个有关:行驶距离、行驶时间、燃料消耗。
可选地,在根据本发明的导航服务器中,出发地的相关地包括:距离所述出发地小于等于1km的其他位置;目的地的相关地包括:距离所述目的地小于等于1km的其他位置。
可选地,在根据本发明的导航服务器中,成本调整单元还适于:当在第一时间段内接收到的从所述出发地或所述出发地的相关地去往所述目的地或所述目的地的相关地的导航请求的数量大于等于第一阈值时,以第一速率增加所述最优路径中的各子路径的成本。
可选地,在根据本发明的导航服务器中,成本调整单元还适于:当在第一时间段内接收到的从所述出发地或所述出发地的相关地去往所述目的地或所述目的地的相关地的导航请求的数量大于等于第一阈值,且从所述出发地或所述出发地的相关地去往所述目的地或所述目的地的相关地的导航请求的数量的增长速度大于等于第二阈值时,以第二速率增加所述最优路径中的各子路径的成本,其中,所述第二速率大于所述第一速率。
可选地,在根据本发明的导航服务器中,还包括:存储单元,适于存储各子路径的历史数据;所述成本调整单元还适于:根据所述最优路径中的各子路径的历史数据调整其成本。
可选地,在根据本发明的导航服务器中,还包括:兴趣点推荐单元,适于当用户在导航请求中设置的目的地不唯一时,向用户推送兴趣点列表,所述兴趣点列表中包括至少两个与所述设置的目的地相关的兴趣点,以供用户从所述兴趣点列表中选择一个兴趣点作为目的地。
可选地,在根据本发明的导航服务器中,兴趣点推荐单元还适于:当在第二时间段内接收到的以其中一个兴趣点为目的地的导航请求的数量大于等于第三阈值时,调整这个兴趣点在兴趣点列表中的显示顺序。
可选地,在根据本发明的导航服务器中,调整这个兴趣点在兴趣点列表中的显示顺序进一步包括:将这个兴趣点在兴趣点列表中的显示顺序向后调整。
根据本发明提供的技术方案,导航服务器根据某个时间段接收到的相关的导航请求的数量以及导航请求的增加速度动态调整各子路径的成本,能够判断路径中可能发生拥堵的趋势,提前在多条路径中进行均衡规划,引导交通流量,避免出现某条特定路径的交通拥堵。
附图说明
为了实现上述以及相关目的,本文结合下面的描述和附图来描述某些说明性方面,这些方面指示了可以实践本文所公开的原理的各种方式,并且所有方面及其等效方面旨在落入所要求保护的主题的范围内。通过结合附图阅读下面的详细描述,本公开的上述以及其它目的、特征和优势将变得更加明显。遍及本公开,相同的附图标记通常指代相同的部件或元素。
图1示出了根据本发明一个实施例的导航系统100的示意图;
图2示出了根据本发明一个实施例的导航服务器200的示意图;
图3A示出了从出发地到目的地的多条路径的示意图;
图3B示出了图3A的拓扑结构示意图;
图4A示出了采用行驶距离来确定子路径成本的示意图;
图4B示出了采用行驶时间来确定子路径成本的示意图;
图4C-图4F示出了调整最优路径中的各子路径的成本的示意图;
图5示出了根据本发明另一个实施例的导航服务器400的示意图;
图6示出了根据本发明一个实施例的导航方法600的流程图;以及
图7示出了根据本发明另一个实施例的导航方法700的流程图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
图1示出了根据本发明一个实施例的导航系统100的示意图。如图1所示,导航系统100包括1个导航服务器200和1个智能终端300。导航服务器200可以是一台服务器,也可以是由若干台服务器组成的服务器集群,或者是一个云计算服务中心。此外,用于组成服务器集群或云计算服务中心的多个服务器可以驻留在多个地理位置中,本发明对导航服务器200的部署方式不做限制。智能终端300可以是可连网的车载导航,手机、平板电脑等移动设备,也可以是智能手表、智能眼镜等可以连网的可穿戴设备。虽然图1中仅示例性地示出了一个智能终端300,但是本领域技术人员可以意识到,导航系统中还可以包括多个智能终端,本发明对导航系统中的智能终端的数目并无限制。智能终端300可以以有线或无线的方式与导航服务器200建立连接。当然,在大多数导航情境中,智能终端300与导航服务器200建立的是无线连接,例如,采用3G、4G、WiFi、个人热点、IEEE802.11x、蓝牙等技术建立无线连接。
导航服务器200向智能终端300提供导航服务,并能够通过多种途径收集交通信息。例如,导航服务器200可以定期更新地图,并接受智能终端300上传的车速、行驶时间、路况等信息。
图2示出了根据本发明一个实施例的导航服务器200的示意图。如图2所示,导航服务器200包括通信单元210,路径规划单元220和成本调整单元230。
通信单元410接收用户的导航请求。导航请求中至少应当包括用户设定的出发地和目的地。当然,导航请求中还可以包括出发时间、交通工具类型(小型客车、货车、自行车、行人可选的路径一般不同)等其他信息。
根据导航请求中的出发地和目的地,路径规划单元220可以得出多条从出发地至目的地的路径。图3A示出了根据本发明一个实施例的从出发地到目的地的多条路径的示意图。如图3A所示,出发地为A,目的地为B,从A到B有3条路径。为了描述方便,将图3A中的路口抽象为节点,道路抽象为边,得到图3A的拓扑图,如图3B所示。在图3B中,节点a-f代表图3A中的路口。从出发地A到目的地B有三条路径,分别为A-c-a-b-d-B,A-c-d-B,A-c-e-f-d-B。每条路径由一条或多条子路径组成。子路径有多种划分方式,在本实施例中,用路口来划分子路径。本领域技术人员可以意识到,也可以采用其他方式来划分子路径。本发明对子路径的划分方式不做限制。对于路径A-c-a-b-d-B,其子路径为A-c,c-a,a-b,b-d,d-B;对于路径A-c-d-B,其子路径为A-c,c-d,d-B;对于路径A-c-e-f-d-B,其子路径为A-c,c-e,e-f,f-d,d-B。
每条子路径都有其成本。成本可以由行驶距离、行驶时间、燃料消耗等单一因素确定,也可以由多个因素综合计算得出。图4A示出了采用行驶距离来确定子路径成本的示意图。三条路径A-c-a-b-d-B,A-c-d-B,A-c-e-f-d-B中的各子路径的成本均标注于图4A。图4A中标注的各子路径的成本仅根据行驶距离(即子路径的实际长度)来确定,各子路径的成本可以是该子路径的实际长度,也可以是该子路径的实际长度加、减、乘以、除以某一个数所得的数,还可以是采用其他算法对该子路径的实际长度进行处理所得的数。若各子路径的成本是由对该子路径的实际长度进行算法处理而得出,那么该算法不得改变各子路径的实际长度的相对大小。也就是说,子路径的实际长度越长,其成本必然越大。例如,子路径A-c的成本为3,如果没有给出成本与实际长度的具体算法关系,则不能确知子路径A-c的实际长度。但是,由于子路径A-c的成本比a-c大,可以得知子路径A-c的实际长度比a-c长。同理,由于子路径a-b,c-d,e-f的成本相同(均为4),可以得知子路径a-b,c-d,e-f的实际长度均相同。
图4B示出了采用行驶时间来确定子路径成本的示意图。三条路径A-c-a-b-d-B,A-c-d-B,A-c-e-f-d-B中的各子路径的成本均标注于图4B。图4B中标注的各子路径的成本仅根据行驶时间(即通过子路径所需要的时间)来确定。子路径的行驶时间是一个差异量,不同的交通工具在不同情况下的行驶时间不尽相同。导航服务器200首先接收多个智能终端上传的各子路径的行驶时间信息,然后对获取到的某个子路径的多个行驶时间按照交通工具分类,并对每个交通工具的多个行驶时间求平均值,得出该子路径在某种交通工具下的行驶时间。进一步地,为了使各子路径的行驶时间更准确,对接收到的多个智能终端上传的各子路径的行驶时间按照时间段(例如,18:00-19:00)进行划分,求出每个时间段各子路径的行驶时间。
各子路径的成本可以是该子路径的行驶时间,也可以是该子路径的行驶时间加、减、乘以、除以某一个数所得的数,还可以是采用其他算法对该子路径的行驶时间进行处理所得的数。若各子路径的成本是由对该子路径的行驶时间进行算法处理而得出,那么该算法不得改变各子路径的行驶时间的相对大小。也就是说,子路径的行驶时间越长,其成本必然越大。例如,子路径A-c的成本为2,如果没有给出成本与行驶时间的具体算法关系,则不能确定子路径A-c的行驶时间。但是,由于子路径A-c的成本比c-e小,可以得知子路径A-c的行驶时间比c-e小。同理,子路径c-e和a-b的成本相同(均为4),可以得知二者的行驶时间相同。应当注意的是,行驶时间与行驶距离之间并不存在绝对的正相关关系。若发生交通拥堵,即使是行驶距离很短的子路径,其行驶时间也可能很长。
子路径的成本还可以由燃料消耗、道路宽度等其他单一因素确定,也可以由多个因素综合计算得出,其确定方式与图4A、图4B中描述的一致,此处不再赘述。
路径规划单元220根据各子路径的成本计算路径的总成本,并将总成本最小的路径作为最优路径。在本说明书中的以下实施例的描述中,路径的总成本为该路径的子路径的成本之和。当然,本领域技术人员可以意识到,在本说明书以外的其他实施例中,路径的总成本也可以为该路径的子路径的成本之乘积,还可以是对各子路径的成本采用某种算法计算得出,本发明对根据各子路径的成本计算路径的总成本的算法不做限制。以图4B为例,从出发地A到目的地B有三条路径,分别为A-c-a-b-d-B,A-c-d-B,A-c-e-f-d-B。其各路径的总成本计算如下:
A-c-a-b-d-B的总成本=2+1+4+2+3=12
A-c-d-B的总成本=2+6+3=11
A-c-e-f-d-B的总成本=2+4+4+1+3=14
由于路径A-c-d-B的总成本最小,其将被路径规划单元220标记为最优路径。路径规划单元220将该路径发送给通信单元210,并由通信单元210将该路径推荐给用户。
为了避免大量用户在前往相同或相近的目的地时被推荐了相同或重合度很高的路径,造成局部拥堵,成本调整单元230可以调整最优路径中各子路径的成本。具体地,根据一定时间段内接收到的从出发地或出发地的相关地去往目的地或目的地的相关地的导航请求的数量动态调整所述最优路径中的各子路径的成本。其中,一定时间段可以是1分钟内、2分钟内等时间区间。出发地的相关地是距离出发地较近的位置,例如可以是距离出发地小于等于1km的其他位置,或距离出发地小于等于2km的其他位置,等等。目的地的相关地是距离目的地较近的位置,例如可以是距离目的地小于等于1km的其他位置,或距离目的地小于等于2km的其他位置,等等。由于出发地的相关地距离出发地较近,目的地的相关地距离目的地较近,因而从出发地的相关地去往目的地的相关地的导航请求的推荐路径与从出发地去往目的地的导航请求的推荐路径很有可能相同或重合度较高。若一定时间段内,从出发地或出发地的相关地去往目的地或目的地的相关地的导航请求的数量过多,则某条路径可能作为最优路径在短时间内被多次推荐,造成该路径的拥堵。
根据本发明的一个实施例,导航请求的数量影响最优路径中各子路径的成本。当一定时间段内,从出发地或出发地的相关地去往目的地或目的地的相关地的导航请求的数量大于等于第一阈值时,按照第一速率增加最优路径中各子路径的成本。以图4B为例,根据一个实施例,在1分钟内,导航服务器接收到的从出发地或出发地的相关地去往目的地或目的地的相关地的导航请求的数量大于等于1000,则成本调整单元230将最优路径A-c-d-B的各子路径的成本均增加1,如图4C所示。这样,最优路径A-c-d-B的总成本变为3+7+4=14,总成本最小的路径为A-c-d-B和A-c-a-b-d-B(总成本均为14),尽管有两个最优路径,路径规划单元220优先判定路径A-c-a-b-d-B为最优路径,以缓解道路压力。即在相关的导航请求数量大于1000后,路径规划单元220将把路径A-c-a-b-d-B判定为最优路径,这样可以提前引导交通流量,避免路径A-c-d-B的局部拥堵。
仍以图4B为例,根据另一个实施例,在30秒内,导航服务器接收到的从出发地或出发地的相关地去往目的地或目的地的相关地的导航请求的数量大于等于2000,则成本调整单元230将最优路径A-c-d-B的各子路径的成本均增加2,如图4D所示。这样,最优路径A-c-d-B的总成本变为4+8+5=17,总成本最小的路径变为A-c-a-b-d-B(总成本均为16),则对于后续的导航请求,路径规划单元220将把路径A-c-a-b-d-B判定为最优路径,这样可以提前引导交通流量,避免路径A-c-d-B的局部拥堵。
根据本发明的另一个实施例,根据导航请求的数量以及导航请求数量的增长速度来调整最优路径中各子路径的成本。当一定时间段内,从出发地或出发地的相关地去往目的地或目的地的相关地的导航请求的数量大于等于第一阈值,且从出发地或出发地的相关地去往目的地或目的地的相关地的导航请求的数量的增加速度大于等于第二阈值时,按照第二速率增加最优路径中各子路径的成本。例如,在1分钟内增加了1000个导航请求,与在5分钟内增加了1000个导航请求相比,前者意味着从出发地附近到目的地附近的路线热度更高,更可能发生拥堵。因此,导航请求数量的增长速度越快,最优路径中的各子路径的成本的增加量应当更多。以图4B为例,根据一个实施例,当在1分钟内,导航服务器接收到的从出发地或出发地的相关地去往目的地或目的地的相关地的导航请求的数量大于等于1000,且从出发地或出发地的相关地去往目的地或目的地的相关地的导航请求数量的增加速度大于等于1000个/分钟时,成本调整单元230将最优路径A-c-d-B的各子路径的成本均增加3,如图4E所示。这样,最优路径A-c-d-B的总成本变为5+9+6=20,总成本最小的路径变为A-c-a-b-d-B(总成本为18),则在相关的导航请求数量大于2000后,路径规划单元220将把路径A-c-a-b-d-B判定为最优路径。
仍以图4B为例,根据一个实施例,当在30秒内,导航服务器接收到的从出发地或出发地的相关地去往目的地或目的地的相关地的导航请求的数量大于等于2000,且从出发地或出发地的相关地去往目的地或目的地的相关地的导航请求数量的增加速度大于等于3000个/分钟时,成本调整单元230将最优路径A-c-d-B的各子路径的成本均增加4,如图4F所示。这样,最优路径A-c-d-B的总成本变为6+10+7=23,总成本最小的路径变为A-c-a-b-d-B(总成本为20),则在后续的从出发地或出发地的相关地去往目的地或目的地的相关地的导航请求中,路径规划单元220判定路径A-c-a-b-d-B为最优路径。
以上实施例中,除了导航请求的数量和导航请求数量的增长速度之外,成本调整单元230还可以根据历史数据来调整各子路径的成本,例如,根据子路径在昨天(或上周、上个月等等)的相同时间段的成本来对子路径的当前成本进行调整(这时,需要存储单元240来存储各子路径的历史数据,存储单元240在图2中未示出)。此外,成本调整单元230还可以结合特定子路径的热度来调整各子路径的成本,例如,为多个导航请求计算的多个推荐路径中存在重合的子路径,则该重合的子路径的成本应该增加得多一些。
本领域技术人员可以意识到,当导航服务器接收到的从出发地或出发地的相关地去往目的地或目的地的相关地的导航请求的数量或增加速度减少至小于阈值时,继续按照增加后的子路径的成本来计算最优路径是不合理的,因为少量的导航请求或较小的增长速度一般不会造成交通拥堵,这时,还是应当按照最初的各子路径的成本来计算最优路径。一种可能的解决方法是,当导航服务器接收到的从出发地或出发地的相关地去往目的地或目的地的相关地的导航请求的数量减少至小于第一阈值时,将各子路径的成本设为初始值。当然,也可以采取逐级减少的方式将各子路径的成本还原至初始值。本发明对子路径的成本的还原方式不做限制。
图5示出了根据本发明另一个实施例的导航服务器400的示意图。如图5所示,导航服务器400包括通信单元410,兴趣点推荐单元420,路径规划单元430和成本调整单元440。其中,通信单元410、路径规划单元430、成本调整单元440的功能分别与图2所示的导航服务器200的通信单元210、路径规划单元220、成本调整单元230相对应,此处不再赘述。
兴趣点推荐单元420适于当用户在导航请求中设置的目的地不确定,即通过用户设置的目的地不能唯一地确定目的地时,向用户推送兴趣点列表,所述兴趣点列表中包括至少两个与所述设置的目的地相关的兴趣点,以供用户从所述兴趣点列表中选择一个兴趣点作为目的地。例如,在用户的导航请求中,输入的目的地为“xx古城”。“xx古城”的范围很大,属于不确定的目的地,因为不能通过“xx古城”来唯一地确定一个位置,作为本次导航请求的目的地。一般来说,“xx古城”对应于多个兴趣点(POI,point of interest),例如,xx古城可能具有多个入口或多个停车场,则兴趣点推荐单元420向用户推送与“xx古城”相关的兴趣点列表,该列表中包括xx古城的多个入口和停车场,用户可以在该列表中选择一个兴趣点作为本次导航请求的目的地。
在现有技术中,导航服务器在接收到用户输入的目的地时,都是以固定顺序去显示相关的兴趣点。例如,当用户输入xx古城时,兴趣点推荐单元420查询与xx古城有关的兴趣点,将结果显示给用户,例如,在目的地搜索栏的提示项中依次显示:xx古城东门(正门)、xx古城西门、xx古城南门。显然多数用户会直接选择第一个提示项,即东门,或者不需要用户进行选择,默认会将目的地设为东门。这种情况下,去往东门的车辆会显著大于西门、南门,造成局部拥堵。本发明的兴趣点推荐单元420可以在当一段时间内接收到的以兴趣点列表中的一个兴趣点为目的地的导航数量大于一定阈值时,调整该兴趣点在兴趣点列表中的显示顺序,一般来说,将该兴趣点在兴趣点列表中的顺序向后调整。这样,其他兴趣点的显示顺序可以向前排,从而引导客户选择其他兴趣点作为目的地,引导交通流量,避免去往某个兴趣点的路径发生严重拥堵。
根据一个实施例,根据用户设置的目的地,当3分钟内接收到的以兴趣点列表中的第1个兴趣点为目的地的导航数量大于500个时,将该兴趣点在兴趣点列表中的显示顺序调整为3。根据另一个实施例,根据用户设置的目的地,当2分钟内接收到的以兴趣点列表中的第2个兴趣点为目的地的导航数量大于800个时,将该兴趣点调整至兴趣点列表的末尾处显示。本领域技术人员可以意识到,有多种算法能够实现兴趣点显示顺序的调整,办发明对调整兴趣点在兴趣点列表中的显示顺序的算法不做限制。
图6示出了根据本发明一个实施例的导航方法600的流程图。如图6所示,该方法始于步骤S610。
在步骤S610中,接收用户的导航请求,所述导航请求中包括出发地和目的地。
随后,在步骤S620中,根据所述出发地和所述目的地获取至少一条从所述出发地到所述目的地的路径,其中,每条所述路径均包括至少一个子路径。
每条子路径都有其成本。成本可以由行驶距离、行驶时间、燃料消耗等单一因素确定,也可以由多个因素综合计算得出。图4A和4B示出了关于子路径成本的示意图,此处不再赘述。
随后,在步骤S630中,根据每条路径所包括的子路径的成本计算该条路径的总成本。路径的总成本可以是各子路径成本之和,或是各子路径成本之乘积,也可以是由各子路径成本采用某种算法计算得出,本发明对根据各子路径的成本计算路径的总成本的算法不做限制。
随后,在步骤S640中,将总成本最小的路径作为最优路径推荐给用户。
随后,在步骤S650中,根据第一时间段内接收到的从所述出发地或所述出发地的相关地去往所述目的地或所述目的地的相关地的导航请求的数量动态调整所述最优路径中的各子路径的成本。调整后的子路径的成本可以应用于下一次导航请求的处理中。
第一时间段可以是1分钟内、2分钟内等时间区间。出发地的相关地是距离出发地较近的位置,例如可以是距离出发地小于等于1km的其他位置,或距离出发地小于等于2km的其他位置,等等。目的地的相关地是距离目的地较近的位置,例如可以是距离目的地小于等于1km的其他位置,或距离目的地小于等于2km的其他位置,等等。
根据一个实施例,当在1分钟内,导航服务器接收到的从出发地或出发地的相关地去往目的地或目的地的相关地的导航请求的数量大于等于1000时,将最优路径的各子路径的成本均增加1。
根据另一个实施例,当在30秒内,导航服务器接收到的从出发地或出发地的相关地去往目的地或目的地的相关地的导航请求的数量大于等于2000时,将最优路径的各子路径的成本均增加2。
根据另一个实施例,当在1分钟内,导航服务器接收到的从出发地或出发地的相关地去往目的地或目的地的相关地的导航请求的数量大于等于1000,且从出发地或出发地的相关地去往目的地或目的地的相关地的导航请求数量的增加速度大于等于1000个/分钟时,将最优路径的各子路径的成本均增加3。
根据另一个实施例,当在30秒内,导航服务器接收到的从出发地或出发地的相关地去往目的地或目的地的相关地的导航请求的数量大于等于2000,且从出发地或出发地的相关地去往目的地或目的地的相关地的导航请求数量的增加速度大于等于3000个/分钟时,将最优路径的各子路径的成本均增加4。
根据以上技术方案,导航服务器根据某个时间段接收到的相关的导航请求的数量以及导航请求的增加速度动态调整各子路径的成本,能够判断路径中可能发生拥堵的趋势,提前在多条路径中进行均衡规划,引导交通流量,避免出现某条特定路径的交通拥堵。
图7示出了根据本发明另一个实施例的导航方法700的流程图。如图7所示,该方法始于步骤S710。
在步骤S710中,接收用户的导航请求,所述导航请求中包括出发地和目的地。
随后,在步骤S720中,判断用户在导航请求中设置的目的地是否唯一。若是,则执行步骤S730;若否,则执行步骤S750。
在步骤S730中,向用户推送兴趣点列表,所述兴趣点列表中包括至少两个与所述设置的目的地相关的兴趣点,以供用户从所述兴趣点列表中选择一个兴趣点作为目的地。
随后,在步骤S740中,当在第二时间段内接收到的以其中一个兴趣点为目的地的导航请求的数量大于等于第三阈值时,调整这个兴趣点在兴趣点列表中的显示顺序。根据一种实施例,可以将这个兴趣点在兴趣点列表中的显示顺序向后调整。这样,其他兴趣点的显示顺序可以向前排,从而引导客户选择其他兴趣点作为目的地,引导交通流量,避免去往某个兴趣点的路径发生严重拥堵。
在步骤S750种,根据所述出发地和所述目的地获取至少一条从所述出发地到所述目的地的路径,其中,每条所述路径均包括至少一个子路径。随后,在步骤S760中,根据每条路径所包括的子路径的成本计算该条路径的总成本。随后,在步骤S770中,将总成本最小的路径作为最优路径推荐给用户。随后,在步骤S780中,根据第一时间段内接收到的从所述出发地或所述出发地的相关地去往所述目的地或所述目的地的相关地的导航请求的数量动态调整所述最优路径中的各子路径的成本。图7中的步骤S750-S780与图6中的步骤S620-S650相同,此处不再赘述。
A6:A1所述的导航方法,还包括:根据所述最优路径中的各子路径的历史数据调整其成本。A7:A1所述的导航方法,其中,所述接收用户的导航请求的步骤还包括:当用户在导航请求中设置的目的地不唯一时,向用户推送兴趣点列表,所述兴趣点列表中包括至少两个与所述设置的目的地相关的兴趣点,以供用户从所述兴趣点列表中选择一个兴趣点作为目的地。A8:A7所述的导航方法,其中,向用户推送兴趣点列表包括:当在第二时间段内接收到的以其中一个兴趣点为目的地的导航请求的数量大于等于第三阈值时,调整这个兴趣点在兴趣点列表中的显示顺序。A9:A8所述的导航方法,其中,所述调整这个兴趣点在兴趣点列表中的显示顺序进一步包括:将这个兴趣点在兴趣点列表中的显示顺序向后调整。
B15:B10所述的导航服务器,其中,还包括:存储单元,适于存储各子路径的历史数据;所述成本调整单元还适于:根据所述最优路径中的各子路径的历史数据调整其成本。B16:B10所述的导航服务器,其中,还包括:兴趣点推荐单元,适于当用户在导航请求中设置的目的地不唯一时,向用户推送兴趣点列表,所述兴趣点列表中包括至少两个与所述设置的目的地相关的兴趣点,以供用户从所述兴趣点列表中选择一个兴趣点作为目的地。B17:B16所述的导航服务器,其中,所述兴趣点推荐单元还适于:当在第二时间段内接收到的以其中一个兴趣点为目的地的导航请求的数量大于等于第三阈值时,调整这个兴趣点在兴趣点列表中的显示顺序。B18:B17所述的导航服务器,其中,所述调整这个兴趣点在兴趣点列表中的显示顺序进一步包括:将这个兴趣点在兴趣点列表中的显示顺序向后调整。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下被实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员应当理解在本文所公开的示例中的设备的模块或单元或组件可以布置在如该实施例中所描述的设备中,或者可替换地可以定位在与该示例中的设备不同的一个或多个设备中。前述示例中的模块可以组合为一个模块或者此外可以分成多个子模块。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
此外,所述实施例中的一些在此被描述成可以由计算机系统的处理器或者由执行所述功能的其它装置实施的方法或方法元素的组合。因此,具有用于实施所述方法或方法元素的必要指令的处理器形成用于实施该方法或方法元素的装置。此外,装置实施例的在此所述的元素是如下装置的例子:该装置用于实施由为了实施该发明的目的的元素所执行的功能。
如在此所使用的那样,除非另行规定,使用序数词“第一”、“第二”、“第三”等等来描述普通对象仅仅表示涉及类似对象的不同实例,并且并不意图暗示这样被描述的对象必须具有时间上、空间上、排序方面或者以任意其它方式的给定顺序。
尽管根据有限数量的实施例描述了本发明,但是受益于上面的描述,本技术领域内的技术人员明白,在由此描述的本发明的范围内,可以设想其它实施例。此外,应当注意,本说明书中使用的语言主要是为了可读性和教导的目的而选择的,而不是为了解释或者限定本发明的主题而选择的。因此,在不偏离所附权利要求书的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。对于本发明的范围,对本发明所做的公开是说明性的,而非限制性的,本发明的范围由所附权利要求书限定。