自动驾驶笔记(四)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/CSDN_XCS/article/details/82502283

1. 规划简介

在规划中,我们结合高精度地图、定位和预测来构建车辆轨迹。

  • 规划的第一步 是 路线规划,侧重于怎样从 A 到 B(手机导航系统就是一个例子) 在进行路径规划时,将地图数据作为输入,并输出可行驶路径。
    Apollo 使用路径模块(routing module)处理该任务。
  • 规划的第二步 是轨迹规划,侧重于做出微妙的调整,
    避开障碍物 并为乘客创造平稳的乘车体验
    Apollo 使用规划模块(planning module)处理该任务。

该轨迹由一系列的点定义,每一个点都有关联速度,和一个指示何时应抵达那个点的时间戳( time stamp )

2. Sebastian

你知道如何去 感知、如何去预测,现在你将学到如何去 规划(planning)
做出决策(decision)很难,但也很诱人(fascinating),同时你也会收获很多(rewarding)
我们将在两种不同的背景下讨论 规划:

  • 一个是你想去的地方,也就是一个象征性的城市,计算一下花多少时间能到那里。
  • 另一个是 运动轨迹水平上的规划,你决定执行某个特定操作时,汽车该采取何种转向,这曲线不仅仅是空间曲线,也是时间曲线,你得考虑快或慢或者多快、多慢。

3. 路径规划

路径规划的目的:就是为了从地图上 找到A到B的 最佳路径。
路径规划模块 使用了三个输入:

  1. 地图
    Apollo 提供的地图数据包括 公路网 和实时交通信息
  2. A:我们当前在地图上的位置
  3. B:我们的目的地(取决于车内的乘客)

4.从 地图 到 图(Graph 数据结构)

人们试图从地图上 找到 从A到B的路径时,
我们通常沿着道路追踪,以查看是否存在 通往目的地的任何路径。
这叫做 搜索

类似地,Apollo 也使用搜索来查找路线,
不同之处在于:
在开始搜索之前,Apollo 将地图转换成了图,以便使用更智能的搜索算法

转换方法:
将 地图数据 重新格式化为 数据结构——图
图 由 节点(node)和 (缘)(edge)组成。
此处,节点 代表 路段,而 边 代表了 路段之间的连接。
这里写图片描述
考虑实际,我们也可以对 一个节点移动到 另一个节点的成本进行建模
例如:现实中,左转弯 比 右转弯更加费劲!所以从 Node1到Node4的成本 高于到Node2的成本。

一旦转换为 图,就可以应用现在计算机领域中,已经存在的各种在图中查找路径的快速算法。
最后,将在图中找到的路径,映射回地图中即可。

猜你喜欢

转载自blog.csdn.net/CSDN_XCS/article/details/82502283