技术文档 | 二次规划(QP)样条路径
参考:
Apollo的Planning分为参考线平滑、决策、路径规划、速度规划等部分。
从整体上来说,规划模块的架构分为两个部分:一部分负责对数据的监听、获取和预处理;另一部分负责管理各个优化模块。数据进入后,对其综合处理为规划模块的内部数据结构,由任务管理器调度合适的优化器进行各个优化任务。综合优化的结果,经过最终的验证后,输出给控制模块。
在设计上,实现了策略的可插拔,使得各个优化器可以灵活配置不同策略,提升迭代效率。
EM-Planner是具体的规划实施类,它基于高精地图、导航路径及障碍物信息作出实际的驾驶决策,包括路径、速度等方面。
首先使用DP(动态规划)方法确定初始的路径和速度,再利用QP(二次规划)方法进一步优化路径和速度,以得到一条更平滑的轨迹,既满足舒适性,又方便车辆操纵。
基于样条的车辆轨迹优化二次规划,为了寻求更优质更平滑,体感更好的路径,需要使用二次规划的方法寻找。需要的限制条件有:曲率和曲率连续性、贴近中心线、避免碰撞。
将路径划分为n段,每段路径用一个多项式来表示。
每个样条段 i 都有沿着参考线的累加距离。每段的路径默认用5阶多项式表示:
优化问题:
初始点约束:
终点约束:
平滑节点约束:
点采样边界约束:
在路径上均匀的取样m个点,检查这些点上的障碍物边界。将这些约束转换为QP约束不等式,使用不等式: