Waymo-自动驾驶长尾问题挑战(2019)

尽管Waymo已经在开放道路上积累超过10 Million Miles,Waymo的工程师们仍然发现有层出不穷的新自动驾驶场景待解决。

1、自动驾驶长尾场景举例

米妮小说网 https://m.amini.net

场景一:一个骑自行车的人手中拿着一个Stop Sign标识牌。我们不知道它何时会举起标识牌。无人车必须理解这种场景,即使他举起了Stop Sign标识牌,自动驾驶汽车也不应该停下来。

Screenshot-from-2020-02-07-22-03-14-1024x574.png

场景二: 迎面而来的车辆上装载的塑料管子撒了一地,自动驾驶汽车必须学会应对这种突发情况,并且避开它们对无人车行驶的影响。

Screenshot-from-2020-02-07-22-08-44-1024x370.png

场景三:由于道路施工等因素,路面布满锥桶。无人车必须正确识别这些场景,在布满路面锥桶的场景下实现合理驾驶。

gifhome_774x432_10s.gif

场景四:路口绿灯,无人车拥有路权,虽然我们的无人车先到达路口,但必须为稍后到达的特种车辆让行。

gifhome_774x432_8s.gif

场景五: 路口绿灯,无人车准备左转,遇到闯红灯高速通过的社会车辆,无人车需要识别这种场景,并及时停车避让违规车辆。

gifhome_774x432_5s-1.gif

2、自动驾驶核心模块-Perception, Prediction和Planning

Perception、Prediction和Planning模块是自动驾驶的核心模块,每个模块都存在巨大的挑战。

2.1 Perception

Perception输入:传感器(激光雷达)输入信息以及场景的先验信息。

Perception输出:道路交通对象(行人、车辆等),对道路场景的语义分割和理解。

Perception本身是一个非常复杂、高难度的问题,它必须能够识别各种形态各异、不同种类的对象。比如下左一图,一群穿着恐龙服的行人,感知必须能够正确识别它们。

Screenshot-from-2020-02-08-09-03-50-1024x338.png

相同的物体在不同的时间、不同的季节它们的外观表现也会有很大的差异,这会对Perception带来巨大挑战。

Screenshot-from-2020-02-08-09-12-28-1024x311.png

各种复杂场景的分割理解难度极高。如下图左一:一个搬着箱子的人;下图左三:骑马的人。Perception必须能够正确的分割识别这些场景,而不会因为遮挡导致出现识别的错误。

Screenshot-from-2020-02-08-09-16-52-1024x300.png

2.2 Prediction

Perception对检测到的物体进行下一步行为的预测,以辅助自动驾驶车辆进行合理的行为决策。

Screenshot-from-2020-02-08-09-29-49-1024x259.png

Perception要考虑物体的历史行为,比如车辆不会在短时间内实现90度的转弯,因此我们可以假设车辆在短时间内仍然按照当前的朝向和速度前进;要对场景有更高语义层面的理解;要能够关注到不同对象的属性差异和视觉线索,比如车辆大概率是会在车道上行驶上,行人会走斑马线,车辆的朝向能够大概率反应它的意图,如果行人做出停车的手势,大概率是要过马路;要能够解决待预测物体与其它物体的行为交互。

如下图所示,路边有一辆静止的车辆,骑自行车的人在靠近静止车辆时,会侵入无人车车道。Perception模块需要正确理解这些场景,并生成合理的预测曲线。

gifhome_774x432_5s.gif

如何能够准确的预测社会车辆的行为仍然是一个存在巨大挑战的开放性问题。

2.3 Planning

Planning是Decision Making Machine,它基于Perception和Prediction的输出,规划车辆的行为,并输出Control模块,控制车辆的加减速、刹车等行为。

Screenshot-from-2020-02-08-09-51-50.png

Planning首要考虑的是安全(safe),其次要考虑驾乘的舒适性(comfortable),再次要能够与其它交通参与者正确交互,最后要保证乘客送达目的地。如何能够满足这些条件实现良好的Planning效果仍然是一个开放性的问题。

gifhome_774x432_10s-1-2.gif

3. 大规模机器学习技术(Machine Learning At Scale)

Machine Learning是解决自动驾驶长尾问题的一种有效工具。利用Machine Learning技术可以实现从数据采集、标注、训练、车端部署的闭环循环流程,从而实现Case的不断积累,模型的不断完善。

Screenshot-from-2020-02-08-10-22-39-1024x426.png

3.1 Automated Machine Learning技术

Waymo使用了Automated Machine Learning技术生成和优化针对无人车的数据模型,极大提升了模型训练的效率。

Screenshot-from-2020-02-08-10-37-13-1024x530.png

Screenshot-from-2020-02-08-10-39-29-1024x521.png

Screenshot-from-2020-02-08-10-40-27-1024x425.png

Screenshot-from-2020-02-08-10-43-04-1024x523.png

3.2 机器学习技术的局限(Limits Of Machine Learning)

机器学习模型不能解决所有的问题,但我们需要的是一个安全的自动驾驶系统,所以必须有其它措施来补充ML的不足。

首先可以借助于冗余互补的传感器辅助解决这个问题。车辆同时配备了视觉、Lidar、Radar系统,各个系统彼此独立,相互补充,以最大限度保证无人车不会缺失任何信息。

Screenshot-from-2020-02-08-10-48-43-1024x599.png

其次,我们可以采用ML和Non-ML混合系统,利用专家系统来弥补ML的不足。

Screenshot-from-2020-02-08-10-56-06.png

4、大规模的测试技术(Large Scale Testing)

首先Waymo有庞大的自动驾驶车队,可以支撑大规模的测试。

Screenshot-from-2020-02-08-11-16-08-1024x494.png

有些场景在实际道路上出现的概率很低,为了测试验证这些低频问题,需要自己构建场景,进行结构化测试。

Screenshot-from-2020-02-08-11-19-08-1024x471.png

仿真是一种重要的验证测试手段,可以轻量级安全的构造各种各样的测试场景。

Screenshot-from-2020-02-08-11-22-53.png

自动驾驶仿真必须能够真实模拟车辆和行人的行为。这仅仅依靠简单的规则模型是不够的,我们需要更加复杂的模型,Waymo使用一种Mid-2-Mid的Drive Agent机器学习模型,它接收定位、感知等信息,输出更加拟人化的运动规划。

Screenshot-from-2020-02-08-11-40-00-1024x269.png

Waymo提出的ChauffeurNet将Map、交通规则、道路环境等信息转化为图像信息,从而可以最大限度的利用比较成熟的机器学习模型,最终输出Agent的Trajectory。

Screenshot-from-2020-02-08-11-46-38-1024x543.png

ChauffeurNet可以解决大部分简单场景下的Prediction和Planning问题。

unnamed.gif

主车成功的通过路边静止车辆的场景

主车遇到缓慢前行的车辆后减速

当然ChauffeurNet也有其局限性,比如以下复杂场景目前还不能很好的处理。

主车由于视距遮挡,直接冲出了路口

车辆没有成功完成掉头操作

5、机器学习难以覆盖的长尾问题挑战

对自动驾驶测试来讲,最大的挑战在于很难收集到所有Corner Case。如下图所示,是人类驾驶行为分布,要经过非常长时间的积累才能得到一些Corner的驾驶行为Case。

Screenshot-from-2020-02-08-15-46-53.png

在自动驾驶网络的神经网络模型中,可能有上千万的参数,如果Corner Case的样本数量太少,就难以保证网络模型能够学会这些Corner场景。

在神经网络模型覆盖长尾Case前,如何来解决长尾Case呢?专家系统是一个选择。专家系统融入专业的知识,通过小批量的样本就可以获得效果比较好的参数。

比如我们计划得到实现一个轨迹优化机器学习模型,在基于运动控制理论和一系列的约束设计好专家模型之后,通过采集历史车辆轨迹,我们就可以调整参数最小化Cost的方法,使得专家系统的轨迹输出尽可能的逼近人类驾驶轨迹。

Screenshot-from-2020-02-08-15-53-40-1024x576.png

轨迹优化专家系统的另一种模型是Inverse Reinforcement Learning技术,通过历史驾驶轨迹训练模型参数,使得它的输出尽可能的逼近预期效果。

Screenshot-from-2020-02-08-16-02-30.png

如下图所示,红色的主车,蓝色的是社会车辆。左图的社会车辆更加保守,右侧的社会车辆更加激进。用保守的轨迹训练出的模型表现就趋于保守,用激进的轨迹训练出的模型表现就趋于激进。

gifhome_774x222_17s.gif

6、Smart Agent对于自动驾驶规模化不可或缺

不管是专家系统,还是神经网络,它们都在努力模拟人的驾驶行为,使Agent变得聪明起来,聪明的Agent可以辅助自动驾驶技术快速规模化。

Screenshot-from-2020-02-08-16-19-28-1024x319.png

Screenshot-from-2020-02-08-16-21-58-1024x433.png

在这里插入图片描述
个人博客网站地址: http://www.banbeichadexiaojiubei.com

### 回答1: Matlab模糊系统可以用于轨迹跟踪,通过模糊控制器控制系统的输入,实现系统对给定轨迹的跟踪。 在Matlab中,可以使用Fuzzy Logic Toolbox进行模糊系统轨迹跟踪的模拟和仿真。首先,需要定义模糊控制器的输入和输出变量,以及它们之间的关系。 输入变量通常表示系统的误差和误差的变化率,而输出变量表示控制器的输出信号。可以使用模糊逻辑运算来建立输入输出变量之间的模糊规则,以便根据误差和误差变化率来确定控制器的输出。 接下来,需要使用模糊系统仿真工具进行模糊控制器的仿真。可以通过在仿真环境中输入给定轨迹的期望值,并实时更新系统的当前状态,来模拟系统对给定轨迹的跟踪过程。 在仿真过程中,可以通过调整模糊控制器的输入输出关系、模糊规则的权重和模糊集合的划分方法等参数,来优化系统的跟踪性能。 通过持续的仿真和实验,可以逐步调整模糊控制器的参数,使系统更好地跟踪给定轨迹。最终,可以得到一个能够满足跟踪要求的模糊控制器,并将其应用于实际控制系统中。 总而言之,Matlab模糊系统可以用于轨迹跟踪,通过模糊控制器的设计和调整,实现系统对给定轨迹的精确跟踪。这种方法在不确定性和非线性系统中尤为有效,能够提高控制系统的稳定性和性能。 ### 回答2: 在MATLAB中,可以使用模糊逻辑控制工具箱(Fuzzy Logic Toolbox)来实现模糊系统的轨迹跟踪。模糊逻辑控制是一种基于模糊集和模糊规则的控制方法,适用于非线性、不确定或模糊的系统。 首先,需要构建一个模糊系统模型,包括输入变量、输出变量和模糊规则。输入变量可以是当前位置、当前速度等,而输出变量可以是控制信号(如力或速度)。模糊规则是基于专家知识或试验结果设置的,用于将输入变量映射到输出变量。 然后,需要定义模糊系统的输入和输出变量的模糊集和隶属函数。模糊集是用来描述模糊变量的取值范围,而隶属函数则定义了变量值对应于模糊集的隶属度。隶属函数可以根据实际需求进行选择,常见的有三角形、梯形、高斯等类型。 接下来,可以使用模糊规则来控制模糊系统。通过将当前状态输入模糊系统,可以得到对应的输出控制信号。可以使用模糊推理方法,在所有模糊规则的基础上进行推理和决策,从而确定最适合当前状态的控制信号。 最后,根据得到的控制信号,可以实际实施轨迹跟踪。可以将输出信号传送给系统中的执行机构或传感器,以实现对系统的控制或监控。 总之,MATLAB中的模糊逻辑控制工具箱为模糊系统的轨迹跟踪提供了一个便捷的平台。通过定义模糊系统模型、设置模糊集和隶属函数,以及编写模糊规则,可以实现对输入状态的模糊推理,并产生相应的控制信号。通过将控制信号应用于系统,可以实现模糊系统的轨迹跟踪。 ### 回答3: Matlab模糊系统轨迹跟踪是一种基于模糊逻辑的控制方法,用于实现对系统轨迹的精确跟踪。在使用Matlab进行模糊系统轨迹跟踪时,需要经过以下步骤: 首先,需要建立模糊控制器模型。这可以通过使用Matlab的Fuzzy Logic Toolbox来实现。在该工具箱中,可以定义输入和输出变量的模糊集合,设定规则库,并根据需要选择适当的模糊推理方法。 其次,需要确定跟踪的轨迹。这可以通过对所需的系统输出进行数学建模来实现。在Matlab中,可以使用符号计算工具箱来实现这一过程。 接下来,需要将模糊控制器模型与跟踪轨迹进行整合。这可以通过将跟踪轨迹作为输入传递给模糊控制器,并利用其输出来调整系统参数来实现。 然后,需要进行模拟和仿真来验证模糊控制器模型的性能。在Matlab中,可以使用Simulink工具箱来搭建系统模型,将模糊控制器与系统进行集成,并通过模拟和仿真来评估模型的性能。 最后,根据模拟和仿真结果来进行调优和优化。可以通过调整模糊规则库中的权重和参数,并进行反复的模拟和仿真来提高轨迹跟踪的性能。 总结起来,Matlab模糊系统轨迹跟踪是一种通过建立模糊控制器模型,确定跟踪轨迹,整合模型和轨迹,进行模拟和优化的控制方法。使用Matlab工具箱和功能,可以实现精确的轨迹跟踪效果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值