周昇
(南通職業大學機械工程學院,江蘇南通226007)
運用BP神經網絡預測柴油機的比油耗
周昇
(南通職業大學機械工程學院,江蘇南通226007)
比油耗是衡量柴油發動機本身燃油經濟性的最重要的指標。對于特定的柴油機,相應的轉速、功率、增壓器前/后溫度、中冷器氣壓等參數和比油耗是一種輸入-輸出模式映射關系,這個映射關系很難建立相應的數學模型。而神經網絡是一個具有普遍適應性的函數逼近器,所以建立合適的BP神經網絡,用已知的樣本數據訓練此網絡,就可以預測柴油機的比油耗。
柴油機;比油耗;MATLAB;BP神經網絡;預測
柴油機的比油耗,即柴油機燃油消耗率,指柴油發動機每發出1 kW有效功率,在1 h內所消耗的燃油質量(以g為單位),單位為g/(kW·h)。比油耗是衡量柴油機發動機本身燃油經濟性的最重要的指標。很明顯,比油耗越低,經濟性越好。對于特定的柴油機,如表1所示,相應的轉速、功率、增壓器前/后溫度、中冷器氣壓等參數和比油耗是一種輸入-輸出模式映射關系,這個映射關系很難建立相應的數學模型。而神經網絡是一個具有普遍適應性的函數逼近器,本文通過建立合適的BP神經網絡,用已知的樣本數據訓練此網絡,運用此網絡來預測柴油機的比油耗。

表1 柴油機性能參數
BP(Back Propagation)神經網絡算法的主要原理是,對于n個輸入學習樣本[p1,p2,…,xn],已知與其對應的m個輸出樣本為[t1,t2,…,tm]。用網絡的實際輸出值[z1,z2,…,zm]與已知的輸出樣本[t1,t2,…,tm]之間的誤差來不斷調整網絡的權值和閾值,使網絡的誤差平方和最小。最后使得[z1,z2,…,zm]和[t1,t2,…,tm]的值盡量接近,直到它們之間的差值小于允許的數。然后就可以使用此網絡預測未知的輸出。
可以用表1中的轉速、功率、增壓器前/后溫度、中冷器氣壓作為輸入學習樣本,比油耗作為輸出學習樣本。預測首尾數據時,誤差比較大,中間數據比較準確。把表1中序號為6的一行數據不放到學習樣本中。構建一個3層BP神經網絡預測柴油機的比油耗,輸入層的結點數為3個,隱含層結點數為8,隱含層的激活函數為“tansig”,輸出層節點數為2個,輸出層的激活函數為“purelin”。神經網絡模型如圖1所示。

圖1 神經網絡模型
%%運用BP網絡預測柴油機的比油耗
%%清空環境變量
clear all;%清除所有變量
close all;%清圖
clc;%清屏
%%訓練集/測試集產生
%導入柴油機數據
load Dieselenginedata.mat
%輸入數據矩陣
P=Dieselenginedata(:,1:end-1)';
%目標數據矩陣
T=Dieselenginedata(:,end)';
TEMP=T;
%原始樣本歸一化
[P,minp,maxp,T,mint,maxt]=premnmx(P,T);
%用矩陣的10個數據作為訓練樣本
TT=[1;2;3;4;5;7;8;9;10;11];%排除6
P_train=P(:,TT);
T_train=T(:,TT);
%用矩陣的全部數據作為測試樣本
P_test=P;
T_test=T;
N=size(P_test,2);
%%BP神經網絡創建、訓練及仿真測試
%創建一個新的前向神經網絡
net=newff(minmax(P),[8,1],{'tansig','purelin'},'traingdx');
%設置訓練參數
net.trainParam.lr=0.03;%學習率
net.trainParam.epochs=500;%最大迭代次數
net.trainParam.goal=1e-3;%目標誤差
%調用TRAINGDM算法訓練BP網絡
[net,tr]=train(net,P_train,T_train);
%仿真測試
A=sim(net,P_test);
T_sim_bp=postmnmx(A,mint,maxt);
%%繪圖
figure
plot(1:N,TEMP,'b:*',1:N,T_sim_bp,'r-o')
legend('真實值','預測值')
xlabel('預測樣本')
ylabel('比油耗')
string={'比油耗預測結果對比'};
title(string)
如圖2可見,運行源程序后得到第6點的預測比油耗為226.4,真實值為228.1,誤差為(228.1-226.4)/228.1=0.0075,預測還是非常準確的,其余各點的偏差也較小。以上所述表明運用BP神經網絡預測柴油機的比油耗是比較適宜的。

圖2 比油耗預測結果
[1]包子陽.智能優化算法及其MATLAB實例[M].北京:電子工業出版社,2016:165-177.
[2]秦大同.柴油發動機系統設計[M].上海:上海科學技術文獻出版社,2015:61-70.
[3]陳明.MATLAB神經網絡與實例精解[M].北京:清華大學出版社,2016:156-191.
[4]郁磊.MATLAB智能算法30個案例分析[M].北京:北京航空航天大學出版社,2015:237-246.
MultiObjective Optim ization Design of SmallPlaner Mechanism Based on MATLAB
ZHOU Sheng
(School of Mechanical Engineering,Nantong Vocational College,Nantong Jiangsu 226007,China)
Fuel consumption is one of the most important indicators to measure the fuel economy of diesel engine itself.Specific to the diesel engine,the corresponding speed,power,turbocharger before/after cooler temperature,pressure and other parameters and specific fuel consumption is an input-outputmodelmapping,thismapping is difficult to establish the corresponding mathematical model.The neural network is a universal adaptive function approximation,so the establishment of a suitable BP neural network,with the known sample data to train the network,you can predict the diesel engine than the fuel consumption.
diesel engine;fuel consumption;MATLAB;BP neural network;prediction
TP183
A
1672-545X(2016)12-0192-02
2016-09-27
南通市科技公共服務平臺“數字化設計與制造技術服務平臺”(CP22013002)
周昇(1964-),男,江蘇南通人,本科,講師,主要研究方向為機械CAD/CAM/CAE。