什么是规划

规划的本质是搜索。

基于目标函数,找到一个安全舒适的行驶轨迹。

【Planning】路径规划方法汇总

机器学习的话,其实是一个寻找mapping的过程,state to action 的mapping

搜索是寻找action去optimize objective function 的过程。

如何搜索

【Planning】路径规划方法汇总

可以通过BFS, DFS进行搜索,不过效率不高,他们都是Non-informative search

【Planning】路径规划方法汇总

A*为代表的方法使用了目标的信息,属于informative search,效率会高些。

【Planning】路径规划方法汇总

对于 RL, prioritize search目标的时候是通过目前的cost加上heuristic cost,就是value function,对于RL,怎么设计和找到这个value function是个关键点。

A*算法对于无人车的路径规划有多远?

【Planning】路径规划方法汇总

对于无人车而言,周围是个Partially observed dynamics environment,这种情况下,A*是有局限性的,A*本身是个Global Optimization,要求对整个环境全知,部分了解就会出问题。因此A*现在只应用在Global routing。

对于Partially observed dynamics environment,可以用贪心算法,表现出来就是Incremental search。

【Planning】路径规划方法汇总

 无人车还要考虑车辆自己的运动模型,让平滑规划的轨迹,使其可以行驶。

【Planning】路径规划方法汇总

【Planning】路径规划方法汇总

 Motion Planning 规划方法

【Planning】路径规划方法汇总

【Planning】路径规划方法汇总

 【Planning】路径规划方法汇总

【Planning】路径规划方法汇总

 dubin path对于无人车来说是不可以的。因为curvature不是连续的。

【Planning】路径规划方法汇总

【Planning】路径规划方法汇总

【Planning】路径规划方法汇总

【Planning】路径规划方法汇总

PRM 全空间撒点

【Planning】路径规划方法汇总

要求对环境全知,很难实现。

【Planning】路径规划方法汇总

通过partial observed 的环境,在一个半径内撒点,找新散布的点里那些距离原来的点较近。

【Planning】路径规划方法汇总

【Planning】路径规划方法汇总

 【Planning】路径规划方法汇总

MIT提出了改进,用平滑线去sampling, 但也有问题:动态障碍物和曲线不够平滑,主要原因是随机的撒点。

 【Planning】路径规划方法汇总

 局限性,不够平滑。

【Planning】路径规划方法汇总

 curvature连续的曲线。

方格,没有人实际这么开车。

【Planning】路径规划方法汇总

规则话的sampling,指数级的加点。computational intractable

改进,先撒点,然后再用平滑曲线去连接。重复计算简化下来------动态规划

【Planning】路径规划方法汇总

说的简单点,最开始的Lattice Planning是不长记性的,动态规划是长记性的。

继续改进,用SL坐标系。

【Planning】路径规划方法汇总

 路径迭代算法,可以找到一个局部最优解,但是不是全局最优,有时会出问题。

【Planning】路径规划方法汇总

【Planning】路径规划方法汇总

把曲线funtional话,l=f(s),优化function的objective。上面用到的方法是Quadratic Programming 凸优化,convex programming,在凸空间里,可以用二次规划很快找到最优解。

最开始的 Lattice Planner, exponential exploration时间复杂度【Planning】路径规划方法汇总 太慢,是N的指数,优化后的DP,把相似的计算结果存储,复杂度是polynomial time,再进一步, 把目标函数处理成凸函数,Quadratic Programming,用牛顿法优化,二次迭代, double exponential,通过几次迭代就可以得到解, 比binary Search还要快。QP的问题是,QP要求目标函数是凸的,并且 Search Space 也是凸的。QP没法处理非凸的问题,但是速度快。

不同方法比较

【Planning】路径规划方法汇总

Graph search based planners: Dijkstra algorithm,A-star algorithm (A*),State Lattice;

traverse a state space to get from point A to point B. This state space is often represented as an occupancy grid or lattice that depicts where objects are in the environment.

Sampling based planners: Probabilistic Road Maps (PRM)Rapidly-exploring Random Tree (RRT);

Interpolating Curve Planners:Lines,Circles,Clothoid,Polynomial,Bezier,Spline;

Numerical Optimization: Function Optimization.

【Planning】路径规划方法汇总

【Planning】路径规划方法汇总

参考资料:

[1] Apollo 进阶课程

[2] A Review of Motion Planning Techniques for Automated Vehicles

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2021-09-28
  • 2021-12-21
  • 2021-09-07
  • 2022-01-23
  • 2021-07-11
猜你喜欢
  • 2021-11-01
  • 2021-07-15
  • 2021-07-28
  • 2022-12-23
  • 2022-12-23
  • 2021-10-27
  • 2021-12-01
相关资源
相似解决方案