Dubins曲线简介
Dubins曲线是在满足曲率约束和规定的始端和末端的切线方向的条件下,连接两个二维平面(即X-Y平面)的最短路径,并假设车辆行驶的道路只能向前行进。如果车辆也可以在反向行驶,则路径为Reeds–Shepp曲线。 在1957念, Lester Eli Dubins (1920–2010) 证明任何路径都可以由最大曲率和/或直线段组成(两点之间的路径必须存在)。 换句话说,连接两点的最短路径将通过最大曲率的曲的圆弧和直线段的构成。 后来Pontryagin的最大原则证明了相同的结果。
如图1所示,A是目标点,B是起始点,A、B两点的方向均为箭头所指方向(竖直向上),则从点B到点A的最短路径为紫色线段,此处的紫色线段即为Dubins曲线。 Dubins曲线通常用于机器人和控制理论领域,作为规划轮式机器人、飞机和水下车辆路径的一种方式。
Dubins分析
例如,在轮式机器人的情况下,系统的简单运动学模型是:
其中(x,y)是汽车的位置,θ 是航向,汽车以恒定速度移动 V,转弯速度控制 u 是有界的。 在这种情况下,最大转弯速率对应于某个最小转弯半径(以及等效的最大曲率)。 规定的初始和终端切线方向对应于初始和终端坐标。 Dubins 路径给出了两个定向点的最短路径,这对于轮式机器人模型是可实际运行路线。 最佳路径类型可以用与右转(R),左转(L)或驾驶’直(S)’的汽车类比来描述。 最佳路径总是至少有六种类型之一:RSR,RSL,LSR,LSL,RLR,LRL。 例如,考虑到对于某些给定的初始位置和最终位置以及切线,最佳路径显示为“RSR”类型。 然后这对应于右转弧(R),接着是直线段(S),接着是另一个右转弧(R)。 沿着这个序列中的每个段移动适当的长度将形成最短的曲线,它将起始点A连接到终点B,并在每个端点处具有所需的切线并且不超过给定的曲率。 例如:
RSL Dubins 路径
RSR Dubins 路径
LRL Dubins 路径
Dubins曲线存在的问题
Dubins间隔问题是Dubins路径问题的一个关键点,即在初始点和终点指定了航向的间隔。 也就是说路径在初始点和终点处的切线方向被限制在指定的间隔内。
Matlab代码
图1中Matlab代码可以直接运行~