CN113758496A - 路径的规划方法、装置、电子设备及存储介质 - Google Patents
路径的规划方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN113758496A CN113758496A CN202111322252.2A CN202111322252A CN113758496A CN 113758496 A CN113758496 A CN 113758496A CN 202111322252 A CN202111322252 A CN 202111322252A CN 113758496 A CN113758496 A CN 113758496A
- Authority
- CN
- China
- Prior art keywords
- route
- offline
- point
- starting point
- routes
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/34—Route searching; Route guidance
- G01C21/3446—Details of route searching algorithms, e.g. Dijkstra, A*, arc-flags, using precalculated routes
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/34—Route searching; Route guidance
- G01C21/3407—Route searching; Route guidance specially adapted for specific applications
- G01C21/343—Calculating itineraries, i.e. routes leading from a starting point to a series of categorical destinations using a global route restraint, round trips, touristic trips
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Automation & Control Theory (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Navigation (AREA)
Abstract
本申请实施例提供一种路径的规划方法、装置、电子设备及存储介质,可应用于地图、交通等领域。该方法包括:获取目标用户输入的第一起始点和第一终点,以及路段热度数据集,路段热度数据集包括M条离线路段,M条离线路段是基于用户的历史路线数据生成的,M为正整数;根据M条离线路段,确定起始点为第一起始点且终点为第一终点的N条第一路线,N为正整数;根据N条第一路线,确定目标用户的至少一条推荐路线。即本申请基于M条离线路段,确定起始点为第一起始点且终点为第一终点的N条第一路线,并根据N条第一路线,确定目标用户的至少一条推荐路线,避免遍历所有的图节点,进而提高路径规划的效率。
Description
技术领域
本申请实施例涉及智能出行技术领域,尤其涉及一种路径的规划方法、装置、电子设备及存储介质。
背景技术
随着智能出行技术的快速发展,公共交通导航软件随机而生。例如,用户在公共交通导航软件的客户端上输入起点和终点,公共交通导航软件可以为用户计算出至少一条公共交通路径推荐给用户。用户可以根据推荐的至少一条公共交通路径确定出行路线和出行乘坐的公共交通工具。
但是,目前的路径规划方法,存在路径规划效率低的问题。
发明内容
本申请实施例提供一种路径的规划方法、装置、电子设备及存储介质,以提高路径规划的效率。
第一方面,本申请实施例提供一种路径规划方法,包括:
获取目标用户输入的第一起始点和第一终点,以及路段热度数据集,所述路段热度数据集包括M条离线路段,所述M条离线路段是基于用户的历史路线数据生成的,所述M为正整数;
根据所述M条离线路段,确定起始点为所述第一起始点且终点为所述第一终点的N条第一路线,所述N为正整数;
根据所述N条第一路线,确定所述目标用户的至少一条推荐路线。
第二方面,本申请实施例提供一种路径规划装置,包括:
获取单元,用于获取目标用户输入的第一起始点和第一终点,以及路段热度数据集,所述路段热度数据集包括M条离线路段,所述M条离线路段是基于用户的历史路线数据生成的,所述M为正整数;
第一确定单元,用于根据所述M条离线路段,确定起始点为所述第一起始点且终点为所述第一终点的N条第一路线,所述N为正整数;
第二确定单元,用于根据所述N条第一路线,确定所述目标用户的至少一条推荐路线。
可选的,所述M条离线路段包括离线直达路段和离线换乘路段中的至少一种。
在一些实施例中,若所述M条离线路段包括离线直达路段,则第一确定单元,具体用于在所述离线直达路段中,查询起始为所述第一起始点,且终点为所述第一终点的第一直达路线;将所述第一直达路线,确定为所述第一路线。
在一些实施例中,第一确定单元,具体用于将距离所述第一起始点小于第一预设距离的P个公交站点作为P个候选起始站,以及将距离所述第一终点小于第二预设距离的Q个公交站点作为Q个候选终点站;针对所述P个候选起始站中的第i个候选起始站,以及所述Q个候选终点站中的第j个候选终点站,在所述离线直达路段中,查询起始点为所述第i个候选起始站,且终点为所述第j个候选终点站的第一直达路线,所述i为从1至P的正整数,所述j为从1至Q的正整数。
在一些实施例中,第二确定单元,还用于根据预设的路径计算方法,计算起始点为所述第一起点,且终点为所述第一终点的第二直达路线;根据所述N条第一路线和所述第二直达路线,确定所述目标用户的至少一条推荐路线。
在一些实施例中,第二确定单元,具体用于从所述第一直达路线和第二直达路线中,选出终点到起始点为直达路线的至少一条第三直达路线;根据所述至少一条第三直达路线,确定所述目标用户的至少一条推荐路线。
在一些实施例中,第一确定单元,具体用于根据所述M条离线路段,生成起始点为所述第一起始点,且终点为所述第一终点的第一换乘路线;将所述第一换乘路线,确定为所述第一路线。
在一些实施例中,第一确定单元,具体用于根据预设的路径计算方法,遍历当前站点时,将所述M条离线路段中,所述当前站点的子站点对应的离线路段作为所述当前站点的候选路段,所述当前站点为所述第一起始点或者为任意站点;根据所述当前站点的候选路段,生成所述第一换乘路线。
在一些实施例中,第二确定单元,还用于根据预设的路径计算方法,计算起始点为所述第一起点,且终点为所述第一终点的第二换乘路线;根据所述N条第一路线和所述第二换乘路线,确定所述目标用户的至少一条推荐路线。
在一些实施例中,所述M条离线路段是基于站点对多条离线路线进行多路段拆分后形成的路段,所述多条离线路线是基于所述用户的历史路线数据中的起始点和终点所生成的多条路线。
可选的,所述用户的历史路线数据中的起始点和终点被用户访问过的次数大于第一数值。
可选的,所述M条离线路段中的每一条离线路段的换乘次数小于第二数值。
在一些实施例中,所述路段热度数据集还包括所述M条离线路段中的每一条离线路段对应的热度值,所述第二确定单元,具体用于针对所述N条第一路线中每一条第一路线,根据所述第一路线对应的离线路段的热度值,确定所述第一路线的热度值;根据所述N条第一路线中每一条路线对应的热度值,确定所述目标用户的至少一条推荐路线。
在一些实施例中,所述离线路段的热度值是基于所述离线路段被访问的次数、所述离线路段的距离、所述离线路段对应的总耗时、所述离线路段对应的乘车时间、所述离线路段对应的步行时间、以及所述离线路段对应的换乘次数中的至少一个确定的。
第三方面,提供了一种计算设备,包括处理器和存储器。所述存储器用于存储计算机程序,所述处理器用于调用并运行所述存储器中存储的计算机程序,以执行上述第一方面或其各实现方式中的方法。
第四方面,提供了一种芯片,用于实现上述第一方面至第二方面中任一方面或其各实现方式中的方法。具体地,所述芯片包括:处理器,用于从存储器中调用并运行计算机程序,使得安装有所述芯片的设备执行如上述第一方面中任一方面或其各实现方式中的方法。
第五方面,提供了一种计算机可读存储介质,用于存储计算机程序,所述计算机程序使得计算机执行上述第一方面中任一方面或其各实现方式中的方法。
第六方面,提供了一种计算机程序产品,包括计算机程序指令,所述计算机程序指令使得计算机执行上述第一方面中任一方面或其各实现方式中的方法。
第七方面,提供了一种计算机程序,当其在计算机上运行时,使得计算机执行上述第一方面中任一方面或其各实现方式中的方法。
综上,本申请通过获取目标用户输入的第一起始点和第一终点,以及路段热度数据集,路段热度数据集包括M条离线路段,M条离线路段是基于用户的历史路线数据生成的,M为正整数;根据M条离线路段,确定起始点为第一起始点且终点为第一终点的N条第一路线,N为正整数;根据N条第一路线,确定目标用户的至少一条推荐路线。即本申请基于M条离线路段,确定起始点为第一起始点且终点为第一终点的N条第一路线,并根据N条第一路线,确定目标用户的至少一条推荐路线,避免遍历所有的图节点,进而提高路径规划的效率。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1为本申请实施例涉及的一种应用场景示意图;
图2为本申请实施例涉及的有向图;
图3为本申请一实施例提供的路径规划方法流程示意图;
图4为本申请实施例涉及的节点遍历示意图;
图5为本申请实施例涉及的直达路线示意图;
图6为本申请实施例涉及的候选起始站示意图;
图7为本申请实施例涉及的换乘路线生成示意图;
图8为采用本申请实施例的方法生成的换乘路线示意图;
图9为本申请一实施例提供的路径规划方法的流程示意图;
图10为本申请涉及的推荐路线示意图;
图11为本申请实施例提供的路径规划装置的一种结构示意图;
图12是本申请实施例提供的计算设备的示意性框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
本申请实施例应用于地图、交通、智能出行技术领域,用于为用户推荐公共出行路线。
应理解,在本发明实施例中,“与A对应的B”表示B与A相关联。在一种实现方式中,可以根据A确定B。但还应理解,根据A确定B并不意味着仅仅根据A确定B,还可以根据A和/或其它信息确定B。
在本申请的描述中,除非另有说明,“多个”是指两个或多于两个。
另外,为了便于清楚描述本申请实施例的技术方案,在本申请的实施例中,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分。本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。
图1为本申请实施例涉及的一种应用场景示意图,如图1所示包括:客户端101和与客户端101连接的服务器102。
在一些实施例中,客户端101安装在终端设备103上,终端设备103可以为用户终端(user equipment,UE),该用户终端可以是无线终端设备103也可以是有线终端设备,无线终端设备可以是指一种具有无线收发功能的设备,用户终端可以是手机(mobile phone)、平板电脑(Pad)、带无线收发功能的电脑、虚拟现实(Virtual Reality,VR)用户设备、增强现实(Augmented Reality,AR)用户设备等等,在此不作限定。
在一些实施例中,服务器102可以是一台或多台。服务器102是多台时,存在至少两台服务器102用于提供不同的服务,和/或,存在至少两台服务器102用于提供相同的服务,比如以负载均衡方式提供同一种服务,本申请实施例对此不加以限定。服务器102中可以设置有重建模型,该服务器102为该重建模型的训练和应用过程提供支撑。其中,上述服务器102可以是独立的物理服务器102,也可以是多个物理服务器102构成的服务器102集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器102。服务器102也可以成为区块链的节点。
在实际使用时,用户在终端设备103上输入起点和终点,终端设备103将该起点和终点信息发送给服务器102,服务器102根据本申请实施例的方法,为用户生成至少一条推荐路线。
需要说明的是,本申请实施例的应用场景包括但不限于图1所示,例如,还可以是终端设备执行本申请实施例提供的公共交通路径的规划方法,为用户生成至少一条推荐路线。
下面对本申请实施例涉及的相关技术进行介绍。
路径规划服务为根据用户起终点为用户提供预设条数的最优乘车方案的在线服务。比如,公交规划服务:根据用户起终点,出发时间,用户偏好等输入规划最优5条公交换乘方案的在线服务,且需要保证方案的合理性和多样性。
有向图D是指一个有序三元组(V(D),A(D),ψD),其中ψD)为关联函数,它使A(D)中的每一个元素(称为有向边或弧)对应于V(D)中的一个有序元素(称为顶点或点)对。如图2所示,本申请的各公交交通站点为有向图的顶点(或节点),若两个站点之间具有直达的公共交通线路,则将两个站点进行连接,构成有向图的边。
目前的路径规划方法有广度优先搜索算法(Breadth-First-Search,BFS)、深度优先搜索(Depth First Search,DFS)、A*算法(也称为A-star算法)等。
BFS,又称作宽度优先搜索。BFS算法是从根节点开始,沿着树的宽度遍历树的节点。如果所有节点均被访问,则算法中止。具体包括如下步骤:
步骤1、首先将根节点放入队列中。
步骤2、从队列中取出第一个节点,并检验它是否为目标。如果该节点为目标,则结束搜索并回传结果。若该节点不是目标节点,并将该节点从队列中移除,并将该节点所有尚未检验过的直接子节点加入队列中。
步骤3、接下来再从队列中选取新的节点作为第一节点返回执行上述步骤2,如此循环下去,直至队列为空为止,说明已经遍历过所有的节点。
BFS算法的所有节点都必须被存储,因此BFS的空间复杂度为 O(|V|+|E|),其中 |V| 是节点的数目,而 |E| 是图中边的数目。
DFS与BFS相反,先检查节点的所有子节点,尽可能深的搜索图的分支,当当前节点的所有子节点都被遍历了,再回到这个节点所在的那一层继续遍历。重复整个过程直到所有节点都被遍历到。即从初始节点开始扩展,扩展顺序总是先扩展最新产生的节点。这就使得搜索沿着状态空间某条单一的路径进行下去,直到最后的节点不能产生新节点或者找到目标节点为止。当搜索到不能产生新的节点的时候,就沿着节点产生顺序的反方向寻找可以产生新节点的节点,并扩展它,形成另一条搜索路径。
为了便于进行搜索,要设置一个表存储所有的节点。由于在深度优先搜索算法中,要满足先生成的节点后扩展的原则,所以存储节点的表一般采用栈这种数据结构。
深度优先搜索算法的搜索步骤一般是:
步骤1,从初始节点开始,将待扩展节点依次放到栈中。
步骤2,如果栈空,即所有待扩展节点已全部扩展完毕,则问题无解,退出。
步骤3,取栈中最新加入的节点,即栈顶节点出栈,并用相应的扩展原则扩展出所有的子节点,并按顺序将这些节点放入栈中。若没有子节点产生,则返回步骤2。
步骤4,如果某个子节点为目标节点,则找到问题的解(这不一定是最优解),结束。如果要求得问题的最优解,或者所有解,则返回步骤2,继续搜索新的目标节点。
A*是一种启发式搜索,引入预估代价减少搜索范围,从而提高搜索效率。公式表示为: f(n)=g(n)+h(n), 其中f(n) 是从图根节点经由节点n到终点的代价估计,g(n) 是从根节点到节点n的实际代价,h(n) 是从节点n到终点的最佳路径的估计代价。
由上述可知,BFS和DFS理论上可以找到全局最优的路径,但由于需要遍历所有的图节点(即站点),存在搜索空间大、效率低的问题。
为了解决上述技术问题,本申请实施例综合利用线下计算与线上跳转的方法,离线挖掘出M条离线路段,在线搜索时,基于M条离线路段,确定起始点为第一起始点且终点为第一终点的N条第一路线,并根据N条第一路线,确定目标用户的至少一条推荐路线,避免遍历所有的图节点,进而提高路径规划的效率。
图3为本申请一实施例提供的路径规划方法流程示意图,如图3所示,包括:
S301、获取目标用户输入的第一起始点和第一终点,以及路段热度数据集。
其中,路段热度数据集包括M条离线路段,M条离线路段是基于用户的历史路线数据生成的,M为正整数。
本申请实施例的执行主体为具有路径规划功能的装置,例如为路径规划装置,该路径轨迹装置为计算设备,或者为计算设备中的处理器。
在一些实施例中,该计算设备为上述与客户端连接的服务器。
在一些实施例中,上述计算设备为安装上述客户端的终端设备。
可选的,上述计算设备还可以是与上述客户端连接的其他计算设备。
上述客户端可以为导航客户端,也可以是其他具有提供路径规划功能的客户端。
在实际使用时,用户打开安装在终端设备上的客户端,并在客户端的相应页面上输入起始点和终点,为了便于描述,本申请将用户输入的起始点记为第一起始点,将用户输入的终点记为第一终点。
客户端将用户输入的第一起始点和第一终点发送给与客户端连接的计算设备,例如发送给与客户端连接的服务器。计算设备获得用户输入的第一起始点和第一终点后,执行本申请实施例的方法。
在执行本申请实施例之前,本申请事先生成了路段热度数据集,该路段热度数据集包括M条离线路段。
本申请获取路段热度数据集的方式包括但不限于如下几种方式:
方式一,本申请的计算设备自行根据用户的历史路线数据生成路段热度数据集,并将该生成的路段热度数据集进行保存。接收到用户输入的路径查询请求时,从存储设备处获取该路段热度数据集。
方式二,本申请的计算设备从其他存储设备处获取该路段热度数据集,例如在接收到用户输入的路径查询请求时,从其他存储设备处获取该路段热度数据集,或者在用户启动该客户端时,从其他存储设备处获取该路段热度数据集。在该方式二中,对计算设备读取路段热度数据集的时机不做限制,只要保证在进行本申请实施例提供的路径规划时获取该路段热度数据集即可。
下面对路段热度数据集的生成过程进行介绍。
上述路段热度数据集是基于用户的历史路线数据生成的,具体包括如下步骤A和步骤B:
步骤A,基于用户的历史路线数据,生成离线线路。
可选的,上述用户的历史路线数据可以为不同用户在某一历史时间段内产生的路线数据。可选的,上述用户的历史路线数据可以是同一个用户,例如目标用户在某一历史时间段内产生的路线数据。
该步骤A中,基于用户的历史路线数据,生成离线线路的方式包括不限于如下几种:
方式一,历史路线数据中包括用户在一次路径请求中输入的起始点和终点,将该起始点和终点称为起终点对。根据用户的历史起终点对,使用已有的路径规划计算,重新计算每一个历史起终点对应的路径,得到离线路线。
在一些实施例中,本步骤中使用的历史路线数据可以是不同用户在一段历史时间段内的路线数据,路线数据包括不同用户对应的起始点和终点对。例如,用户A在历史时间段内使用客户端时,在该客户端上输入了100个起始点和终点对。用户B在历史时间段内使用客户端时,在该客户端上输入200个起始点和终点对,以此类推,获得多个用户在历史时间段内的路线数据。
在一些实施例中,上述历史数据路线可以为目标用户在历史时间段内的路线数据。例如目标用户在历史时间内使用客户端时,在客户端上输入1000对起始点和终点对。
在一些实施例中,为了提高路线规划的准确性,对用户的历史路线数据进行筛选,筛选出起始点和终点被用户访问过的次数大于第一数值的历史路线数据来生成路段热度数据,即选出更热门的历史路线数据进行路线规划,以提高路线规划的准确性。本申请对第一数值的具体取值不做限制,例如第一数值为3,或者第一数值为10等。
可选的,在基于用户的历史路线数据生成路段热度数据集之前,先对上述历史起始点对的坐标进行坐标转换,例如,将历史起始点对的地理坐标、墨卡托坐标等统一转换为预设的坐标系下的坐标值。进而基于该预设的坐标系下的各历史起始点对的坐标值,生成离线路线。
在一些实施例中,为了增加计算出的离线路线的数量,则本申请实施例可以充分利用对空间、搜索效率远低于线上要求的特点,使用常规算法的阈值可以设置为召回尽可能多的路线,中间用到的召回代价和排序的特征值可以充分计算,如采用更多特征、访问真实服务等。
在一种示例中,使用A*算法来召回离线路线,其中采用如下公式(1)召回离线路线:
f(n) = g(n) + h(n) (1)
其中,g(n)为到达位置n的已经产生的代价,也叫真实代价;h(n)为从位置n到目的地的估算值,也叫预估代价。可选的,预估代价h(n)可以采纳驾车场景的值,或者步行服务的耗时等。
在另一种示例中,使用BFS算法召回离线路线时,尽可能多的遍历节点,如原来每个节点限制遍历2个子节点,本申请可以扩展为至少遍历3个子节点,如图4所示,本申请可以遍历节点1的子节点4,进而增加1->4和4->8这条路线。可选的,图4所示的各站点的遍历顺序是1->2->3->4->5->6->7->8->9,得到的候选路线片段是1-4-8、1-3-7、1-2-6-9、1-2-5等。
接着,确定候选路线片段的热度值,新增的路线1->4->8有可能作为热门片段输出,进而增加了离线路线的数量。
在一些实施例中,针对每一条离线路线,根据该离线路线的总耗时,从起点到终点的步行时间、乘车时间、距离远近、换乘次数等中的至少一个,确定该离线路线的热度值。例如,同等条件下耗时越低、步行越少、越少绕路、换乘次数越少的路线,热度值越高。
根据离线路线的热度值对计算出的离线路线进行排序,例如按照热度值的大小从大到小对离线路线进行排序。
需要说明的是,计算热度值所使用的信息包括但不限于上述总耗时,从起点到终点的步行时间、乘车时间、距离远近、换乘次数等。
上述方式一,是根据历史路线数据中历史起终点对进行路线规划,得到离线路线。本申请还可以采用下面方式二的方法生成离线路线。
方式二,用户的历史路线数据中包括客户端在历史时间内为用户推荐的路线,基于此,提取出历史路线数据中的历史推荐路线,将该历史推荐路线确定为离线路线。
根据上述方式一和方式二的方法,基于用户的历史路线数据生成离线路线后,执行如下步骤B,得到离线路段。
步骤B,基于站点对多条离线路线中的至少一条离线路线,进行多路段拆分,得到M条路线路径。
即本申请为了满足乘车区间是离线路线中的一部分路段的场景,将一条离线路线拆分成多段。
例如对于上述步骤A计算出的离线路线A和B:
离线路线A:1-3-4-8;
离线路线B:1-4-8。
根据站点对上述离线路线A和离线路线B进行拆分,得到多段离线路段。
可选的,还可以根据离线路段在各离线路线中的出现次数,确定该离线路段的热度值。例如,一种简单方法是出现一次记一分,高分排前。
示例性的,对上述离线路线A和B进行路段拆分,得到如表1所示的离线路段。
表1
路段 | 在路线A出现+1 | 在路线B出现+1 | 热度值 |
1-3 | 1 | 1 | |
1-3-4 | 1 | 1 | |
1-3-4-8 | 1 | 1 | |
3-4 | 1 | 1 | |
3-4-8 | 1 | 1 | |
1-4 | 1 | 1 | |
1-4-8 | 1 | 1 | |
4-8 | 1 | 1 | 2 |
上述表1根据离线路段在各离线路线中的出现次数,确定该离线路段的热度值。
可选的,还可以根据离线路段的特点,确定各路段的热度值,例如给地铁路段一个高于普通公交路段的分值。
在一些实施例中,除了基于离线路段被访问的次数确定离线路段的热度值外,还可以根据离线路段的距离、离线路段对应的总耗时、离线路段对应的乘车时间、离线路段对应的步行时间、以及离线路段对应的换乘次数中的至少一个确定离线路段的热度值。例如,离线路段的距离越短、离线路段对应的总耗时越小、离线路段对应的乘车时间越小、离线路段对应的步行时间越小、以及离线路段对应的换乘次数越小,则对应的离线路段的热度值更高。
在一些实施例中,用户对换乘次数过多的路线的选择可能性较低,因此,本申请根据上述方法拆分得到离线路段后,将换乘次数大于预设值(例如3次)的离线路段过滤掉,以降低不必要计算量。
也就是说,本申请的M条离线路段中的每一条离线路段的换乘次数小于第二数值。本申请对该第二数值的大小不做限制,例如该第二数值为1或2或3等。
在一些实施例中,上述M条离线路段包括离线直达路段和离线换乘路段中的至少一种。
其中,直达路段为不需要换乘的路线,例如图5所示,从起点A1到终点B1,乘车路线只有一段地铁16号线,不需要中间换乘,仅可能需要从当前位置(起点)步行至起始站和从终点站步行至终点。
换乘路段为从起点到终点时,需要换乘至少两次乘车工具的路段,例如从起点A1到终点B2,需要先乘公交6号线从起点A1到换乘点C1,再从换乘点C1乘地铁2号线到终点B2。
可选的,上述离线换乘路段包括一次换乘路段、二次换乘路段和多次换乘路段等。
S302、根据M条离线路段,确定起始点为第一起始点且终点为第一终点的N条第一路线。
其中,N为正整数。
本申请根据已生成的M条离线路段,确定起始点为第一起始点且终点为第一终点的N条第一路线,避免对图中的每个节点进行遍历,进而提高了路径规划的效率。
上述S302的实现方式包括但不限于如下几种:
方式一,在M条离线路段中,查询起始点为第一起始点且终点为第一终点的离线路段,将这些离线路段记为第一路线。
方式二,若M条离线路段包括离线直达路段,则上述S302包括S302-A1和S302-A2的步骤:
S302-A1、在离线直达路段中,查询起始为第一起始点,且终点为第一终点的第一直达路线;
S302-A2、将第一直达路线,确定为第一路线。
在该实施例中,若上述路段热度数据集中包括离线直达路段时,可以从这些离线直达路段中查询第一起始点,且终点为第一终点的离线直达路段,将该离线直达路段记为第一直达路线,并将该第一直达路线,确定为第一路线。
本申请对上述S302-A1的具体实现方式不做限制。
在一种示例中,上述S302-A1包括如下步骤:
S302-A11、将距离第一起始点小于第一预设距离的P个公交站点作为P个候选起始站,以及将距离第一终点小于第二预设距离的Q个公交站点作为Q个候选终点站;
S302-A12、针对P个候选起始站中的第i个候选起始站,以及Q个候选终点站中的第j个候选终点站,在离线直达路段中,查询起始点为第i个候选起始站,且终点为第j个候选终点站的第一直达路线,i为从1至P的正整数,j为从1至Q的正整数。
可选的,对目标用户输入的第一起始点和第一终点进行检查,例如筛选出错误的输入,比如不含经纬度的输入点、或输入的经纬度无效的输入点。
可选的,对输入的第一起始点和第一终点的坐标信息进行坐标转换,例如,将输入的地理坐标、墨卡托坐标等统一转换为预设的坐标系下的坐标值。
在实际应用中,起始点和终点附近的公交站点可能有多个,但用户通常会选择步行至起始站、下车后步行至终点站的距离一般较短,基于此,滤掉一些距离起始点和终点较远的站点,进而减少后续计算的压力。例如,选出距离第一起始点小于第一预设距离的P个公交站点作为P个候选起始站,选出距离第一终点小于第二预设距离的Q个公交站点作为Q个候选终点站。
可选的,对第一预设距离和第二预设距离的具体取值不做限制,例如,第一预设距离和第二预设距离为1公里,则选出1公里内距离第一起始点最近的P个公交站点作为P个候选起始站,选出1公里内距离第一终点最近的Q个公交站点作为Q个候选终点站。
可选的,计算第一起始点与候选起始站之间的距离可以是直线距离、曼哈顿距离或者步行距离等。
示例性的,如图6所示,起始点直线范围1KM内的候选起始站有6个,分别为候选起始站1、候选起始站2、候选起始站3、候选起始站4、候选起始站5和候选起始站6。
针对P个候选起始站中的第i个候选起始站,以及Q个候选终点站中的第j个候选终点站,在离线直达路段中,查询起始为第i个候选起始站,且终点为第j个候选终点站的第一直达路线。例如,上述P和Q均为6,对于第一个候选起始站,以该第一候选起始站为起始站,以Q个候选终点站中的第一个候选终点站为终点站,在离线直达路段中查询以第一候选起始站为起始站,以第一个候选终点站为终点站的离线直达路段,将该离线直达路段记为第一直达路线。接着,在离线直达路段中查询以第一候选起始站为起始站,以Q个候选终点站中的第二个候选终点站为终点站的离线直达路段,将该离线直达路段记为第一直达路线,依次类推,接着,以P个候选起始站中的第二个候选起始站开始进行搜索,重复上述步骤,直到Q和P个站点遍历结束为止。
上述方式二,若离线直达路段中存在起始为第一起始点,且终点为第一终点的第一直达路线时,则可以直接从离线直达路段中为目标用户查询到至少一条推荐路线,不需要进行节点的遍历搜索,大大提高了路径规划的效率。
方式三,若N条第一路线中包括换乘路线时,则上述S302包括S302-B1和S302-B2的步骤:
S302-B1、根据所述M条离线路段,生成起始点为所述第一起始点,且终点为所述第一终点的第一换乘路线;
S302-B2、将第一换乘路线确定为第一路线。
上述S302-B1的实现方式包括但不限于如下几种示例:
示例1,本申请的离线热度数据中包括多条离线换乘路段,这样可以直接在各离线换乘路段中,查询是否存在起始点为第一起始点、且终点为第一终点的第一换乘路线。
例如,参照上述方法,将距离第一起始点小于第一预设距离的P个公交站点作为P个候选起始站,以及将距离第一终点小于第二预设距离的Q个公交站点作为Q个候选终点站;针对P个候选起始站中的第i个候选起始站,以及Q个候选终点站中的第j个候选终点站,在离线换乘路段中,查询起始为第i个候选起始站,且终点为第j个候选终点站的第一换乘路线,i为从1至P的正整数,j为从1至Q的正整数。
示例2,上述S302-B1包括如下S302-B11和S302-B12的步骤:
S302-B11、根据预设的路径计算方法,遍历当前站点时,将M条离线路段中,当前站点的子站点对应的离线路段作为当前站点的候选路段,其中,当前站点为第一起始点或者为任意站点;
S302-B12、根据当前站点的候选路段,生成第一换乘路线。
该示例2,是在常规换乘算路的基础上添加离线换乘数据,以降低遍历节点的数量,进而提高路径规划效率。具体是,根据预设的路径计算方法,遍历当前节点时,可以先在离线换乘路段中查询是否存在起点为当前站点的路段,若存在,则将离线换乘路段中起点为当前站点的路段作为当前站点的候选路段与当前站点进行连接。例如图7所示,M条离线路段包括3-4-8路段和4-8路段,若当前站点为站点1,站点1包括的子站点包括站点3和站点4,这样可以将M条离线路段中的路段3-4-8路段和路段4-8直接存入当前站点的候选路段,这样在站点3和4的遍历就变得更少,同时获得了更准的结果。以此类推,可以生成第一换乘路线。
图8为采用本申请实施例的方法生成的换乘路线示意图,如图8所示,包括换乘路线1、2和3,换乘路线1为16号线转4号线,耗时54分钟,步行1.8公里;热度路线2为公交623转地铁16号线转地铁4号线,耗时1小时,步行1.6公里;热度路线3为地铁16号线转4号线转10号线,耗时1小时1分钟,步行2公里。
上述预设的路径计算方法包括但不限于BFS、DFS、启发式A*算法等。
上述方式三,根据预设的路径计算方法进行换乘路线规划时,在遍历到当前站点时,首先在M条离线路段中查询是否存在与当前站点关联的离线路段,若存在,则将M条离线路段中当前站点的子站点对应的离线路段作为当前站点的候选路段,这样可以减少对当前站点的子站点的遍历次数,进而提高了换乘路线的规划效率。
S303、根据N条第一路线,确定目标用户的至少一条推荐路线。
在一些实施例中,若上述N条第一路线包括第一直达路线时,则可以根据第一直达路线,确定目标用户的至少一条推荐路线,例如,将第一直达路线中热度值最高的至少一条第一直达路线,确定为目标用户的至少一条推荐路线,并换该至少一条推荐路线发送给客户端,以使客户端向用户呈现。
在一些实施例中,若上述N条第一路径即包括第一直达路线,又包括第一换乘路线时,将第一直达路线和第一换乘路线中热度值最高的至少一条路线,确定为目标用户的至少一条推荐路线发送给客户端,以使客户端呈现给用户。
在一些实施例中,由上述可知,路段热度数据集还包括M条离线路段中的每一条离线路段对应的热度值,基于此,上述S303包括如下步骤S303-A1和S303-A2:
S303-A1、针对N条第一路线中每一条第一路线,根据第一路线对应的离线路段的热度值,确定第一路线的热度值。
例如,将第一路线对应的离线路段的热度值之和,确定为第一路线的热度值。
再例如,将第一路线对应的离线路段的热度值的加权和,确定为第一路线的热度值。示例性的,不同路段对应的权值不同,和/或不同指标对应的权值不同,例如离线路段的耗时指标的权值大于离线路段的距离指标的权值。
再例如,将第一路线对应的离线路段的热度值的平均值,确定为第一路线的热度值。
可选的,还可以根据其他方式,基于第一路线对应的离线路段的热度值,确定第一路线的热度值,本申请对此不作限制。
S303-A2、根据N条第一路线中每一条路线对应的热度值,确定目标用户的至少一条推荐路线。
例如,将热度值最大的至少一条第一路线,切断为目标用户的至少一条推荐路线。
再例如,若至少一条推荐路线为3条推荐路线,则将N条第一路线中热度值最大的2条直达路线以及热度值最大的一条换乘路线确定为目标用户的推荐路线。
需要说明的是,本申请实施例对上述S303-A2的具体实现方式不做限制,具体根据实际需要自行选择。
本申请实施例提供的路径规划方法,通过获取目标用户输入的第一起始点和第一终点,以及路段热度数据集,路段热度数据集包括M条离线路段,M条离线路段是基于用户的历史路线数据生成的,M为正整数;根据M条离线路段,确定起始点为第一起始点且终点为第一终点的N条第一路线,N为正整数;根据N条第一路线,确定目标用户的至少一条推荐路线。即本申请基于M条离线路段,确定起始点为第一起始点且终点为第一终点的N条第一路线,并根据N条第一路线,确定目标用户的至少一条推荐路线,避免遍历所有的图节点,进而提高路径规划的效率。
在一些实施例中,为了确定向用户推荐的路线为全局最优时,则本申请实施例还包括:根据预设的路径计算方法,计算起始点为第一起点,且终点为第一终点的第二直达路线,其中预设的路径计算方法包括但不限于:BFS和DFS等盲目搜索方法,以及A*等启发式搜索方法。
基于此,上述S303包括如下S303-B:
S303-B、根据N条第一路线和第二直达路线,确定目标用户的至少一条推荐路线。
例如,确定N条第一路线和第二直达路线中每一条路线的热度值,根据N条第一路线和第二直达路线中每一条路线的热度值,确定目标用户的至少一条推荐路线。例如,将N条第一路线和第二直达路线中热度值最大的至少一条路线,确定目标用户的至少一条推荐路线。
在一些实施例中,在根据N条第一路线中的第一直达路线以及第二直达路线,确定目标用户的至少一条推荐路线之前,需要对第一直达路线以及第二直达路线进行检测,具体是,从第一直达路线和第二直达路线中,选出终点到起始点也为直达路线的至少一条第三直达路线;根据至少一条第三直达路线,确定目标用户的至少一条推荐路线。
在一些实施例中,为了确定向用户推荐的路线为全局最优时,则本申请实施例还包括:根据预设的路径计算方法,计算起始点为第一起点,且终点为第一终点的第二换乘路线。
可选的,预设的路径计算方法包括但不限于:BFS和DFS等盲目搜索方法,以及A*等启发式搜索方法。
基于此,上述S303包括如下S303-C:
S303-C、根据N条第一路线和第二换乘路线,确定目标用户的至少一条推荐路线。
例如,确定N条第一路线和第二换乘路线中每一条路线的热度值,根据N条第一路线和第二换乘路线中每一条路线的热度值,确定目标用户的至少一条推荐路线。例如,将N条第一路线和第二换乘路线中热度值最大的至少一条路线,确定目标用户的至少一条推荐路线。
图9为本申请一实施例提供的路径规划方法的流程示意图,如图9所示,本申请实施例包括:
S401、获取目标用户输入的第一起始点和第一终点,以及路段热度数据集。
其中,路段热度数据集包括M条离线路段,M条离线路段是基于用户的历史路线数据生成的,M为正整数。
其中,路段热度数据集的具体生成过程,参照上述S301的描述,在此不再赘述。
可选的,M条离线路段包括离线直达路段和离线换乘路段中的至少一种。
S402、若M条离线路段包括离线直达路段,判断离线直达路段中是否存在起始为第一起始点,且终点为第一终点的第一直达路线。
例如,将距离第一起始点小于第一预设距离的P个公交站点作为P个候选起始站,以及将距离第一终点小于第二预设距离的Q个公交站点作为Q个候选终点站;针对P个候选起始站中的第i个候选起始站,以及Q个候选终点站中的第j个候选终点站,在离线直达路段中,查询起始点为第i个候选起始站,且终点为第j个候选终点站的第一直达路线,i为从1至P的正整数,j为从1至Q的正整数。即根据该方式,遍历P和Q中的每个节点,得到在离线直达路段中,查询起始点为第i个候选起始站,且终点为第j个候选终点站的第一直达路线。
若在离线直达路段中,存在起始为第一起始点,且终点为第一终点的第一直达路线时,则执行如下步骤S403。
若在离线直达路段中,不存在起始为第一起始点,且终点为第一终点的第一直达路线,则执行如下步骤S404。
S403、将离线直达路段中,查询到的起始为第一起始点,且终点为第一终点的第一直达路线确定为第一路线。
S404、根据预设的路径计算方法,计算起始点为第一起点,且终点为第一终点的第二直达路线。
在一些实施例中,对第一直达路线和第二直达路线是否为终点到起始点也为直达路线进行判断。例如,从第一直达路线和第二直达路线中,选出终点到起始点也为直达路线的至少一条第三直达路线,根据至少一条第三直达路线,确定目标用户的至少一条推荐路线。
在一些实施例中,根据M条离线路段,生成起始点为第一起始点,且终点为第一终点的第一换乘路线;将第一换乘路线,确定为第一路线。具体参照如下S405所示。
S405、根据预设的路径计算方法,遍历当前站点时,判断M条离线路段中是否存在当前站点的子站点对应的离线路段。
若在M条离线路段中,存在当前站点的子站点对应的离线路段,则执行S406。
若在M条离线路段中,不存在当前站点的子站点对应的离线路段,则执行S407。
S406、将M条离线路段中,当前站点的子站点对应的离线路段作为当前站点的候选路段,并根据当前站点的候选路段,生成第一换乘路线,将第一换乘路线确定为第一路线。
S407、根据预设的路径计算方法,计算起始点为第一起点,且终点为第一终点的第二换乘路线。
可选的,预设的路径计算方法包括但不限于:BFS和DFS等盲目搜索方法,以及A*等启发式搜索方法。
S408、根据第一路线、第二直达路线和第二换乘路线,确定目标用户的至少一条推荐路线。
例如,确定第一路线、第二直达路线和第二换乘路线中每一条路线对应的热度值,将热度值的最大的至少一条路线,确定为目标用户的至少一条推荐路线。
在一些实施例中,获取公交路网数据,公交路网数据包括线路和站点数据、以及换乘数据。结合公交路网数据,将热度值的最大的至少一条路线转换成路网的形式,即公交线站的形式,同时填充更为丰富的信息,如通知、线路类型等,将转换后的路线确定为至少一条推荐路线发送给客户端,以使客户端进行显示。例如图10所示,生成的推荐路线包括直达路线1、换乘路线1和换乘路线2等,其中直达路线1(例如570路公交)的总耗时为1小时40分钟,步行2.9公里,换乘路线1(例如地铁16号线转地铁4号线)总耗时为1小时49分钟,步行3.8公里,换乘路线2(例如地铁16号线转地铁4号线转570路)总耗时为1小时49分钟,步行3.9公里。
在一些实施例中,本申请还可以通过人工修改上述路段热度数据,例如通过提高某离线路段的分值,或者引入乘客进出站的数据,及时增加某些热门路段,或者快速调整使路线排序更为合理。这样可以提高基于修改后的路段热度数据,实现对算路结果的快速调整。
本申请实施例提供的路径规划方法,通过获取目标用户输入的第一起始点和第一终点,以及路段热度数据集;若M条离线路段包括离线直达路段,在离线直达路段中,判断是否存在起始为第一起始点,且终点为第一终点的第一直达路线,若存在将在离线直达路段中,查询到的起始为第一起始点,且终点为第一终点的第一直达路线确定为第一路线;根据预设的路径计算方法,计算起始点为第一起点,且终点为第一终点的第二直达路线;根据预设的路径计算方法,遍历当前站点时,在M条离线路段中,判断是否存在当前站点的子站点对应的离线路段,若存在,将M条离线路段中,当前站点的子站点对应的离线路段作为当前站点的候选路段,并根据当前站点的候选路段,生成第一换乘路线,将第一换乘路线确定为第一路线;根据预设的路径计算方法,计算起始点为第一起点,且终点为第一终点的第二换乘路线;根据第一路线、第二直达路线和第二换乘路线,确定目标用户的至少一条推荐路线,不仅提高了路径规划的效率,且保证了规划出的路径为全局最优。
以上结合附图详细描述了本申请的优选实施方式,但是,本申请并不限于上述实施方式中的具体细节,在本申请的技术构思范围内,可以对本申请的技术方案进行多种简单变型,这些简单变型均属于本申请的保护范围。例如,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合,为了避免不必要的重复,本申请对各种可能的组合方式不再另行说明。又例如,本申请的各种不同的实施方式之间也可以进行任意组合,只要其不违背本申请的思想,其同样应当视为本申请所公开的内容。
还应理解,在本申请的各种方法实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
上文结合图3至图10,详细描述了本申请的方法实施例,下文结合图11至图12,详细描述本申请的装置实施例。
图11为本申请实施例提供的路径规划装置的一种结构示意图。该路径规划装置可以是计算设备,也可以是计算设备的部件(例如,集成电路,芯片等等),该计算设备可以为图1所示的服务器,也可以为图1所示的终端设备。
如图11所示,该路径规划装置10包括:
获取单元11,用于获取目标用户输入的第一起始点和第一终点,以及路段热度数据集,所述路段热度数据集包括M条离线路段,所述M条离线路段是基于用户的历史路线数据生成的,所述M为正整数;
第一确定单元12,用于根据所述M条离线路段,确定起始点为所述第一起始点且终点为所述第一终点的N条第一路线,所述N为正整数;
第二确定单元13,用于根据所述N条第一路线,确定所述目标用户的至少一条推荐路线。
可选的,所述M条离线路段包括离线直达路段和离线换乘路段中的至少一种。
在一些实施例中,若所述M条离线路段包括离线直达路段,则第一确定单元12,具体用于在所述离线直达路段中,查询起始点为所述第一起始点,且终点为所述第一终点的第一直达路线;将所述第一直达路线,确定为所述第一路线。
在一些实施例中,第一确定单元12,具体用于将距离所述第一起始点小于第一预设距离的P个公交站点作为P个候选起始站,以及将距离所述第一终点小于第二预设距离的Q个公交站点作为Q个候选终点站;针对所述P个候选起始站中的第i个候选起始站,以及所述Q个候选终点站中的第j个候选终点站,在所述离线直达路段中,查询起始点为所述第i个候选起始站,且终点为所述第j个候选终点站的第一直达路线,所述i为从1至P的正整数,所述j为从1至Q的正整数。
在一些实施例中,第二确定单元13,还用于根据预设的路径计算方法,计算起始点为所述第一起点,且终点为所述第一终点的第二直达路线;根据所述N条第一路线和所述第二直达路线,确定所述目标用户的至少一条推荐路线。
在一些实施例中,第二确定单元13,具体用于从所述第一直达路线和第二直达路线中,选出终点到起始点为直达路线的至少一条第三直达路线;根据所述至少一条第三直达路线,确定所述目标用户的至少一条推荐路线。
在一些实施例中,第一确定单元12,具体用于根据所述M条离线路段,生成起始点为所述第一起始点,且终点为所述第一终点的第一换乘路线;将所述第一换乘路线,确定为所述第一路线。
在一些实施例中,第一确定单元12,具体用于根据预设的路径计算方法,遍历当前站点时,将所述M条离线路段中,所述当前站点的子站点对应的离线路段作为所述当前站点的候选路段,所述当前站点为所述第一起始点或者为任意站点;根据所述当前站点的候选路段,生成所述第一换乘路线。
在一些实施例中,第二确定单元13,还用于根据预设的路径计算方法,计算起始点为所述第一起点,且终点为所述第一终点的第二换乘路线;根据所述N条第一路线和所述第二换乘路线,确定所述目标用户的至少一条推荐路线。
在一些实施例中,所述M条离线路段是基于站点对多条离线路线进行多路段拆分后形成的路段,所述多条离线路线是基于所述用户的历史路线数据中的起始点和终点所生成的多条路线。
可选的,所述用户的历史路线数据中的起始点和终点被用户访问过的次数大于第一数值。
可选的,所述M条离线路段中的每一条离线路段的换乘次数小于第二数值。
在一些实施例中,所述路段热度数据集还包括所述M条离线路段中的每一条离线路段对应的热度值,所述第二确定单元13,具体用于针对所述N条第一路线中每一条第一路线,根据所述第一路线对应的离线路段的热度值,确定所述第一路线的热度值;根据所述N条第一路线中每一条路线对应的热度值,确定所述目标用户的至少一条推荐路线。
在一些实施例中,所述离线路段的热度值是基于所述离线路段被访问的次数、所述离线路段的距离、所述离线路段对应的总耗时、所述离线路段对应的乘车时间、所述离线路段对应的步行时间、以及所述离线路段对应的换乘次数中的至少一个确定的。
应理解的是,装置实施例与方法实施例可以相互对应,类似的描述可以参照方法实施例。为避免重复,此处不再赘述。具体地,图11所示的装置可以执行上述方法的实施例,并且装置中的各个模块的前述和其它操作和/或功能分别为了实现计算设备对应的方法实施例,为了简洁,在此不再赘述。
上文中结合附图从功能模块的角度描述了本申请实施例的装置。应理解,该功能模块可以通过硬件形式实现,也可以通过软件形式的指令实现,还可以通过硬件和软件模块组合实现。具体地,本申请实施例中的方法实施例的各步骤可以通过处理器中的硬件的集成逻辑电路和/或软件形式的指令完成,结合本申请实施例公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。可选地,软件模块可以位于随机存储器,闪存、只读存储器、可编程只读存储器、电可擦写可编程存储器、寄存器等本领域的成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法实施例中的步骤。
图12是本申请实施例提供的计算设备的示意性框图,该计算设备用于执行上述方法实施例。
如图12所示,该计算设备30可包括:
存储器31和处理器32,该存储器31用于存储计算机程序33,并将该程序代码33传输给该处理器32。换言之,该处理器32可以从存储器31中调用并运行计算机程序33,以实现本申请实施例中的方法。
例如,该处理器32可用于根据该计算机程序33中的指令执行上述方法步骤。
在本申请的一些实施例中,该处理器32可以包括但不限于:
通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(FieldProgrammable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等等。
在本申请的一些实施例中,该存储器31包括但不限于:
易失性存储器和/或非易失性存储器。其中,非易失性存储器可以是只读存储器(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 DataRate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synch link DRAM,SLDRAM)和直接内存总线随机存取存储器(Direct Rambus RAM,DR RAM)。
在本申请的一些实施例中,该计算机程序33可以被分割成一个或多个模块,该一个或者多个模块被存储在该存储器31中,并由该处理器32执行,以完成本申请提供的录制页面的方法。该一个或多个模块可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述该计算机程序33在该计算设备中的执行过程。
如图12所示,该计算设备30还可包括:
收发器34,该收发器34可连接至该处理器32或存储器31。
其中,处理器32可以控制该收发器34与其他设备进行通信,具体地,可以向其他设备发送信息或数据,或接收其他设备发送的信息或数据。收发器34可以包括发射机和接收机。收发器34还可以进一步包括天线,天线的数量可以为一个或多个。
应当理解,该计算设备30中的各个组件通过总线系统相连,其中,总线系统除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。
根据本申请的一个方面,提供了一种计算机存储介质,其上存储有计算机程序,该计算机程序被计算机执行时使得该计算机能够执行上述方法实施例的方法。或者说,本申请实施例还提供一种包含指令的计算机程序产品,该指令被计算机执行时使得计算机执行上述方法实施例的方法。
根据本申请的另一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算设备执行上述方法实施例的方法。
换言之,当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行该计算机程序指令时,全部或部分地产生按照本申请实施例该的流程或功能。该计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。该计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,该计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。该计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。该可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如数字视频光盘(digital video disc,DVD))、或者半导体介质(例如固态硬盘(solid state disk,SSD))等。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的模块及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,该模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。例如,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。
以上内容,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以该权利要求的保护范围为准。
Claims (17)
1.一种路径规划方法,其特征在于,包括:
获取目标用户输入的第一起始点和第一终点,以及路段热度数据集,所述路段热度数据集包括M条离线路段,所述M条离线路段是基于用户的历史路线数据生成的,所述M为正整数;
根据所述M条离线路段,确定起始点为所述第一起始点且终点为所述第一终点的N条第一路线,所述N为正整数;
根据所述N条第一路线,确定所述目标用户的至少一条推荐路线。
2.根据权利要求1所述方法,其特征在于,所述M条离线路段包括离线直达路段和离线换乘路段中的至少一种。
3.根据权利要求2所述方法,其特征在于,若所述M条离线路段包括离线直达路段,则所述根据所述M条离线路段,确定起始点为所述第一起始点且终点为所述第一终点的N条第一路线,包括:
在所述离线直达路段中,查询起始点为所述第一起始点,且终点为所述第一终点的第一直达路线;
将所述第一直达路线,确定为所述第一路线。
4.根据权利要求3所述方法,其特征在于,所述在所述离线直达路段中,查询起始点为所述第一起始点,且终点为所述第一终点的第一直达路线,包括:
将距离所述第一起始点小于第一预设距离的P个公交站点作为P个候选起始站,以及将距离所述第一终点小于第二预设距离的Q个公交站点作为Q个候选终点站;
针对所述P个候选起始站中的第i个候选起始站,以及所述Q个候选终点站中的第j个候选终点站,在所述离线直达路段中,查询起始点为所述第i个候选起始站,且终点为所述第j个候选终点站的第一直达路线,所述i为从1至P的正整数,所述j为从1至Q的正整数。
5.根据权利要求3所述方法,其特征在于,所述方法还包括:
根据预设的路径计算方法,计算起始点为所述第一起点,且终点为所述第一终点的第二直达路线;
所述根据所述N条第一路线,确定所述目标用户的至少一条推荐路线,包括:
根据所述N条第一路线和所述第二直达路线,确定所述目标用户的至少一条推荐路线。
6.根据权利要求5所述方法,其特征在于,所述根据所述N条第一路线和所述第二直达路线,确定所述目标用户的至少一条推荐路线,包括:
从所述第一直达路线和第二直达路线中,选出终点到起始点为直达路线的至少一条第三直达路线;
根据所述至少一条第三直达路线,确定所述目标用户的至少一条推荐路线。
7.根据权利要求2-6任一项所述方法,其特征在于,所述根据所述M条离线路段,确定起始点为所述第一起始点且终点为所述第一终点的N条第一路线,包括:
根据所述M条离线路段,生成起始点为所述第一起始点,且终点为所述第一终点的第一换乘路线;
将所述第一换乘路线,确定为所述第一路线。
8.根据权利要求7所述方法,其特征在于,所述根据所述M条离线路段,生成起始点为所述第一起始点,且终点为所述第一终点的第一换乘路线,包括:
根据预设的路径计算方法,遍历当前站点时,将所述M条离线路段中,所述当前站点的子站点对应的离线路段作为所述当前站点的候选路段,所述当前站点为所述第一起始点或者为任意站点;
根据所述当前站点的候选路段,生成所述第一换乘路线。
9.根据权利要求7所述方法,其特征在于,所述方法还包括:
根据预设的路径计算方法,计算起始点为所述第一起点,且终点为所述第一终点的第二换乘路线;
所述根据所述N条第一路线,确定所述目标用户的至少一条推荐路线,包括:
根据所述N条第一路线和所述第二换乘路线,确定所述目标用户的至少一条推荐路线。
10.根据权利要求1-6任一项所述方法,其特征在于,所述M条离线路段是基于站点对多条离线路线进行多路段拆分后形成的路段,所述多条离线路线是基于所述用户的历史路线数据中的起始点和终点所生成的多条路线。
11.根据权利要求10所述方法,其特征在于,所述用户的历史路线数据中的起始点和终点被用户访问过的次数大于第一数值。
12.根据权利要求10所述方法,其特征在于,所述M条离线路段中的每一条离线路段的换乘次数小于第二数值。
13.根据权利要求1-6任一项所述方法,其特征在于,所述路段热度数据集还包括所述M条离线路段中的每一条离线路段对应的热度值,所述根据所述N条第一路线,确定所述目标用户的至少一条推荐路线,包括:
针对所述N条第一路线中每一条第一路线,根据所述第一路线对应的离线路段的热度值,确定所述第一路线的热度值;
根据所述N条第一路线中每一条路线对应的热度值,确定所述目标用户的至少一条推荐路线。
14.根据权利要求13所述方法,其特征在于,所述离线路段的热度值是基于所述离线路段被访问的次数、所述离线路段的距离、所述离线路段对应的总耗时、所述离线路段对应的乘车时间、所述离线路段对应的步行时间、以及所述离线路段对应的换乘次数中的至少一个确定的。
15.一种路径规划装置,其特征在于,包括:
获取单元,用于获取目标用户输入的第一起始点和第一终点,以及路段热度数据集,所述路段热度数据集包括M条离线路段,所述M条离线路段是基于用户的历史路线数据生成的,所述M为正整数;
第一确定单元,用于根据所述M条离线路段,确定起始点为所述第一起始点且终点为所述第一终点的N条第一路线,所述N为正整数;
第二确定单元,用于根据所述N条第一路线,确定所述目标用户的至少一条推荐路线。
16.一种计算设备,其特征在于,包括:存储器,处理器;
所述存储器,用于存储计算机程序;
所述处理器,用于执行所述计算机程序以实现如上述权利要求1至14任一项所述的方法。
17.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如权利要求1至14任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111322252.2A CN113758496B (zh) | 2021-11-09 | 2021-11-09 | 路径的规划方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111322252.2A CN113758496B (zh) | 2021-11-09 | 2021-11-09 | 路径的规划方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113758496A true CN113758496A (zh) | 2021-12-07 |
CN113758496B CN113758496B (zh) | 2022-02-22 |
Family
ID=78784863
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111322252.2A Active CN113758496B (zh) | 2021-11-09 | 2021-11-09 | 路径的规划方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113758496B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115099533A (zh) * | 2022-08-22 | 2022-09-23 | 北京中交兴路信息科技有限公司 | 一种多路径中位置点拼合方法、装置、设备及存储介质 |
CN115394107A (zh) * | 2022-08-03 | 2022-11-25 | 内蒙古巨宇测绘有限公司 | 一种错峰停车方法及系统 |
CN117809474A (zh) * | 2023-11-21 | 2024-04-02 | 苏州科技大学 | 停车换乘路线的生成方法、系统、设备及介质 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103323018A (zh) * | 2013-06-21 | 2013-09-25 | 广州市香港科大霍英东研究院 | 基于时段的热点路径的特征识别与快速搜索方法 |
CN104165634A (zh) * | 2014-07-28 | 2014-11-26 | 广州视源电子科技股份有限公司 | 基于用户使用习惯的路径规划方法 |
CN105043400A (zh) * | 2015-06-30 | 2015-11-11 | 百度在线网络技术(北京)有限公司 | 路径规划方法及装置 |
CN105091889A (zh) * | 2014-04-23 | 2015-11-25 | 华为技术有限公司 | 一种热点路径的确定方法及设备 |
CN106920387A (zh) * | 2015-12-24 | 2017-07-04 | 阿里巴巴集团控股有限公司 | 获取交通道路中路线热度的方法及装置 |
CN108303108A (zh) * | 2017-12-05 | 2018-07-20 | 华南理工大学 | 一种基于车辆历史轨迹的个性化路线推荐方法 |
CN109429506A (zh) * | 2017-06-21 | 2019-03-05 | 北京嘀嘀无限科技发展有限公司 | 用于路线规划的系统和方法 |
CN110573837A (zh) * | 2017-06-30 | 2019-12-13 | Oppo广东移动通信有限公司 | 导航方法、装置、存储介质以及服务器 |
CN111854779A (zh) * | 2020-02-25 | 2020-10-30 | 北京嘀嘀无限科技发展有限公司 | 一种路线规划方法、装置、电子设备及可读存储介质 |
CN112052276A (zh) * | 2020-08-19 | 2020-12-08 | 腾讯科技(深圳)有限公司 | 乘车路线的挖掘方法和装置 |
-
2021
- 2021-11-09 CN CN202111322252.2A patent/CN113758496B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103323018A (zh) * | 2013-06-21 | 2013-09-25 | 广州市香港科大霍英东研究院 | 基于时段的热点路径的特征识别与快速搜索方法 |
CN105091889A (zh) * | 2014-04-23 | 2015-11-25 | 华为技术有限公司 | 一种热点路径的确定方法及设备 |
CN104165634A (zh) * | 2014-07-28 | 2014-11-26 | 广州视源电子科技股份有限公司 | 基于用户使用习惯的路径规划方法 |
CN105043400A (zh) * | 2015-06-30 | 2015-11-11 | 百度在线网络技术(北京)有限公司 | 路径规划方法及装置 |
CN106920387A (zh) * | 2015-12-24 | 2017-07-04 | 阿里巴巴集团控股有限公司 | 获取交通道路中路线热度的方法及装置 |
CN109429506A (zh) * | 2017-06-21 | 2019-03-05 | 北京嘀嘀无限科技发展有限公司 | 用于路线规划的系统和方法 |
CN110573837A (zh) * | 2017-06-30 | 2019-12-13 | Oppo广东移动通信有限公司 | 导航方法、装置、存储介质以及服务器 |
CN108303108A (zh) * | 2017-12-05 | 2018-07-20 | 华南理工大学 | 一种基于车辆历史轨迹的个性化路线推荐方法 |
CN111854779A (zh) * | 2020-02-25 | 2020-10-30 | 北京嘀嘀无限科技发展有限公司 | 一种路线规划方法、装置、电子设备及可读存储介质 |
CN112052276A (zh) * | 2020-08-19 | 2020-12-08 | 腾讯科技(深圳)有限公司 | 乘车路线的挖掘方法和装置 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115394107A (zh) * | 2022-08-03 | 2022-11-25 | 内蒙古巨宇测绘有限公司 | 一种错峰停车方法及系统 |
CN115099533A (zh) * | 2022-08-22 | 2022-09-23 | 北京中交兴路信息科技有限公司 | 一种多路径中位置点拼合方法、装置、设备及存储介质 |
CN115099533B (zh) * | 2022-08-22 | 2022-11-25 | 北京中交兴路信息科技有限公司 | 一种多路径中位置点拼合方法、装置、设备及存储介质 |
CN117809474A (zh) * | 2023-11-21 | 2024-04-02 | 苏州科技大学 | 停车换乘路线的生成方法、系统、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113758496B (zh) | 2022-02-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113758496B (zh) | 路径的规划方法、装置、电子设备及存储介质 | |
CN102265114B (zh) | 用于存储和提供路线的系统和方法 | |
JP6639640B2 (ja) | ナビゲーション参照点特定及びナビゲーション方法、装置並びに記憶媒体 | |
WO2020078015A1 (zh) | 基于道路匹配的定位方法、芯片子系统及电子设备 | |
CN106649332B (zh) | 一种在地图上搜索兴趣点的方法及装置 | |
US8898015B2 (en) | Path searching method and path search device | |
US9599483B2 (en) | Region guided and change tolerant fast shortest path algorithm and graph preprocessing framework | |
WO2015154438A1 (zh) | 定位方法及装置 | |
CN107464018A (zh) | 一种配送路径优化方法和装置、计算机设备、存储介质 | |
KR20200040501A (ko) | 교통 정보 예측 방법, 장치 및 컴퓨터 프로그램 | |
CN104050205A (zh) | 地址信息输入方法、获取方法、装置、设备和系统 | |
CN105474034A (zh) | 用于选择Wi-Fi接入点进行位置确定的系统和方法 | |
US20200158524A1 (en) | Carpool service system and carpool service method | |
CN109996185A (zh) | 终端的定位方法和装置、存储介质、电子装置 | |
CN107345816A (zh) | 一种公交路线规划方法及装置 | |
CN110348909A (zh) | 店铺评价的获取方法、装置、设备及存储介质 | |
CN104268190A (zh) | 公交线路搜索方法和装置 | |
CN104063831A (zh) | 一种提供铁路行程方案的方法及装置 | |
CN109684562A (zh) | 一种搜索方法和装置 | |
CN110766187A (zh) | 路径规划方法、装置、服务器及存储介质 | |
CN105973254A (zh) | 一种在导航设备中确定导航信息的方法和装置 | |
CN105841689A (zh) | 提供长途交通工具信息的方法及装置 | |
JP6494810B2 (ja) | 自動車のデータをアップロードするための方法及び装置 | |
CN105701555A (zh) | 用于划分路网的方法和系统 | |
US20150106392A1 (en) | Planar graph generation device and method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |