“开源”自动驾驶车2017年内即将上路?

作者:本网编辑 发布时间:2017-02-10
分享到
开源代码可望加速自动驾驶车辆技术的发展;开源社群解决棘手软件问题的能力比传统方法更有效率…

2016年为高度自动驾驶的新阶段敞开了大门,让讨论话题从“自动驾驶车是不是很酷”,转变成监管机关、汽车OEM和技术业者更迫切需要掌握的“待辨事项”(to-do list)——如果他们希望让自动驾驶车尽快商用化上路以及安全行驶。

早期采用者对于Google汽车或以空中传输(OTA)软件升级特斯拉(Tesla)“自动驾驶”(Autopilot)功能感到惊艳的时期已经结束了。

现实在2016年沉没。业界如今发现了自动驾驶的局限性。汽车工程界正急着恶补“人工智能”(AI)技术,毕竟这项技术远远超出当今的计算机视觉(Computer Vision;CV)。工程师持续关注机器学习(如何证明AI驾驶汽车的安全性?)领域的挑战。许多汽车制造商也正加紧全方位审视网络安全。

那么,在2017年的汽车电子产业进程中,有什么力量可能改变自动驾驶车的发展?

根据《EE Times》预测,业界将会:

1)拥抱自动驾驶车开源软件(没错,是时候了!);

2)为自动驾驶定义支持AI的SoC;

3)探索一种能测试和验证AI自动驾驶车安全的新方法。

汽车产业究竟将上演哪一出戏码?

自动驾驶车的开放平台

或许,最具争议的是“开放源码”(open-source)软件运动的出现。

对于采用封闭、独立技术开发途径的大型汽车业者(Big Auto)来说,使用开放源码软件可能太过于玄虚。但其拥护者则抗辩说:开放源码社群更能解决真正的难题。自动驾驶就是一个真正的难题。

Vision Systems Intelligence (VSI)创办人兼首席顾问Phil Magney认同这样的观点。他指出,“软件是汽车未来的至尊门票(golden ticket)。”

“我认为开放源码将加速自动驾驶车辆技术的发展。开放源码社群解决棘手软件问题的能力比传统方法更快。那么,业界公司就能使用开放原始码,并藉其建构自家解决方案。”

但究竟该如何利用开放源码自动驾驶软件进行开发?对于初入门者来说,可以考虑Comma.ai,这是一家为所有人提供用于OpenPilot源代码的初创公司。Comma.ai的创办人George Hotz称其新计划是“Autopilot的开放源码替代方案”,目前正经由GitHub代理其Comma.ai程序代码。

去年秋天,Hotz曾经因为美国监管机构表达对于安全的顾虑,毅然决然地取消第一批先进驾辅助系统(ADAS)后装套件的发布,令业界刮目相看。

但Hotz并未因此止步不前。去年11月底,该公司决定公开其自动驾驶车计划的程序代码,此举再次震惊业界。

参考视频: https://www.youtube.com/embed/lM2_E2y4eCg

Magney解释:“Comma.ai程序代码的某些部份不能修改,例如Comma的训练网络——即推理模型。”其它部份则是开放的,例如人机接口(HMI)和控制指令。他补充说:“这个平台只能用于开发。如果有人想要商业化,就必须进行协商。OpenPilot实际上是基于Comma.ai训练网络的行为模型。”

Comma.ai创办人George Hotz期许成为自动驾驶汽车界的Android

针对自动驾驶车共享与实现类似“开放源码”概念的其它业者包括:刚刚发布其开放源码车辆控制(OSCC)的Polysync,以及一线供应商Continental的全资子公司Elektrobit。Elektrobit提供了一种robinos自动驾驶车软件开发工具包,根据Magney介绍,这是一种专为自动驾驶车应用设计的抽象层,具有开放的编程接口。

Polysync的OSCC“为开发人员提供一种用于控制的开放接口规格,”Magney解释说。它并不是免费提供的(约需花1,000美元),但它让开发人员能够“应用自动驾驶车的行为模型,从而快速搭建自动驾驶车以及使其导入运作。”

Electrobit的robinos规格标准是免费提供的。Magney指出,该软件工具可经授权用于开发和/或实现量产。然而,Magney也坦承认,商业化则是另一回事。

在自动驾驶车竞赛的最新进展,使得系统设计者开始呼吁一种基于通用接口规格的开发平台。Magney解释:“他们想要能以软件实现新应用和安全功能的通用接口规格。”他认为:“这一行动将成为自动驾驶车技术生态系统发展的推手,并将带动更快的自动驾驶车辆开发进程。”

汽车大脑芯片

预计同样在2017年,汽车大脑芯片领域将展开激烈竞争。

据报导,Nvidia、Mobileye、英特尔(Intel)、瑞萨(Renesas)、高通(Qualcomm)、恩智浦(NXP)和许多芯片新创公司正处于开发AI汽车SoC的不同阶段。预计在今年就会陆续看到各种消息发布。

英特尔揭示发展自动驾驶车策略的三项关键技术:汽车、连接性,以及云端

然而,AI芯片仍然是一项正开发中的任务。SoC设计者对于如何打造AI芯片架构尚无共识。现有的GPU、FPGA、CPU、DSP以及其它各种技术架构,都可能成为考虑用于汽车的备选方案。

IHS Markit汽车半导体首席分析师Luca De Ambroggi认为,“目前还没有现成可用的车辆量产解决方案”,以因应高度自动化驾驶应用的需求。主要的限制是芯片性能和(尚未)优化的算法。此外,他说:“性能并不仅仅表现在速度和MAC/s,还包括相应的功耗。预计传感器融合电子控制单元(ECU)的功耗不应该超过50W,而至于前视相机的功耗则势必要小于10W。”

对于寻求在边缘运算(edge computing)利用深度神经网络并希望以实际芯片进行试验者,法国的一家研究机构已经开发出一款称为‘P-Neuro’的超低功耗可编程加速器。

表1显示基于FPGA的P-Nuero如何执行脸部辨识卷积神经网络(CNN)应用,并比较同样嵌入式CNN应用的嵌入式CPU(Raspberry Pi上的四个ARM核心;执行于Android上的三星Exynos核心)与DSP,从18,000幅影像数据库中进行“脸部撷取”任务。

表1:P-Neuro与嵌入式CPU、GPU进行「脸部撷取」任务的比较 (来源:CEA)

汽车SoC发展现况

Arteris营销副总裁Kurt Shuler解释:“当今的设计团队正将业界标准CPU丛集(如ARM)与其自定义的硬件加速器整合于SoC中,使其成为这些嵌入式设备的大脑。”

客制硬件和软件协同作业,为视觉处理、AI或机器学习提供算法功能。Shuler说,“设计团队的第一项挑战是如何最有效地建置其算法,以及划分在硬件或软件的功能建置。”

Shuler说,下一个挑战是“如何最有效地实现一个经得起时间考验的软件架构。”

他解释说,设计团队的作法并不是单独处理这些执行元素,再透过复杂的邮件/信息传送系统进行整合,而是建置硬件快取的一致性,以提供共同的内存观点,并简化元素之间的通讯。“重点在于:下一代ADAS芯片本质上是超级计算机SoC,内建高度专业化IP加速器,以执行一些最重要任务。”

从HOG到CNN?

计算机视觉和人工智能之间有何差异?De Ambroggi指出,“对于目标侦测来说,当今的计算机视觉主要根据定向梯度直方图(HOG)类型的算法。”

他指出,传统的机器视觉算法在市场上现有的汽车系统中发挥了重要和宝贵的作用。这主要是因为它们并不至于太复杂,而且能实现关键的安全认证。

然而,De Ambroggi预测,“随着时间的进展,更多的功能性将从『HOG/传统』算法转型至基于AI/深度学习的算法。”

事实上,随着Mobileye在2016年发布新版EyeQ芯片,就已经开启了朝向AI/深度学习算法的转型之路了,他补充说。

汽车产业正密切关注AI,因为自动驾驶的“真正推手”来自于AI可能带来的附加功能,而这是HOG系统无法提供的。De Ambroggi强调,多目标侦测和辨识都是关键,加上它能够辨识环境对移动中车辆的潜在影响,他指出。

“想象在下雪或下雨天,你的车道中有一部份被积雪覆盖或占用,却有一辆汽车迎面驶来。基于AI的系统可以在这种情况下像人类驾驶一样权衡每一项元素,并做出决策......缓缓地煞车、用力或只是回避障碍物。”

De Ambroggi预测,到了2020和2021年以前,从新出厂的车辆就能看出HOG与AI不再势均力敌,AI将占据更多优势。

技术供应商、一线供应商和汽车OEM都企盼导入AI,使其行车系统得以不断地学习。De Ambroggi说,“如果每一次需要被辨识的新对象出现,就必须从头开发新的系统、芯片和软件,那会苦不堪言。当然,大家都希望系统能在合理的时间内学会。”

De Ambroggi推测,业界正针对开发和优化初始算法展开许多计划,竭尽所能地从目前的硅晶中攫取所有的MAC/s。第二步是优化专门针对CNN和深度学习量身打造的硬件和加速器。“我强烈的感觉到很快地将会看到许多目前处于‘隐密期’的专利。而且,你将会看到这些专利来自供应链中的各个成员,包括OEM、一线供应商、EDA和IP供应商。”

如何认证AI

对于自动驾驶车来说,如何测试机器学习仍是悬而未决的难题。

这一问题长期困扰着机器学习专家。但汽车/科技产业中很少有人承认机器学习是个连ISO26262标准也无法因应的软件难题。

在开发自动驾驶车时,研究人员诉诸于神经网络教导汽车辨识物体。但研究人员无法准确编写出如何区别狗与猫有哪些不同的“要求”。 因此,研究人员向机器展示一大堆图片,以便让机器像婴儿一样学习如何区别猫和狗的方式。

虽然在训练神经网络的过程中,研究人员会调整“权重”。遗憾的是,目前无法测试加权轮廓,因为AI的过程采用的是归纳法——从有限的数据样本进行推断,从而概推某些对象的整体情况。

V模型(来源:Philip Koopman)

“如果没有必要条件,就无法使用V模型,”美国卡内基梅隆大学(Carnegie Mellon Univ.)教授Philip Koopman解释说。去年春天,Koopman在底特律SAE世界大会上发表“自动驾驶车的测试和验证挑战”专题演讲,提醒与会的汽车工程师“证明自动驾驶车真的能可靠运作极其困难。而且进行测试也不足以达到安全性。”

公开坦承尚未就绪

那么机器学习系统如何进行测试?De Ambroggi表示,“这是目前最大的挑战,而且至今仍然无解。”

在2017年,汽车产业也许不得不承认,机器学习是一种新技术,它还没有完全为自动驾驶做好准备。如果少了这种公开承认,汽车OEM和技术公司可能会失去开始探索如何评估自动驾驶车安全这个问题的机会。

“我并不是指如何测试机器学习(ML)的训练数据集,”Koopman说:“而是建议监管机构应该要求汽车制造商或自动驾驶车平台供应商出具书面文件,证明为什么他们基于机器学习的自动驾驶车是安全的。”

收藏
赞一下
0