周昇
(南通職業(yè)大學(xué)機械工程學(xué)院,江蘇南通226007)
運用BP神經(jīng)網(wǎng)絡(luò)預(yù)測柴油機的比油耗
周昇
(南通職業(yè)大學(xué)機械工程學(xué)院,江蘇南通226007)
比油耗是衡量柴油發(fā)動機本身燃油經(jīng)濟性的最重要的指標(biāo)。對于特定的柴油機,相應(yīng)的轉(zhuǎn)速、功率、增壓器前/后溫度、中冷器氣壓等參數(shù)和比油耗是一種輸入-輸出模式映射關(guān)系,這個映射關(guān)系很難建立相應(yīng)的數(shù)學(xué)模型。而神經(jīng)網(wǎng)絡(luò)是一個具有普遍適應(yīng)性的函數(shù)逼近器,所以建立合適的BP神經(jīng)網(wǎng)絡(luò),用已知的樣本數(shù)據(jù)訓(xùn)練此網(wǎng)絡(luò),就可以預(yù)測柴油機的比油耗。
柴油機;比油耗;MATLAB;BP神經(jīng)網(wǎng)絡(luò);預(yù)測
柴油機的比油耗,即柴油機燃油消耗率,指柴油發(fā)動機每發(fā)出1 kW有效功率,在1 h內(nèi)所消耗的燃油質(zhì)量(以g為單位),單位為g/(kW·h)。比油耗是衡量柴油機發(fā)動機本身燃油經(jīng)濟性的最重要的指標(biāo)。很明顯,比油耗越低,經(jīng)濟性越好。對于特定的柴油機,如表1所示,相應(yīng)的轉(zhuǎn)速、功率、增壓器前/后溫度、中冷器氣壓等參數(shù)和比油耗是一種輸入-輸出模式映射關(guān)系,這個映射關(guān)系很難建立相應(yīng)的數(shù)學(xué)模型。而神經(jīng)網(wǎng)絡(luò)是一個具有普遍適應(yīng)性的函數(shù)逼近器,本文通過建立合適的BP神經(jīng)網(wǎng)絡(luò),用已知的樣本數(shù)據(jù)訓(xùn)練此網(wǎng)絡(luò),運用此網(wǎng)絡(luò)來預(yù)測柴油機的比油耗。
表1 柴油機性能參數(shù)
BP(Back Propagation)神經(jīng)網(wǎng)絡(luò)算法的主要原理是,對于n個輸入學(xué)習(xí)樣本[p1,p2,…,xn],已知與其對應(yīng)的m個輸出樣本為[t1,t2,…,tm]。用網(wǎng)絡(luò)的實際輸出值[z1,z2,…,zm]與已知的輸出樣本[t1,t2,…,tm]之間的誤差來不斷調(diào)整網(wǎng)絡(luò)的權(quán)值和閾值,使網(wǎng)絡(luò)的誤差平方和最小。最后使得[z1,z2,…,zm]和[t1,t2,…,tm]的值盡量接近,直到它們之間的差值小于允許的數(shù)。然后就可以使用此網(wǎng)絡(luò)預(yù)測未知的輸出。
可以用表1中的轉(zhuǎn)速、功率、增壓器前/后溫度、中冷器氣壓作為輸入學(xué)習(xí)樣本,比油耗作為輸出學(xué)習(xí)樣本。預(yù)測首尾數(shù)據(jù)時,誤差比較大,中間數(shù)據(jù)比較準(zhǔn)確。把表1中序號為6的一行數(shù)據(jù)不放到學(xué)習(xí)樣本中。構(gòu)建一個3層BP神經(jīng)網(wǎng)絡(luò)預(yù)測柴油機的比油耗,輸入層的結(jié)點數(shù)為3個,隱含層結(jié)點數(shù)為8,隱含層的激活函數(shù)為“tansig”,輸出層節(jié)點數(shù)為2個,輸出層的激活函數(shù)為“purelin”。神經(jīng)網(wǎng)絡(luò)模型如圖1所示。
圖1 神經(jīng)網(wǎng)絡(luò)模型
%%運用BP網(wǎng)絡(luò)預(yù)測柴油機的比油耗
%%清空環(huán)境變量
clear all;%清除所有變量
close all;%清圖
clc;%清屏
%%訓(xùn)練集/測試集產(chǎn)生
%導(dǎo)入柴油機數(shù)據(jù)
load Dieselenginedata.mat
%輸入數(shù)據(jù)矩陣
P=Dieselenginedata(:,1:end-1)';
%目標(biāo)數(shù)據(jù)矩陣
T=Dieselenginedata(:,end)';
TEMP=T;
%原始樣本歸一化
[P,minp,maxp,T,mint,maxt]=premnmx(P,T);
%用矩陣的10個數(shù)據(jù)作為訓(xùn)練樣本
TT=[1;2;3;4;5;7;8;9;10;11];%排除6
P_train=P(:,TT);
T_train=T(:,TT);
%用矩陣的全部數(shù)據(jù)作為測試樣本
P_test=P;
T_test=T;
N=size(P_test,2);
%%BP神經(jīng)網(wǎng)絡(luò)創(chuàng)建、訓(xùn)練及仿真測試
%創(chuàng)建一個新的前向神經(jīng)網(wǎng)絡(luò)
net=newff(minmax(P),[8,1],{'tansig','purelin'},'traingdx');
%設(shè)置訓(xùn)練參數(shù)
net.trainParam.lr=0.03;%學(xué)習(xí)率
net.trainParam.epochs=500;%最大迭代次數(shù)
net.trainParam.goal=1e-3;%目標(biāo)誤差
%調(diào)用TRAINGDM算法訓(xùn)練BP網(wǎng)絡(luò)
[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('真實值','預(yù)測值')
xlabel('預(yù)測樣本')
ylabel('比油耗')
string={'比油耗預(yù)測結(jié)果對比'};
title(string)
如圖2可見,運行源程序后得到第6點的預(yù)測比油耗為226.4,真實值為228.1,誤差為(228.1-226.4)/228.1=0.0075,預(yù)測還是非常準(zhǔn)確的,其余各點的偏差也較小。以上所述表明運用BP神經(jīng)網(wǎng)絡(luò)預(yù)測柴油機的比油耗是比較適宜的。
圖2 比油耗預(yù)測結(jié)果
[1]包子陽.智能優(yōu)化算法及其MATLAB實例[M].北京:電子工業(yè)出版社,2016:165-177.
[2]秦大同.柴油發(fā)動機系統(tǒng)設(shè)計[M].上海:上海科學(xué)技術(shù)文獻出版社,2015:61-70.
[3]陳明.MATLAB神經(jīng)網(wǎng)絡(luò)與實例精解[M].北京:清華大學(xué)出版社,2016:156-191.
[4]郁磊.MATLAB智能算法30個案例分析[M].北京:北京航空航天大學(xué)出版社,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
南通市科技公共服務(wù)平臺“數(shù)字化設(shè)計與制造技術(shù)服務(wù)平臺”(CP22013002)
周昇(1964-),男,江蘇南通人,本科,講師,主要研究方向為機械CAD/CAM/CAE。