下面有请吉林大学汽车仿真与控制国家重点实验室副主任郭洪艳演讲,演讲主题是“复杂环境下智能车辆驾驶决策”。
郭洪艳:大家中午好!我的报告题目是“复杂环境下智能车辆驾驶决策”。今天我主要跟大家分一下我近期在车辆驾驶决策和周车动态行为预测以及路径规划方面的一些内容。我的报告分为四部分,我首先跟大家回顾一下关于我们智能车以及智能车的驾驶决策方面的主要面临的难点的问题。
我们说智能汽车是新时代汽车产业转型升级的突破口和未来战略的制高点。从我们国家的层面上来说,国家在大力的发展智能汽车的产业,从国务院印发的《新一代人工智能发展规划》以及《汽车产业中长期发展规划》里边都对我们智能汽车有一个明显的和显著位置的标注。
另外在智能汽车这个体系,大概在2025年可以基本上形成。从我们O2E发布的关于汽车智能化分级以及智能汽车体系2025和德国工业4.0都可以看出在智能化的大背景下关于智能汽车整体的研究已经是如火如荼了。同时这些相应的政策上的倾向已经催生了造车新势力的那些公司和资金的流向。我们国内智能汽车企业也是纷纷崛起,并且有一些代表单位都已经开始生产了他们旗下的智能汽车以及新能源汽车。
我们预估中国的智能汽车产业的规模,它有可能有望超过2000亿美元,它的产值也是在逐渐升高的。所以我们说在智能汽车这一块,由于国家政策的导向以及我们资本的流入,使得我们智能汽车的研究变得如火如荼。
关于智能汽车的发展与完善还面临诸多的困境:
首先我们来看一下现在面临的主要第一个困境应该是在传感器方面的。在这个传感器方面,首先第一个就是单一传感数据容易缺失,另外在智能汽车上加载了一些新型的传感器。这个时候多元的传感信息,它交互融合是我们现在智能汽车发展当下所面临的一个最重要的难点问题。也就是说,在多元传感融合,如果能够相对来说完善的解决了之后,我们有可能在智能汽车的决策方面会跨出相应的一大步的进度。
另外高精度定位技术。我们现在所使用的GPS信号,我们现在应该有很多定位的系统,比如说是牛劲的RT3000等等这样的定位系统。它在受到遮挡或者是高建筑物的时候就会出现信号丢失以及定位不准,这样的话会影响到定位精度。
另外我们现在自己开发的这种里程器去对车辆进行定位的时候会存在累计误差,这种累计误差也会影响到车辆的定位精度。所以说现在高精度的车辆定位技术,是我们所要面临的另外的一个难点。
接下来我们在智能汽车发展过程中,它所受到的一个控制系统的设计问题。控制系统的设计,我们在传统汽车上所做的控制系统的设计,一般情况下都是侧重向耦合的。因为我是控制背景出身的,跟车辆有很多的交流。车辆方向上认为的侧重方向上的解耦,就是单纯的把在做纵向的时候把侧向因素忽略掉,这是解耦。跟我们控制里面的解耦概念不一样,控制里如果侧向、纵向相对耦合,我们用技术把耦合因素拆开。
我们现在做控制的时候,无论是在车辆上还是在我们控制方面上,都存在一个问题,我们做的控制有可能做的是单一方向的控制或者说单一的自由度的控制。比如我纯做纵向的控制或者做侧向的控制。但是这种控制它很少考虑到侧向对于纵向的影响。现在有一些项目上在做协同控制,也就是说大家提到的侧向和纵向的协同,也有一些人提到的是侧向和垂向去协同,就是在做协同方面。
另外现在也有一种趋势是在做侧纵垂向三者的控制,但这种控制目前为止两个方向的协同做得相对成熟,如何利用垂向信息使得侧向和纵向信息控制得更好?目前在我这个范围内我还没有看到可以接受的或者用到车上的控制。
我们现在由于智能车辆所接受到的信息是越来越多的,这样的过多的信息使得我控制系统设计的时候考虑的因素会越来越多。控制系统考虑的因素越来越多的时候,导致控制算法会相对的更加复杂。控制算法相对复杂的时候,对于我这个车上一个单片,一个单片集在这种情况下,在容量有限的情况下,也就是说在这种计算成本有限和容量有限的情况下,控制算法怎么样高效低成本的去实现,我所说的这个低成本不只是价钱的层次,还有一个是计算的层次。怎么样高效、低计算成本的去实现?这个也是我们在智能车上未来控制所面临的一个问题。
另外一个最重要的是智能车在传感感知问题解决了之后,有可能我们要在决策层面上要遇到很大的问题,所以在智能车的决策层级上有可能是未来五到十年,大家所要重点攻坚的一个问题。我们这个决策所面临的难点主要是交通场景是非常复杂的,现在我们提的这种交通场景,我们之前做的时候有可能是特定园区的无人车或者智能车的运行。但是如果面向了真正的动态的、开放的环境,这个时候我们如何去做这个决策?同时使得我这个无人车或者智能驾驶车辆它所做出的决策,在路上具有一定的路权竞争的能力,这一点应该是我们未来所要重点考虑的。
另外一个决策完成之后,我们如何去选取实时的最优路径?这个也应该是我们要考虑的一个问题。
针对这些问题我们看在决策中这样的难点,具体包括什么?首先就是周车。因为我们在做决策的时候,肯定是要涉及到一个周车行为的问题。如果我能够在我自己的这台智能车上时知道周车未来行为是什么样子的,这个时候我就可以对我的决策做出相应的带有未来预判趋势的决策。周车预测它的难点就在于这个车与车之间的关系,它的描述是比较困难的。
另外一个驾驶员的随机性,这个周车驾驶员的行为的随机性导致了周车驾驶行为的随机性,如何把驾驶员行为具有随机性特征带到周车行为预测里面去?这个也是我们现在需要考虑的一个问题。
在决策这一块,我们现在所说到的决策,在文献上或者听到的决策有可能分成两类:第一类是相当于在行为层级上的决策,也就是说我这个决策是超车、换道、跟车决策,也有一些决策它是在执行层级上的决策,也就是说这个决策直接跨过了行为,决策出来的是怎么去打方向盘,油门怎么去踩?这种决策有可能是单一方向的。
为什么是单一方向的?比如说我们在做的这种决策,有可能现在研究的时候,大家看见的一些资料上会说做的是一个换道行为决策、跟车行为决策或者说做的是侧向转向行为的决策,这个时候它都是把纵向和侧向行为单独割裂开,纵向上单独去做速度决策,侧向上有可能做换道、跟车或者决策出来执行层面上的方向盘转角等等这样的决策。
如何把纵向和侧向耦合起来?然后做纵侧向联合的决策?这个也是我们面临的难点,这个应该是我们未来如果够放到一起去讨论,同时决策出来这种信息,相对来说会更加的完善,会对我们的实际车的运行会更好一些。
另外一个难点相当于我们的换道路径的规划,在我们决策完成之后尤其是行为决策完成之后,比如我只是决策出来我是不是要跟车,是不是要换道?接下来的时候假如我们是换道,我们换道起点是怎么选的,或者说换道的路径应该是什么样子的?这个时候就涉及到换道的路径规划和我们换道的考虑安全性和动力学约束的这样一个换道的路径的确定上边。
在这几个方面,我给大家汇报一下我们现在所做的一些内容:
第一.复杂环境下的周车动态行为预测。
我们在这个里边所做的是一个什么样的工作呢?我圈出来的位置是我们大概的交通环境,在这个交通环境当中,需要有一个主车是我自己智能车,其他的车是周车。我们要预测的这些车辆的行为,它的行为是这样。因为我们在这里边需要预测的周车有可能前后左右,在我们有效范围内认为是六辆的周车,这个就涉及到多风预测的问题。因为我需要知道这六辆周车的运动行为是什么样子的。这个预测难点是车与车之间位置交互是怎么表征的?这个我们现在是不知道的。
另外一个是历史时刻的信息,对于我当前预测影响它的大小是难以界定的。比如说前十秒对于当前这个信息的影响是什么样子,和我前一秒周车的历史数据对于我这个周车未来作用的影响,它未来轨迹影响是什么样子?这个时候我们现在也是难以界定的。
另外这个车辆高随机性,它的高随机驾驶特性对于周车行为的影响又是什么样子的。所以我们考虑了这样的三个问题,我们提出了结合自身潜在路径规划的双重注意力机制的预测网络框架,用这个预测网络框架去预测我们的周车轨迹。
在这个里边我稍微解释一下,我们这个里边的潜在规划路径指的是什么?所谓的潜在规划路径是指主车未来可能行驶的路径是什么样子的,我通过双重的神经网络把它轨迹计算出来,然后去增加表征主车轨迹对于周车运动的影响。
接下来对应什么样的历史信息对于周车表征和影响的问题,我们是引入了一个时间注意力机制,它就提取了当前一段的数据对我周车行为影响的确定,去表征这样的一个行为。
还有一个是在空间注意力机制,所谓的这个空间注意力机制就是表征我这个交通参与者或者说我周车对周车,不同的周车对于我要预测的那个周车轨迹之间的影响,是这样的一个情况。
在这个时间注意力机制方面,我们是分析了被预测车辆当前的状态与历史状态之间的相关性,通过这个相关性来评估对当前预测影响较大的历史因素,在具体操作的时候,我们是把这些最终的时候确定出来是输入到网络里面是一个横向量和列向量关系。横向量表示同一变量所有时间构成的向量,列向量表示同一时间布场下面所有变量对于所有车辆数据所构成的向量。这个就相当于说我在这个里面把我自己的车的历史数据对于我未来轨迹影响较大的历史数据已经挑选出来了。
在空间注意力机制这块,我们给出车辆轨迹受其他交通参与者影响。空间注意力机制,它可以量化目标车与周车间的相互关系,表征车辆的交互驾驶的关系,就是我对你的影响。比如我要预测A车,B、C、D车对它的影响。主要表征的是我这个车的周车位置和它的速度等等这些信息对它的一个影响,是这样的情况。
最终我们在做的时候相当于是做了几个这样的LSTM网络,比如说我在这个里面把我的主车的信息输入到红色的LSTM网络里面去,周车的信息输入到下面的LSTM网络里面去。这两个网络最后经过融合以及相应的措施得到整个的车辆预测,是这样的一个情况。
在这个情况下,我们采用的是美国高速公路的数据集,从这个数据集里提出来的70%的数据做成是我的训练数据,30%的数据是用作我的验证,我们确定下来的是历史的5秒的数据,预测未来5秒的数据。
我们预测的结果先看一下空间注意力分布,我们看出来假如说这个是我的一个车辆的轨迹,我们会发现它对于我前方的注意力机制是由小到大再有大到小的过程,也就是说我对于我最前方的注意力反而不是那么集中,对于我相对前方远一点的距离它的注意力机制会集中一些,但太远我又不太关注它的特点了。
对于我左侧和右侧这个车道的关注几乎是类似的,但是这个里面我们在行车的过程中对于我的左后方的行车,即另外车辆的数据它的观测,它的注意力程度就是要比其对于右后方几乎是不看的,这个可能是跟我们现在开车的结果也是类似的,是这样的一个情况。这是我们注意力的情况。
这个是我们周车轨迹预测出来的轨迹,当然了我们在这个里面也跟其他的方法,比如说使用时用NGSIM数据集的周车轨迹预测分析,这个是平均误差,下面相当于是我实际驾驶员所开出来的数据和我预测的轨迹之间的误差比较,是这样的情况。这就是我们在周车轨迹预测上现在所做的工作。
第三,我给大家汇报一下关于横纵向一体化决策方面我们所做的一点点工作。这个工作是我们近期所做的,思路上相对来说也是跟传统的决策的思路不太一样,所以跟大家共享一下。
我们在这个里面提出了基于混合整数规划的滚动优化决策框架。这个框架首先是这样子的,我们现在不是经常会有基于网联信息的速度决策,它会决策出来我车辆运行期望速度会是什么样子的。这个时候我的输入相当于是我的一个期望车速,在这儿我把纵向和横向做成一个算法里同时决策出来,这个时候决策的纵向就相当于是我行车的速度信息,换道的时间以及换道的具体路径。
这个就是我们的纵横向一体化的决策,在有了这样的纵横向一体化的决策之后下面得有执行,决策完之后应该通过规划模块和跟踪模块去具体的执行我这个操作。在规划和跟踪这块,我们就相当于把它分成了纵向和侧向的两个内容,在侧向上我们主要做的是轨迹的规划,去做轨迹的跟踪,最终是给到车上的是执行的方向盘转角这样的情况。
接下来是我们的期望车速,我们做的是一个速度跟踪。在速度跟踪这块,我们采用的是制动系统和动力传动系统拟模型的情况。我们所采集到的这个传感信息就是我们这里面说的包括车道线和障碍物以及轨迹等这样的一些信息。
在具体做的时候,我们是这样操作的。我们首先要得到一个期望的车道,我希望我有一个期望的车道,同时我希望如果是换道的话,我要有一个换道的时间,同时还要有一个相对的车道的位置的信息。这三个信息就是我希望我决策能够得到的输出信息是什么样子。
通过什么我们能够得到呢?首先我对这个车辆进行了建模,是怎么建的?我们把期望的车道的位置和我期望的车道之间建立了一个这样的模型,用一个一阶惯性环节,以期望的车道作为输入,这个就是0、1、2整数的位置信息,我们把它用一阶惯性环节模拟出我大概要走的换道路径是什么样的
。用它搭配纵向速度的模型,如果我的换道过程认为换道时间不变,它就可以变成这样的表达形式,但如果时间发生变化的话,它就是非线性的模式。这样的话,我就得到了这样的状态的表示。
接下来我们借用了预测控制滚动时域优化的思想,因为我们发现人在开车的过程中他的决策应该是实时在做的,应该是根据交通状况的一些信息,每隔一段时间就要重新决策一次去决定这个车要怎么开?它和预测控制的基本思想是相符的,所以这个时候我们采用了预测控制滚动优化的思想来进行我们的决策。
说到这个决策就要选取决策目标函数,我的这个决策目标函数是这样的。我利用的主要是四点:
第一点是相当于前面的位置是我这个车辆和其他车辆碰撞的一个时间,对于我碰撞时间的一个考虑。
第二点是希望跟踪上我期望的车速。
第三点是要求平滑换道,也就是说我换道的时间要尽量的小。
第四点是尽量减少换道。我们不可能说这个车辆面对着一个情况的时候,它重复的换道,换过去再换回来,尽量的要减少这样的换道操作,所以这是我们的目标。
关于碰撞时间,我们所考虑的是安全距离和我期望车速,假如说我这个车和前车它的距离超过了安全距离的话,这个时候我就认为它的换道时间没有,不用。如果要是在安全距离范围之内,同时我的前车速度小,这个时候它就给出来一个另外的换道时间。另外还有一种情况是我现在在安全距离范围之内,同时我前车的速度很大,这是这样的三种情况去选择TTC的碰撞时间。这个时候由于我们的安全距离的计算,也就是在下面的时候它隐含了我的速度信息等等,所以在目标函数里已经把这个速度都包括进去了。另外我们希望车辆在换道过程中和我的期望速度的偏差不要太大。另外是变道,我决策出来的是三个变量,这三个变量,分别是车辆运行速度信息、车道的信息,再接下来是换道的时间三个信息。同时搭配到车道肯定有具体的几号车道的信息,然后我们把它一些约束给放进去。
在我决策完成之后,因为我要确定我这个车辆所走的路径,所以我们就推导了侧向加速度和换道时间建立换道时间和参考轨迹之间的关系,最终的时候是通过这个函数确定下来了。
在这个情况下,我们做完了之后,把后面的路径规划和跟踪打通了之后,我们进行了一些仿真。这个仿真,这就是我们第一个工况相当于是连续超车的时候这种工况。这个车在前面运行的时候,如果前面在它的车道有两辆车它就会选择换道。接下来在他的车道又有车了,这个时候根据滚动决策机制就决策出来还要换道超车然后去运行这样的情况。
第二种相当于是紧急避障,也就是说本车在超车过程中前面有三辆车,有一辆车突然速度减下或停下的时候,它要寻找换道时间,超车把障碍物避过去之后换到另外一条道上超过前方的车去运行,是这样的情况。
第四部分工作是复杂环境下智能汽车轨迹规划。因为我们刚才所做的那个轨迹规划是一个静态的规划问题,也就是说我们在这个里边如果要是把它换成了一个动态规划,我们应该是怎么做?我们提出了基于人工势场的轨迹规划算法,具体的是我们把这个轨迹纵向和侧向同时进行了规划,在这个里边我们首先是采用虚拟力场去描述周车和我本车之间的借助于虚拟力场的引力和斥力关系去描述周车和本车之间的关系。
具体做法是包括了车道区域保持的虚拟引力场还有期望目标行驶的引力场以及障碍车动态斥力场等等,有了本车和周车关系之后就建立了本车模型。在这里面我们所建立的本车模型就相当于是纵向和侧向模型都在这个位置上,纵向的速度模型和侧向的速度模型,我们就都把它建立起来了。
我们还是借助于滚动优化思想规划路径,在这个位置我们是采用了几个目标,首先要要求这个车必须是具有避障能力,同时可以进行车道保持,同时要按照我预定的目标行驶到我的目标点上去。再接下来要跟踪上期望的速度,同时我不能猛打方向盘或者猛打我的操作,这个时候我们决策出来的就是纵向的加速度和方向盘转角的信息,然后具体的执行就达成了我们的路径规划目的。
这个是我们在直线道路上和蛇形穿干情况下进行的仿真,我们这个实验是可以连续的进行,如果前方有障碍物的时候,我们可以进行连续的道路的换道,达到这样的一个目的。
回过头来总结一下我们现在所做的一点工作
在复杂交通环境下智能驾驶车辆决策首先要基于注意力机制的交互车辆和跟踪机制的,我们虽然说做了一点工作,但是我们现在的工作相对来说每一块都比较独立。们现在也正在讨论未来的时候我们有可能要把这几种方案按照一个框架,带有周车轨迹接下来规划它的具体路径,这就是我们未来有可能要继续研究的一个内容吧。谢谢大家!
x
-
全球最大自动驾驶之城是怎么炼成的? 2024-03-04 10:24
-
15万有骁龙8295,16万配激光雷达,零跑C10发起“配置战” 2024-03-03 14:00
-
大众与小鹏合作首款车型曝光:纯电中型SUV,2026年上市 2024-02-29 15:05
-
英特尔宣布成立全新独立运营的FPGA公司——Altera 2024-03-01 12:47
-
哪吒汽车 All In AI,携手360集团推进大模型产品NETA GPT 上车 2024-03-01 17:21
-
15万有骁龙8295,16万配激光雷达,零跑C10发起“配置战” 2024-03-03 14:00