1、路径规划使用三个输入,第一个输入为地图,Apollo提供的地图数据包括公路网和实时交通信息。第二个输入为我们当前在地图上的位置。第三个输入为我们的目的地,目的地取决于车辆中的乘客。
2、将地图转为图形
-
该图形由“节点”(node)和“边缘”(edge)组成。节点代表路段,边缘代表这些路段之间的连接。我们可以对一个节点移动到另一个节点所需的成本进行建模。

3、路径查找算法A*
从初始节点开始,我们需要确定8个相邻节点中,哪个是最有希望的候选节点。对于每个候选节点,我们考虑两件事情。首先,我们计算从开始节点到候选节点的成本。然后,我们估计从候选节点前往目的地的成本。对于每个候选节点,我们通过添加g值和h值来计算总和,即f值。最佳候选节点是f值最小的节点。


4、轨迹生成
1、我们可能需要与试图在我们前面掉头的汽车互动,或者我们可能希望超过一辆在公路上行驶的慢车。这些场景需要更低级别、更高精确度的规划。我们将这一级别的规划称为轨迹生成。轨迹生成的目标是生成一系列路径点所定义的轨迹。
2、每个路径点分配了一个时间戳和速度,这些时间戳和空间上的两个维度(2D position)共同创建了一个三维轨迹(3D Trajectory)。我们还为每个路径点指定了一个速度,用于确保车辆按时到达每个路径点。

3、成本函数为每个轨迹分配了一个“成本”,我们选择成本最低的轨迹。轨迹“成本”由各种犯规处罚组成,例如:偏离道路中心,有可能产生碰撞,速度限制,轨迹的曲率和加速度让乘客感到不舒服等。

5、Frenet坐标系
1、我们通常使用笛卡尔坐标系描述物体的位置,但笛卡尔坐标系对车辆来说并不是最佳选择。即使给出了车辆位置(x,y),如果我们不知道道路在哪,就很难知道车辆行驶了多远也很难知道车辆是否偏离了道路中心。

2、Frenet坐标系描述了汽车相对于道路的位置。s代表沿道路的距离,也被称为纵坐标。d表示与纵向线的位移,也被称为横坐标。在道路的每个点上,横轴和纵轴都是垂直的。纵坐标表示道路中的行驶距离,横坐标表示汽车偏离中心线的距离。

6、路径-速度解耦规划
路径-速度解耦规划将轨迹规划分为两步:路径规划、速度规划。1)首先在路径规划步骤中生成候选曲线,这是车辆可行驶的路径,然后按成本对路径进行排名并选择成本

本文详细阐述了无人驾驶汽车的路径规划过程,包括地图转图形、A*算法、轨迹生成(路径-速度解耦、Frenet坐标系、ST图、Lattice规划),以及控制环节(PID、LQR、MPC),展示了从高-level到低-level的决策制定策略。
最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



