Uber、Waymo纷纷收购仿真技术公司,仿真模拟为何对自动驾驶如此...
共 3897字,需浏览 8分钟
·
2020-01-22 23:20
热点追踪 / 深度探讨 / 实地探访 / 商务合作
2019年末,自动驾驶巨头Waymo 宣布收购英国公司Latent Logic,用于仿真模拟技术的提高。Latent Logic是一家从牛津大学计算机科学系分离出来的英国自动驾驶汽车公司,其开发的AI技术通过“模仿学习”来构建逼真的人类驾驶行为仿真,从而开发可扩展且高效的自动驾驶测试。
其实一直以来,Waymo都在致力于发展仿真技术,这也是它自动驾驶的支柱项目之一。而收购Latent Logic则可以帮助Waymo实现更加贴近现实的仿真技术,Latent拥有一种叫模仿学习的机器学习算法,可以仿真人类的行为,如把开车的人、骑摩托车的人和路人的行为通过将人类不完美的驾驶行为和驾驶错误建模出来。该方针技术可以把这些行为模拟得更加真实,进而更好地帮助Waymo做自动驾驶的预测和规划。
而几乎在同一时间,Uber传出正在收购模拟软件开发公司Foresight。Foresight于2017年成立于硅谷,为智能出租车、送货卡车和飞行汽车等新兴移动机器人提供供软件和数据服务。如果收购Foresight,Uber也能较快提升其在自动驾驶仿真测试环节上的实力。
(Uber路测出事车辆,图片来自网络)
看起来,各大自动驾驶企业都相继在仿真技术上发力。那么,仿真技术到底是什么呢,它对于自动驾驶的发展为什么如此重要?
(Waymo仿真图像,图片来自网络)
仿真技术是什么?
众所周知,自动驾驶汽车的感知能力非常重要,需要在行驶过程中灵敏地识别道路上的物体,如其他的车辆、行人、路标、红绿灯、建筑物、树木等等。但是,在天气恶劣的时候,如下暴雨、暴雪、阳光极其强烈、以及没有灯光的夜晚,感知和识别能力都会大打折扣。比如当强光照射在某个容易反光的物体上时,自动驾驶汽车安装的摄像头可能会被强光影响而错误地识别该物体。
这些极端条件并不会经常发生,但要想处理好这些情况,就需要让自动驾驶汽车大量地被置于这些情景中,然后通过神经网络和机器学习算法不断学习相关的处理能力,所以这时候,仿真环境就提供了完美的虚拟现实路测环境,能够模拟极端情景,让自动驾驶汽车能持续不断地可以学习处理的技能。
那么仿真环境模拟都包括哪些具体的内容呢?
驾驶情景仿真
自动驾驶汽车从本质上可以理解为一个控制环路,包含了四个基本要素,物理环境、传感器、控制器和制动器。当汽车在真实环境中行驶时,传感器会感应识别到车辆周围的物体(如靠Liar和Radar识别行人、其他车辆等),根据这些被感知的物体,控制器会控制汽车做出相应的反应指令(比如是行人的话,就会命令汽车停车),最后制动器就会根据控制器发出的指令来做出对应的驱动汽车的反应(如收到是行人该停车的信号后,就会控制汽车让汽车停车)
驾驶情景仿真指的就是,拥有完整控制环路的自动驾驶车辆被放置在包含了道路、随意行走的行人、路标、建筑物等虚拟现实的驾驶环境中。通过构建出成千上万、各种各样的驾驶环境,仿真就可以测试出汽车的控制环路是否按照预期工作了。
传感器性能仿真
自动驾驶汽车的传感器主要包括Radar、Lidar等,通过电磁波等来检测物体,能够与摄像头互补,如阳光太刺眼影响摄像头拍摄时,Radar、Lidar的稳定性能就能派上用场了。
对传感器的性能仿真分析是自动驾驶仿真系统中最重要的环节,主要是通过高保真的物理分析来实现预测传感器性能的变化,比如,能够通过雷达方向图和增益来实现。并且传感器仿真还能预测在极端天气下,雷达等传感器在真实情况中的性能变化,相比于现场去测雷达的实际变化情况,仿真预测成本相对低很多,且时耗小。
(Waymo传感器系统,图片来自网络)
此外,自动化的功能安全分析,电子硬件、半导体、软件算法都可以用仿真技术来模拟。仿真的主要模型包括传感器模型、车辆动力学模型、行人模型、静态虚拟场景模型、动态交通流模型、天气气候模型、驾驶行为模型等。
Waymo的仿真实操
Waymo此前向美国交通部门提交了一份有43页的安全报告,在报告的第三部分,测试和验证方法中也描述了Waymo的仿真技术是如何帮助其实现先进的现实世界驾驶技巧。每天,都约有2.5万辆虚拟的Waymo自动驾驶汽车在仿真软件中测试,它们的里程数高达800万英里。
Waymo的仿真技术已经非常成熟,且仿真种类繁多,在这里给大家举一个小例子来看看Waymo是怎么对车辆在十字路口左转做仿真的。
在Waymo路测的主战场亚利桑那州的街道上有一个十字路口,自动驾驶车辆想要左转,此时面前的圆形绿灯亮起,对于人类驾驶员来说,在这种交通灯面前都需要非常小心、谨慎,需要判断对向车是不是有很多、是否在缓慢行驶,判断看是否能够在车流中找到缝隙通过,或者是否对向车很少、在很快地行驶,那就需要停下来等待等对向车通过后再左转。如果左转过早可能会和对面车相撞,如果左转过晚又有可能引起后方交通堵塞。
而仿真模拟器在这种情况下,能给自动驾驶车辆提供很多的练习机会,让汽车在每种情况下反复学习,来实现学会转弯的技能。
具体的实现过程如下:
首先Waymo需要不断测试,测试数量高达数千次。在同一路口模拟不同的驾驶场景测试,并且在不同路口反复练习,直到新学会的这个转弯技能,以此提高通用时的运行速度。
接着是创建众多变量,来实现改变驾驶场景,这个改变驾驶场景的过程被Waymo取名为fuzzing(模糊)。可以改变车流的速度、交通信号灯的时间,以及增加等待过马路的行人、自行车道等,来让驾驶场景更加复杂、贴近现实,然后观察这些变化的因素是怎么影响Waymo的车驾驶的。
(Fuzzing模型建立,图片来自网络)
最后是检测验证和不断迭代,当自动驾驶汽车在仿真环境中学习到了左转后,这种技能就会被录入知识库,然后与其他车辆共享。这种在仿真中学习到的技能又会被反哺运用到现实场景中去验证,然后循环整个过程来改进,最终要能确保在现实道路上、长达数百万英里路测时的安全性。
为了实现全集成式的自动驾驶车辆检测,Waymo在加州花重金打造了一个完全密闭的测试场地,叫Castle,占地91公顷,非相关人员都无法进入。
(Castle道具仓库,图片来自网络)
这个地方更像是一个封闭的小城镇,里面各种道路情景应有尽有,如高速公路、铁路道口等,还有众多的塑料道具,如行人、路障等,为了帮助仿真建模和验证,Waymo在Castle设置的交通模拟场景高达2万多个,比如玩滑板的人躺在滑板上,停在路边的车上突然有人下来,不管后面的车辆急速变道的汽车等。
仿真技术的重要性
目前市场上自动驾驶仿真软件主要有三类,第一类是专门的自动驾驶模拟仿真软件,第二类是基于游戏引擎做的仿真软件,所有很多做仿真的工程师都有做游戏的背景,第三类是基于机器人仿真软件做的仿真器。
仿真软件能够重枸各种极端、突发情况的情景,通过对参数的微调、修改,又能重组出各式各样新的突发情景。而实际的路测场景中很难遇到这么多的突发情况,且很多极端情况都非常的危险,比如一个小孩突然冲出马路,再比如在冰天雪地的高速公路上,这些路测的情况发生时,都需要承担很大的风险。而通过仿真技术,这些极端情况就可以轻易重现,省时又省钱。
仿真还有一个好处在于,在仿真环境中,自动驾驶汽车可以在短时间内实现规模庞大的路测。Nvidia的CEO黄仁勋在欧洲Nvidia GPU开发者大会上称,利用Nvidia的DGX和Tensor RT 3做驾驶仿真,工程师可以在5小时内完成48万公里的路测,按照这个速度计算,要测试完美国所有的道路,仅仅需要2天。
所以,众多自动驾驶公司都在斥重金,抑或发展自己的仿真技术,抑或是收购一些专门研究仿真技术的公司,目前也有很多专门做仿真技术的公司像雨后春笋拔地而起,如成立于2015年的谷歌系公司Drive.ai,目前在4轮融资中已经获得了7700万美元。
(Drive.ai仿真图,图片来自网络)
当然,仿真技术也存在着众多局限。仿真所需要建立的模型都是非常难的,比如目前对电磁场的仿真一般仅限于天线设计,很少被用到情景仿真中,导致了仿真软件对Radar和Lidar的建模都比较简单,而且无法对环境电磁学进行仿真。并且,对传感器仿真的时候,要想建立一个完全符合电磁学原理(电磁信号反射特性、强度等)都困难重重。
要想突破自动驾驶汽车目前在客服情况时“一惊一乍”的反应、加快机器学习的学习进程,还需要各家自动驾驶公司快速地实现仿真技术地不断更新换代。时间、资本和人才对于这场战役来说都成了至关重要的因素。
对于自动驾驶仿真技术,你们看好哪家公司呢?你们认为谁会率先在自动驾驶上取得里程碑式突破?欢迎大家留言讨论!
参考文章:
https://xw.qq.com/cmsid/20190404A02PS200?f=newdc
https://www.google.com/amp/s/amp.theatlantic.com/amp/article/537648/
https://www.google.com/amp/s/amp.theatlantic.com/amp/article/537648/
https://www.therobotreport.com/drive-ai-self-driving-simulation/
推荐阅读