馬 馳, 文振中*
(上海理工大學(xué) 能源與動(dòng)力工程學(xué)院,上海 200093)
化石燃料的枯竭,對(duì)環(huán)境的關(guān)注以及化石燃料價(jià)格的急劇上漲,驅(qū)使科學(xué)家們尋找替代燃料。作為燃料,生物柴油比常規(guī)汽油柴油具有更大的優(yōu)勢(shì)。最受關(guān)注的優(yōu)勢(shì)是環(huán)境方面的優(yōu)勢(shì),例如其生物降解性,無毒,硫排放量少,排放較少的空氣污染物和除氮氧化物以外的溫室氣體。除此之外,生物柴油更好的潤滑性(減少發(fā)動(dòng)機(jī)磨損)并且燃燒時(shí)具有更高的氧含量(鼓勵(lì)完全燃燒)。近年來有關(guān)生物柴油的研究取得了諸多進(jìn)展,尤其是關(guān)于生物柴油的制備工藝以及生產(chǎn)成本的研究受到了廣泛關(guān)注。
鹿清華等[1]對(duì)我國生物柴油的可獲性及成本進(jìn)行了分析,提出了利用廢棄油脂以及木本油脂作為生產(chǎn)生物柴油主要原料的建議,并對(duì)微藻生物柴油的發(fā)展和生產(chǎn)提出了展望。李琪等[2]總結(jié)了生物柴油的原料類型及生產(chǎn)工藝,并對(duì)生物柴油發(fā)展前景進(jìn)行了展望。熊犍等[3]綜述了降低生物柴油生產(chǎn)成本的5種方法,分別為:選擇含油率高、再生周期短、適應(yīng)貧瘠土地及不同氣候條件的新型植物原料;研究新型固體催化劑;引入超臨界法等新工藝;使用比較簡便的方法將甘油轉(zhuǎn)化為高附加值產(chǎn)品;以及適度生產(chǎn)規(guī)模等。可以看出,雖然國內(nèi)很多學(xué)者對(duì)生物柴油的成本及影響因素進(jìn)行了研究,但基本都停留在總結(jié)與綜述的層面,并且缺少大量可靠數(shù)據(jù)的支撐。此前,本人曾提出過運(yùn)用BP神經(jīng)網(wǎng)絡(luò)L-M算法來預(yù)測(cè)生物柴油成本,取得了不錯(cuò)的預(yù)測(cè)效果[4]。但預(yù)測(cè)精度仍有待提高,對(duì)網(wǎng)絡(luò)方法進(jìn)行改進(jìn)優(yōu)化并將不同預(yù)測(cè)方法進(jìn)行比對(duì)顯得尤為重要。
本文采用之前研究中所獲取的數(shù)據(jù),首先采用BP神經(jīng)網(wǎng)絡(luò)BR算法對(duì)生物柴油成本進(jìn)行了預(yù)測(cè),與之前研究相比,預(yù)測(cè)精度有所提高。接著采用遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)的訓(xùn)練過程,同樣實(shí)現(xiàn)了不錯(cuò)的預(yù)測(cè)效果。本文的研究進(jìn)一步驗(yàn)證了原料成本,工廠產(chǎn)能和甘油置信度對(duì)生物柴油生產(chǎn)成本的重要影響,并有效驗(yàn)證了神經(jīng)網(wǎng)絡(luò)在處理實(shí)際問題中的強(qiáng)大解決能力。
本文的數(shù)據(jù)來源于先前研究中所獲取的數(shù)據(jù)[5-25],數(shù)據(jù)的引用均為真實(shí)有效數(shù)據(jù),僅對(duì)單位進(jìn)行了統(tǒng)一換算。數(shù)據(jù)共有59組,主要的數(shù)據(jù)參數(shù)包括:原料價(jià)格、工廠產(chǎn)能、甘油置信度和單位成本價(jià)格。整理好的數(shù)據(jù)參數(shù)如表1所示。
表1 數(shù)據(jù)集
采用均方誤差mse(mean square error)和相關(guān)系數(shù)R2作為預(yù)測(cè)結(jié)果的評(píng)價(jià)指標(biāo)。均方誤差和相關(guān)系數(shù)的表達(dá)式分別如式(1)、(2)所示。
式中,ti為數(shù)據(jù)實(shí)際值,ai為預(yù)測(cè)值,tˉ為實(shí)際數(shù)據(jù)平均值,N為數(shù)據(jù)樣本數(shù)。相關(guān)系數(shù)R2大小決定了變量之間的相關(guān)程度,相關(guān)系數(shù)R2越接近1,表明神經(jīng)網(wǎng)絡(luò)的擬合性越好,否則相反。均方誤差mse越接近0,表明網(wǎng)絡(luò)的擬合性越好,否則相反。
BP神經(jīng)網(wǎng)絡(luò)通過不斷修正網(wǎng)絡(luò)中的權(quán)值和閾值來實(shí)現(xiàn)網(wǎng)絡(luò)的最佳輸出[26-28]。一個(gè)完整的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)包括輸入層,輸出層,隱含層。本例中共有3個(gè)輸入?yún)?shù),1個(gè)輸出參數(shù),因此輸入和輸出層中的節(jié)點(diǎn)個(gè)數(shù)分別為3和1。隱含層節(jié)點(diǎn)個(gè)數(shù)選取采用經(jīng)驗(yàn)公式hiddennum=2×inputnum+1其中hiddennum為隱含層節(jié)點(diǎn)個(gè)數(shù),inputnum為輸入層節(jié)點(diǎn)個(gè)數(shù),因此確定最佳的隱含層節(jié)點(diǎn)數(shù)為7。確定好的BP神經(jīng)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)為3―7―1。
將數(shù)據(jù)劃分為訓(xùn)練集和測(cè)試集兩組,訓(xùn)練和測(cè)試集的比例分別為0.85和0.15。采用mapminmax函數(shù)對(duì)數(shù)據(jù)進(jìn)行前處理,將數(shù)據(jù)參數(shù)歸一化到[-1,1]區(qū)間內(nèi),這一步的目的是為了使數(shù)據(jù)分布更加集中,從而得出更好的預(yù)測(cè)效果與回歸效果。在數(shù)據(jù)的訓(xùn)練過程中,使用trainbr函數(shù)作為網(wǎng)絡(luò)的訓(xùn)練函數(shù),與trainlm函數(shù)相比,trainbr函數(shù)減去了訓(xùn)練數(shù)據(jù)當(dāng)中的驗(yàn)證集,從而使更多數(shù)據(jù)進(jìn)入訓(xùn)練集,往往能實(shí)現(xiàn)更好的訓(xùn)練效果。網(wǎng)絡(luò)參數(shù)設(shè)置中,將訓(xùn)練集中的訓(xùn)練和測(cè)試參數(shù)分別設(shè)置為0.8和0.2。迭代次數(shù)設(shè)置為100次,學(xué)習(xí)率設(shè)置為0.1,目標(biāo)精度設(shè)置為0.000 01。
將預(yù)測(cè)數(shù)據(jù)代入訓(xùn)練好的神經(jīng)網(wǎng)絡(luò)進(jìn)行預(yù)測(cè),連續(xù)運(yùn)行10次預(yù)測(cè)的相關(guān)系數(shù)與均方誤差見表2。使用BR算法相關(guān)系數(shù)范圍為0.836 5~0.984,均方誤差范圍為0.003 6~0.031 1;選用第4次訓(xùn)練數(shù)據(jù)進(jìn)行預(yù)測(cè)效果分析,BR算法的預(yù)測(cè)效果和預(yù)測(cè)誤差如圖1、圖2所示。由圖2計(jì)算可知,采用BR算法進(jìn)行預(yù)測(cè)的預(yù)測(cè)結(jié)果平均相對(duì)誤差為4.47%,而之前采用L-M算法進(jìn)行預(yù)測(cè)結(jié)果的平均相對(duì)誤差為5.85%,使用BP算法的預(yù)測(cè)精度有所提高,預(yù)測(cè)誤差降低,預(yù)測(cè)效果更好。
表2 BR算法預(yù)測(cè)結(jié)果參數(shù)表
圖1 BR算法預(yù)測(cè)效果
圖2 BR算法預(yù)測(cè)誤差
2.2.1 遺傳算法原理
遺傳算法通過模擬自然界中遺傳和進(jìn)化機(jī)制,實(shí)現(xiàn)輸出路徑最優(yōu)化。將遺傳算法優(yōu)化與BP神經(jīng)網(wǎng)絡(luò)結(jié)合起來可以優(yōu)化網(wǎng)絡(luò)結(jié)構(gòu)中的權(quán)值和閾值[29-31]。傳統(tǒng)的反向傳播網(wǎng)絡(luò)采用梯度下降法逐步調(diào)整權(quán)值和閾值,而遺傳算法將每個(gè)個(gè)體看作一組染色體,通過一系列篩選、交叉、變異操作得到一組理想的個(gè)體,個(gè)體中包含了尋優(yōu)后神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)中的權(quán)值、閾值;使用遺傳算法訓(xùn)練后的網(wǎng)絡(luò)預(yù)測(cè)效果往往優(yōu)于傳統(tǒng)反向傳播算法。遺傳算法的實(shí)現(xiàn)過程主要可分為如下幾步:
2.2.2 染色體編碼
常見的染色體編碼方法有二進(jìn)制法、實(shí)數(shù)法等,本文采用實(shí)數(shù)編碼法對(duì)數(shù)據(jù)個(gè)體進(jìn)行編碼。由BR算法構(gòu)建的網(wǎng)絡(luò)結(jié)構(gòu)可知,輸入、隱含和輸出層節(jié)點(diǎn)數(shù)分別為3、7、1。通過實(shí)數(shù)編碼法計(jì)算,共有3×7+7×1=28個(gè)權(quán)值,7+1=8個(gè)閾值,所以遺傳算法個(gè)體編碼長度為28+8=36,使用實(shí)數(shù)編碼法將每個(gè)個(gè)體編碼成一個(gè)長度為36的實(shí)數(shù)串。
2.2.3適應(yīng)度函數(shù)
個(gè)體最終的選擇直接取決于適應(yīng)度函數(shù)的設(shè)定,個(gè)體被選擇的概率很大程度上取決于個(gè)體本身適應(yīng)度的好壞,適應(yīng)度越好說明該方法在生物柴油的成本預(yù)測(cè)中的預(yù)測(cè)效果越優(yōu)。適應(yīng)度好的個(gè)體往往被優(yōu)先選擇進(jìn)入下一步,而適應(yīng)度差的個(gè)體被逐步淘汰。為了得出更好的預(yù)測(cè)效果,將適應(yīng)度函數(shù)設(shè)置為測(cè)試結(jié)果的預(yù)測(cè)值與期望值之差的絕對(duì)值之和,適應(yīng)度函數(shù)F計(jì)算公式如式(3)所示。
式中,n為網(wǎng)絡(luò)輸出節(jié)點(diǎn)數(shù);ti為BP神經(jīng)網(wǎng)絡(luò)第i個(gè)節(jié)點(diǎn)的期望值;ai為第i個(gè)節(jié)點(diǎn)的預(yù)測(cè)值;k為系數(shù)??梢钥闯觯罱K的適應(yīng)度值F越小,個(gè)體所包含的權(quán)值和閾值更理想,網(wǎng)絡(luò)運(yùn)行效果越好。
2.2.4 選擇、交叉和變異操作
設(shè)置好遺傳算法的適應(yīng)度函數(shù)后,需要通過選擇、交叉和變異找到最優(yōu)適應(yīng)值的對(duì)應(yīng)個(gè)體。其中選擇操作中采用輪盤賭法進(jìn)行選擇,即基于適應(yīng)度比例的選擇策略,每個(gè)個(gè)體i的選擇概率Pi為
式中,F(xiàn)i為個(gè)體i的適應(yīng)度值,由于適應(yīng)度值越小越好,所以先對(duì)適應(yīng)度值進(jìn)行求倒;k為系數(shù);N為種群個(gè)體數(shù)目。交叉操作選取兩個(gè)不同個(gè)體進(jìn)行染色體的交換組合,通過交叉操作,新的個(gè)體得以產(chǎn)生,若交叉后的個(gè)體適應(yīng)度值優(yōu)于交叉前個(gè)體的適應(yīng)度值,該個(gè)體得到保留并進(jìn)入變異操作,否則被淘汰。變異操作選取單個(gè)個(gè)體進(jìn)行染色體結(jié)構(gòu)變異,變異后的個(gè)體同樣需要進(jìn)行篩選。通過以上選擇、交叉和變異過程,最終適應(yīng)度最好的個(gè)體得以保留,使用該個(gè)體所對(duì)應(yīng)的網(wǎng)絡(luò)參數(shù)對(duì)測(cè)試集數(shù)據(jù)進(jìn)行預(yù)測(cè)。
2.3.1 遺傳算法預(yù)測(cè)結(jié)果
將群體規(guī)模M設(shè)置為10,遺傳代數(shù)G設(shè)置為10代、交叉概率Pc和變異概率Pm分別設(shè)置為0.3和0.1。使用優(yōu)化后的網(wǎng)絡(luò)對(duì)50組訓(xùn)練數(shù)據(jù)完成訓(xùn)練后,用剩余的9組數(shù)據(jù)進(jìn)行效果測(cè)試。運(yùn)行后的預(yù)測(cè)結(jié)果如圖3所示,預(yù)測(cè)誤差如圖4所示。從圖4可以看出,采用遺傳算法進(jìn)行預(yù)測(cè)的結(jié)果誤差更為平滑,預(yù)測(cè)的分布更加均勻,顯示出遺傳算法優(yōu)化后的BP神經(jīng)網(wǎng)絡(luò)在實(shí)際預(yù)測(cè)中更加可靠。
圖3 遺傳算法預(yù)測(cè)效果
圖4 遺傳算法預(yù)測(cè)誤差
2.3.2 3種算法結(jié)果比較
將使用L-M、BR和遺傳算法三種不同預(yù)測(cè)方法的結(jié)果列于表3。與L-M算法相比,兩種算法均有更優(yōu)的預(yù)測(cè)效果。相比于L-M算法,使用BR算法的均方誤差更接近0,相關(guān)系數(shù)更接近1,預(yù)測(cè)的平均相對(duì)誤差由5.85%下降到4.47%,預(yù)測(cè)的效果得到了全面提升。與L-M和BR算法相比,遺傳算法的相關(guān)系數(shù)有所下降,但均方誤差在三種方法中最小,使用遺傳算法預(yù)測(cè)的平均相對(duì)誤差為4.89%,小于L-M算法而大于BR算法;與另外兩種算法相比,遺傳算法最大的優(yōu)勢(shì)是預(yù)測(cè)的輸出更加平滑穩(wěn)定,單個(gè)數(shù)據(jù)點(diǎn)的最大預(yù)測(cè)誤差明顯下降,在實(shí)際預(yù)測(cè)中具有更好的綜合應(yīng)用效果。綜上,使用BR算法能夠全面優(yōu)化BP神經(jīng)網(wǎng)絡(luò)的預(yù)測(cè)效果,使用遺傳算法優(yōu)化在實(shí)際應(yīng)用預(yù)測(cè)中效果最為理想。
表3 不同算法預(yù)測(cè)結(jié)果
生物柴油生產(chǎn)成本是生物柴油發(fā)展中關(guān)注的重要問題,研究不同影響因素對(duì)最終生產(chǎn)成本的共同作用效果具有重要的實(shí)際意義。人工神經(jīng)網(wǎng)絡(luò)具有出色的復(fù)雜非線性問題處理和建模能力,在數(shù)據(jù)處理與預(yù)測(cè)當(dāng)中得到了越來越廣泛的應(yīng)用。針對(duì)多變量對(duì)生物柴油成本的作用影響,本文在基于先前研究的基礎(chǔ)上,分別引進(jìn)了BR算法和遺傳算法對(duì)原有的神經(jīng)網(wǎng)絡(luò)進(jìn)行了改進(jìn)。研究結(jié)果表明使用BR算法和遺傳算法優(yōu)化后的預(yù)測(cè)精度均得到提升,預(yù)測(cè)的平均相對(duì)誤差均有所下降。