靳方圓,周海峰,熊 超
(1.集美大學(xué)輪機(jī)工程學(xué)院,福建 廈門 361021;2.福建省船舶與海洋工程重點(diǎn)實(shí)驗(yàn)室,福建 廈門 361021)
燃料電池以其高效、潔凈和安全等諸多優(yōu)點(diǎn)獲得了世界各國的高度重視,其中固體氧化物燃料電池(solid oxide fuel cell ,SOFC)因其工作溫度高(800~1 000 ℃),不使用貴金屬催化劑,功率密度大,能量轉(zhuǎn)化效率高和對(duì)燃料的種類和質(zhì)量要求較低等優(yōu)點(diǎn),已然成為燃料電池技術(shù)研究熱點(diǎn)和發(fā)展方向。
燃料電池的性能常用其單電池或電池堆的輸出電壓/電流密度特性來描述[1]。SOFC電堆環(huán)境的復(fù)雜性、密閉性和高溫性,致使局部實(shí)驗(yàn)非常困難,因此建立SOFC數(shù)學(xué)模型對(duì)于燃料電池的發(fā)展至關(guān)重要[2-4]。目前研究人員已經(jīng)從熱力學(xué)、電化學(xué)、流體力學(xué)和材料學(xué)等方面建立一些詳細(xì)的模型[5-7]。這些數(shù)學(xué)模型對(duì)理解和設(shè)計(jì)SOFC電堆結(jié)構(gòu)非常有益,但是對(duì)燃料電池控制系統(tǒng)的設(shè)計(jì)幫助不大。
Arriagada等[8]建立了SOFC的人工神經(jīng)網(wǎng)絡(luò)(ANN)模型,該模型基于人工神經(jīng)網(wǎng)絡(luò)理論,結(jié)構(gòu)簡單、精度較高但是需要大量的訓(xùn)練數(shù)據(jù)。Wu等[9]建立SOFC的GA-RBF神經(jīng)網(wǎng)絡(luò)模型,利用遺傳算法優(yōu)化RBF神經(jīng)網(wǎng)絡(luò)的參數(shù),選擇優(yōu)化后的參數(shù)使RBF神經(jīng)網(wǎng)絡(luò)模型的精度明顯提高。Huo等[10]提出SOFC的SVM模型,其與人工神經(jīng)網(wǎng)絡(luò)(ANN)辨識(shí)模型性能對(duì)比有明顯的改善,但是仍有較大誤差。支持向量機(jī)是一種基于結(jié)構(gòu)風(fēng)險(xiǎn)最小化模型的小樣本學(xué)習(xí)方法,具有更嚴(yán)謹(jǐn)?shù)睦碚摵蛿?shù)學(xué)基礎(chǔ),需要更少的樣本數(shù)目,解決了人工神經(jīng)網(wǎng)絡(luò)小樣本、非線性、過擬合等缺點(diǎn)。人工蜂群算法(ABC)[11]是源于蜜蜂采集花蜜行為的智能算法,和傳統(tǒng)算法(GA、PSO等)相比,具有更好地收斂性,且算法簡單、參數(shù)少、編程簡單。
將兩者結(jié)合,通過ABC算法強(qiáng)大的數(shù)值優(yōu)化能力來優(yōu)化SVM參數(shù),建立更加精確有效的SOFC電堆模型。
人工蜂群算法(artificial bee colony,ABC)模擬蜂群采蜜行為,將蜂群分為采蜜蜂、觀察蜂和偵察蜂,采蜜時(shí)各個(gè)蜂種分工明確并保障信息共享,是一種仿生物的智能全局優(yōu)化算法。
(1)
其中:i,k=1,2,…,N;d=1,2,…,D;φid是區(qū)間[-1,1]上的隨機(jī)數(shù);k≠i。
(2)
其中:Fi是解Xi的適應(yīng)度值;pi為蜜源;Xi為被選中的概率。
(3)
本文使用的為LIBSVM是臺(tái)灣大學(xué)林智仁(Lin Chih-Jen)教授等開發(fā)設(shè)計(jì)的一種簡單、易于使用的和快速有效的SVM模式辨別和回歸的工具包[12]。SVM參數(shù)優(yōu)化問題一直是SVM技術(shù)發(fā)展的核心。
ABC算法優(yōu)化SVM的參數(shù)有核函數(shù)寬度g、懲罰系數(shù)c(控制模型復(fù)雜度與逼近誤差折中的量[12]),則ABC算法是在兩維搜索空間中進(jìn)行搜索。構(gòu)造適合的種群數(shù)目、最大迭代次數(shù)和最大‘limit’。初始化最優(yōu)的蜜源位置Xbest=(gbest,cbest)和最優(yōu)適應(yīng)度值F。
根據(jù)ABC算法尋優(yōu)得到的蜜源Xi作為SVM參數(shù)的初始值,對(duì)支持向量機(jī)進(jìn)行訓(xùn)練,由于SVM辨識(shí)技術(shù)具有良好的泛化性能,為了提高辨識(shí)模型的精度,用訓(xùn)練集訓(xùn)練SVM模型,再利用測試集測試該模型有效性,因此本文取Xi作為SVM參數(shù)(核函數(shù)寬度g和懲罰系數(shù)c)的初始值,根據(jù)該模型的預(yù)測輸出與期望輸出的均方誤差建立適應(yīng)度函數(shù),即
(4)
其中:n為測試集樣本數(shù);yi(i=1,2,…,n)為第i個(gè)樣本的期望值;f(xi)(i=1,2,…,n)為第i個(gè)樣本的預(yù)測值。
適應(yīng)度值越接近0,則模型的精度就越高,采用貪婪選擇策略來決定是否更新Xbest=(gbest,cbest),然后更新蜜源位置和蜜蜂的種類和數(shù)量。達(dá)到最大迭代次數(shù)時(shí),算法結(jié)束。
ABC-SVM算法設(shè)計(jì)流程如下。
1)初始化;設(shè)維度D=2,迭代次數(shù)為nmax,限制參數(shù)‘limit’數(shù)為limit以及種群規(guī)模SN和蜜源數(shù)N,確定搜索范圍,生成初始種群,蜜源X=[X1,X2,…,XN],Xi=(xi1,xi2,…,xiD)。
2)根據(jù)公式(4)建立適應(yīng)度函數(shù)。
3)For(i 4)采蜜蜂根據(jù)公式(1)尋找蜜源,計(jì)算F并選出最優(yōu)適應(yīng)度值。 5)觀察蜂根據(jù)公式(2)更新選擇蜜源。 6)蜜源超過最大‘limit’次數(shù),放棄該蜜源,觀察蜂根據(jù)公式(3)產(chǎn)生新的蜜源。 7)保留最好的蜜源。 8)End。 9)最優(yōu)解c和g。 10)建立ABC-SVM模型。 SOFC是一種非線性、大時(shí)滯、多輸入多輸出和隨機(jī)干擾等特點(diǎn)的系統(tǒng)[14],SOFC的辨識(shí)模型常采用簡潔模型結(jié)構(gòu)為非線性自回歸滑動(dòng)平均模型(NARX)[13]: U(k+1)=f[U(k),U(k-1),…,U(k-n); qH2(k),…,qH2(k-m);I(k)],k=1,…,N。 (5) 其中:U(k-i)(i=0,1,…,n)是SOFC系統(tǒng)在k-i這一時(shí)刻的輸出;qH2(k-i)(i=0,1,…,m)是SOFC系統(tǒng)在k-i這一時(shí)刻的氫氣轉(zhuǎn)化速率;I(k)電堆電流;f(·)表征系統(tǒng)待辨識(shí)非線性函數(shù)。qH2(k)、I(k)為輸入變量;U(k)為系統(tǒng)輸出變量。 SOFC系統(tǒng)的ABC-SVM辨識(shí)模型結(jié)構(gòu)[13]如圖1所示。其中:TDL為延遲環(huán)節(jié)。 (6) 根據(jù)SOFC電堆的動(dòng)態(tài)模型可知,其電壓/電流密度曲線受多種因數(shù)影響(陽極氫氣流速、陰極氧氣流速、電堆溫度、電堆各氣體壓力等)。本文采集數(shù)據(jù)僅考慮陽極氫氣流速對(duì)電堆性能的影響。根據(jù)文獻(xiàn)[14]建立SOFC的動(dòng)態(tài)模型,并采集數(shù)據(jù)。本文是在電堆溫度T=1 273 K條件下,采集不同氫氣流速下的SOFC電壓和電流數(shù)據(jù),將數(shù)據(jù)分為測試集和訓(xùn)練集。 本文取氫氣的流速分別為1.6,1.8,2.4 g/s的電壓/電流數(shù)據(jù)為訓(xùn)練集,氫氣的流速為2.0 g/s的電壓/電流數(shù)據(jù)為測試集,如圖2所示。 首先利用訓(xùn)練得到的ABC-SVM模型驗(yàn)證訓(xùn)練集,結(jié)果如圖3所示。ABC-SVM模型預(yù)測曲線可以很好的擬合訓(xùn)練集曲線;然后用該模型驗(yàn)證測試集,如圖4a所示。作為對(duì)比,使用同樣的訓(xùn)練集和初始參數(shù),訓(xùn)練SVM、PSO-SVM和GA-SVM模型,并用測試集驗(yàn)證SVM、PSO-SVM和GA-SVM模型的準(zhǔn)確性,實(shí)驗(yàn)結(jié)果如圖4b、4c、4d所示。表1為ABC-SVM、SVM、PSO-SVM、GA-SVM模型的最優(yōu)c和g值。 表1 ABC-SVM、SVM、PSO-SVM、GA-SVM參數(shù) 從定性的角度分析實(shí)驗(yàn)結(jié)果,由圖4可知。圖4a,當(dāng)電流在0~50 A和300~400 A范圍內(nèi)ABC-SVM模型的預(yù)測值與期望值有較小誤差,其他范圍內(nèi)還是取得很好地預(yù)測結(jié)果,比較符合本文設(shè)計(jì)需求;圖4b,在電流0~500 A之間SVM模型的預(yù)測值與期望值有較大的誤差值,也是最不理想的一種情況,不符合本文設(shè)計(jì)需求;圖4c和圖4d圖像相似,在電流0~50 A和200~500 A范圍內(nèi)PSO-SVM和GA-SVM模型存在較大誤差,但是在50~200 A之間,可以很好地?cái)M合期望曲線,適用于小電流且電流變化范圍小的設(shè)計(jì)需求,也不符合本文設(shè)計(jì)需求。 表2 ABC-SVM、SVM、PSO-SVM、GA-SVM運(yùn)行結(jié)果 本文基于ABC-SVM算法對(duì)SOFC系統(tǒng)進(jìn)行辨識(shí),結(jié)果表明此算法可以很好地預(yù)測在不同氫氣流速率下SOFC的電壓/電流特性曲線,說明了人工蜂群算法可以應(yīng)用于SOFC系統(tǒng)建模中。ABC-SVM算法擁有更好的收斂特性和辨識(shí)能力,可以較快地計(jì)算出系統(tǒng)的輸入輸出特性,從而為實(shí)現(xiàn)SOFC在線控制提供了可能性。但是SOFC的ABC-SVM模型還需進(jìn)一步完善,比如,建立更精確的SOFC電堆模型,建立多輸入多輸出數(shù)據(jù)集和在線控制等。2 基于ABC-SVM的SOFC辨識(shí)模型結(jié)構(gòu)
3 仿真實(shí)驗(yàn)與分析
4 結(jié)束語