Apollo路径-速度规划轨迹⽣成⽅法
Apollo路径-速度规划轨迹⽣成⽅法
Apollo是百度开源的⽆⼈驾驶解决⽅案,其中规划中会按照不同的场景⽣成⼀条临时的路径,通过临时路径来障碍物规避,或者临时变道。情况
假设前⾯有⼀个缓慢⾏驶的汽车离我们越来越近。
⽣成位置路点
那么Apollo⾸先会根据当前的情况,⽣成很多个不同的运动路径,这些运动路径都可以躲避开这个社会车辆。
1、这⾥⾸先会将这⾥的道路按照前进⽅向划分为若⼲个⽚段;
2、然后在每个⽚段上进⾏随机撒点;
3、将所有的点随机连接起来,⽣成⼀系列前进路径;
路线评估
然后Apollo会根据评估函数,对⽣成的这么多条路线,进⾏评估和打分,并选取出最合适的那⼀条。
汽车其中具体的评估因素有:
1、安全系数;
2、离道路中⼼的距离;
3、车辆模型限制,例如转向最⼤⾓度等等;
4、曲线的平滑度;
5、速度和曲率的变化关系;
6、与障碍物的距离;
7、车辆⾃⾝的压⼒;
根据ST图进⾏速度规划
获取到最佳的⾏驶路径后,我们根据ST图来进⾏⾏驶路径的速度规划。
ST图,顾名思义就是⾏驶长度和Time的⼀条曲线,反应了SL坐标系下的长度和时间的曲线关系
ST图对障碍物的处理
如果在⾏驶过程中出现了⼀些障碍物,需要停下 或者躲避,那么在ST图上就表现出是⼀个在t1-t2阶段的障碍物⽅块。
根据障碍物⽣成速度-时间曲线
这样就获取了多条在当前路径下的ST曲线,然后我们再根据不同的限制,再次进⾏评估,选取出⼀条
最适宜的ST曲线。
使⽤⼆次规划平滑ST曲线