使用擅长学习、处理、分类序列数据的长短期记忆(LSTM)网络,建立输出从车辆引擎所产生的氮氧化物(NOX)的模型,藉由使用MATLAB和深度学习工具箱建立LSTM,并训练出预测NOX排放的模型网络,让新一代零排放车辆的开发技术能达到高度准确率。
雷诺(Renault)汽车现正积极地开发新一代零排放车辆(zero-emissions vehicles;ZEVs)的技术,同时,也在努力希望使内燃机(internal combustion engine;ICE)车辆更干净、更有效率。减少有害物质的排放是其中一项重点项目。内燃机会产生氮氧化物(oxides of nitrogen;NOX),导致了烟雾、酸雨、温室气体。为了降低NOX,需要精确地估计各种引擎操作点的排放–举例来说,各种扭力和引擎速度的组合。
在真实的引擎上进行测试不但昂贵,而且通常很耗时。而传统上,是透过查找表(lookup tables)或氧化(combustion)模型的计算来进行NOX估计。
不过,这些方法有几个缺点,例如查找表不够精确,而氧化模型也会因为方程式需撷取排放的动态复杂性,使得要建立模型的难度特别高,导致NOX物理模型的高复杂度,因此很难用于完整的引擎操作范围;而且,这些模型无法在ECU上实时的执行。
我们最近开始使用长短期记忆(long-short-term memory;LSTM)网络来建立从引擎输出NOX的模型(直接从引擎排放,而不是从后处理(aftertreatment)系统)。
LSTM网络是一种擅长学习、处理、分类序列数据的神经网络,LSTM建立起来比氧化模型容易许多。透过MATLAB,即使本身并不是深度学习的专家,也可以使用MATLAB和深度学习工具箱(Deep Learning Toolbox)建立,并训练出预测NOX排放的模型网络,准确率几乎高达90%。
LSTM网络模型的设计与训练
除了执行真实引擎的测试,并且取得了训练数据。在测试进行期间,引擎会经过常见的驾驶型态循环,包含全球调和轻型车辆测试循环(Worldwide harmonized Light vehicles Test Cycles;WLTC)和欧盟现行之欧洲驾驶循环(New European Driving Cycle;NEDC),还有实际驾驶排放(Real Driving Emissions;RDE)测试。这些撷取下来的数据将做为模型网络的输入值,包含引擎扭力、引擎速度、冷却剂温度,以及文件位的排放。
接着使用MATLAB程序语法来建立简单的LSTM网络。虽然这个初始的网络的组成仅有一个LSTM层、一个整流线性单位函式(rectified linear unit;ReLU)层、一个全连接(fully connected;FC)层、一个回归输出,它的表现却意料之外的好。
不过,我们猜想应可再透过增加更多网络的层数来提升精准度,并小心注意不要让模型网络规模膨胀到可能造成过度拟合(overfitting),或者占据太多ECU内存。
接下来,更新MATLAB程序来增加神经网络层数,并且进行几种模型网络的配置探索。由于网络模型尺寸较小,最适网络配置和架构的选择是由人工来进行。采用试误法(trial-and-error method)可以利用系统的物理资产。举例来说,对于具有高度非线性的系统,通常会选择多重ReLU层,而对于热系统,多重LSTM层可能更为适合。
我们选择一个包含单一个LSTM层、三个ReLU层、三个FC层,以及一个回归输出层的网络,此版本的LSTM网络针对NOX等级预测可以达到85-90%的精确度,相较之下,使用查找表时则仅有60-70%的精确度(图1)。
(本文由钛思科技提供;作者Nicoleta-Alexandra Stroe、Vincent Talon任职于Renault汽车公司)