馬云鵬, 牛培峰, 陳 科, 閆姍姍, 李國(guó)強(qiáng)
(1. 燕山大學(xué) 電氣工程學(xué)院, 河北 秦皇島 066004; 2. 河北省桃林口水庫(kù)管理局 水電廠, 河北 秦皇島 066004)
近年來,學(xué)者們提出了多種改進(jìn)的教與學(xué)優(yōu)化算法,像A_TLBO,I_TLBO,MTLBO等[1~4]。為了平衡教與學(xué)優(yōu)化算法的全局搜索能力和局部搜索能力,本文提出一種混沌分組教與學(xué)優(yōu)化算法(chaos group teaching learning based optimization, CG-TLBO),該算法采用3種調(diào)整機(jī)制:應(yīng)用混沌方法對(duì)班級(jí)中的個(gè)體賦初值,增加了種群多樣性,有益于算法跳出局部最小值,避免早熟收斂,益于提高全局搜索能力;在教階段,引入自適應(yīng)慣性權(quán)值,增強(qiáng)了算法的穩(wěn)定性,有助于提高解的質(zhì)量;在學(xué)階段,采用隨機(jī)蛙跳算法思想,將班級(jí)中的學(xué)生分組,類似現(xiàn)實(shí)中班級(jí)小組學(xué)習(xí)方式,有助于學(xué)生之間的信息交流,使得算法具有避免過早陷于局部極值的能力,從而增強(qiáng)了算法的局部搜索能力。為了驗(yàn)證改進(jìn)算法的有效性,本文采用10個(gè)經(jīng)典的測(cè)試集函數(shù)作為待優(yōu)化函數(shù),實(shí)驗(yàn)結(jié)果表明改進(jìn)的教與學(xué)算法比人工蜂群算法、萬有引力算法、原始的教與學(xué)優(yōu)化算法收斂精度高,收斂速度快,具有良好的全局和局部搜索能力。
良好的數(shù)學(xué)模型才能反映鍋爐真實(shí)的燃燒特性,為使循環(huán)流化床鍋爐燃燒過程中排放的NOx達(dá)到國(guó)家規(guī)定的排放標(biāo)準(zhǔn),建立較精確的NOx排放模型是前提。文獻(xiàn)[4~7]分別采用自由搜索算法和萬有引力算法優(yōu)化基于支持向量機(jī)的NOx模型,較好地解決了NOx建模難的問題。本文采用改進(jìn)的教與學(xué)優(yōu)化算法優(yōu)化基于極端學(xué)習(xí)機(jī)算法(extreme learning machine, ELM)[8]的NOx排放模型。其實(shí)質(zhì)為:以影響NOx排放量的參數(shù)作為ELM的輸入,NOx的排放濃度作為輸出,應(yīng)用改進(jìn)的優(yōu)化算法優(yōu)化ELM的輸入權(quán)值和隱層閾值,使ELM的輸出逼近鍋爐排放的NOx濃度,達(dá)到建模的目的。
教與學(xué)優(yōu)化算法是由Rao教授提出的一種新型群智能優(yōu)化算法,它模擬了教師和學(xué)員之間的教學(xué)過程,目的是通過教師的“教”和學(xué)員之間的 “學(xué)”來提高學(xué)員的學(xué)習(xí)成績(jī)[9]。在教階段,班級(jí)中成績(jī)最好的作為老師,通過老師的“教”,提高班里的平均成績(jī),同時(shí)使每個(gè)人都有提高;在學(xué)階段,每個(gè)學(xué)員通過與其他學(xué)員比較,成績(jī)差的向成績(jī)好的學(xué)習(xí),相互交流,共同進(jìn)步。
混沌變量具有隨機(jī)性、遍歷性、規(guī)律性等特點(diǎn),而且混沌優(yōu)化算法具有全局漸進(jìn)收斂和易跳出局部最優(yōu)的優(yōu)勢(shì)[10]。因此,本文采用混沌序列初始化教與學(xué)優(yōu)化算法的種群個(gè)體,增加種群的多樣性,達(dá)到有效地進(jìn)行全局搜索的目的。本文應(yīng)用立方映射產(chǎn)生混沌序列,表達(dá)式為
X(t+1)=4X(t)3-3X(t)
(1)
式中:X(t)為第t個(gè)個(gè)體對(duì)應(yīng)的混沌序列,X(t)∈[-1,1];t=1,2,…,D,D是種群個(gè)數(shù)。
然后,對(duì)產(chǎn)生的混沌序列進(jìn)行解空間變換,變換規(guī)則用公式(2)表示為
Xi=L+(1+Xi)(U-L)/2
(2)
式中:Xi為第i個(gè)待優(yōu)化個(gè)體的解;U和L分別為搜索空間的上限和下限。
這一階段,學(xué)生成績(jī)的更新主要依靠?jī)刹糠郑荷弦粫r(shí)刻的成績(jī)Xold,i和老師與均值之間的差異(Mnew-TfMi)。為了提高教階段的解的質(zhì)量和穩(wěn)定性,引入自適應(yīng)慣性權(quán)值
Xnew,i=ωiXold,i+(1-ωi)(Mnew-TfMi)
(3)
ωi=1/[1+exp(-f(i)/a)×Niter]
(4)
式中:Xold,i為第i個(gè)個(gè)體未更新的解;Xnew,i為第i個(gè)個(gè)體更新后的解;Mnew為最好的個(gè)體,記為“老師”;Mi為班級(jí)平均成績(jī);Tf為教學(xué)系數(shù);ωi為慣性權(quán)值,與當(dāng)前的迭代次數(shù)Niter和第i個(gè)學(xué)生的適應(yīng)度值f(i)有關(guān),控制著前一時(shí)刻解的影響;a為第一次迭代中最大的適應(yīng)度值。
在學(xué)階段,按照隨機(jī)蛙跳算法的思想將學(xué)生分組,為提高學(xué)生們的學(xué)習(xí)積極性和學(xué)習(xí)成績(jī),分組是班級(jí)中常用的一種教學(xué)模式。組成員間互相交流信息,學(xué)習(xí)好的同學(xué)幫助學(xué)習(xí)差的,以達(dá)到共同進(jìn)步的目的。類比于算法中,即為種群中的最優(yōu)解調(diào)整最差解。將分組思想引入教與學(xué)優(yōu)化算法,使該算法避免過早陷于局部極值,從而指引算法搜索過程向著全局最優(yōu)方向進(jìn)行。
Xw(j+1)=Xw(j)+rand(Xb(j)-Xw(j))
(5)
式中:Xb為組中最好的解;Xw為最差的解;rand為[0,1]之間的隨機(jī)數(shù)。
為了測(cè)試混沌分組教與學(xué)算法的性能,本文采用10個(gè)經(jīng)典的測(cè)試集函數(shù)作為待優(yōu)化函數(shù),見表1。表1中,f1~f6為單峰高維的基準(zhǔn)函數(shù),f7~f10為多峰高維的基準(zhǔn)函數(shù),同時(shí)給出函數(shù)的理論最優(yōu)值和自變量的取值范圍。
表1 經(jīng)典測(cè)試函數(shù)集
將改進(jìn)算法與人工蜂群算法(ABC)、萬有引力搜索算法(GSA)、原始教與學(xué)算法(TLBO)進(jìn)行比較,各算法的參數(shù)設(shè)置見表2。表2中,Limit為ABC算法的預(yù)設(shè)參數(shù),表示經(jīng)過Limit次循環(huán)后,若解沒有改進(jìn),則該個(gè)體被拋棄;G0和α為GSA算法中萬有引力常量公式中的系數(shù)。所有測(cè)試及實(shí)驗(yàn)的運(yùn)行環(huán)境為Microsoft Windows XP,AMD Athlon(tm) 64×2 Dual Core Processor 5000+、主頻2.61 GHz、內(nèi)存1.00 GHz的計(jì)算機(jī)上完成,仿真軟件為MATLAB2009,每個(gè)仿真運(yùn)行30次。測(cè)試結(jié)果見表3。表中,Mean表示30次運(yùn)行結(jié)果的平均值,用來測(cè)試優(yōu)化算法的收斂精度;S.D.為標(biāo)準(zhǔn)差的簡(jiǎn)寫,表示30次結(jié)果的標(biāo)準(zhǔn)差,用來測(cè)試優(yōu)化算法的穩(wěn)定性。
表2 算法參數(shù)設(shè)置
表3 測(cè)試結(jié)果
續(xù)表
表3給出了10個(gè)測(cè)試函數(shù)在50和100維下的測(cè)試結(jié)果。從測(cè)試結(jié)果來看,混沌分組教與學(xué)優(yōu)化算法能夠找到各函數(shù)在不同維度下的最優(yōu)值或理論最優(yōu)值,說明改進(jìn)算法具有良好的收斂精度和魯棒性。
圖1和圖2分別為f9取10維和f10取50維的仿真圖,可以直觀地顯示出CG-TLBO收斂速度快,收斂精度高,具有良好的穩(wěn)定性。
圖1 函數(shù)f9為10維的性能對(duì)比圖
圖2 函數(shù)f10為50維的性能對(duì)比圖
本文的研究對(duì)象為某電廠300 MW循環(huán)流化床鍋爐,采集了給煤量、風(fēng)量、床溫、煙氣含氧量等20個(gè)對(duì)氮氧化合物排放有影響的參量,共取數(shù)據(jù)288組。建模前,需對(duì)測(cè)試數(shù)據(jù)進(jìn)行分配,231組作為訓(xùn)練樣本,57組作為預(yù)測(cè)樣本。采用改進(jìn)的教與學(xué)優(yōu)化算法(CG-TLBO)優(yōu)化基于極端學(xué)習(xí)機(jī)(ELM)的NOx排放濃度模型,建模方法記為CG-TLBO-ELM。該方法的思想為:將20個(gè)對(duì)NOx排放有影響的參量作為ELM的輸入,NOx的排放濃度作為ELM的輸出;然后,采用CG-TLBO優(yōu)化ELM的輸入權(quán)值和隱層閾值,使ELM的輸出值逼近NOx排放濃度的目標(biāo)值。
假設(shè)極端學(xué)習(xí)機(jī)有n個(gè)輸入神經(jīng)元,有m個(gè)隱層神經(jīng)元,則有(n+1)×m個(gè)參數(shù)需要優(yōu)化,這些參數(shù)就是極端學(xué)習(xí)機(jī)的輸入權(quán)值和隱層閾值。與此同時(shí),需要設(shè)置優(yōu)化問題的目標(biāo)函數(shù),一般采用訓(xùn)練樣本的均方根誤差作為優(yōu)化問題的目標(biāo)函數(shù)
(6)
式中:θ=(ω11,…,ω1,n,…,ωmn,b1,…,bm)為待優(yōu)化參數(shù);ωi=(ωi1,…,ωin)為第i個(gè)隱層節(jié)點(diǎn)對(duì)應(yīng)的輸入權(quán)值向量;m為隱層節(jié)點(diǎn)個(gè)數(shù);n為輸入層節(jié)點(diǎn)個(gè)數(shù);Ntrain為訓(xùn)練樣本個(gè)數(shù);β為輸出權(quán)值;g(x)為隱層激勵(lì)函數(shù);xj為第j個(gè)樣本數(shù)據(jù);tj為第j個(gè)樣本對(duì)應(yīng)的目標(biāo)輸出值。
為了驗(yàn)證優(yōu)化后的極端學(xué)習(xí)機(jī)是否提高了模型精度,本文將原始的極端學(xué)習(xí)機(jī)(ELM)作為對(duì)比算法。設(shè)置極端學(xué)習(xí)機(jī)的隱層節(jié)點(diǎn)個(gè)數(shù)為20個(gè),隱層激勵(lì)函數(shù)為sigmoid函數(shù)。兩種算法的測(cè)試對(duì)比圖見圖3和圖4。
圖3 NOx排放濃度訓(xùn)練模型對(duì)比
圖4 NOx排放濃度預(yù)測(cè)模型對(duì)比
由圖3可以看出,采用優(yōu)化后的極端學(xué)習(xí)機(jī)算法建立的模型,訓(xùn)練精度比較好,說明較原始算法有良好的辨識(shí)能力;圖4中,雖然個(gè)別點(diǎn)預(yù)測(cè)精度較差,但是總體效果是跟隨的,且優(yōu)于原始極端學(xué)習(xí)機(jī)算法,說明優(yōu)化后的極端學(xué)習(xí)機(jī)具有良好的泛化能力?;煦绶纸M教學(xué)優(yōu)化算法達(dá)到了優(yōu)化鍋爐NOx排放濃度模型的目的,并且取得良好的效果。
為了提高原始教與學(xué)算法的全局和局部搜索能力,提出混沌分組教與學(xué)算法。采用混沌序列設(shè)置種群初始值,增加了種群多樣性;引入自適應(yīng)慣性權(quán)值,提高了解的質(zhì)量;借鑒隨機(jī)蛙跳算法思想,對(duì)班級(jí)分組,更新種群中的最差解,平衡了全局搜索與局部搜索的能力。改進(jìn)算法用于優(yōu)化循環(huán)流化床鍋爐的氮氧化合物排放模型,即優(yōu)化極端學(xué)習(xí)機(jī)的輸入權(quán)值和閾值,提高了極端學(xué)習(xí)機(jī)的模型辨識(shí)能力和泛化能力。混沌分組教學(xué)優(yōu)化算法具有收斂精度高,收斂速度快,全局和局部搜索能力強(qiáng)的特點(diǎn)。
[參考文獻(xiàn)]
[1] Li G Q, Niu P F, Zhang W P,etal. Model NOxemissions by least squares support vector machine with tuning based on ameliorated teaching-learning-based optimization [J].ChemometricsandIntelligentLaboratorySystems, 2013, 126(8): 11-20.
[2] Rao R V, Patel V. An improved teaching-learning-based optimization algorithm for solving unconstrained optimization problems[J].ScientiaIranica, 2013, 20(3): 710-720.
[3] García J A M, Mena A J G. Optimal distributed generation location and size using a modified teaching-learning based optimization algorithm[J].Internationaljournalofelectricalpower&energysystems,2013, 50(1): 65-75.
[4] 牛培峰,王培坤,李國(guó)強(qiáng),等.基于自由搜索算法和支持向量機(jī)的燃煤鍋爐NOx建模與優(yōu)化[J]. 計(jì)量學(xué)報(bào),2014,35(6):626-630.
[5] 牛培峰,麻紅波,李國(guó)強(qiáng),等.基于GSA-SVM的循環(huán)流化床鍋爐NOx排放特性模型[J].計(jì)量學(xué)報(bào),2013,34(6):602-606.
[6] 牛培峰,王丘亞,馬云鵬,等.基于量子自適應(yīng)鳥群算法的鍋爐NOx排放特性研究[J]. 計(jì)量學(xué)報(bào), 2017,38(6):770-775.
[7] 牛培峰,馬云鵬,張京,等.基于相關(guān)向量機(jī)的電站鍋爐NOx燃燒優(yōu)化[J]. 計(jì)量學(xué)報(bào), 2016,37(2):626-630.
[8] Huang G B, Zhu Q Y, Siew C K. Extreme learning machine: a new learning scheme of feedforward neural networks[C]//IEEE International Joint Conference on Neural Networks. Budapest,Hungary,2004:985-990.
[9] 拓守恒, 雍龍泉, 鄧方安. “教與學(xué)” 優(yōu)化算法研究綜述[J]. 計(jì)算機(jī)應(yīng)用研究, 2013, 30(7): 1933-1938.
[10] 馮艷紅, 劉建芹, 賀毅朝. 基于混沌理論的動(dòng)態(tài)種群螢火蟲算法[J]. 計(jì)算機(jī)應(yīng)用, 2013, 33(3): 191-196.