一种目标点确定方法、装置、设备及存储介质与流程

文档序号:32800411发布日期:2023-01-03 23:29阅读:58来源:国知局
一种目标点确定方法、装置、设备及存储介质与流程

1.本技术实施例涉及数据处理技术领域,具体涉及一种目标点确定方法、装置、设备及存储介质。


背景技术:

2.随着道路交通越来越发达,用户在出行时,对于在多个位置点下建设的同一业务设施,例如医院、加油站、采样点、餐厅、游乐场等,通常会执行相应的导航搜索操作,以向用户推荐一个最省时的业务点。
3.目前,对于出行时的多个候选的业务点,通常会分别计算自车起点到每一候选点之间的最短耗时,进而筛选出最省时的目标点。但是,由于每一候选点可能会存在不同数量的排队用户,导致在各个候选点的等待时间不确定,无法保证用户在目标点执行相应业务时的耗时最短,降低了目标点推送的准确性。


技术实现要素:

4.本技术实施例提供一种目标点确定方法、装置、设备及存储介质,通过从每一候选点向目标对象的当前位置反向迭代以获取对应的各候选路径,提升目标点确定的高效性和准确性。
5.第一方面,本技术实施例提供了一种目标点确定方法,该方法包括:
6.根据目标对象的当前位置确定多个候选点和每一所述候选点的排队时长;
7.从每一所述候选点向所述当前位置反向迭代以获取所述当前位置到所述候选点之间的候选路径,并更新每一候选路径的等待耗时,其中,每一所述候选路径的等待耗时的初始值为所述候选路径对应的候选点的排队时长;
8.根据多个所述候选点对应的各所述候选路径的等待耗时,确定多个所述候选点中的一者为目标点。
9.第二方面,本技术实施例提供了一种目标点确定装置,该装置包括:
10.候选点确定模块,用于根据目标对象的当前位置确定多个候选点和每一所述候选点的排队时长;
11.路径反向迭代模块,用于从每一所述候选点向所述当前位置反向迭代以获取所述当前位置到所述候选点之间的候选路径,并更新每一候选路径的等待耗时,其中,每一所述候选路径的等待耗时的初始值为所述候选路径对应的候选点的排队时长;
12.目标点确定模块,用于根据多个所述候选点对应的各所述候选路径的等待耗时,确定多个所述候选点中的一者为目标点。
13.第三方面,本技术实施例提供了一种电子设备,该电子设备包括:
14.处理器和存储器,所述存储器用于存储计算机程序,所述处理器用于调用并运行所述存储器中存储的计算机程序,以执行本技术第一方面中提供的目标点确定方法。
15.第四方面,本技术实施例提供了一种计算机可读存储介质,用于存储计算机程序,
所述计算机程序使得计算机执行如本技术第一方面中提供的目标点确定方法。
16.第五方面,本技术实施例提供了一种计算机程序产品,包括计算机程序/指令,该计算机程序/指令被处理器执行时实现如本技术第一方面中提供的目标点确定方法。
17.本技术实施例提供一种目标点确定方法、装置、设备及存储介质,首先根据目标对象的当前位置确定多个候选点和每一候选点的排队时长。然后,从每一候选点向当前位置反向迭代以获取当前位置到该候选点之间的各个候选路径,并将每一候选路径的等待耗时的初始值设定为该候选路径对应的候选点的排队时长,来更新每一候选路径的等待耗时。进而,根据多个候选点对应的各候选路径的等待耗时,确定多个候选点中的一者为目标点,实现目标点的快速确定,通过将每一候选点的排队时长作为该候选点下所获取的多个候选路径的等待耗时的初始值,以在反向迭代过程中对每一候选点下获取出的各个候选路径的等待耗时进行不断更新,确保目标对象的当前位置到目标点间的等待耗时最短,提升目标点确定的高效性和准确性。
附图说明
18.为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
19.图1为本技术实施例示出的一种目标点确定方法的流程图;
20.图2为本技术实施例示出的另一种目标点确定方法的流程图;
21.图3为本技术实施例示出的一种目标点确定装置的原理框图;
22.图4为本技术实施例示出的电子设备的示意性框图。
具体实施方式
23.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
24.需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或服务器不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
25.为了解决用户在传统方式确定的目标点下执行相应业务时的耗时无法确保最短的问题,本技术实施例设计了一种新的目标点确定方案。对于目标对象周边的多个候选点,首先确定每一候选点的排队时长。然后,从每一候选点向目标对象的当前位置反向迭代以获取当前位置到该候选点之间的各个候选路径,并将每一候选路径的等待耗时的初始值设
定为该候选路径对应的候选点的排队时长,来更新每一候选点在每次反向迭代后所获取的各个候选路径的等待耗时。进而,根据多个候选点对应的各个候选路径的等待耗时,确定多个候选点中的一者为目标点,实现目标点的快速确定,通过将每一候选点的排队时长作为该候选点下反向迭代所获取的每一候选路径的等待耗时的初始值,以在反向迭代过程中对每一候选点下获取的各个候选路径的等待耗时进行不断更新,确保从目标对象的当前位置到目标点间的等待耗时最短,提升目标点确定的高效性和准确性。
26.图1为本技术实施例示出的一种目标点确定方法的流程图。参照图1,该方法可以包括如下步骤:
27.s110,根据目标对象的当前位置确定多个候选点和每一候选点的排队时长。
28.在用户需要办理某一业务时,为了确保出行和业务办理的便捷性,通常会从多个位置下设定的业务点中,搜索一个最省时的业务点,也就是本技术中待确定的目标点。所以,本技术会实时分析用户是否存在业务办理需求,来确定目标点的确定时机。
29.示例性的,本技术中的业务点可以包括但不限于充电桩、加油站、餐馆、游乐场、医院、核酸采样点等。
30.在一些可实现方式中,本技术可以根据任一业务和办理特性和用户对于该业务的历史执行情况,来综合法分析是否存在业务办理需求。然后在当前存在业务办理需求时,会发起一个目标点确定请求,而自动生成一次目标点的确定时机。
31.以确定采样点为例,可以根据上一次采样结果的有效期和采样报告时间来综合判断是否需要再次采样,进而自动生成再次确定采样点的时机。
32.在另一些可实现方式中,目标点的确定时机也可以是由用户手动触发而生成。在存在某一业务办理需求时,用户可以在地图系统内执行相应目标点的搜索操作。那么,通过检测用户对于目标点的手动搜索操作,可以触发生成目标点的确定时机。
33.以目标点为加油站为例,用户在车辆行驶过程中,查看到车辆油量过低,则会手动搜索附近的加油站,从而生成加油站的确定时机。
34.本技术中的目标对象可以为车辆、智能导航机器人等能够引导用户查找目标点的设备。
35.在本技术中,为了保证目标对象到目标点的便捷性,首先会确定该目标对象的当前位置,来搜索出位于当前位置周边的各个业务点,作为本技术中的多个候选点。然后,通过判断每一候选点等待办理业务的用户排队情况,确定每一候选点的排队时长,以便后续在每一候选点的排队时长的基础上,来分析用户到达该候选点且成功办理业务的等待耗时。
36.作为本技术中的一种可选实现方案,本技术可以采用如下步骤确定多个候选点和每一候选点的排队时长:
37.第一步,根据目标对象的当前位置,确定处于目标对象的预设范围内的多个候选点。
38.其中,为了避免搜索不到候选点而导致目标点确定失败,本技术中目标对象的预设范围可以设定多个距离区域,并为每一距离区间设定相应的优先级,例如距离目标对象3千米范围内、距离目标对象5千米范围内等等,而且距离区间的上限值越小,该距离区间的优先级越高。
39.在本技术中,首先可以确定目标对象的当前位置。然后,按照目标对象的预设范围内设定的各个距离区间的优先级高低,来依次搜索处于各个距离区间内的各个业务点,从而得到本技术中的多个候选点。
40.具体的,以目标对象的当前位置为中心点,首先确定优先级最高的距离区间下表示的第一范围,并从该第一范围内搜索相应的业务点,作为本技术中的多个候选点。此时,如果第一范围内的候选点为空,那么继续确定下一优先级的距离区间下表示的第二范围,并再次从该第二范围内搜索相应的业务点,作为本技术中的多个候选点。而如果第一范围内的候选点为非空,则不再继续搜索候选点。按照上述方式循环搜索目标对象周边的多个候选点,可以避免候选点的搜索失败,保证目标点确定的可行性。
41.此外,考虑到各个候选点支持办理相应业务的工作时间可能不同,所以为了避免候选点由于业务办理时间结束而使业务办理失败的问题,本技术还会设定一个用于判断业务点是否结束业务办理的缓和时长。每次在预设范围内设定的各个距离区间内搜索各个业务点时,会进一步判断搜索出的每一业务点在经过该缓和时长后是否到达该业务点执行业务办理的结束时间。然后,将搜索出的各个业务点中经过该缓和时长后仍然可以继续办理业务(也就是仍处于工作时间)的业务点作为本技术中的候选点。
42.第二步,根据每一候选点的排队数量和业务平均办理时长,确定该候选点的排队时长。
43.针对搜索出的每一候选点,可以获取该候选点还在等待办理业务的用户数量,作为该候选点的排队数量。而且,通过分析该候选点在历史过程中的业务办理情况,可以估算出该候选点面向每一用户进行业务办理时的业务平均办理时长。然后,计算每一候选点的排队数量和业务平均办理时长的乘积,即可得到该候选点的排队时长。
44.s120,从每一候选点向当前位置反向迭代以获取当前位置到该候选点之间的候选路径,并更新每一候选路径的等待耗时,其中,每一候选路径的等待耗时的初始值为该候选路径对应的候选点的排队时长。
45.为了全面分析用户到达任一候选点并成功办理业务后的实际耗时,本技术需要综合考虑从目标对象的当前位置到每一候选点时的路程耗时和该候选点的排队时长这两个方面。
46.由于从目标对象的当前位置向每一候选点搜索相应路径时,只有在成功搜索到从目标对象的当前位置到所有候选点的多条路径后,才能准确判断不同候选点之间的实际耗时情况,使得各个候选点的耗时判断较为繁琐。
47.所以,为了在路径搜索过程中实时确定每一候选点下各路径的等待耗时,本技术可以从每一候选点开始,向目标对象的当前位置进行反向迭代,来获取当前位置到每一候选点之间的各个候选路径。此时,可以将在路径反向迭代过程中所获取的每一候选路径的等待耗时的初始值设定为该候选路径对应的候选点的排队时长。然后,在每一候选路径的每次反向迭代后便更新一次该候选路径的等待耗时。
48.具体的,从每一候选点开始,利用导航系统中设定的路网数据,同步向目标对象的当前位置进行可行驶进入该候选点下已扩展出的最新道路块的各个其他道路块的扩展,而不是进行从每一候选点下已扩展出的最新道路块驶出时可进入的各个其他道路块的扩展。然后,在每次反向迭代后可以确定每一候选点到扩展出的每条候选路径内各个道路块之间
的耗时,从而得到每条候选路径在每次反向迭代后的路径耗时。进而,从每条候选路径已扩展出的最新道路块开始继续进行可行驶进入该候选路径下最新道路块的各个其他道路块的扩展,依次反向迭代,直到扩展到目标对象的当前位置,即可获取到出目标对象的当前位置到每一候选点间的各个候选路径。
49.也就是说,本技术中从每一候选点开始,面向目标对象的当前位置所执行的路径反向迭代过程可以为:从每一候选点开始,第一次搜索能够驶入该候选点的各个道路块,并将每个道路块作为一条还未完成反向迭代的候选路径下的当前迭代点。然后,从每条候选路径下的当前迭代点开始,继续搜索能够驶入该当前迭代点的各个道路块,从而不断扩展各个候选路径中的最新道路点,来执行各个候选路径的反向迭代。然后,将各个候选路径中已扩展出的最新道路块,作为新的当前迭代点,继续搜索,依次进行反向迭代,直到扩展到目标对象的当前位置,即可通过每一候选点向该当前位置执行的反向迭代过程,来获取该当前位置到每一候选点间的各个候选路径。
50.而且,为了实时分析每一候选点下所获取的各个候选路径当前的等待耗时,本技术会在每一候选路径的每次反向迭代后,按照本次扩展出的各个道路块,在该候选路径的等待耗时的初始值的基础上,重新确定一次各个候选路径中本次扩展的各个道路块到该候选点间的路径耗时,在结合该候选路径的等待耗时的初始值,得到每一候选路径在每次反向迭代后更新的等待耗时,以便后续及时筛选出一个等待耗时最小的候选点,以确保用户面向目标点的路径耗时最短。
51.s130,根据多个候选点对应的各候选路径的等待耗时,确定多个候选点中的一者为目标点。
52.在对目标对象的当前位置到每一候选点间的各个候选路径进行反向迭代的过程中,每一候选点下都会搜索多条候选路径。
53.本技术中,通过判断多个候选点对应的各个候选路径是否已经扩展到目标对象的当前位置,可以确定各个候选路径是否已经完成反向迭代。如果多个候选点对应的各个候选路径中存在任一个目标路径,已经完成该当前位置到该候选点间的反向迭代,也就是已经获取到一条从目标对象的当前位置到该候选点间的目标路径。而且,如果该目标路径完成反向迭代后的等待耗时小于等于各个候选点对应的各个其他候选路径的等待耗时,说明从目标对象的当前位置到各个候选点间的除目标路径之外的各个其他候选路径当前的等待耗时已经大于该目标路径的等待耗时。所以,本技术可以将该目标路径对应的候选点作为最终的目标点,该目标路径也就是目标对象的当前位置到目标点间的最短耗时路径,使得目标对象从当前位置到达该目标点并成功办理业务时的耗时能够达到最短。
54.然后,向目标对象推送已经反向迭代获取到的从目标对象的当前位置到该目标点间的最短耗时路径,使得目标对象能够按照该最短耗时路径,采用最短的耗时到达该目标点并成功办理好相应业务,确保目标点的准确性。
55.本技术实施例提供的技术方案,首先根据目标对象的当前位置确定多个候选点和每一候选点的排队时长。然后,从每一候选点向当前位置反向迭代以获取当前位置到该候选点之间的各个候选路径,并将每一候选路径的等待耗时的初始值设定为该候选路径对应的候选点的排队时长,来更新每一候选路径的等待耗时。进而,根据多个候选点对应的各候选路径的等待耗时,确定多个候选点中的一者为目标点,实现目标点的快速确定,通过将每
一候选点的排队时长作为该候选点下所获取的各个候选路径的等待耗时的初始值,以在反向迭代过程中对每一候选点对应的各个候选路径的等待耗时进行不断更新,确保目标对象的当前位置到目标点间的等待耗时最短,提升目标点确定的高效性和准确性。
56.作为本技术中的一种可选实现方案,为了从多个候选点中准确确定出路径等待耗时最短的一个目标点,本技术会对从目标对象的当前位置到每一候选点间的各个候选路径的反向迭代过程和按照各个候选点在反向迭代过程中所获取的各个候选路径的等待耗时来筛选目标点的具体过程进行详细说明。
57.图2为本技术实施例示出的另一种目标点确定方法的流程图,如图2所示,该方法可以包括如下步骤:
58.s210,根据目标对象的当前位置确定多个候选点和每一候选点的排队时长。
59.s220,采用迪克斯特拉算法,从每一候选点开始执行反向迭代,以获取当前位置到候选点之间的多条候选路径。
60.为了能够在路径搜索过程中实时判断每一候选点下的每条候选路径的等待耗时,本技术可以从每一候选点开始,利用导航系统中设定的路网数据,同步向目标对象的当前位置进行可行驶进入该候选点下已扩展出的最新道路块的各个其他道路块的扩展,以通过每一候选点下的路径反向迭代,来获取目标对象的当前位置到每一候选点间的各个候选路径。
61.本技术中,可以采用迪克斯特拉dijkastra算法,从每一候选点开始执行反向迭代,来不断扩展从目标对象的当前位置到每一候选点间的各个候选路径。针对每一候选点,在每完成一次反向迭代后,便会朝向目标对象的当前位置扩展出多个可驶入该候选点下已扩展出的最新道路块的多个其他道路块,使得每一候选点下的各个候选路径在每次反向迭代后便会新增多个道路段,而不断扩展各个候选路径。对于每一候选点下的各个候选路径可以同步进行反向迭代,从而采用并行方式在每一候选点下执行相应的反向迭代,来获取目标对象的当前位置到每一候选点间的各个候选路径,确保目标点确定的高效性。
62.s230,根据每一候选路径在每次反向迭代后的新增路段耗时,对候选路径在上一次反向迭代后的等待耗时进行更新,得到每一候选路径在每次反向迭代后的等待耗时。
63.由于每一候选点下的各个候选路径在每次反向迭代后均会向目标对象的当前位置扩展出多个新增的道路块,所以每一候选路径在每次反向迭代后会存在多个新增路段,以不断对反向迭代出的多个候选路径进行相应扩展。然后,每一候选路径的等待耗时的初始值可以为该候选路径对应的候选点的排队时长,所以可以在每一候选路径的等待耗时的初始值的基础上,分析每一候选路径在每次反向迭代后对于该候选路径扩展出的新增路段上的耗时。进而,每一候选路径在第一次反向迭代后,可以采用第一次反向迭代后在该候选路径上扩展出的新增路段耗时,对该候选路径的等待耗时的初始值进行更新,得到该候选路径在第一次反向迭代后的等待耗时。然后,每一候选路径在每次反向迭代后,可以采用该候选路径在每次反向迭代后所扩展出的新增路段耗时对该候选路径在上一次反向迭代后的等待耗时进行相应更新,从而得到每一候选路径在每次反向迭代后的等待耗时。
64.其中,从每一候选点同时开始,向目标对象的当前位置执行反向迭代,来搜索对应的各个候选路径时,每一候选路径在每次反向迭代后,可以对该候选路径在上一次反向迭代后的等待耗时进行更新,从而得到每一候选路径在每次反向迭代后的等待耗时。
65.s240,在完成当前位置到各候选点之间的首个候选路径的反向迭代时,将首个候选路径作为目标路径。
66.由于本技术会并行对目标对象的当前位置到每一候选点间的各个候选路径进行反向迭代搜索,而目标对象的当前位置到不同候选点的距离不同,那么目标对象的当前位置到每一候选点间的各个候选路径完成反向迭代的时间也不同。
67.而且,从每一候选点同时开始,向目标对象的当前位置执行反向迭代,来搜索对应的最短耗时路径时,在每次反向迭代后会存在多条候选路径。而且,同一候选点下,在每次反向迭代后所搜索出的每一条候选路径在本次反向迭代后的等待耗时也不同。
68.在完成目标对象的当前位置到各个候选点间的首个候选路径的反向迭代时,目标对象的当前位置到各个候选点间所搜索出的其他候选路径还处于反向迭代阶段。此时,本技术可以将首个候选路径作为目标路径,以便将目标路径对应的候选点作为目标点的备选,对目标路径与其他候选路径的反向迭代情况进行比较。
69.s250,确定目标路径的等待耗时,并停止对当前位置到各候选点之间的第一类路径进行反向迭代,继续对当前位置到各候选点之间的第二类路径进行反向迭代。
70.对于已经完成反向迭代的目标路径,首先可以确定目标路径最终的等待耗时,表示用户到达目标路径所对应的候选点并成功办理业务的等待耗时。此时,为了确保用户到达目标点所采用路径的等待耗时最短,可以理解对于从每一候选点向目标对象的当前位置执行反向迭代所获取的所有候选路径而言,如果除目标路径外的某一其他候选路径在当前反向迭代后的等待耗时已经大于等于目标路径的等待耗时,且还未完成反向迭代,那么该其他候选路径必定不是用户到达目标点时的最短耗时路径。
71.所以,本技术根据目标路径的等待耗时,首先会对从每一候选点向目标对象的当前位置执行反向迭代所获取的所有候选路径中还未完成反向迭代的其他候选路径进行分类。将在最新一次反向迭代后的等待耗时大于等于目标路径的等待耗时的其他候选路径作为本技术中的第一类路径,而将在最新一次反向迭代后的等待耗时小于目标路径的等待耗时的其他候选路径作为本技术中的第二类路径。
72.在一些可实现方式中,在确定出目标路径时,为了准确区分第一类路径和第二类路径,本技术还可以根据当前位置到各候选点之间的每一候选路径的等待耗时,对所获取的每一候选路径进行排序,以将目标路径作为分界点,确定第一类路径和第二类路径。
73.也就是说,在每一候选点对应的各候选路径反向迭代过程中,根据每一候选路径在每次反向迭代后的等待耗时,对所获取的各个候选路径进行排序,从而生成相应的排序列表。那么,在排序列表里,可以将目标路径作为分界点,此时该目标路径的一侧可以为等待耗时大于等于目标路径的等待耗时的第一类路径,而另一侧则可以为等待耗时小于目标路径的等待耗时的第二类路径。
74.示例性的,在每一候选路径的反向迭代过程中,排序列表中所获取的各个候选路径的位置是动态变化的。如果按照等待耗时从小到大的顺序对各个候选路径进行排序,那么排序列表里位于目标路径之前的各个候选路径可以为第二类路径,而位于目标路径之后的各个候选路径可以为第一类路径。
75.然后,第一类路径在当前反向迭代后的等待耗时必定不符合目标点的最短耗时路径的要求,所以可以直接停止对目标对象的当前位置到各个候选点间的第一类路径进行反
向迭代,不再对第一类路径进行反向迭代,降低目标点确定过程中的路径搜索开销。
76.而第二类路径在当前反向迭代后的等待耗时仍符合目标点的最短耗时路径的要求,所以继续对目标对象的当前位置到各个候选点间的第二类路径进行反向迭代,以判断第二类路径中是否存在比目标路径耗时更短的路径,来准确获取目标点和目标点的最短耗时路径。
77.s260,如果第二类路径在后续反向迭代后的等待耗时大于等于目标路径的等待耗时,则将第二类路径作为新的第一类路径,停止对应的反向迭代。
78.在对目标对象的当前位置到各个候选点间的第二类路径继续进行反向迭代时,仍然会在后续的每次反向迭代后,更新一次第二类路径的等待耗时。那么,如果某一第二类路径在后续反向迭代后的等待耗时大于等于目标路径的等待耗时,说明该第二类路径也不符合目标点的最短耗时路径的要求。所以,本技术可以继续将该第二类路径作为新的第一类路径,来停止对该第二类路径进行反向迭代。
79.s270,如果完成第二类路径的反向迭代时,第二类路径的等待耗时仍小于目标路径的等待耗时,则将第二类路径作为新的目标路径。
80.然而,在对目标对象的当前位置到各个候选点间的第二类路径继续进行反向迭代过程中,如果完成某一第二类路径的反向迭代,且该第二类路径的等待耗时仍小于目标路径的等待耗时,说明该第二类路径相比目标路径,更加符合目标点的最短耗时路径的要求。所以,本技术可以将该第二类路径作为新的目标路径,将新的目标路径对应的候选点成为目标点新的备选,而将新的目标路径作为目标点的最短耗时路径的备选,以便在还存在反向迭代的第二类路径时,可以按照前一目标路径下执行的迭代判断步骤,继续在新的目标路径下对仍在反向迭代的其他候选路径进行迭代判断。
81.s280,判断是否结束每一候选点下各候选路径对应的反向迭代过程;若是,执行s290;若否,返回执行s250。
82.通过判断每一候选点下所获取的每一条候选路径对应的反向迭代过程是否已经停止或者已经完成,来判断当前是否已经结束每一候选点下各个候选路径对应的反向迭代过程。如果每一候选点下各候选路径对应的反向迭代过程都已经结束,说明已经得到等待耗时最短的目标路径,其他候选路径的等待耗时均大于等于该目标路径的等待耗时。而如果还存在某一候选路径的反向迭代过程未结束,说明该候选路径最终完成反向迭代后的等待耗时仍有可能小于目标路径的等待耗时,那么可以在得到新的目标路径后,可以返回继续执行s250的步骤,来对还在反向迭代的第二类路径继续进行迭代判断,以确保目标点和目标点的最短耗时路径的准确性。
83.s290,将最新的目标路径对应的候选点作为目标点,将最新的目标路径作为当前位置到目标点间的最短耗时路径。
84.在每一候选点下所获取的每一条候选路径对应的反向迭代过程都已经结束后,那么最新的目标路径的等待耗时最短,所以可以将最新的目标路径对应的候选点作为本技术中待推送的目标点,而将最新的目标路径作为目标对象的当前位置到目标点间的最短耗时路径,以确保用户到达目标点并成功办理业务的等待耗时最短。
85.本技术实施例提供的技术方案,首先根据目标对象的当前位置确定多个候选点和每一候选点的排队时长。然后,从每一候选点向当前位置反向迭代以获取当前位置到该候
选点之间的各个候选路径,并将每一候选路径的等待耗时的初始值设定为该候选路径对应的候选点的排队时长,来更新每一候选路径的等待耗时。进而,根据多个候选点对应的各候选路径的等待耗时,确定多个候选点中的一者为目标点,实现目标点的快速确定,通过将每一候选点的排队时长作为该候选点下所获取的多个候选路径的等待耗时的初始值,以在反向迭代过程中对每一候选点下获取的各个候选路径的等待耗时进行不断更新,确保目标对象的当前位置到目标点间的等待耗时最短,提升目标点确定的高效性和准确性。
86.图3为本技术实施例示出的一种目标点确定装置的原理框图。如图3所示,该装置300可以包括:
87.候选点确定模块310,用于根据目标对象的当前位置确定多个候选点和每一所述候选点的排队时长;
88.路径反向迭代模块320,用于从每一所述候选点向所述当前位置反向迭代以获取所述当前位置到所述候选点之间的候选路径,并更新每一候选路径的等待耗时,其中,每一所述候选路径的等待耗时的初始值为所述候选路径对应的候选点的排队时长;
89.目标点确定模块330,用于根据多个所述候选点对应的各所述候选路径的等待耗时,确定多个所述候选点中的一者为目标点。
90.进一步的,路径反向迭代模块320,可以具体用于:
91.采用迪克斯特拉算法,从每一所述候选点开始执行反向迭代,以获取所述当前位置到所述候选点之间的多条候选路径;
92.根据每一所述候选路径在每次反向迭代后的新增路段耗时,对所述候选路径在上一次反向迭代后的等待耗时进行更新,得到每一所述候选路径在每次反向迭代后的等待耗时。
93.进一步的,目标点确定模块330,可以具体用于:
94.在完成所述当前位置到各所述候选点之间的首个候选路径的反向迭代时,将所述首个候选路径作为目标路径;
95.执行反向迭代判断步骤:确定所述目标路径的等待耗时,并停止对所述当前位置到各所述候选点之间的第一类路径进行反向迭代,继续对所述当前位置到各所述候选点之间的第二类路径进行反向迭代;
96.如果所述第二类路径在后续反向迭代后的等待耗时大于等于所述目标路径的等待耗时,则将所述第二类路径作为新的第一类路径,停止对应的反向迭代;
97.如果完成所述第二类路径的反向迭代时,所述第二类路径的等待耗时仍小于所述目标路径的等待耗时,则将所述第二类路径作为新的目标路径,返回执行上述反向迭代判断步骤,直至结束每一所述候选点下各所述候选路径对应的反向迭代过程;
98.将最新的目标路径对应的候选点作为目标点,将最新的目标路径作为所述当前位置到所述目标点间的最短耗时路径;
99.其中,所述第一类路径的等待耗时大于等于所述目标路径的等待耗时,所述第二类路径的等待耗时小于所述目标路径的等待耗时。
100.进一步的,目标点确定装置300,还可以包括:
101.排序模块,用于根据所述当前位置到各所述候选点之间的每一所述候选路径的等待耗时,对所获取的每一所述候选路径进行排序,以将所述目标路径作为分界点,确定所述
第一类路径和所述第二类路径。
102.进一步的,候选点确定模块310,可以具体用于:
103.根据所述目标对象的当前位置,确定处于所述目标对象的预设范围内的多个候选点;
104.根据每一所述候选点的排队数量和业务平均办理时长,确定所述候选点的排队时长。
105.进一步的,目标点确定装置300,还可以包括:
106.目标点推送模块,用于向所述目标对象推送所述当前位置到所述目标点间的最短耗时路径。
107.本技术实施例中,首先根据目标对象的当前位置确定多个候选点和每一候选点的排队时长。然后,从每一候选点向当前位置反向迭代以获取当前位置到该候选点之间的各个候选路径,并将每一候选路径的等待耗时的初始值设定为该候选路径对应的候选点的排队时长,来更新每一候选路径的等待耗时。进而,根据多个候选点对应的各候选路径的等待耗时,确定多个候选点中的一者为目标点,实现目标点的快速确定,通过将每一候选点的排队时长作为该候选点下所获取的多个候选路径的等待耗时的初始值,以在反向迭代过程中对每一候选点下所获取的各个候选路径的等待耗时进行不断更新,确保目标对象的当前位置到目标点间的等待耗时最短,提升目标点确定的高效性和准确性。
108.应理解的是,装置实施例与方法实施例可以相互对应,类似的描述可以参照方法实施例。为避免重复,此处不再赘述。具体地,图3所示的装置300可以执行本技术中任意的方法实施例,并且装置300中的各个模块的前述和其它操作和/或功能分别为了实现本技术实施例中的各个方法中的相应流程,为了简洁,在此不再赘述。
109.上文中结合附图从功能模块的角度描述了本技术实施例的装置300。应理解,该功能模块可以通过硬件形式实现,也可以通过软件形式的指令实现,还可以通过硬件和软件模块组合实现。具体地,本技术实施例中的方法实施例的各步骤可以通过处理器中的硬件的集成逻辑电路和/或软件形式的指令完成,结合本技术实施例公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。可选地,软件模块可以位于随机存储器,闪存、只读存储器、可编程只读存储器、电可擦写可编程存储器、寄存器等本领域的成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法实施例中的步骤。
110.图4为本技术实施例示出的电子设备的示意性框图。
111.如图4所示,该电子设备400可包括:
112.存储器410和处理器420,该存储器410用于存储计算机程序,并将该程序代码传输给该处理器420。换言之,该处理器420可以从存储器410中调用并运行计算机程序,以实现本技术实施例中的方法。
113.例如,该处理器420可用于根据该计算机程序中的指令执行上述方法实施例。
114.在本技术的一些实施例中,该处理器420可以包括但不限于:
115.通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、
分立硬件组件等等。
116.在本技术的一些实施例中,该存储器410包括但不限于:
117.易失性存储器和/或非易失性存储器。其中,非易失性存储器可以是只读存储器(read-only memory,rom)、可编程只读存储器(programmable rom,prom)、可擦除可编程只读存储器(erasable prom,eprom)、电可擦除可编程只读存储器(electrically eprom,eeprom)或闪存。易失性存储器可以是随机存取存储器(random access memory,ram),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的ram可用,例如静态随机存取存储器(static ram,sram)、动态随机存取存储器(dynamic ram,dram)、同步动态随机存取存储器(synchronous dram,sdram)、双倍数据速率同步动态随机存取存储器(double data rate sdram,ddr sdram)、增强型同步动态随机存取存储器(enhanced sdram,esdram)、同步连接动态随机存取存储器(synch link dram,sldram)和直接内存总线随机存取存储器(direct rambus ram,dr ram)。
118.在本技术的一些实施例中,该计算机程序可以被分割成一个或多个模块,该一个或者多个模块被存储在该存储器410中,并由该处理器420执行,以完成本技术提供的方法。该一个或多个模块可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述该计算机程序在该电子设备中的执行过程。
119.如图4所示,该电子设备还可包括:
120.收发器430,该收发器430可连接至该处理器420或存储器410。
121.其中,处理器420可以控制该收发器430与其他设备进行通信,具体地,可以向其他设备发送信息或数据,或接收其他设备发送的信息或数据。收发器430可以包括发射机和接收机。收发器430还可以进一步包括天线,天线的数量可以为一个或多个。
122.应当理解,该电子设备中的各个组件通过总线系统相连,其中,总线系统除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。
123.本技术还提供了一种计算机存储介质,其上存储有计算机程序,该计算机程序被计算机执行时使得该计算机能够执行上述方法实施例的方法。或者说,本技术实施例还提供一种包含指令的计算机程序产品,该指令被计算机执行时使得计算机执行上述方法实施例的方法。
124.当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行该计算机程序指令时,全部或部分地产生按照本技术实施例该的流程或功能。该计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。该计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,该计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。该计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。该可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如数字视频光盘(digital video disc,dvd))、或者半导体介质(例如固态硬盘(solid state disk,ssd))等。
125.本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的模块及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
126.在本技术所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,该模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
127.作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。例如,在本技术各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。
128.以上,仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以该权利要求的保护范围为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1