本發(fā)明涉及噴射器性能預(yù)測領(lǐng)域,尤其是一種噴射器性能參數(shù)預(yù)測方法。
背景技術(shù):
噴射器由一股壓力較高的流體驅(qū)動,通過工作噴嘴產(chǎn)生真空,并吸入壓力較低的流體,混合后通過擴壓器提高流體的壓力,最終得到中等壓力的流體,即將低壓流體壓力的提升,實現(xiàn)壓縮的效果。噴射器無需消耗電力,具有良好的節(jié)能減排效果;無運動部件,造價低廉,維護方便,廣泛應(yīng)用于化工、動力工程等領(lǐng)域。
噴射器最關(guān)鍵的性能參數(shù)是臨界工作狀態(tài)下的引射系數(shù)(ε)與出口背壓(pc)。但由于噴射器內(nèi)部流動非常復(fù)雜,包括一次壅塞、兩次壅塞、超音速流動、各類激波、扇形擴散、流體混合等現(xiàn)象,采用一維物理模型對其引射系數(shù)等關(guān)鍵參數(shù)進行預(yù)測的精度較低,效果較差;而采用計算流體力學的方法則耗時過長、不適合設(shè)計及相關(guān)循環(huán)的研究。上述限制對噴射器的設(shè)計應(yīng)用、相關(guān)循環(huán)研究等工作帶來的不便。
bp(backpropagation)神經(jīng)網(wǎng)絡(luò)是一種按誤差逆?zhèn)鞑ニ惴ㄓ柧毜亩鄬忧梆伨W(wǎng)絡(luò),是目前應(yīng)用最廣泛的神經(jīng)網(wǎng)絡(luò)模型之一。bp網(wǎng)絡(luò)能學習和存儲大量的輸入-輸出模式的映射關(guān)系,使用最速下降法的學習規(guī)則,通過反向傳播來不斷調(diào)整網(wǎng)絡(luò)的權(quán)值和閥值,使網(wǎng)絡(luò)的誤差平方和最小。
技術(shù)實現(xiàn)要素:
為了克服已有噴射器性能參數(shù)預(yù)測方法的精度較低、效果較差、耗時較長的不足,本發(fā)明提供一種精度較高、效果較好、耗時較短的基于變學習率的bp人工神經(jīng)網(wǎng)絡(luò)的噴射器性能參數(shù)預(yù)測方法。
本發(fā)明解決其技術(shù)問題所采用的技術(shù)方案是:
一種基于變學習率的bp人工神經(jīng)網(wǎng)絡(luò)的噴射器性能參數(shù)預(yù)測方法,所述方法包括以下步驟:
步驟一:數(shù)據(jù)的采集與處理
對于給定的噴射器收集,根據(jù)建立人工神經(jīng)網(wǎng)絡(luò)的需要,收集相關(guān)參數(shù)即引射流體壓力pe、工作流體壓力pp、出口背壓pc和引射系數(shù)ε,對引射流體壓力、工作流體壓力與出口背壓進行歸一化處理,使其到[0,1]之間,公式如下:
其中,k為歸一化后的數(shù)據(jù),x為被歸一化數(shù)據(jù),xmin為被歸一化數(shù)據(jù)中的最小值,xmax為被歸一化數(shù)據(jù)中最大值;
步驟二:bp神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的確定
根據(jù)網(wǎng)絡(luò)的輸入輸出矢量,確定神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),隱含層數(shù)為一層,神經(jīng)元個數(shù)根據(jù)經(jīng)驗公式:
步驟三:變學習率的bp神經(jīng)網(wǎng)絡(luò)的訓練和測試
根據(jù)輸入向量計算人工神經(jīng)網(wǎng)絡(luò)隱含層結(jié)點的輸入值、輸出值再到輸出層結(jié)點的輸出值,根據(jù)預(yù)測值與期望值之差改變神經(jīng)網(wǎng)絡(luò)權(quán)值與閾值,經(jīng)過若干次迭代,當訓練誤差小于二倍的訓練目標時建立可變學習率數(shù)學模型,在基于上述數(shù)學模型的基礎(chǔ)上再對神經(jīng)網(wǎng)絡(luò)進行訓練直到訓練結(jié)果滿足結(jié)束條件;該訓練完成的神經(jīng)網(wǎng)絡(luò)即為所建立的噴射器性能預(yù)測模型;
所述噴射器性能預(yù)測模型得到的輸出值為歸一化的值,再對其進行反歸一化處理,轉(zhuǎn)化為真實輸出值,其公式如下:
x=k·(xmax-xmin)+xmin
步驟四:采集給定噴射器的實測數(shù)據(jù),包括引射流體壓力pe、工作流體壓力pp,按步驟一的方法將數(shù)據(jù)進行歸一化處理,然后再輸入到建立完成的變學習率的bp神經(jīng)網(wǎng)絡(luò)中,得到輸出向量出口背壓pc和引射系數(shù)ε,再將出口背壓進行反歸一化處理,即得到預(yù)測值。
再進一步,所述步驟二中,構(gòu)建bp人工神經(jīng)網(wǎng)絡(luò),輸入層、隱含層和輸出層各層之間的連接權(quán)值初始化值隨機取[-1,1],用ωij、ωjk表示;學習率η一般取0.1~0.2,訓練目標一般取10-3~10-6,循環(huán)次數(shù)n(n>200)次。
更進一步,所述步驟三中,輸入訓練樣本對神經(jīng)網(wǎng)絡(luò)進行訓練的過程如下:
3.1)隱含層的計算:其中l(wèi)、m、n分別表示輸入層節(jié)點數(shù),隱含層節(jié)點數(shù)與輸出層節(jié)點數(shù),f(x)為傳遞函數(shù)取s型函數(shù),x為輸出層輸入的數(shù)據(jù);
隱含層節(jié)點的輸入
隱含層節(jié)點的輸出hj=f(sj)
3.2)輸出層的計算:其中yb為神經(jīng)網(wǎng)絡(luò)建立過程中的預(yù)測輸出;
輸出層節(jié)點的輸出
3.3)誤差計算:神經(jīng)網(wǎng)絡(luò)輸出層第k個神經(jīng)元預(yù)測輸出為ybk,yk為第k個神經(jīng)元的期望輸出,它們之間存在誤差ek,公式如下:
ek=y(tǒng)k-ybk
3.4)權(quán)值的更新:根據(jù)誤差ek更新網(wǎng)絡(luò)輸入層與隱含層之間的權(quán)值ωij,隱含層和輸出層之間的權(quán)值ωjk公式如下:
ωjk=ωjk+ηhjek
3.5)閾值的更新:根據(jù)誤差e更新網(wǎng)絡(luò)節(jié)點閾值a,b;
bk=bk+ek
3.6)調(diào)整后的權(quán)值、閾值重新賦予bp神經(jīng)網(wǎng)絡(luò),重復(fù)步驟3.1)-3.5)當計算誤差為兩倍訓練目標時記錄此時循環(huán)步數(shù)st,此時循環(huán)第m次時學習率η計算公式如下所示:
3.7)重復(fù)步驟3.1)-3.6)繼續(xù)進行訓練,當訓練誤差低于訓練目標或者循環(huán)次數(shù)超過設(shè)置上限為止,該bp神經(jīng)網(wǎng)絡(luò)訓練完成。
本發(fā)明的技術(shù)構(gòu)思為:本發(fā)明提出一種變學習率的bp神經(jīng)網(wǎng)絡(luò),在訓練誤差接近訓練目標時,可根據(jù)數(shù)學模型減少神經(jīng)網(wǎng)絡(luò)的學習率使得權(quán)值的調(diào)整量變小,從而減少預(yù)測中的振蕩或者發(fā)散等問題,實現(xiàn)快速而有效的學習收斂過程,從而得到更為精確的解,因此具有比傳統(tǒng)bp神經(jīng)網(wǎng)絡(luò)更優(yōu)秀的性能。所建立的變學習率的bp神經(jīng)網(wǎng)絡(luò)模型包括其輸入輸出模型、作用函數(shù)模型、誤差計算模型和自學習模型。
基于此,本發(fā)明進一步提出采用變學習率的bp人工神經(jīng)網(wǎng)絡(luò)的方法預(yù)測噴射器的引射系數(shù)(ε)與出口背壓(pc)等關(guān)鍵參數(shù),無需考慮復(fù)雜的流動機理,即可方便快速地獲得高精度的預(yù)測結(jié)果,為噴射器相關(guān)的設(shè)計制造、循環(huán)研究等提供依據(jù)。
本發(fā)明的有益效果主要表現(xiàn)在:方便快捷的對噴射器性能進行預(yù)測,有效解決傳統(tǒng)方法誤差普遍較大的問題,提高預(yù)測精度;為噴射器相關(guān)的設(shè)計制造、循環(huán)研究等提供依據(jù)。
附圖說明
圖1是bp神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖;
圖2是變學習率的bp神經(jīng)網(wǎng)絡(luò)預(yù)測噴射器性能流程圖;
圖3是變學習率的bp神經(jīng)網(wǎng)絡(luò)預(yù)測結(jié)果誤差圖。
具體實施方式
下面結(jié)合附圖對本發(fā)明作進一步描述。
參照圖1~圖3,一種基于變學習率的bp人工神經(jīng)網(wǎng)絡(luò)的噴射器性能參數(shù)預(yù)測方法,所述方法包括以下步驟:
步驟一:數(shù)據(jù)的采集與處理:對于給定的噴射器數(shù)據(jù)進行收集,根據(jù)建立人工神經(jīng)網(wǎng)絡(luò)的需要,收集相關(guān)參數(shù)即引射流體壓力(pe)、工作流體壓力(pp)、出口背壓(pc)和引射系數(shù)(ε)。為加快神經(jīng)網(wǎng)絡(luò)的收斂和減少訓練時間,需要對引射流體壓力、工作流體壓力與出口背壓進行歸一化處理,使其到[0,1]之間,公式如下:
其中,k為歸一化后的數(shù)據(jù),x為被歸一化數(shù)據(jù),xmin為被歸一化數(shù)據(jù)中的最小值,xmax為被歸一化數(shù)據(jù)中最大值。
步驟二:bp神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的確定:根據(jù)網(wǎng)絡(luò)的輸入輸出矢量,確定神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)輸入層神經(jīng)元為2個,輸出層神經(jīng)元為2個,隱含層數(shù)為一層,神經(jīng)元個數(shù)為5。其中引射流體壓力、工作流體壓力為該神經(jīng)網(wǎng)絡(luò)的輸入,出口背壓、引射系數(shù)為該神經(jīng)網(wǎng)絡(luò)的輸出。
步驟三:變學習率的bp神經(jīng)網(wǎng)絡(luò)的訓練和測試:根據(jù)輸入向量計算人工神經(jīng)網(wǎng)絡(luò)隱含層結(jié)點的輸入值、輸出值再到輸出層結(jié)點的輸出值,根據(jù)預(yù)測值與期望值之差改變神經(jīng)網(wǎng)絡(luò)權(quán)值與閾值,經(jīng)過若干次迭代,當訓練誤差小于二倍的訓練目標時建立可變學習率數(shù)學模型,在基于上述數(shù)學模型的基礎(chǔ)上再對神經(jīng)網(wǎng)絡(luò)進行訓練直到訓練結(jié)果滿足結(jié)束條件。該訓練完成的神經(jīng)網(wǎng)絡(luò)即為本發(fā)明所建立的噴射器性能預(yù)測模型。
另外,得到的輸出值為歸一化的值,再對其進行反歸一化處理,轉(zhuǎn)化為真實輸出值,從而可以更加直觀的看出該神經(jīng)網(wǎng)絡(luò)的預(yù)測效果,其公式如下:
x=k·(xmax-xmin)+xmin
步驟四:在工程實際應(yīng)用中,采集給定噴射器的實測數(shù)據(jù),包括引射流體壓力(pe)、工作流體壓力(pp);按步驟(1)的方法將數(shù)據(jù)進行歸一化處理,然后再輸入到建立完成的變學習率的bp神經(jīng)網(wǎng)絡(luò)中,得到輸出向量出口背壓(pc)和引射系數(shù)(ε),再將出口背壓進行反歸一化處理,即得到預(yù)測值。
所述步驟二中,構(gòu)建bp人工神經(jīng)網(wǎng)絡(luò)
根據(jù)神經(jīng)網(wǎng)絡(luò)輸入樣本(引射流體壓力、工作流體壓力),輸出樣本(出口背壓,引射系數(shù)),確定神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)輸入層神經(jīng)元為2個,輸出層神經(jīng)元為2個,隱含層數(shù)為一層,神經(jīng)元個數(shù)為5。輸入層、隱含層和輸出層各層之間的連接權(quán)值初始化值隨機取[-1,1],用ωij、ωjk表示。學習率η取0.1,訓練目標取10-4,循環(huán)次數(shù)500次。
所述步驟三中,輸入訓練樣本對神經(jīng)網(wǎng)絡(luò)進行訓練的過程如下:
3.1)隱含層的計算:其中i、j、k分別表示輸入層節(jié)點數(shù),隱含層節(jié)點數(shù)與輸出層節(jié)點數(shù),f(x)為傳遞函數(shù)取s型(sigmoid)函數(shù),x為輸出層輸入的數(shù)據(jù)。
隱含層節(jié)點的輸入
隱含層節(jié)點的輸出hj=f(sj)
3.2)輸出層的計算:其中yb為神經(jīng)網(wǎng)絡(luò)建立過程中的預(yù)測輸出。
輸出層節(jié)點的輸出
3.3)誤差計算:神經(jīng)網(wǎng)絡(luò)輸出層第k個神經(jīng)元預(yù)測輸出為ybk,yk為第k個神經(jīng)元的期望輸出,它們之間存在誤差ek,公式如下:
ek=y(tǒng)k-ybk
3.4)權(quán)值的更新:根據(jù)誤差ek更新網(wǎng)絡(luò)輸入層與隱含層之間的權(quán)值ωij,隱含層和輸出層之間的權(quán)值ωjk公式如下:
ωjk=ωjk+ηhjek
3.5)閾值的更新:根據(jù)誤差e更新網(wǎng)絡(luò)節(jié)點閾值a,b。
bk=bk+ek
3.6)調(diào)整后的權(quán)值、閾值重新賦予bp神經(jīng)網(wǎng)絡(luò),重復(fù)步驟3.1)-3.5)當計算誤差為兩倍訓練目標時記錄此時循環(huán)步數(shù)st,此時循環(huán)第m次時學習率η計算公式如下所示:
3.7)重復(fù)步驟3.1)-3.6)繼續(xù)進行訓練,當訓練誤差低于訓練目標或者循環(huán)次數(shù)超過設(shè)置上限為止,該bp神經(jīng)網(wǎng)絡(luò)訓練完成。
實例:為更好的體現(xiàn)本發(fā)明的效果,現(xiàn)將本發(fā)明的方法進行實際運行。采用文獻1(iw.eamesetal.atheoreticalandexperimentalstudyofasmall-scalesteamjetrefrigerator.internationaljournalofrefrigeration,18(6):378-386,1995,即iw.eames等.小型蒸汽噴射制冷機的理論與實驗研究.國際制冷學報,18(6):378-386,1995)中的方法獲得引射流體壓力在706pa-2339pa的110組數(shù)據(jù),從其中隨機選取80組數(shù)據(jù)作為訓練樣本,運用本專利所述方法進行多次訓練得到變學習率的bp神經(jīng)網(wǎng)絡(luò)。剩下的30組數(shù)據(jù)用來驗證神經(jīng)網(wǎng)絡(luò)的可靠性,選取輸入樣本(引射流體壓力pe、工作流體壓力pp)采用訓練完畢的變學習率的bp神經(jīng)網(wǎng)絡(luò)進行出口背壓pc和引射系數(shù)ε的預(yù)測,將預(yù)測的結(jié)果與文獻結(jié)果進行比較,計算誤差,公式如下所示:
其中,μ是預(yù)測值與文獻值的誤差,神經(jīng)網(wǎng)絡(luò)預(yù)測值為yb,y是文獻值。
具體預(yù)測結(jié)果與文獻值如表1以及圖3所示,
表1
其中,最后預(yù)測結(jié)果的平均誤差為0.12%,最大誤差為0.81%,采用變學習率的bp神經(jīng)網(wǎng)絡(luò)的預(yù)測結(jié)果較為精確。變學習率的bp神經(jīng)網(wǎng)絡(luò)完成的噴射器引射系數(shù)與出口背壓的預(yù)測方法和傳統(tǒng)方法如文獻2(w.chenetal.theoreticalanalysisofejectorrefrigerationsystemperformanceunderoverallmodes.appliedenergy,185-2:2074-2084,2016,即w.chen等.全工況下噴射制冷系統(tǒng)性能的理論分析.應(yīng)用能源,185-2:2074-2084,2016.)以及文獻3(jm.cardemiletal.ageneralmodelforevaluationofvaporejectorsperformanceforapplicationinrefrigeration.energyconversionandmanagement,64:79-86,2012,即jm.cardemil等.一個用于制冷用蒸汽噴射器性能評估的模型.能量轉(zhuǎn)換與管理,64:79-86,2012.)中的方法進行比較可以發(fā)現(xiàn),采用傳統(tǒng)模型的平均誤差多在5-10%,而最大誤差可達15%以上??梢姴捎帽緦@姆椒ㄔ诒WC快速預(yù)測的前提下,可以大大提升預(yù)測精度。