一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种轨迹规划方法、装置、设备和存储介质与流程

2021-11-20 03:16:00 来源:中国专利 TAG:


1.本发明实施例涉及计算机技术,尤其涉及一种轨迹规划方法、装置、设备和存储介质。


背景技术:

2.随着计算机技术的快速发展,车辆可以在结构化道路中实现无人自动驾驶。在无人自动驾驶场景中,通常需要对车辆进行轨迹决策(即运行决策),以决定出车辆从哪一侧绕行障碍物、以及决定出抢先还是让行等。在对车辆进行轨迹决策后需要进行轨迹规划,以对决策出的粗略的行驶轨迹进行平滑处理等操作获得更加精确的规划轨迹。
3.目前,现有的轨迹规划方式是根据行驶场景中的所有障碍物的信息进行规划,以保证车辆沿规划轨迹行驶时不会与障碍物发生碰撞。
4.然而,在实现本发明过程中,发明人发现现有技术中至少存在如下问题:
5.由于车辆长度有限,使得车辆与所有障碍物不会在每时每刻都有可能发生碰撞,从而现有的轨迹规划方式中每时每刻均考虑所有障碍物的信息,会导致存在大量的冗余计算,大大降低了轨迹规划效率。


技术实现要素:

6.本发明实施例提供了一种轨迹规划方法、装置、设备和存储介质,以提高轨迹规划效率。
7.第一方面,本发明实施例提供了一种轨迹规划方法,包括:
8.获取对目标车辆进行轨迹决策所获得的初始轨迹信息;
9.构建所述目标车辆对应的目标轨迹规划非线性命题,其中,所述目标轨迹规划非线性命题包括:轨迹代价函数和行驶约束条件,所述行驶约束条件包括:基于隧道化建模方式确定的碰撞躲避约束条件;
10.根据所述初始轨迹信息,对所述目标轨迹规划非线性命题进行求解,确定出所述目标车辆对应的目标规划轨迹。
11.第二方面,本发明实施例还提供了一种轨迹规划装置,包括:
12.初始轨迹信息获取模块,用于获取对目标车辆进行轨迹决策所获得的初始轨迹信息;
13.轨迹规划非线性命题构建模块,用于构建所述目标车辆对应的目标轨迹规划非线性命题,其中,所述目标轨迹规划非线性命题包括:轨迹代价函数和行驶约束条件,所述行驶约束条件包括:基于隧道化建模方式确定的碰撞躲避约束条件;
14.目标规划轨迹确定模块,用于根据所述初始轨迹信息,对所述目标轨迹规划非线性命题进行求解,确定出所述目标车辆对应的目标规划轨迹。
15.第三方面,本发明实施例还提供了一种设备,所述设备包括:
16.一个或多个处理器;
17.存储器,用于存储一个或多个程序;
18.当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如本发明任意实施例所述的轨迹规划方法。
19.第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明任意实施例所述的轨迹规划方法。
20.上述发明中的实施例具有如下优点或有益效果:
21.通过基于隧道化建模方式确定出碰撞躲避约束条件,即获得每个时刻下目标车辆的可行驶隧道区域,从而在轨迹规划过程中无需考虑那些不会影响目标车辆行驶的障碍物,降低了碰撞躲避约束条件的复杂程度,从而构建出更加简单的目标轨迹规划非线性命题,并可以通过最小化轨迹代价函数的方式,对目标轨迹规划非线性命题进行快速求解,获得目标车辆对应的目标规划轨迹,从而避免了冗余计算,提高了轨迹规划效率。
附图说明
22.图1是本发明实施例一提供的一种轨迹规划方法的流程图;
23.图2是本发明实施例一所涉及的一种行驶场景的示例;
24.图3是本发明实施例一所涉及的一种二自由度车辆运动学模型的示例;
25.图4是本发明实施例一所涉及的一种局部隧道区域的示例;
26.图5是本发明实施例二提供的一种轨迹规划方法的流程图;
27.图6是本发明实施例二所涉及的一种局部隧道区域的构建过程示例;
28.图7是本发明实施例三提供的一种轨迹规划方法的流程图;
29.图8是本发明实施例四提供的一种轨迹规划装置的结构示意图;
30.图9是本发明实施例五提供的一种设备的结构示意图。
具体实施方式
31.下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
32.实施例一
33.图1为本发明实施例一提供的一种轨迹规划方法的流程图,本实施例可适用于自动驾驶车辆进行轨迹规划的情况,尤其适用于对结构化道路中的自动驾驶车辆进行轨迹规划的情况。该方法可以由轨迹规划装置来执行,该装置可以由软件和/或硬件的方式来实现,集成于具有自动驾驶功能的设备中,比如任意类型的车辆。如图1所示,该方法具体包括以下步骤:
34.s110、获取对目标车辆进行轨迹决策所获得的初始轨迹信息。
35.其中,目标车辆可以是指道路中需要进行轨迹规划的任意类型的自动驾驶车辆。道路可以是指结构化道路。结构化道路可以是指目标车辆待行驶的具有行驶规则的道路。示例性地,结构化道路可以是具有指引线以指示行驶方向的道路,比如,城市道路等。轨迹决策可以是指用于决策出目标车辆在道路上行驶的决策轨迹,即决定出目标车辆在遇到障碍物时从哪一侧绕行障碍物以及决定出抢先还是让行等。初始轨迹信息可以是指轨迹决策
后获得的决策轨迹对应的轨迹信息。例如,初始轨迹信息可以包括但不限于:决策出的目标车辆的行驶路径信息和行驶速度信息。
36.具体地,可以基于结构化道路中的各个静态障碍物和各个动态障碍物的信息以及目标车辆的自身信息,对目标车辆进行轨迹决策,确定出目标车辆在道路上行驶的合理可行的决策轨迹,并将该决策轨迹的轨迹信息作为在轨迹规划过程中目标车辆的初始轨迹信息。
37.s120、构建目标车辆对应的目标轨迹规划非线性命题,其中,目标轨迹规划非线性命题包括:轨迹代价函数和行驶约束条件,行驶约束条件包括:基于隧道化建模方式确定的碰撞躲避约束条件。
38.其中,目标轨迹规划非线性命题可以是指面向轨迹规划任务的非线性规划(nonlinear programming,nlp)命题。目标轨迹规划非线性命题可以作为一种最优控制命题,以便可以利用计算最优控制(computational optimal control)方方式或者数值最优控制(numerical optimal control)方式进行命题求解。轨迹规划任务可以是指在目标车辆的起始时刻运动状态与终止时刻运动状态之间规划出符合行驶约束条件的行驶轨迹。碰撞躲避约束条件可以是指避免与行驶场景中的障碍物发生碰撞的限制条件。图2给出了一种行驶场景的示例。如图2所示,行驶场景中可以包括静止障碍物和移动障碍物以及用于描述道路边沿的散点,碰撞躲避约束条件可以用于描述目标车辆(即车辆i)与所有障碍物和道路边沿均不发生重叠的条件。隧道化建模方式可以是基于初始轨迹信息铺设时间空间上的局部隧道,将目标车辆实际可行驶区域与环境中的障碍物进行分隔的方式。轨迹代价函数可以是指目标轨迹规划非线性命题的优化目标函数,用于筛选优质轨迹的指标式。通常,存在多条满足行驶约束条件的轨迹,从而需要基于轨迹代价函数筛选出最优的轨迹作为最终结果。由于轨迹规划任务中存在行驶约束条件以及用于寻优的指标式,从而可以适合采用最优控制问题的形式来描述自动驾驶车辆的轨迹规划命题。
39.具体地,可以基于隧道化建模方式,确定出目标车辆在每个时刻下的可行驶隧道区域,从而将基于道路中所有障碍物直接建立的复杂的碰撞躲避约束条件转化为简单的边界约束形式的碰撞躲避约束条件,并且仅需考虑目标车辆周围的障碍物,无需考虑距离较远的,不会影响目标车辆行驶的障碍物,从而大大降低了碰撞躲避约束条件的复杂程度。可以基于轨迹尽量平顺以及尽量贴近决策轨迹的期望,确定出相应的轨迹代价函数。基于轨迹代价函数和碰撞躲避约束条件,可以构建出更加简单的,利用最优控制问题方式描述的目标轨迹规划非线性命题。
40.s130、根据初始轨迹信息,对目标轨迹规划非线性命题进行求解,确定出目标车辆对应的目标规划轨迹。
41.具体地,可以将初始轨迹信息作为初始解,对目标轨迹规划非线性命题进行求解,即在满足基于隧道化建模方式确定的碰撞躲避约束条件的情况下,对轨迹代价函数进行最小化,从而可以获得最优解,即确定出目标车辆对应的目标规划轨迹。本实施例可以采用内点算法(interior point method,ipm)对目标轨迹规划非线性命题进行求解。本实施例通过对更加简单的目标轨迹规划非线性命题进行求解,从而可以避免冗余计算,提高了轨迹规划效率。
42.本实施例的技术方案,通过基于隧道化建模方式确定出碰撞躲避约束条件,即获
得每个时刻下目标车辆的可行驶隧道区域,从而在轨迹规划过程中无需考虑那些不会影响目标车辆行驶的障碍物,降低了碰撞躲避约束条件的复杂程度,从而构建出更加简单的目标轨迹规划非线性命题,并可以通过最小化轨迹代价函数的方式,对目标轨迹规划非线性命题进行快速求解,获得目标车辆对应的目标规划轨迹,从而避免了冗余计算,提高了轨迹规划效率。
43.在上述技术方案的基础上,行驶约束条件还可以包括:目标车辆的运动学约束条件、边值约束条件和车辆内部机械限制条件。
44.其中,目标车辆的运动学约束条件可以是指目标车辆在行驶过程中所受到的运动能力限制。边值约束条件可以是指目标车辆的起始时刻和终止时刻所指定的运动状态。车辆内部机械限制条件可以是指目标车辆内在运动能力的限制。
45.示例性地,可以采用二自由度模型描述车辆运动。图3给出了一种二自由度车辆运动学模型的示例。如图3所示,二自由度模型可以将车辆的两只前轮及两只后轮分别向车体纵轴方向合并为虚拟单轮,通过确定虚拟前轮的转动角速度以及虚拟后轮的线加速度变量,可以间接确定车辆的前轮转角、行驶速度等,进而实现车辆运动。
46.基于图3,目标车辆的运动学约束条件可以表示为:
[0047][0048]
其中,行驶时刻t∈[0,t
f
],t
f
代表终止时刻,其可以是常量或变量;(x
i
(t),y
i
(t))代表在笛卡尔坐标系xoy(即直角坐标系)下的车辆i的后轮轴中点坐标;v
i
(t)和a
i
(t)分别代表沿车体纵轴方向的速度及加速度,以使车辆前进的方向为正方向;φ
i
(t)代表车辆前轮偏转角,以左转方向为正方向;ω
i
(t)代表前轮偏转角速度,以垂直于xoy坐标系向外为正方向;θ
i
(t)代表车辆在xoy坐标系中的姿态角,即从坐标系x轴正方向到车体纵轴正方向的旋转角度,以逆时针转向为正方向。其中,x
i
(t)、y
i
(t)、φ
i
(t)、θ
i
(t)以及v
i
(t)属于状态变量x(t),a
i
(t)和ω
i
(t)属于控制变量u(t)。若获得车辆i在初始时刻的运动状态x(0)以及[0,t
f
]时域上的u(t),则可以通过积分逐一确定该时域上的运动状态x(t),即获得车辆i的某一特定运动轨迹。
[0049]
由于t=t
f
时刻并不是宏观上整个行车过程的终点,从而可以将t
f
设置为轨迹决策时域长度t
decision
的预设比例,即t
f
=t
decision
·
γ
rate
,其中,0<γ
rate
<1代表预设比例系数。
[0050]
基于图3,边值约束条件中的起点约束条件可以表示为:
[0051]
[v
i
(0),φ
i
(0),x
i
(0),y
i
(0),θ
i
(0)]=[v
0i
,p
0i
,x
0i
,y
0i

0i
]
ꢀꢀ
(2)
[0052]
其中,[v
0i

0i
,x
0i
,y
0i

0i
]可以是由车载传感器采集的运动状态信息。终止时刻t
f
并不是宏观上行车过程的终点,从而可以不对局部规划时域的末端进行硬性限制。
[0053]
基于图3,车辆内部机械限制条件可以表示为:
[0054]

i
(t)|≤φ
max
,|a
i
(t)|≤a
max
,|v
i
(t)|≤v
max
,|ω
i
(t)|≤ω
max
,t∈[0,t
f
].
ꢀꢀ
(3)
[0055]
其中,φ
max
、a
max
、v
max
和ω
max
分别为各状态变量和控制变量的最大幅值。φ
max
代表车辆前轮转角φ
i
(t)的最大允许偏转角度值;v
max
是车辆在低速场景中的安全行驶速度上限;为保证乘客舒适性,a
max
与ω
max
分别为线加速度和前轮转角速度的最大幅值。示例性地,若需要加速度变量变化平缓,则可以补充加速度的微分变量jerk
i
(t)=da
i
(t)/dt并对其进行限幅。
[0056]
基于图3,目标车辆i的轨迹代价函数可以表示为:
[0057][0058]
其中,(x
decision
(t),y
decision
(t),θ
decision
(t))代表的是目标车辆i的决策轨迹。
[0059]
具体地,通过将基于隧道化建模方式确定的碰撞躲避约束条件、目标车辆的运动学约束条件、边值约束条件和车辆内部机械限制条件均作为行驶约束条件,对轨迹代价函数进行最小化,从而可以获得更加准确的目标规划轨迹,进一步提高了轨迹规划准确性。
[0060]
需要说明的是,本实施例是在不依赖指引线的笛卡尔坐标系xoy下进行的轨迹规划,从而使得在道路上的轨迹规划任务可以完全不依赖指引线。
[0061]
在上述技术方案的基础上,基于隧道化建模方式确定碰撞躲避约束条件,可以包括:将两个预设半径的圆形区域覆盖目标车辆的车体区域,并确定两个圆心的运动轨迹;根据两个圆心的运动轨迹和预设半径,确定在轨迹规划时域中的每个采样时刻下每个圆心对应的局部隧道区域;根据局部隧道区域,确定碰撞躲避约束条件。
[0062]
其中,预设半径可以是基于目标车辆的尺寸进行设置的。例如,可以将目标车辆的两个外接圆的半径作为预设半径。如图3所示,可以基于车辆的前后轮轴距l
w
、车辆前悬距离l
f
、车辆后悬距离l
r
和车宽l
b
确定出预设半径。例如,目标车辆i对应的预设半径为:每个圆心对应的局部隧道区域可以是指目标车辆的可行驶区域。
[0063]
具体地,可以利用目标车辆的两个外接圆的圆心来表征目标车辆,并针对每个圆心构建出相应的局部隧道区域,从而可以实现对目标车辆的隧道化建模。例如,可以利用两个预设半径为r
i
的圆形均匀覆盖目标车辆的矩形车体区域。基于决策轨迹对应的初始轨迹信息(x
decision
(t),y
decision
(t),θ
decision
(t))以及圆心位置坐标与车辆位置后轮轴中点坐标之间的对应关系,可以确定出两个圆心的运动轨迹,分别记为:p
r
=(xr(t),yr(t))和p
f
=(xf(t),yf(t))。其中,圆心位置坐标与车辆位置后轮轴中点坐标之间的对应关系可以表示如下:
[0064]
[0065]
可见,车辆不与障碍物相撞这一约束条件可以转换为:p
r
和p
f
均与障碍物至少保持距离r
i
,从而可以通过限制p
r
和p
f
的取值范围,以使p
r
和p
f
均与障碍物至少保持距离r
i
,进而获得更加简单的碰撞躲避约束条件。例如,可以基于数值优化中的离散化精度参数n
fe
,对轨迹规划时域[0,t
f
]进行均匀采样(n
fe
1)个时刻,其中第
k
个时刻为t
k
=t
f
·
(k-1)/n
fe
。针对每一个采样时刻,可以确定出每个圆心对应的局部隧道区域,进而基于局部隧道区域可以获得p
r
和p
f
的取值范围,即碰撞躲避约束条件。本实施例通过利用两个圆心作为质点来表征目标车辆,并针对每个圆心构建出相应的局部隧道区域,从而可以更加快速地实现对目标车辆的隧道化建模过程,获得更加简单的碰撞躲避约束条件,进一步提高了轨迹规划效率。
[0066]
示例性地,根据局部隧道区域,确定碰撞躲避约束条件,可以包括:确定在笛卡尔坐标系中局部隧道区域的四个区域顶点的位置坐标;根据四个区域顶点的位置坐标,确定每个采样时刻下每个圆心的位置坐标的约束范围,获得碰撞躲避约束条件。
[0067]
其中,局部隧道区域可以为一个矩形区域。区域顶点可以是指矩形区域的四个顶点。例如,图4给出了一种局部隧道区域的示例。图4给出了圆心p
r
的运动轨迹p
r
(t)以及在采样时刻t
k
时的圆心p
r
的位置p
r
(t
k
)。在图4中,小的矩形区域代表的是在采样时刻t
k
时圆心p
r
对应的局部隧道区域。大的矩形区域边界代表的是目标车辆与障碍物发生碰撞的临界。图4中两个矩形区域之间的距离可以为预设半径r
i
,以保证p
r
与障碍物至少保持距离r
i

[0068]
具体地,可以在图3中的笛卡尔坐标系xoy下获得局部隧道区域的四个区域顶点的位置坐标,并可以基于四个区域顶点的位置坐标,对相应圆心的位置坐标进行限制,以保证相应圆心的位置坐标位于局部隧道区域内,从而获得碰撞躲避约束条件。例如,如图4中,圆心p
r
=(xr(t),yr(t))在采样时刻t
k
时的圆心位置坐标的约束范围为:x
r_lb_k
≤xr(t
k
)≤x
r_ub_k
,y
r_lb_k
≤yr(t
k
)≤y
r_ub_k
。同理,也可以基于圆心p
f
对应的局部隧道区域,确定出圆心p
f
的位置坐标的约束范围。本实施例中的利用简单边界构成的碰撞躲避约束条件可以表示为:
[0069][0070]
需要说明的是,无论行驶场景中存在多少个障碍物的,都会只存在2(n
fe
1)组形式如(6)的约束条件,从而可以命题求解的稳定性。
[0071]
示例性地,目标轨迹规划非线性命题p
nlp0
可以完整地表示为:
[0072]
最小化:轨迹代价函数(4)
[0073]
s.t.运动学约束条件(1)
[0074]
边值约束条件(2)
[0075]
车辆内部机械限制条件(3)
[0076]
圆心关联关系(5)
[0077]
碰撞躲避约束条件(6)
[0078]
具体地,通过求解上述目标轨迹规划非线性命题p
nlp0
,可以在满足全部约束条件的前提下,使得轨迹代价函数取值最小,从而可以获得更加准确的目标规划轨迹,同时提高
了轨迹规划效率和轨迹规划准确性。
[0079]
实施例二
[0080]
图5为本发明实施例二提供的一种轨迹规划方法,本实施例在上述各实施例的基础上,对“根据两个圆心的运动轨迹和预设半径,确定在轨迹规划时域中的每个采样时刻下每个圆心对应的局部隧道区域”进行优化。其中与上述各实施例相同或相应的术语的解释在此不再赘述。
[0081]
参见图5,本实施例提供的轨迹规划方法具体包括以下步骤:
[0082]
s210、获取对目标车辆进行轨迹决策所获得的初始轨迹信息。
[0083]
s220、将两个预设半径的圆形区域覆盖目标车辆的车体区域,并确定两个圆心的运动轨迹。
[0084]
具体地,可以基于初始轨迹信息(x
decision
(t),y
decision
(t),θ
decision
(t))以及圆心位置坐标与车辆位置后轮轴中点坐标之间的对应关系,可以确定出两个圆心的运动轨迹,分别记为:p
r
=(xr(t),yr(t))和p
f
=(xf(t),yf(t))。
[0085]
s230、根据两个圆心的运动轨迹,确定在规划时域中的每个采样时刻下两个圆心的圆心位置。
[0086]
具体地,对于每个圆心而言,可以基于该圆心的运动轨迹,确定出该圆形在每个采样时刻下的圆心位置。例如,基于圆心p
r
的运动轨迹p
r
(t),可以确定出在采样时刻t
k
时的圆心p
r
的圆心位置为p
r
(t
k
)。
[0087]
s240、基于预设半径,以每个圆心的圆心位置为中心进行增量式拓展,确定每个采样时刻下的每个圆心对应的局部隧道区域。
[0088]
具体地,以每个采样时刻下的圆心位置为中心,可以获得预设半径的区域范围,并通过在该区域范围的周围进行增量式拓展的方式,可以确定出每个圆心在每个采样时刻下的局部隧道区域。本实施例可以通过对每个圆心位置进行增量式拓展,可以获得准确地局部隧道区域,进而提高碰撞躲避约束条件确定的准确性,进一步提高了轨迹规划准确性。
[0089]
示例性地,s240可以包括:以当前采样时刻下当前圆心的圆心位置为中心,沿x轴和y轴正负方向,分别扩展长度为预设半径的距离,构建以圆心位置为中心的四边形;分别沿着四边形的四条扩张边逐次向外扩张预设距离,获得每次扩张的扩张区域;若检测到扩张区域与行驶场景中的障碍物区域不存在重叠部分,则基于该扩张区域更新四边形,并对更新后的四边形继续扩张操作;若检测到扩张区域与行驶场景中的障碍物区域存在重叠部分,则停止该扩张区域对应的扩张边的扩张操作,继续其他扩张边的扩张操作;在四条扩张边的扩张操作均停止时,根据当前四边形确定当前采样时刻下的当前圆心对应的局部隧道区域。
[0090]
其中,可以将任一采样时刻作为当前采样时刻,以及可以将任一圆心作为当前圆心,以便可以利用上述局部隧道区域的确定方式,确定出每个圆心在每个采样时刻下的局部隧道区域。
[0091]
具体地,图6给出了一种局部隧道区域的构建过程示例。如图6中的a)所示,可以以当前采样时刻t
k
下当前圆心p
r
的圆心位置p
r
(t
k
)为中心,沿xoy坐标系中的x轴和y轴正负方向,分别扩展长度为预设半径r
i
的距离,构建以圆心位置p
r
(t
k
)为中心的四边形,即矩形。如图6中的b)所示,可以按照顺时针方向或者逆时针方向,分别沿着该四边形的四条扩张边不
断向外扩张预设距离δstep,获得每次扩张的扩张区域,如图b)中的序号所标识的区域。序号的顺序可以用于表征扩张顺序。在每次扩张后,可以检测扩张区域是否与行驶场景中的障碍物区域存在重叠部分,例如,可以将行驶场景中的移动障碍物在t
k
时刻所在位置、静止障碍物的位置和道路边沿的散点位置均存储至集合v中,从而可以通过检测集合v中是否存在扩张区域所包含的元素位置,确定出是否存在重叠部分。若否,则表明目标车辆在该扩张区域中行驶时不会与障碍物相撞,即该扩张区域为有效区域,此时可以将该扩张区域合并入四边形中,以更新四边行,并对更新后的四边形继续扩张操作。若扩张区域与行驶场景中的障碍物区域存在重叠部分,则表明目标车辆在该扩张区域中行驶时会与障碍物相撞,即该扩张区域为无效区域,此时无需合并该扩张区域,停止该扩张区域对应的扩张边的扩张操作,并继续其他扩张边的扩张操作。若检测到四条扩张边的扩张操作均停止,则表明当前时刻下获得的当前四边形为当前圆心p
r
可移动的最大区域,如图c)所示。为了保证目标车辆不与障碍物相碰撞,则可以对当前圆心对应的当前四边形区域进行缩小,以获得当前采样时刻下的当前圆心对应的局部隧道区域。
[0092]
示例性地,根据当前四边形确定当前采样时刻下的当前圆心对应的局部隧道区域,可以包括:将当前四边形的四条边向中心收缩长度为预设半径的距离,并将收缩后的四边形的区域确定为当前采样时刻下的当前圆心对应的局部隧道区域。如图6中的d)所示,通过将当前四边形的四条边均向中心收缩长度为预设半径r
i
的距离,即获得一个较小的四边形,此时可以将收缩后的四边形的区域确定为当前采样时刻下的当前圆心对应的局部隧道区域,从而可以保证每个圆心与障碍物之间的距离至少为r
i
,避免了目标车辆与障碍物相碰撞。
[0093]
s250、根据局部隧道区域,确定碰撞躲避约束条件。
[0094]
s260、构建目标车辆对应的目标轨迹规划非线性命题,其中,目标轨迹规划非线性命题包括:轨迹代价函数和行驶约束条件,行驶约束条件包括:基于隧道化建模方式确定的碰撞躲避约束条件。
[0095]
s270、根据初始轨迹信息,对目标轨迹规划非线性命题进行求解,确定出目标车辆对应的目标规划轨迹。
[0096]
本实施例的技术方案,通过对每个采样时刻下的每个圆心位置进行增量式拓展,可以准确地获得局部隧道区域,从而可以提高碰撞躲避约束条件确定的准确性,进而也提高了轨迹规划的准确性。
[0097]
实施例三
[0098]
图7为本发明实施例三提供的一种轨迹规划方法,本实施例在上述各实施例的基础上,对“构建目标车辆对应的目标轨迹规划非线性命题”进行优化,并在此基础上,还对“根据初始轨迹信息,对目标轨迹规划非线性命题进行求解,确定出目标车辆对应的目标规划轨迹”进行优化。其中与上述各实施例相同或相应的术语的解释在此不再赘述。
[0099]
参见图7,本实施例提供的轨迹规划方法具体包括以下步骤:
[0100]
s310、获取对目标车辆进行轨迹决策所获得的初始轨迹信息。
[0101]
s320、构建目标车辆对应的第一轨迹规划非线性命题,其中,第一轨迹规划非线性命题包括:目标函数和边界约束条件,目标函数是基于轨迹代价函数、目标车辆的运动学约束条件和基于隧道化建模方式确定的碰撞躲避约束条件对应的两个圆心的圆心关联关系
确定的。
[0102]
其中,边界约束条件可以是指利用边界形式进行限制的条件。例如,边界约束条件可以包括基于隧道化建模方式确定的碰撞躲避约束条件、边值约束条件和车辆内部机械限制条件。目标函数可以是指第一轨迹规划非线性命题p
nlp1
的优化目标。
[0103]
具体地,由于目标轨迹规划非线性命题p
nlp0
中的两个圆心p
r
和p
f
,与优化变量x
i
、y
i
和θ
i
构成非线性关系(参见式(5)),从而使得碰撞躲避约束条件(参见式(6))为一个非凸约束。可见,目标轨迹规划非线性命题p
nlp0
中的非凸非线性约束条件可以包括目标车辆的运动学约束条件(参见式(1))以及两个圆心的圆心关联关系(参见式(5)),从而导致目标轨迹规划非线性命题p
nlp0
的求解效率较低。针对于此,可以将xr(t)、yr(t)、xf(t)以及yf(t)也作为优化变量进行优化,即构建的第一轨迹规划非线性命题p
nlp1
中的目标函数的优化变量包括:xr(t)、yr(t)、xf(t)、yf(t)、x
i
、y
i
和θ
i
,从而使得第一轨迹规划非线性命题p
nlp1
中的约束条件均为线性的边界约束条件。
[0104]
示例性地,基于轨迹代价函数、目标车辆的运动学约束条件和基于隧道化建模方式确定的碰撞躲避约束条件对应的两个圆心的圆心关联关系确定目标函数,可以包括:对目标车辆的运动学约束条件和基于隧道化建模方式确定的碰撞躲避约束条件对应的两个圆心的圆心关联关系进行多项式表征,确定各个惩罚项;根据各个惩罚项和轨迹代价函数,确定目标函数。
[0105]
例如,可以对目标车辆的运动学约束条件(参见式(1))和两个圆心的圆心关联关系(参见式(5))进行改造为惩罚多项式,获得相应的各个惩罚项,并将轨迹代价函数和各个惩罚项进行相加,获得目标函数。例如,目标函数可以表示如下:
[0106][0107]
示例性地,第一轨迹规划非线性命题p
nlp1
可以完整地表示为:
[0108]
最小化:目标函数(7)
[0109]
s.t.边值约束条件(2)
[0110]
车辆内部机械限制条件(3)
[0111]
碰撞躲避约束条件(6)
[0112]
s330、根据初始轨迹信息,对第一轨迹规划非线性命题进行求解,确定出目标车辆对应的第一规划轨迹。
[0113]
具体地,通过将初始轨迹信息作为初始解,对第一轨迹规划非线性命题p
nlp1
进行求解,可以获得目标车辆对应的第一规划轨迹。在p
nlp1
中暂时忽略轨迹代价函数(4),在确保不碰撞的前提下,专注于获得更加符合运动学的第一规划轨迹。由于第一轨迹规划非线性命题p
nlp1
约束条件均为简单的边界约束条件,从而p
nlp1
一定有解,使得利用ipm求解p
nlp1
的求解速度高于p
nlp0
的求解速度。
[0114]
需要说明的是,本实施例并不限定s330的执行顺序,步骤s330可以在步骤s320之
后执行,也可以在s340之后执行。
[0115]
s340、构建目标车辆对应的第二轨迹规划非线性命题,其中,第二轨迹规划非线性命题包括:轨迹代价函数和行驶约束条件。
[0116]
具体地,第二轨迹规划非线性命题p
nlp2
与目标轨迹规划非线性命题p
nlp0
的优化目标一致,均为轨迹代价函数。行驶约束条件可以包括基于隧道化建模方式确定的碰撞躲避约束条件,还可以包括:目标车辆的运动学约束条件、边值约束条件和车辆内部机械限制条件。
[0117]
示例性地,第二轨迹规划非线性命题p
nlp2
可以完整地表示为:
[0118]
最小化:轨迹代价函数(4)
[0119]
s.t.运动学约束条件(1)
[0120]
边值约束条件(2)
[0121]
车辆内部机械限制条件(3)
[0122]
圆心关联关系(5)
[0123]
碰撞躲避约束条件(6)
[0124]
示例性地,可以基于上述各实施例提供的隧道化建模方式,根据第一规划轨迹的轨迹信息以及两个圆心的圆心关联关系(参见式(5))重新确定出第二轨迹规划非线性命题p
nlp2
中的碰撞躲避约束条件(6),以进一步提高路径规划的准确性。
[0125]
s350、根据第一规划轨迹,对第二轨迹规划非线性命题进行求解,确定出目标车辆对应的目标规划轨迹。
[0126]
具体地,通过将第一轨迹信息作为初始解,对第二轨迹规划非线性命题p
nlp2
进行求解,可以获得目标车辆对应的目标规划轨迹。p
nlp2
中在保证运动学可行性的前提下,专注于最小化轨迹代价函数(5),从而可以更加快速地求解出目标规划轨迹。由于目标轨迹规划非线性命题中存在硬性的车辆运动学约束、硬性的碰撞躲避约束以及轨迹代价函数寻优这三项必须同时完成的任务,使得目标轨迹规划非线性命题的求解难度较大。通过将目标轨迹规划非线性命题拆解为第一轨迹规划非线性命题和第二轨迹规划非线性命题,可以降低求解难度,进一步提高了轨迹规划效率。
[0127]
本实施例的技术方案,通过将分步求解第一轨迹规划非线性命题和第二轨迹规划非线性命题,可以降低轨迹规划任务的求解难度,进一步提高了轨迹规划效率。
[0128]
以下是本发明实施例提供的轨迹规划装置的实施例,该装置与上述各实施例的轨迹规划方法属于同一个发明构思,在轨迹规划装置的实施例中未详尽描述的细节内容,可以参考上述轨迹规划方法的实施例。
[0129]
实施例四
[0130]
图8为本发明实施例四提供的一种轨迹规划装置的结构示意图,本实施例可适用于对自动驾驶车辆进行轨迹规划的情况,尤其适用于对结构化道路中的自动驾驶车辆进行轨迹规划的情况。如图8所示,该装置具体包括:初始轨迹信息获取模块410、轨迹规划非线性命题构建模块420和目标规划轨迹确定模块430。
[0131]
其中,初始轨迹信息获取模块410,用于获取对目标车辆进行轨迹决策所获得的初始轨迹信息;轨迹规划非线性命题构建模块420,用于构建目标车辆对应的目标轨迹规划非线性命题,其中,目标轨迹规划非线性命题包括:轨迹代价函数和行驶约束条件,行驶约束
条件包括:基于隧道化建模方式确定的碰撞躲避约束条件;目标规划轨迹确定模块430,用于根据初始轨迹信息,对目标轨迹规划非线性命题进行求解,确定出目标车辆对应的目标规划轨迹。
[0132]
本实施例的技术方案,通过基于隧道化建模方式确定出碰撞躲避约束条件,即获得每个时刻下目标车辆的可行驶隧道区域,从而在轨迹规划过程中无需考虑那些不会影响目标车辆行驶的障碍物,降低了碰撞躲避约束条件的复杂程度,从而构建出更加简单的目标轨迹规划非线性命题,并可以通过最小化轨迹代价函数的方式,对目标轨迹规划非线性命题进行快速求解,获得目标车辆对应的目标规划轨迹,从而避免了冗余计算,提高了轨迹规划效率。
[0133]
可选地,该装置还包括:碰撞躲避约束条件确定模块,包括:
[0134]
运动轨迹确定子模块,用于将两个预设半径的圆形区域覆盖目标车辆的车体区域,并确定两个圆心的运动轨迹;
[0135]
局部隧道区域确定子模块,用于根据两个圆心的运动轨迹和预设半径,确定在轨迹规划时域中的每个采样时刻下每个圆心对应的局部隧道区域;
[0136]
碰撞躲避约束条件确定子模块,用于根据局部隧道区域,确定碰撞躲避约束条件。
[0137]
可选地,局部隧道区域确定子模块,包括:
[0138]
圆心位置确定单元,用于根据两个圆心的运动轨迹,确定在规划时域中的每个采样时刻下两个圆心的圆心位置;
[0139]
局部隧道区域确定单元,用于基于预设半径,以每个圆心的圆心位置为中心进行增量式拓展,确定每个采样时刻下的每个圆心对应的局部隧道区域。
[0140]
可选地,局部隧道区域确定单元,具体用于:
[0141]
以当前采样时刻下当前圆心的圆心位置为中心,沿x轴和y轴正负方向,分别扩展长度为预设半径的距离,构建以圆心位置为中心的四边形;分别沿着四边形的四条扩张边逐次向外扩张预设距离,获得每次扩张的扩张区域;若检测到扩张区域与行驶场景中的障碍物区域不存在重叠部分,则基于该扩张区域更新四边形,并对更新后的四边形继续扩张操作;若检测到扩张区域与行驶场景中的障碍物区域存在重叠部分,则停止该扩张区域对应的扩张边的扩张操作,继续其他扩张边的扩张操作;在四条扩张边的扩张操作均停止时,根据当前四边形确定当前采样时刻下的当前圆心对应的局部隧道区域。
[0142]
可选地,局部隧道区域确定单元,还具体用于:将当前四边形的四条边向中心收缩长度为预设半径的距离,并将收缩后的四边形的区域确定为当前采样时刻下的当前圆心对应的局部隧道区域。
[0143]
可选地,碰撞躲避约束条件确定子模块,具体用于:
[0144]
确定在笛卡尔坐标系中局部隧道区域的四个区域顶点的位置坐标;根据四个区域顶点的位置坐标,确定每个采样时刻下每个圆心的位置坐标的约束范围,获得碰撞躲避约束条件。
[0145]
可选地,行驶约束条件还包括:目标车辆的运动学约束条件、边值约束条件和车辆内部机械限制条件。
[0146]
可选地,轨迹规划非线性命题构建模块420,具体用于:构建目标车辆对应的第一轨迹规划非线性命题,其中,第一轨迹规划非线性命题包括:目标函数和边界约束条件,目
标函数是基于轨迹代价函数、目标车辆的运动学约束条件和基于隧道化建模方式确定的碰撞躲避约束条件对应的两个圆心的圆心关联关系确定的;构建目标车辆对应的第二轨迹规划非线性命题,其中,第二轨迹规划非线性命题包括:轨迹代价函数和行驶约束条件;
[0147]
相应地,目标规划轨迹确定模块430,具体用于:根据初始轨迹信息,对第一轨迹规划非线性命题进行求解,确定出目标车辆对应的第一规划轨迹;根据第一规划轨迹,对第二轨迹规划非线性命题进行求解,确定出目标车辆对应的目标规划轨迹。
[0148]
可选地,该装置还包括,目标函数确定模块,用于:对目标车辆的运动学约束条件和基于隧道化建模方式确定的碰撞躲避约束条件对应的两个圆心的圆心关联关系进行多项式表征,确定各个惩罚项;根据各个惩罚项和轨迹代价函数,确定目标函数。
[0149]
本发明实施例所提供的轨迹规划装置可执行本发明任意实施例所提供的轨迹规划方法,具备执行轨迹规划方法相应的功能模块和有益效果。
[0150]
值得注意的是,上述轨迹规划装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
[0151]
实施例五
[0152]
图9为本发明实施例五提供的一种设备的结构示意图。图9示出了适于用来实现本发明实施方式的示例性设备12的框图。图9显示的设备12仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
[0153]
如图9所示,设备12以通用计算设备的形式表现。设备12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。
[0154]
总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(isa)总线,微通道体系结构(mac)总线,增强型isa总线、视频电子标准协会(vesa)局域总线以及外围组件互连(pci)总线。
[0155]
设备12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被设备12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
[0156]
系统存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(ram)30和/或高速缓存存储器32。设备12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图9未显示,通常称为“硬盘驱动器”)。尽管图9中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如cd-rom,dvd-rom或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。系统存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
[0157]
具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如系统存储器28中,这样的程序模块42包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42
通常执行本发明所描述的实施例中的功能和/或方法。
[0158]
设备12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该设备12交互的设备通信,和/或与使得该设备12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口22进行。并且,设备12还可以通过网络适配器20与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与设备12的其它模块通信。应当明白,尽管图中未示出,可以结合设备12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。
[0159]
处理单元16通过运行存储在系统存储器28中的程序,从而执行各种功能应用以及数据处理,例如实现本发实施例所提供的一种轨迹规划方法步骤,该方法包括:
[0160]
获取对目标车辆进行轨迹决策所获得的初始轨迹信息;
[0161]
构建目标车辆对应的目标轨迹规划非线性命题,其中,目标轨迹规划非线性命题包括:轨迹代价函数和行驶约束条件,行驶约束条件包括:基于隧道化建模方式确定的碰撞躲避约束条件;
[0162]
根据初始轨迹信息,对目标轨迹规划非线性命题进行求解,确定出目标车辆对应的目标规划轨迹。
[0163]
当然,本领域技术人员可以理解,处理器还可以实现本发明任意实施例所提供的轨迹规划方法的技术方案。
[0164]
实施例五
[0165]
本实施例提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明任意实施例的轨迹规划方法步骤,该方法包括:
[0166]
获取对目标车辆进行轨迹决策所获得的初始轨迹信息;
[0167]
构建目标车辆对应的目标轨迹规划非线性命题,其中,目标轨迹规划非线性命题包括:轨迹代价函数和行驶约束条件,行驶约束条件包括:基于隧道化建模方式确定的碰撞躲避约束条件;
[0168]
根据初始轨迹信息,对目标轨迹规划非线性命题进行求解,确定出目标车辆对应的目标规划轨迹。
[0169]
本发明实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是但不限于:电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
[0170]
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限
于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
[0171]
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、rf等等,或者上述的任意合适的组合。
[0172]
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如java、smalltalk、c ,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络,包括局域网(lan)或广域网(wan),连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
[0173]
本领域普通技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个计算装置上,或者分布在多个计算装置所组成的网络上,可选地,他们可以用计算机装置可执行的程序代码来实现,从而可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件的结合。
[0174]
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献