掌桥专利:专业的专利平台
掌桥专利
首页

一种路径规划方法、装置、电子设备及存储介质

文献发布时间:2023-06-19 11:39:06


一种路径规划方法、装置、电子设备及存储介质

技术领域

本申请涉及无人驾驶技术领域,特别涉及一种路径规划方法、装置、电子设备及存储介质。

背景技术

无人驾驶技术在出行安全、节能环保等方面存在巨大潜力,被认为是解决交通拥堵、降低交通事故和改善环境污染的有效途径。无人驾驶技术领域中一个核心的技术问题是无人驾驶路径规划。

目前,无人驾驶主要规划的是最短路径,用于规划最短路径的算法被称做“最短路径算法”,有时被简称作“路径算法”。另外,无人驾驶路径规划中最短路径的规划依赖于拓扑地图。目前,拓扑地图是由无人驾驶高精地图得到的。高精地图提供了节点和边,其中节点为车道,边为车道之间的连接方式,即无人车的行驶方向。

A*(A-Star)算法是一种在静态路网中求解最短路径的有效方法。其原理是引入估价函数,加快搜索速度,提高了局部择优算法搜索的精度,成为当前较为流行的最短路算法。它是一种启发式搜索方法。启发式搜索就是在状态空间中的搜索,首先对每一个搜索的位置进行评估,得到最好的位置,再从这个位置进行搜索直到目标。这样可以省略大量无谓的搜索路径,提高了效率。启发中的估价是用估价函数表示的,估价函数值是根据初始节点到n节点的实际代价和n到目标节点的估计代价计算得到的。其中,实际代价是根据无人车的行车方向进行计算,例如给前行、左转、右转、掉头、变换车道分别设置相应的代价。

然而现有的无人驾驶技术方案中采用的A-star算法的代价估计只依赖行车方向,没有考虑到车道的实际情况。这样所得到的搜索路径可能路径最短,但不一定是最优路径。例如,最短路径上可能存在很多的路口,而车辆在经过路口的时候,一般需要等待红绿灯、人行道的行人或其它车辆时,需要减慢车速。如此,会导致车辆按照最短路径驾驶时实际耗费更多的等候时间,从而影响驾驶体验。

发明内容

本申请实施例提供了一种路径规划方法、装置、电子设备及存储介质,可以提升驾驶体验。

一方面,本申请实施例提供了一种路径规划方法,包括:根据起点与终点确定待选路径集合;确定待选路径集合中每条待选路径的属性信息;属性信息包括每条待选路径中每个节点的路口信息;起点位于每条待选路径的首节点上,终点位于每条待选路径的尾节点上;基于路口信息确定待选路径集合中每条待选路径的当前节点的当前代价值;将数值最小的当前代价值对应的当前节点的下一节点确定为数值最小的当前代价值对应的待选路径的当前节点;若待选路径集合中存在待选路径的当前节点为待选路径的尾节点,且尾节点的当前代价值的数值最小,则确定待选路径为目标路径。

另一方面,本申请实施例提供了一种电子设备,电子设备包括处理器和存储器,存储器中存储有至少一条指令、至少一段程序、代码集或指令集,至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现上述路径规划方法。

另一方面,本申请实施例提供了一种计算机可读存储介质,存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现上述路径规划方法。

另一方面,本申请实施例提供了一种路径规划装置,包括:确定模块,用于根据起点与终点确定待选路径集合;确定待选路径集合中每条待选路径的属性信息;属性信息包括每条待选路径中每个节点的路口信息;起点位于每条待选路径的首节点上,终点位于每条待选路径的尾节点上;路径规划模块,用于基于路口信息确定待选路径集合中每条待选路径的当前节点的当前代价值;将数值最小的当前代价值对应的当前节点的下一节点确定为数值最小的当前代价值对应的待选路径的当前节点;若待选路径集合中存在待选路径的当前节点为待选路径的尾节点,且尾节点的当前代价值的数值最小,则确定待选路径为目标路径。

本申请实施例提供的一种路径规划方法、装置、电子设备及存储介质具有如下有益效果:

本申请实施例提供的一种路径规划方法,首先根据起点与终点确定待选路径集合;其次,确定待选路径集合中每条待选路径的属性信息,其中属性信息包括每条待选路径中每个节点的路口信息,并基于路口信息确定待选路径集合中每条待选路径的当前节点的当前代价值,将数值最小的当前代价值对应的当前节点的下一节点确定为数值最小的当前代价值对应的待选路径的当前节点。本申请提供的路径规划方法中确定每条待选路径的当前节点的当前代价值时,考虑到路口信息的代价值,使当前节点的当前代价值更加准确、贴合实际,如此,可以提升驾驶体验。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本申请实施例的一种应用场景的示意图;

图2是本申请实施例提供的一种路径规划方法的流程示意图;

图3是本申请实施例提供的一种自动驾驶车辆应用场景的示意图;

图4是本申请实施例提供的一种路径规划装置的结构示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。

需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或服务器不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

请参阅图1(a)和图1(b),图1(a)和图1(b)是本申请实施例的一种应用场景的示意图,包括图1(a)所示的车辆101,以及该车辆101中包括的如图1(b)所示的定位模块1011、终端模块1012和路径规划模块1013,定位模块1011用于获取车辆101的位置信息并发送给路径规划模块1013,终端模块1012用于获取用户的操作信息,识别出终点的位置信息并发送给路径规划模块1013。

路径规划模块1013根据定位模块1011发送的起点与终端模块1012发送的终点确定待选路径集合;其次,路径规划模块1013确定待选路径集合中每条待选路径的属性信息,属性信息包括每条待选路径中每个节点的路口信息;起点位于每条待选路径的首节点上,终点位于每条待选路径的尾节点上;其次,路径规划模块1013基于路口信息确定待选路径集合中每条待选路径的当前节点的当前代价值,并将数值最小的当前代价值对应的当前节点的下一节点确定为数值最小的当前代价值对应的待选路径的当前节点;若待选路径集合中存在待选路径的当前节点为待选路径的尾节点,且尾节点的当前代价值的数值最小,则路径规划模块1013确定待选路径为目标路径。

可选的,定位模块1011可以包括全球定位系统(Global Positioning System,GPS)。

可选的,终端模块1012可以是车辆的中控娱乐显示屏。

以下介绍本申请实施例提供的一种路径规划方法的具体实施例,图2是本申请实施例提供的一种路径规划方法的流程示意图,本说明书提供了如实施例或流程图的方法操作步骤,但基于常规或者无创造性的劳动可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的系统或服务器产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。具体的如图2所示,该方法可以包括:

S201:路径规划模块根据起点与终点确定待选路径集合。

本申请实施例中,路径规划模块根据起点与终点从高精地图中获取待选路径集合。待选路径集合包括从起点至终点的所有可通行的路径。

S203:路径规划模块确定待选路径集合中每条待选路径的属性信息;属性信息包括每条待选路径中每个节点的路口信息;起点位于每条待选路径的首节点上,终点位于每条待选路径的尾节点上。

本申请实施例中,属性信息还包括转向信息和位置信息,转向信息包括每条待选路径中每个节点至下一个节点的转向信息;位置信息包括每条待选路径中每个节点的预设位置信息。

本申请实施例中,路口信息包括红绿灯信息和人行道信息。

S205:路径规划模块基于路口信息确定待选路径集合中每条待选路径的当前节点的当前代价值。

S207:路径规划模块将数值最小的当前代价值对应的当前节点的下一节点确定为数值最小的当前代价值对应的待选路径的当前节点。

S209:若待选路径集合中存在待选路径的当前节点为待选路径的尾节点,且尾节点的当前代价值的数值最小,则路径规划模块确定待选路径为目标路径。

本申请实施例中,若待选路径集合中不存在待选路径的当前节点为待选路径的尾节点,或,尾节点的当前代价值的数值不是最小,则路径规划模块继续执行步骤S205和步骤S207。

本申请实施例中,步骤S205具体包括:路径规划模块确定起点的位置信息和终点的位置信息;基于起点的位置信息和当前节点的预设位置信息确定当前长度信息;基于当前节点与首节点之间的节点的路口信息、转向信息和当前长度信息确定当前节点的第一代价值;基于当前节点的预设位置信息和终点的位置信息确定预测长度信息;基于预测长度信息确定第二代价值;根据第一代价值和第二代价值确定当前节点的当前代价值。

可选的,当前节点的预设位置信息是当前节点内任意一个位置的坐标信息。

具体的,当前节点的预设位置信息是当前节点内最靠近首节点的位置的坐标信息。

本申请实施例中,路径规划是基于A*算法确定的。其中,当前代价值是基于估价函数公式(1)确定的:

f(n)=g(n)+h(n)……公式(1)

其中,f(n)表示当前节点的当前代价值;g(n)表示从首节点到n节点的实际代价值即上述第一代价值;h(n)表示从n节点到尾节点的预测代价值即上述第二代价值。

本申请实施例中,当前长度信息和预测长度信息是基于曼哈顿距离(ManhattanDistance)的计算公式(2)确定的:

d(i,j)=|xi-xj|+|yi-yj|……公式(2)

其中,(xi,yi)和(xj,yj)均表示预设位置信息。

下面通过一个具体的例子阐述上文的内容,该例子的应用功能场景可以是自动驾驶车辆的应用场景。请参阅图3,图3是本申请实施例提供的一种自动驾驶车辆应用场景的示意图。自动驾驶车辆包括路径规划模块、定位模块和终端模块。

自动驾驶车辆的定位模块获取起点坐标信息,假设起点的坐标信息为A(0,0);终端模块获取用户的操作信息,并根据用户的操作信息识别出终点的坐标信息B(560,80);路径规划装置根据定位模块发送的起点坐标信息A(0,0)和终端模块发送的终点坐标信息B(560,80)从高精地图中获取待选路径集合,并创建拓扑地图,待选路径集合包括如图3所示的路径X(1-2-3-4-5-6)和路径Y(1-7-8-9-10-11-6),A(0,0)位于首节点1上,,B(560,80)位于尾节点6上。路径X和路径Y的每个节点的属性信息包括路口信息、转向信息和位置信息。转向信息是路径X或路径Y中的每个节点至下一节点的转向信息;位置信息是路径X或路径Y中的每个节点的预设位置信息,假设预设位置信息是每个节点上最靠近首节点1的位置的坐标信息,则路径X上:节点2的预设位置信息为(60,0),节点3的预设位置信息为(160,0),节点4的预设位置信息为(260,0),节点5的预设位置信息为(460,0)。路径Y上:节点7的预设位置信息为(60,0),节点8的预设位置信息为(60,100),节点9的预设位置信息为(160,100),节点10的预设位置信息为(260,100),节点11的预设位置信息为(460,100)。为方便计算,假设上述的坐标信息均是按照实际长度表示的,设置每100米的预设代价为1,路口信息包括红绿灯和人行道,预设代价均设置为5,转向信息包括直行、右转和左转,分别设置预设代价为1、5和8。

具体的,路径规划模块基于A*算法规划路径:首先,创建开启列表和关闭列表;将首节点1放入开启列表中,此时开启列表中只有首节点1,因此不用计算首节点1的当前代价值,将首节点1直接从开启列表中删除,并放入关闭列表中;此时开启列表为空,关闭列表中有1。

其次,确定路径X中首节点1的下一节点2为路径X的当前节点,确定路径Y中首节点1的下一节点7为路径Y的当前节点,根据步骤S209,路径X的当前节点2和路径Y的当前节点7均不是尾节点6,则执行步骤S205。将路径X的当前节点7和路径Y的当前节点2放入开启列表中,此时节点7指向首节点1且节点2指向首节点1;基于起点的坐标信息(0,0)和节点7的坐标信息(60,0)确定当前长度信息为60米,对应的代价值为0.6;首节点1至节点7的转向信息为左转,对应的代价值为8;首节点1有红绿灯,对应的代价值为5,如此,确定第一代价值为13.6;基于公式(2)确定节点7的坐标信息(60,0)和终点的坐标信息(560,80)之间的预测长度值为580,对应的代价值为5.8;基于公式(1)确定路径X的当前节点7的当前代价值为19.4;同理,可以确定路径Y的当前节点2的当前代价值为12.4;确定节点2的当前代价值是开启列表中数值最小的,将节点2从开启列表中删除,并放入关闭列表;如此,开启列表中有节点7,关闭列表中有首节点1和节点2;

其次,将节点2的下一节点3放入开启列表,此时节点3指向节点2;同理,可以确定节点3的当前代价值为18.4;确定节点3的当前代价值是开启列表中数值最小的,将节点3从开启列表中删除,并放入关闭列表;如此,开启列表中有节点7,关闭列表中有首节点1、节点2和节点3。此时,确定节点3为路径X的当前节点,路径X的当前节点3不是尾节点6,继续执行步骤S205。

其次,将节点3的下一节点4放入开启列表,此时节点4指向节点3;同理,可以确定节点4的当前代价值为24.4;确定节点7的当前代价值是开启列表中数值最小的,将节点7从开启列表中删除,并放入关闭列表;如此,开启列表中有节点4,关闭列表中有首节点1、节点2、节点3和节点7。此时,确定节点7为路径Y的当前节点,路径Y的当前节点7不是尾节点6,继续执行步骤S205。

其次,将节点7的下一节点8放入开启列表,此时节点8指向节点7;同理,可以确定节点8的当前代价值为29.8;确定节点4的当前代价值是开启列表中数值最小的,将节点4从开启列表中删除,并放入关闭列表;如此,开启列表中有节点8,关闭列表中有首节点1、节点2、节点3、节点7和节点4。此时,确定节点4为路径X的当前节点,路径X的当前节点4不是尾节点6,继续执行步骤S205。

其次,将节点4的下一节点5放入开启列表,此时节点5指向节点4;同理,可以确定节点5的当前代价值为30.4;确定节点8的当前代价值是开启列表中数值最小的,将节点8从开启列表中删除,并放入关闭列表;如此,开启列表中有节点5,关闭列表中有首节点1、节点2、节点3、节点7、节点4和节点8。此时,确定节点8为路径Y的当前节点,路径Y的当前节点8不是尾节点6,继续执行步骤S205。

其次,将节点8的下一节点9放入开启列表,此时节点9指向节点8;同理,可以确定节点9的当前代价值为30.8;确定节点5的当前代价值是开启列表中数值最小的,将节点5从开启列表中删除,并放入关闭列表;如此,开启列表中有节点9,关闭列表中有首节点1、节点2、节点3、节点7、节点4、节点8和节点5。此时,确定节点5为路径X的当前节点,路径X的当前节点5不是尾节点6,继续执行步骤S205。

其次,将节点5的下一节点6放入开启列表,此时节点6指向节点5;同理,可以确定节点6的当前代价值为43.4;确定节点9的当前代价值是开启列表中数值最小的,将节点9从开启列表中删除,并放入关闭列表;如此,开启列表中有节点6,关闭列表中有首节点1、节点2、节点3、节点7、节点4、节点8、节点5和节点9。此时,确定节点9为路径Y的当前节点,节点6位路径X的当前节点,路径X的当前节点为尾节点,但是节点6的当前代价值的数值不是最小,继续执行步骤S205。

其次,将节点9的下一节点10放入开启列表,此时节点10指向节点9;同理,可以确定节点10的当前代价值为31.8;确定节点10的当前代价值是开启列表中数值最小的,将节点10从开启列表中删除,并放入关闭列表;如此,开启列表中有节点6,关闭列表中有首节点1、节点2、节点3、节点7、节点4、节点8、节点5、节点9和节点10。此时,确定节点10为路径Y的当前节点,节点6位路径X的当前节点,路径X的当前节点为尾节点,但是节点6的当前代价值的数值不是最小,继续执行步骤S205。

其次,将节点10的下一节点11放入开启列表,此时节点11指向节点10;同理,可以确定节点11的当前代价值为32.8;确定节点11的当前代价值是开启列表中数值最小的,将节点11从开启列表中删除,并放入关闭列表;如此,开启列表中有节点6,关闭列表中有首节点1、节点2、节点3、节点7、节点4、节点8、节点5、节点9、节点10和节点11。此时,确定节点11为路径Y的当前节点,节点6位路径X的当前节点,路径X的当前节点为尾节点,但是节点6的当前代价值的数值不是最小,继续执行步骤S205。

最后,节点11的下一个节点6已经在开启列表中,计算路径Y的当前节点6的当前代价值为42.4,此时,修改节点6指向节点11,并确定节点6为路径X的当前节点,路径X的当前节点为尾节点,且节点6的当前代价值的数值是最小,此时,确定路径Y是目标路径。

在现有技术的路径规划方法中,只考虑转向信息和位置信息可以得到路径X,而自动驾驶车辆在实际运行过程中,由于路径X的红绿灯或人行道比路径Y的多,可能需要更多的等待时间或频繁减速;本申请提供的路径规划方法,除考虑转向信息和位置信息外,还考虑到路口信息的代价值,如此,得到的路径Y更加准确、贴合实际,可以使得自动驾驶车辆行驶更加平稳、安全。

本申请实施例还提供了一种路径规划装置,图4是本申请实施例提供的一种路径规划装置的结构示意图,如图4所示,该装置包括:

确定模块401,用于根据起点与终点确定待选路径集合;确定待选路径集合中每条待选路径的属性信息;属性信息包括每条待选路径中每个节点的路口信息;起点位于每条待选路径的首节点上,终点位于每条待选路径的尾节点上;

路径规划模块402,用于基于路口信息确定待选路径集合中每条待选路径的当前节点的当前代价值;将数值最小的当前代价值对应的当前节点的下一节点确定为数值最小的当前代价值对应的待选路径的当前节点;若待选路径集合中存在待选路径的当前节点为待选路径的尾节点,且尾节点的当前代价值的数值最小,则确定待选路径为目标路径。

本申请实施例中的装置与方法实施例基于同样地申请构思。

本申请实施例还提供了一种电子设备,电子设备包括处理器和存储器,存储器中存储有至少一条指令、至少一段程序、代码集或指令集,至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现上述路径规划方法。

本申请的实施例还提供了一种存储介质,存储介质可设置于服务器之中以保存用于实现方法实施例中一种路径规划方法相关的至少一条指令、至少一段程序、代码集或指令集,该至少一条指令、该至少一段程序、该代码集或指令集由该处理器加载并执行以实现上述路径规划方法。

可选地,在本实施例中,上述存储介质可以位于计算机网络的多个网络服务器中的至少一个网络服务器。可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。

由上述本申请提供的路径规划方法、装置、电子设备或存储介质的实施例可见,本申请中,根据起点与终点确定待选路径集合;确定待选路径集合中每条待选路径的属性信息,其中属性信息包括每条待选路径中每个节点的路口信息,并基于路口信息确定待选路径集合中每条待选路径的当前节点的当前代价值,将数值最小的当前代价值对应的当前节点的下一节点确定为数值最小的当前代价值对应的待选路径的当前节点。本申请提供的路径规划方法中确定每条待选路径的当前节点的当前代价值时,考虑到路口信息的代价值,如此,使当前节点的当前代价值更加准确、贴合实际,可以提升驾驶体验。

需要说明的是:上述本申请实施例先后顺序仅仅为了描述,不代表实施例的优劣。且上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。

本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于设备实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。

以上所述仅为本申请的较佳实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

相关技术
  • 路径规划方法、路径规划系统、电子设备及计算机存储介质
  • 一种路径规划方法、装置、电子设备以及存储介质
技术分类

06120113007106