留言板

尊敬的读者、作者、审稿人, 关于本刊的投稿、审稿、编辑和出版的任何问题, 您可以本页添加留言。我们将尽快给您答复。谢谢您的支持!

姓名
邮箱
手机号码
标题
留言内容
验证码

一种新的自动驾驶轨迹规划方法

梁广民

梁广民. 一种新的自动驾驶轨迹规划方法[J]. 电子科技大学学报, 2017, 46(4): 600-606. doi: 10.3969/j.issn.1001-0548.2017.04.020
引用本文: 梁广民. 一种新的自动驾驶轨迹规划方法[J]. 电子科技大学学报, 2017, 46(4): 600-606. doi: 10.3969/j.issn.1001-0548.2017.04.020
LIANG Guang-min. Novel Trajectory Planning Method for Autonomous Driving[J]. Journal of University of Electronic Science and Technology of China, 2017, 46(4): 600-606. doi: 10.3969/j.issn.1001-0548.2017.04.020
Citation: LIANG Guang-min. Novel Trajectory Planning Method for Autonomous Driving[J]. Journal of University of Electronic Science and Technology of China, 2017, 46(4): 600-606. doi: 10.3969/j.issn.1001-0548.2017.04.020

一种新的自动驾驶轨迹规划方法

doi: 10.3969/j.issn.1001-0548.2017.04.020
基金项目: 

广东省自然科学基金 2016A030310027

详细信息
    作者简介:

    梁广民(1972-), 男, 副教授, 主要从事计算机网络方面的研究

  • 中图分类号: TP393.17

Novel Trajectory Planning Method for Autonomous Driving

图(8)
计量
  • 文章访问数:  3698
  • HTML全文浏览量:  1146
  • PDF下载量:  247
  • 被引次数: 0
出版历程
  • 收稿日期:  2015-06-02
  • 修回日期:  2015-11-20
  • 刊出日期:  2017-07-30

一种新的自动驾驶轨迹规划方法

doi: 10.3969/j.issn.1001-0548.2017.04.020
    基金项目:

    广东省自然科学基金 2016A030310027

    作者简介:

    梁广民(1972-), 男, 副教授, 主要从事计算机网络方面的研究

  • 中图分类号: TP393.17

摘要: 提出了一种轨迹规划算法,该算法可以为自动驾驶生成舒适安全的轨迹,障碍物通过摄像头或车间通讯的协同感知消息((CAM))和分散化环境通知消息(DENM)方式感知。该算法主要分为3个部分,首先由轨迹生成模块生成舒适的轨迹簇,其次由于传感器可能存在的误差,对其他交通车的位置和速度进行估计,最后由轨迹选择模块选择最适合的轨迹。为了帮助无人车做出决策,建立了碰撞概率模型。在MATLAB环境下的仿真证明了该算法安全可靠。

English Abstract

梁广民. 一种新的自动驾驶轨迹规划方法[J]. 电子科技大学学报, 2017, 46(4): 600-606. doi: 10.3969/j.issn.1001-0548.2017.04.020
引用本文: 梁广民. 一种新的自动驾驶轨迹规划方法[J]. 电子科技大学学报, 2017, 46(4): 600-606. doi: 10.3969/j.issn.1001-0548.2017.04.020
LIANG Guang-min. Novel Trajectory Planning Method for Autonomous Driving[J]. Journal of University of Electronic Science and Technology of China, 2017, 46(4): 600-606. doi: 10.3969/j.issn.1001-0548.2017.04.020
Citation: LIANG Guang-min. Novel Trajectory Planning Method for Autonomous Driving[J]. Journal of University of Electronic Science and Technology of China, 2017, 46(4): 600-606. doi: 10.3969/j.issn.1001-0548.2017.04.020
  • 目前的无人车较多利用激光雷达和摄像头感知周围环境,这相对局限在视野范围内。通过车间通讯方法,如车载自组织网络,即使用CAM和DENM广播消息[1]就可以摆脱这一限制,使无人车辆提前感知到视距外的危险情况。本文假设车辆之间通过CAM广播交换状态信息,这一假设也可以被替换成激光雷达或摄像头。本文仅仅专注于如何实现安全舒适的轨迹,对信息源不加以区分。文献[2]提出了基于开销函数实现在高速路上的自动驾驶,按照开销函数最小的原则选择最佳路径。文献[3]基于人工势场方法[4]提出了一系列势场函数部件帮助自动或半自动驾驶车辆在高速公路上巡航,最终的总势场是由一系列部件如车道保持势场、速度偏好势场等叠加而成。然而人工势场方法的一个缺点是在大量障碍物中可能会导致无人车困在局部极小无法逃脱。为了解决这个问题一系列改进算法被提出,如用于逃离局部极小值[5-8],但这些方法需要很多的时间和空间开销。文献[9]基于速度障碍[10]提出了帮助无人车躲避运动障碍物的方法。文献[11]通过转换汽车的运动学约束到链式系统,可选的轨迹簇和相应的控制量被表示为一个参数可调的多项式,该方法考虑了车辆的运动学但是却没有给出如何选择最优轨迹。

    • 本文提出的动态轨迹规划算法将一个完整的规划轨迹分解到若干个规划周期内进行规划,如图 1所示。

      图  1  系统流程图

      记一个规划周期的时间长度为Δt,主车在一个规划周期Δt的开始时刻t0速度为v(t0)。对交通车未来一段时间的状态预估准确性会随着时域增加而显著降低,同时由于CAM消息的间隔上限是1 s [3],所以不能将规划周期Δt≤1 s设置过长。由于Δt时间很短,所以假设主车在Δt时间内做匀速运动并且保持前轮转角为一定值比较合理。可以结合当前的路面附着系数得到Δt时间内,主车的速度v(t)和前轮转角δ(t)分别为:

      $$ {v_{{\rm{min}}}} \le v{\rm{(}}t{\rm{)}} \le {v_{{\rm{max}}}}\quad \quad t \in {\rm{(}}{t_0},{t_0} + \Delta t{\rm{]}} $$ (1)
      $$ {\delta _{{\rm{min}}}} \le \delta {\rm{(}}t{\rm{)}} \le {\delta _{{\rm{max}}}}\quad \quad t \in {\rm{(}}{t_0},{t_0} + \Delta t{\rm{]}} $$ (2)
      $$ {\rm{s}}{\rm{.t}}{\rm{.}}\;\;\;\;\;\;{v_{{\rm{max}}}} = v{\rm{(}}{t_0}{\rm{) + }}{a_{{\rm{max}}}}\Delta t $$ (3)
      $$ {v_{{\rm{min}}}} = v{\rm{(}}{t_0}{\rm{) + }}{a_{{\rm{min}}}}\Delta t $$ (4)

      式中,amaxamin分别代表最大加速度和制动加速度,它们的取值应该取决于路面附着系数。

      为了获得舒适的轨迹,设置amax=1 m/s2amin=-1 m/s2δmin=-45°,δmax=45°。记x(t0)、y(t0)、θ(t0)为主车在t0时刻的横纵坐标和偏航角,可以通过稳态状态方程解析地得到车辆在t0+△t时刻的状态${\rm{\{ }}x{\rm{(}}{t_0} + \Delta t{\rm{),}}y{\rm{(}}{t_0} + \Delta t{\rm{),}}\theta {\rm{(}}{t_0} + \Delta t{\rm{)\} }}$,首先计算横摆角变化率为:

      $${\omega _r}(v(t),\delta (t)) = \frac{{v(t)\delta (t)}}{{L(1 + Kv{{(t)}^2})}}\quad \quad t \in ({t_0},{t_0} + \Delta t]$$ (5)
      $$ K = \frac{m}{{{L^2}}}\left( {\frac{a}{{{k_2}}} - \frac{b}{{{k_1}}}} \right) $$ (6)

      式中,m为主车质量;L为主车轴距;a为主车质心距前轴的距离;b为主车质心距后轴的距离;k1为前轮侧偏刚度;k2为后轮侧偏刚度;v(t)为$t \in ({t_0},{t_0} + \Delta t]$规划周期内主车沿车体方向纵向速度;δ(t)为$t \in ({t_0},{t_0} + \Delta t]$规划周期内的前轮转角。所以可以得到主车在$t \in ({t_0},{t_0} + \Delta t]$规划周期内的稳态转向圆周运动半径为:

      $$R(v(t),\delta (t)) = \frac{{v(t)}}{{{\omega _r}(v(t),\delta (t))}}\;\;t \in ({t_0},{t_0} + \Delta t]$$ (7)

      结合式(5) 和式(7),有:

      $$R(v(t),\delta (t)) = \frac{{L(1 + Kv{{(t)}^2})}}{{\delta (t)}}\;\;t \in ({t_0},{t_0} + \Delta t]$$ (8)

      如果假定主车初始位置为${\rm{\{ }}x{\rm{(}}{t_0}{\rm{),}}y{\rm{(}}{t_0}{\rm{),}}\theta {\rm{(}}{t_0}{\rm{)\} }}$,则可以将$t \in ({t_0},{t_0} + \Delta t]$时域内任意时刻的主车位置表示为:

      $$ \begin{array}{l} x(t) = x({t_0}) + \frac{{L(1 + Kv{{(t)}^2})}}{{\delta (t)}}\sin \left( {\frac{{v(t)\delta (t)}}{{L(1 + Kv{{(t)}^2})}}t} \right)\\ t \in ({t_0},{t_0} + \Delta t] \end{array} $$ (9)
      $$ \begin{array}{l} y(t) = y({t_0}) + \frac{{L(1 + Kv{{(t)}^2})}}{{\delta (t)}}\left( {1 - \cos \left( {\frac{{v(t)\delta (t)}}{{L(1 + Kv{{(t)}^2})}}t} \right)} \right)\\ t \in ({t_0},{t_0} + \Delta t] \end{array} $$ (10)
      $$ \theta (t) = \theta ({t_0}) + \frac{{v(t)\delta (t)}}{{L(1 + Kv{{(t)}^2})}}t\quad \quad t \in ({t_0},{t_0} + \Delta t] $$ (11)

      式(9)~式(11) 是汽车在给定起始速度v(t0)和横摆角θ(t0)的条件下,对应于不同的v(t),δ(t), $t \in ({t_0},{t_0} + \Delta t]$输入运动学的响应,可以较为准确地反映车辆的运动轨迹,而且数值计算效率高、实时性好。

      对平均速度空间$v(t) \in [{v_{\min }},{v_{\max }}]$,$t \in ({t_0},{t_0} + \Delta t]$和可能的前轮转角$\delta (t) \in [{\delta _{\min }},{\delta _{\max }}]$, $t \in ({t_0},{t_0} + \Delta t]$进行采样,假定当前采样值为$\dot v(t) \in [{v_{\min }},{v_{\max }}]$, $\dot \delta (t) \in [{\delta _{\min }},{\delta _{\max }}]$。然后分别通过式(9)~式(11) 计算得到$t \in ({t_0},{t_0} + \Delta t]$时刻的车辆状态${\rm{\{ }}x{\rm{(}}{t_0} + \Delta t{\rm{),}}y{\rm{(}}{t_0} + \Delta t{\rm{),}}\theta {\rm{(}}{t_0} + \Delta t{\rm{)\} }}$和车辆走过的轨迹$l({t_0},\Delta t,\dot v,\dot \delta )$,当采样遍历了平均速度空间和前轮转角空间后,得到主车在当前规划周期内可能行驶的轨迹集合为:

      $$ L({t_0},\Delta t,v(t),\delta (t)) = \mathop \cup \limits_{\scriptstyle\forall \dot \delta \in \delta (t)\atop \scriptstyle\forall \dot v \in v(t)} l({t_0},\Delta t,\dot v,\dot \delta ),t \in ({t_0},{t_0} + \Delta t] $$ (12)

      式(9)~式(11) 没有对主车的前轮转角δ(t)和速度空间v(t)做更多限制,仅仅是粗略定义了物理意义的上下限。但是在实际应用过程中δ(t)和v(t)的取值会影响到车辆行驶过程的稳定性和乘客乘坐时的舒适性,所以有必要对平均速度空间${v_{\min }} \le v(t) \le {v_{\max }}$和可能的前轮转角空间${\delta _{\min }} \le \delta (t) \le {\delta _{\max }}$进行进一步地限定。采用横向力系数μ量化速度v(t)和前轮转角δ(t)对舒适性和稳定性的影响,有:

      $$ \mu (v(t),\delta (t)) = \frac{{v{{(t)}^2}}}{{127R(v(t),\delta (t))}} - {i_h} $$ (13)

      式中,ih为道路的超高值,在平坦的道路上取0。已有研究表明当μ达到0.15时乘客可以感到曲线存在,行驶舒适平稳。当μ达到0.39时感觉不舒适且行驶不稳定。本文取μ≤0.25。

      所以考虑行驶稳定性和乘客舒适程度的前轮转角空间和速度空间可以表示为:

      $$ \begin{array}{l} {\{ (\delta (t),v(t))\} _{{\rm{comfort}}}} = \\ \{ (\forall \dot \delta \in \delta (t),\forall \dot v \in v(t))|\mu (\dot v,\dot \delta ) \le 0.25\} \end{array} $$ (14)

      通过式(14) 排除掉μ>0.25的点,可以排除行驶不稳定的可能性。对于任意一个规划周期∀△t,主车首先计算满足稳定性和舒适性的${\{ (\delta (t),v(t))\} _{{\rm{comfort}}}}$,并且根据这个集合得到Δt时间之后舒适稳定的车辆轨迹集合为:

      $$ \begin{array}{l} L({t_0},\Delta t,v(t),\delta (t)) = \\ \mathop \cup \limits_{\{ (\forall \dot \delta \in \delta (t),\forall \dot v \in v(t))|\mu (\dot v,\dot \delta ) \le 0.25\} } l({t_0},\Delta t,\dot v,\dot \delta ),t \in ({t_0},{t_0} + \Delta t] \end{array} $$ (15)

      在每个规划周期$t \in ({t_0},{t_0} + \Delta t]$,$i = 0,1,2,3, \cdots ,$开始时,主车都会重复上述过程,根据式(15) 生成这个规划周期内的备选轨迹簇$L({t_0},\Delta t,v(t),\delta (t))$,然后输出至碰撞概率模块。

    • 为了便于计算,车辆被假设为半径r的圆形。当A车和B车的行驶路线不同且有交点O时,会有碰撞的可能性。为了方便分析,把AB两车行驶路线的交点位置O为中心定义冲突区。

      冲突区:以两辆车AB前进路线的交点O为圆心,较大的车辆半径为半径的圆形区域${C_{{\rm{area}}}}(O,{r_c})$。其中:

      $$ {r_c} = \max ({r_A},{r_B}) $$ (16)

      基于冲突区${C_{{\rm{area}}}}(O,{r_c})$的碰撞避免条件为:A进入冲突区时B已经通过,或者A离开冲突区时B还没到。记A进入冲突区时B已经通过为事件EA离开冲突区时B还没到为事件F。所以两车AB发生侧向碰撞的概率可以表示为:

      $$ {P_{c{\rm{,}}AB}} = (1 - P({t_{BE}} < {t_{AE}}))(1 - P({t_{AF}} < {t_{BF}})) $$ (17)

      式中,tBEB通过冲突区需要的时间;tAEA进入冲突区需要的时间;tAFA通过冲突区需要的时间;tBFB进入冲突区需要的时间。

      假设AB两车的驾驶员保持匀加速运动至离开冲突区,用当前时刻AB两车的车辆状态推测未来一段时域内AB两车的轨迹。记t0时刻AB两车的加速度为aA(t0),aB(t0), 速度为vA(t0),vB(t0), 有:

      $$ {a_{{\rm{min}}}} \le {a_A},{\rm{ }}{a_B} \le {a_{{\rm{max}}}} $$ (18)

      对于AB两车,本文使用三角分布预测驾驶员在未来一段时域内选取某个加速度aAaB的概率,并且假设驾驶员选择相互独立,有:

      $$ \begin{array}{l} f({a_A}|{a_{\min }},{a_{\max }},{a_A}({t_0})) = \\ \left\{ {\begin{array}{*{20}{l}} {\frac{{2(x - {a_{\min }})}}{{({a_{\max }} - {a_{\min }})({a_A}({t_0}) - {a_{\min }})}},{a_{\min }} \le x \le {a_A}({t_0})}\\ {\frac{{2({a_{\max }} - x)}}{{({a_{\max }} - {a_{\min }})({a_{\max }} - {a_A}({t_0}))}},{a_A}({t_0}) \le x \le {a_{\max }}} \end{array}} \right. \end{array} $$ (19)
      $$ \begin{array}{l} f({a_B}|{a_{\min }},{a_{\max }},{a_B}({t_0})) = \\ \left\{ {\begin{array}{*{20}{l}} {\frac{{2(x - {a_{\min }})}}{{({a_{\max }} - {a_{\min }})({a_B}({t_0}) - {a_{\min }})}},{a_{\min }} \le x \le {a_B}({t_0})}\\ {\frac{{2({a_{\max }} - x)}}{{({a_{\max }} - {a_{\min }})({a_{\max }} - {a_B}({t_0}))}},{a_B}({t_0}) \le x \le {a_{\max }}} \end{array}} \right. \end{array} $$ (20)

      将(aAaB)视为一个二维随机变量,由于驾驶员的选择是相互独立的,所以可以得到:

      $$ P({a_A},{a_B}) = P({a_A})P({a_B}) $$ (21)

      记两车到冲突区边缘的距离为XAXB,可以得到:

      $${t_{BE}} = \frac{{\sqrt {{v_B}{{({t_0})}^2} + 2{a_B}({X_B} + 2{r_c} + {r_B})} - {v_B}({t_0})}}{{{a_B}}}$$ (22)
      $${t_{AE}} = \frac{{\sqrt {{v_A}{{({t_0})}^2} + 2{a_A}{X_A}} - {v_A}({t_0})}}{{{a_A}}}$$ (23)
      $${t_{AF}} = \frac{{\sqrt {{v_A}{{({t_0})}^2} + 2{a_A}({X_A} + 2{r_c} + {r_A})} - {v_A}({t_0})}}{{{a_A}}}$$ (24)
      $${t_{BF}} = \frac{{\sqrt {{v_B}{{({t_0})}^2} + 2{a_B}{X_B}} - {v_B}({t_0})}}{{{a_B}}}$$ (25)

      AB两车t0时刻的坐标为$({x_A}({t_0}),{y_A}({t_0})),({x_B}({t_0}),{y_B}({t_0}))$,在式(17) 的基础上可以定义一个AB两车未来是否发生碰撞的判定函数为:

      $${\rm{ifcollision(}}A,B{\rm{)}} = \left\{ \begin{array}{l} 0\quad \quad {\kern 1pt} {\kern 1pt} {t_{BE}} < {t_{AE}}{\rm{或}} {t_{AF}} < {t_{BF}}\\ 1\quad \quad \rm{其他} \end{array} \right.$$ (26)

      相撞概率应该等于引起AB两车相撞的二维随机变量$({a_A},{a_B})$相应取值概率的积分为:

      $$ {P_{c{\rm{,}}AB}} = \int_{{\rm{ }}{a_A}} {\int_{{\rm{ }}{a_B}} {P({a_A},{a_B}){\rm{ifcollision(}}A,B{\rm{)d}}{a_A}{\rm{d}}{a_B}} } $$ (27)
    • 在速度障碍物方法的基础上设计了追尾碰撞概率模型。

      1) 速度障碍物

      速度障碍物[10]是为了解决在动态环境下的运动规划而提出的方法,它可以躲避静态和动态的障碍物,是基于当前车辆和障碍物的速度和位置,在速度空间中选择合适的速度集合,以躲避障碍物。

      速度障碍物如图 2所示,图中,两个圆形的物体ABt0时刻,它们分别以${v_A}({t_0})$、${v_B}({t_0})$的速度运动,假设A代表车辆,B代表障碍物,并且它们在未来一段时间保持速度不变,速度障碍物可以在AB保持速度不变的前提下判定它们将来是否发生碰撞。该方法首先将A缩小至一个点A',然后将B的半径增加至AB的半径和,记为B'。

      图  2  速度障碍物

      于是可以定义碰撞区(collision cone)为${\rm{C}}{{\rm{C}}_{A,B}}$。当A'、B'的相对速度位于${\rm{C}}{{\rm{C}}_{A,B}}$中时,将在未来引起碰撞:

      $$ {\rm{C}}{{\rm{C}}_{A,B}}{\rm{ = }}\{ {v_{A,B}}({t_0})|{\lambda _{A,B}}({t_0}) \cap B' \ne \emptyset \} $$ (28)

      式中,${v_{A,B}}({t_0})$代表A'、B'在t0时刻的相对速度;${\lambda _{A,B}}({t_0})$是${v_{A,B}}({t_0})$所在的直线。图 2中的椎体以A'为顶点,以A'到B'的两条切线${\lambda _f}$、${\lambda _r}$为边界。任何位于这个椎体内的相对速度都将引起未来一段时间后AB的碰撞。为了导出可能引起碰撞的A的绝对速度表达式,将${\rm{C}}{{\rm{C}}_{A,B}}$和B'的速度做明科夫斯基和可以得到${\rm{V}}{{\rm{O}}_{A,B}}$为:

      $$ {\rm{V}}{{\rm{O}}_{A,B}}({t_0}) = {\rm{C}}{{\rm{C}}_{A,B}}({t_0}) \oplus {v_B}({t_0}) $$ (29)

      式中,⊕代表明科夫斯基和运算。${\rm{V}}{{\rm{O}}_{A,B}}({t_0})$将A的绝对速度分为了与B碰撞和不与B碰撞两个集合。可以保证,如果${v_A}({t_0})$不在${\rm{V}}{{\rm{O}}_{A,B}}({t_0})$中,那么任意未来一段时间内A都不会与B碰撞:

      $$A\left( t \right) \cap B\left( t \right) = \emptyset {\kern 1pt} {\kern 1pt} {\rm{if}}{\kern 1pt} {v_A}\left( {{t_0}} \right) \cap V{O_{A,B}}\left( {{t_0}} \right) = \emptyset ,{\kern 1pt} {\kern 1pt} t \in \left( {{t_0},\infty } \right)$$ (30)

      为了躲避多个障碍物,需要使A的绝对速度${v_A}({t_0})$与任何一个${\rm{V}}{{\rm{O}}_{A,{B_i}}}({t_0}),{\kern 1pt} \forall i = 1,2, \cdots $不相交,有:

      $${\rm{V}}{{\rm{O}}_A}({t_0}) = \bigcup\limits_{i = 1}^n {{\rm{V}}{{\rm{O}}_{A,{B_i}}}({t_0})} ,{\kern 1pt} \forall i = 1,2, \cdots $$ (31)

      如果A选择不在${\rm{V}}{{\rm{O}}_A}({t_0})$内的速度,将不会与任何障碍物碰撞。对于任何有可能碰撞的路径可以得到和任意障碍的碰撞时间(time to collision, TTC)为:

      $$\begin{array}{l} {\rm{TT}}{{\rm{C}}_{A,{B_i}}} = {\rm{Mint}},\forall t \in \{ t|A + t({v_A}({t_0}) - {v_{{B_i}}}({t_0})) = {B_i}\} ,\\ \forall {B_i} \in \{ {B_i}|{v_A}({t_0}) \cap V{O_{A,{B_i}}}({t_0}) \ne \emptyset \} \end{array} $$ (32)

      2) 指数计算模型

      为了获得规范的概率表达,采用指数函数近似实际的追尾概率。在上一节中,对于任意的两车AB可以使用速度障碍物来判断它们未来是否有碰撞的可能,对于当前时刻t0任意两个可能碰撞的车辆AB,可以获得${\rm{TT}}{{\rm{C}}_{A,B}}({t_0})$。那么AB的追尾概率可以表示为:

      $${P_{c,AB}}({t_0}) = {{\rm{e}}^{ - c * {\rm{TT}}{{\rm{C}}_{A,B}}({t_0})}}$$ (33)

      由于在追尾概率计算过程中使用了反应无人车对障碍物恐惧程度的调节因子c,所以可以对不同类型的车辆类型或者驾驶员的激进程度取相应的调节因子c。如图 3所示,随着c值的增大,对相同TTC所引起的碰撞概率估计值会变小,可以用较小的c值对应小型车辆或者保守的驾驶策略,而用较大的c值对应大型车辆或者较为激进的驾驶策略。

      图  3  因子c对追尾碰撞概率的影响

    • 状态估计模块从外部接口模块接收CAMs和DENMs,跟据CAMs和DENMs中的车辆状态信息和延迟预测其他交通车当前的状态,然后传给碰撞概率模块进行碰撞风险评估。

      在车联网环境下是借助通信的手段感知外部交通流变化的,发包间隔和延迟可能使无人车获得的外部交通流变化信息滞后。为此,使用非参数化路径预测的方法对交通车真正的位置进行预测,以应对延迟和发包间隔的影响。一种通用的短期预测方法是使用独轮车模型,它仅仅依靠轮速传感器和陀螺仪装置进行测量,所以这种方法很容易在目前的量产车上实现,并且不会带来额外开销。在t0时刻,通过轮速传感器测得车辆纵向速度$v({t_{\rm{0}}})$和偏航速率$\omega ({t_{\rm{0}}})$,可得到估算的道路曲率半径为:

      $$ R({t_0}) = \frac{{v({t_0})}}{{\omega ({t_0})}} $$ (34)

      独轮车模型假定车辆在预测时间T内以恒定纵向加速度$a({t_{\rm{0}}})$行驶在恒定的道路曲率半径上。行驶距离为:

      $$ d({t_{\rm{0}}},T) = v({t_0})T + 0.5a({t_0}){T^2} $$ (35)
      $$\Delta \theta ({t_0},T) = \frac{{d({t_0},T)}}{{R({t_0})}}$$ (36)

      预计的t0+T时刻的车辆状态为:

      $$\Delta x({t_0},T) = R({t_0})\sin (\Delta \theta ({t_0},T))$$ (37)
      $$\Delta y({t_0},T) = R({t_0})(1 - \cos (\Delta \theta ({t_0},T)))$$ (38)
      $$x({t_0} + T) = x({t_0}) + \Delta x({t_0},T)\cos (\theta ({t_0})) - \Delta y({t_0},T)\sin (\theta ({t_0}))$$ (39)
      $$\begin{array}{l} y({t_0} + T) = \\ y({t_0}) + \Delta x({t_0},T)\sin (\theta ({t_0})) + \Delta y({t_0},T)\cos (\theta ({t_0})) \end{array}$$ (40)
      $$\theta ({t_0} + T) = \theta ({t_0}) + \Delta \theta ({t_0},T)$$ (41)
    • 在每个规划周期$[{t_i},{t_i} + \Delta t]$内,轨迹选择模块首先接收碰撞概率模块输出的无人车的每条候选轨迹与每个障碍物相撞的概率,然后对主车${x_0}$的每条轨迹计算安全概率为:

      $${P_{{\rm{safe}},{x_0}}}(l({t_i},\Delta t,\dot v,\dot \delta )) = \prod\limits_{k = 1}^K {(1 - {P_{c,{x_0}{x_k}}}(l({t_i},\Delta t,\dot v,\dot \delta )))} $$ (42)

      利用距离模块输出的每条轨迹到目标位置的最短距离(欧几里得距离)生成轨迹评价指标,使用的评价指标J兼顾了路径的安全性和时效性,有:

      $$ J({t_i},\Delta t,\dot v,\dot \delta ) = \frac{{{S_{\min }}(l({t_i},\Delta t,\dot v,\dot \delta ))}}{{{P_{{\rm{safe}},{x_0}}}(l({t_i},\Delta t,\dot v,\dot \delta ))}} $$ (43)
      $$\begin{array}{l} {J_{\min }} = \min \{ J({t_i},\Delta t,\dot v,\dot \delta )|\mu (\dot v,\dot \delta ) \le 0.25) \in \} ,\\ \forall \dot v \in v(t),\forall \dot \delta \in \delta (t) \end{array}$$ (44)
    • 连续超车条件下不同的调节因子c对于无人车动态轨迹规划算法的影响如图 4所示,图中,□代表c=0.5,○代表c=1,△代表c=1.5,▽代表c=2,其中交通车平均速度${v_{{\rm{obs}}}}$=6 m/s。可以看到在超车过程中无人车的速度呈现明显的上升趋势,随着c值的增大,无人车的速度逐渐增大如图 4e所示。这是由于随着c值增加,无人车对于相同TTC的预计碰撞概率减小,所以在每个规划周期内采取了较高的速度。由于速度的改变发生在每个规划周期内,每个规划周期内无人车速度变化不超过0.6m/s,如图 4d所示,这保证了乘客乘坐时纵向加速度总是保持舒适。即便采取了较为激进的策略(c=2),无人车仍然保持了较低的曲率和很轻微的曲率变化,如图 4c图 4b所示,因为算法为无人车的每个轨迹规划周期挑选合适的圆弧轨迹,所以保证了在大多数时间内无人车的曲率不变,不会影响乘坐的舒适感和安全性。即便是当t=2.5 s,c=1,v=7 m/s无人车出现了最大曲率值k=0.3时,无人车仍然能够保持舒适,因为此时的横向力系数值μ=0.016 < 0.25。图 4a中连续的横摆角变化也表明算法是舒适的,同时可以看到在连续超车工况下,调节因子c对无人车的影响主要是体现在速度上,这也是因为对于某个特定工况总是存在一条最优的轨迹,而算法可以保证规划的轨迹是近优的,不会产生太大偏差。综上,可以表明在连续超车工况下本文的算法能够满足安全性的要求,同时兼顾了横向和纵向的舒适性,较高的调节因子c会选择较为激进的驾驶策略。

      图  4  因素c的影响

      图 5给出了无人车在不同车辆密度下的表现,图中,□代表n=8,m=2,○代表n=16,m=2,△代表n=12,m=4,▽代表n=16,m=4,交通车的平均速度${v_{{\rm{obs}}}}$=6 m/s。城市道路环境下普遍车流密度较高,实验中最高的车辆密度为16车2车道,此时无人车由于无法超越前车,一直保持与交通车大致相同的速度和偏航角跟随,如图 5d图 5e图 5a所示。由此得出结论:随着车流量密度的改变无人车能够自适应地调整车速,当车流密度较大时,无人车车速会降低使得碰撞风险维持在一个较为安全的范围内。在连续超车工况下,无人车出现了曲率峰值0.3,而在其他工况下曲率值明显小于0.3,如图 5b图 5c所示。

      图  5  车道数的影响c=0.5

      无人车在高速行驶下的性能如图 6所示,图中,□代表vobs=5 m/s,○代表vobs=10 m/s,△代表vobs=15 m/s,▽代表vobs=20 m/s,分别设置了不同的无人车的起始速度,如图 6e图 6d所示。通过不同交通车平均速度下的无人车的表现,可以看到在低速时的曲率峰值要明显高于高速时的曲率峰值,如图 6b图 6c所示。这是因为当无人车在高速行驶时,受制于行驶稳定性无人车无法像低速行驶时那样采取较大的转角。可以看到,当无人车在26 m/s左右时最大的曲率值为k=0.015,此时计算得到的横向力系数μ=0.079 8 < 0.25依然维持较好的舒适性,如图 6a所示,能够满足高速条件下舒适性和安全性的要求。

      图  6  障碍车的平均速度的影响c=2

      完整的超车工况轨迹图如图 7图 8所示,图中分别给出了不同c值((a)图c=2,(b)图c=1.5,(c)图c=1,(d)图c=0.5) 下无人车位于50 m和90 m附近时的截图,图中轨迹线上的小车代表无人车,其他的小车代表交通车,发散的轨迹簇代表了在每个规划周期内轨迹生成模块为无人车生成的候选轨迹簇,延展的轨迹代表在每个规划周期内轨迹选择模块选择的最优轨迹。可以看到在各种c值情况下,无人车都能逐渐完成加速,并且轨迹选择和驾驶员的驾驶轨迹类似,安全舒适。通过4组实验证明了本文提出的动态轨迹规划算法是安全,舒适的。

      图  7  轨迹快照S=50 m,vobs=6 m/s

      图  8  轨迹快照S=90 m,vobs=6 m/s

    • 本文提出了一种无人车动态轨迹规划方法,由轨迹生成模块在充分考虑车辆运动学的基础上生成舒适的待选轨迹簇,由轨迹选择模块根据碰撞概率和到目标位置的距离选择最合适的控制量,实验表明,该方法是安全并且舒适的。

参考文献 (12)

目录

    /

    返回文章
    返回