运动规划分为哪五个基本方法?
规划与环境
最初:把车当成一个质点模型、刚体
怎样生成平滑的曲线
上一堂课:
- 先离散化再优化
- 直接优化
如何建立车辆的模型
光当做刚体不行,我们还需要考虑转向,而转向有车头朝向有关。
单车模型
前后轮的转向半径是不一样的。
主车和障碍物的关系
如何判断两个物体是否相交
方法一:遍历所有的边
如果两个图像不相交,一定可以找到一条直线将两者分隔开。(这条直线可以是图像的某一条边)
方法二:二维投影到一维
平滑的道路中心线非常重要
G2 smooth:曲率连续
我们需要得到一个曲率连续的曲线,一条曲线你看着十分平滑,但他的曲率不一定连续(比如直线接一个半圆再接一个直线)
做曲线平滑需要考虑到动力学模型,这样做出来的规划路线才是实际可操作的。
龙格现象:有许多离散的点,我们用高阶多项插值的方式来近似表示轨迹,但我们无法控制抖动幅度。
interpolation:插值
三阶曲线优化:
- 曲线平滑
- 曲线的曲率连续(二阶导数)
- 三阶导数连续
道路中心线上生成很多离散的点,不要求经过所有的点,但不能离太远,看能否生成一条光滑的曲线。(光滑曲线是需要多阶平滑的)
一条曲线,截成多段,每段用一个多项式来表述,保证在接口处的位置和导数都是能够映射到的。
如何建立一个平滑的坐标系
原本的方法:生成很多点,用直线将点连接,再做平滑。
不足:这样生成的曲线可能会撞到边界
平滑的曲线:高阶导数平滑
cubic bspline:曲率是平滑的(曲率连续),但会出现波峰(这会导致在打方向盘时摇摆不定)
关注点:既满足约束条件,又足够平滑
光滑性的度量(指标):
如何生成一个平滑的曲线:
- picecwise polynomial(一维的,描述二维不太够)
- spline 2D
旋转不变性:一个多项式经过旋转后,多项式不变
通过证明可知,上图中的式子具有旋转不变性。
分成一节一节,保证每一节都是N阶可导(平滑),
接点处平滑靠端点约束条件保证。
参考系平滑。
螺旋曲线(spiral path)