專利名稱:基于仿生智能蟻群算法的工業(yè)軟測(cè)量方法
技術(shù)領(lǐng)域:
本發(fā)明涉及連續(xù)攪拌反應(yīng)釜過程變量測(cè)量領(lǐng)域,特別地,涉及一種基于仿生智能蟻群算法的軟測(cè)量方法。
背景技術(shù):
在工業(yè)過程控制中,若要使生產(chǎn)裝置處于最佳運(yùn)行工況、實(shí)現(xiàn)卡邊控制、多產(chǎn)高價(jià) 值產(chǎn)品,從而提高裝置的經(jīng)濟(jì)效益,就必須要對(duì)產(chǎn)品質(zhì)量或與產(chǎn)品質(zhì)量密切相關(guān)的重要過 程變量進(jìn)行嚴(yán)格控制,產(chǎn)品質(zhì)量是企業(yè)在激烈競(jìng)爭(zhēng)中賴以生存和發(fā)展的關(guān)鍵所在。對(duì)變量 的實(shí)時(shí)監(jiān)控一般采用間接質(zhì)量指標(biāo)控制方法和直接測(cè)量法,但是出現(xiàn)精度不高、分析儀價(jià) 格昂貴、維護(hù)困難及難以提供實(shí)時(shí)質(zhì)量信息等不足,一些重要的變量往往很艱難通過傳感 器直接得到,影響了工業(yè)實(shí)踐和科學(xué)研究的深入進(jìn)行,軟測(cè)量方法為此提供了新的解決途 徑。軟測(cè)量技術(shù)最早來源于Brosilow等人提出的推斷控制思想,推斷控制包括推斷估計(jì)器 的構(gòu)造和控制器的設(shè)計(jì)兩部分,推斷估計(jì)器是用來采集某些容易測(cè)量的變量,用這些變量 作為輸入構(gòu)造一個(gè)數(shù)學(xué)模型來估計(jì)難測(cè)的變量。近年來軟測(cè)量技術(shù)獲得了很大的發(fā)展,其 研究涉及到石油、化工和環(huán)保等領(lǐng)域。軟測(cè)量模型的基本思想是根據(jù)某種最優(yōu)準(zhǔn)則,選擇一組既與主導(dǎo)變量有密切關(guān)系 又容易測(cè)量的變量,通過構(gòu)造某種數(shù)學(xué)關(guān)系來估計(jì)主導(dǎo)變量。如圖1表示軟測(cè)量模型過程 對(duì)象的輸入輸出關(guān)系,圖中的y是難測(cè)的主導(dǎo)變量汍表示可測(cè)的干擾變量;d2表示不可測(cè) 的干擾變量,u表示可測(cè)的控制變量,θ表示可測(cè)的被控變量。難測(cè)的主導(dǎo)變量的估計(jì)值表 達(dá)為y = f (χ) (1)式(1)中的χ為可測(cè)的輔助變量,且㈣具約。隨著應(yīng)用范圍的拓寬,對(duì)軟測(cè)量技術(shù)的研究十分活躍。軟測(cè)量建模方法可分為 機(jī)理建模、回歸分析、狀態(tài)估計(jì)、模式識(shí)別、人工神經(jīng)網(wǎng)絡(luò)、模糊數(shù)學(xué)、基于支持向量機(jī)和核 函數(shù)的方法、過程層析成像、相關(guān)分析和現(xiàn)代非線性系統(tǒng)信息處理技術(shù)。由于人工神經(jīng)網(wǎng) 絡(luò)具有自學(xué)習(xí)、自適應(yīng)和非線性逼近能力,因此本發(fā)明采用的是基于徑向基(Radial Basis Function,RBF)神經(jīng)網(wǎng)絡(luò)的軟測(cè)量建模方法,可以在不具備先驗(yàn)知識(shí)的前提下,將輔助變量 作為神經(jīng)網(wǎng)絡(luò)的輸入,而待測(cè)變量作為輸出,通過構(gòu)造訓(xùn)練樣本、網(wǎng)絡(luò)學(xué)習(xí)就可以獲得軟測(cè) 量的徑向基人工神經(jīng)網(wǎng)絡(luò)模型。連續(xù)攪拌反應(yīng)釜(Continuous Stirred Tank Reactor, CSTR)是石油生產(chǎn)、化工 合成、發(fā)酵、生物制藥、食品及合成材料等工業(yè)生產(chǎn)過程中應(yīng)用最廣泛的一種化學(xué)反應(yīng)器, 在化工生產(chǎn)的核心設(shè)備中占有相當(dāng)重要的地位,對(duì)連續(xù)攪拌反應(yīng)釜辨識(shí)建立數(shù)學(xué)模型的目 的是為了更好地定量描述反應(yīng)器內(nèi)燃料的反應(yīng)過程,通過觀察反應(yīng)釜內(nèi)物料傳熱、傳質(zhì)和 反應(yīng)的綜合變化規(guī)律,掌握反應(yīng)釜設(shè)計(jì)的方法。由于連續(xù)攪拌反應(yīng)釜存在嚴(yán)重的敏感和非 線性,以及工業(yè)規(guī)模反應(yīng)器的性能干變?nèi)f化,辨識(shí)建模并不容易。它是一個(gè)多變量非線性系 統(tǒng),它通過控制連續(xù)攪拌反應(yīng)釜內(nèi)部的工藝參數(shù),如溫度、壓力、濃度等穩(wěn)定,來保證反應(yīng)的正常進(jìn)行。連續(xù)攪拌反應(yīng)釜內(nèi)部的濃度的控制質(zhì)量直接影響到生產(chǎn)的效益和質(zhì)量指標(biāo),而 對(duì)其的準(zhǔn)確測(cè)量是化工行業(yè)的一個(gè)難題,而運(yùn)用軟測(cè)量技術(shù)可以解決這一難題。連續(xù)攪拌反應(yīng)釜內(nèi)與濃度相關(guān)的轉(zhuǎn)化率是該工業(yè)過程中的重要質(zhì)量指標(biāo),傳統(tǒng)測(cè) 量方法對(duì)其測(cè)量的不足有測(cè)量?jī)x表的測(cè)量精度不高、易受人為因素的影響。引進(jìn)軟測(cè)量技 術(shù)良好地改善了這些不足。軟測(cè)量的核心是數(shù)值計(jì)算,檢測(cè)并消除誤差對(duì)軟測(cè)量技術(shù)至關(guān)重要。由于現(xiàn)代工 業(yè)過程復(fù)雜,控制對(duì)象的特性會(huì)隨著工況發(fā)生變化,因此過程軟儀表在運(yùn)行過程中,過程的 在線校正功能極為重要,軟測(cè)量必須根據(jù)變化特性修整儀表模型,調(diào)整儀表輸出。但是現(xiàn)有 的工業(yè)軟測(cè)量方法復(fù)雜,模型的控制參數(shù)難以確定,測(cè)量誤差大、精度不高且通用性差。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問題是提供一種控制參數(shù)確定方便的基于仿生智能蟻群 算法的工業(yè)軟測(cè)量方法。本發(fā)明中的仿生智能蟻群算法是基于意大利學(xué)者M(jìn).Dorigo,V. Maniezzo和 A. Colorni于20世紀(jì)90年代初提出了一種新型的智能優(yōu)化算法——螞蟻系統(tǒng),該算法模擬 了自然界螞蟻的群體覓食行為。覓食行為是蟻群一個(gè)重要而有趣的行為,仿生學(xué)家們發(fā)現(xiàn) 自然界中的螞蟻在沒有任何提示的情況下能找出蟻巢到食物源之間的最短路徑,并且能隨 環(huán)境的變化自適應(yīng)地搜索新的路徑。雖然單個(gè)螞蟻的行為極為簡(jiǎn)單,但由大量的螞蟻個(gè)體 組成的蟻群能表現(xiàn)出極其復(fù)雜的行為,能夠完成復(fù)雜的任務(wù)。仿生學(xué)家經(jīng)過大量的細(xì)致觀 察研究發(fā)現(xiàn),螞蟻在搜索食物時(shí)能在其走過的路徑上釋放一種信息素,這種信息素能指引 其他螞蟻的運(yùn)動(dòng)方向,當(dāng)一些路徑通過的螞蟻越多,則留下的信息素量就越多,吸引更多的 螞蟻選擇該路徑。這樣形成一種信息正反饋機(jī)制,即為增強(qiáng)型學(xué)習(xí)系統(tǒng),于是螞蟻總能在較 短時(shí)間尋找到其巢穴與食物之間最短的路徑。人工蟻群算法是對(duì)自然界中真實(shí)的蟻群集體行為研究成果的啟發(fā)而提出 的一種基于種群的模擬進(jìn)化算法,蟻群算法的數(shù)學(xué)模型通過求解平面上η個(gè)城市的 TSP (Traveling Salesman Problem)問題為例來說明?,F(xiàn)將m只螞蟻放入η個(gè)隨機(jī)選擇的 城市中,表示城市i和城市j之間的距離,τ u (t)表示t時(shí)刻在城市i和城市j連線上 殘留的信息量,初始時(shí)刻每條路徑上的信息素量是相等的,皆為常數(shù)C。螞蟻k在運(yùn)動(dòng)過程 中根據(jù)各條路徑上的信息量選擇下一個(gè)還沒有被訪問的城市,以此類推直至完成一個(gè)循環(huán) 后跟新所有路徑上的殘留信息量。在搜索過程中,螞蟻根據(jù)各條路徑上的信息量及路徑的 啟發(fā)信息來計(jì)算狀態(tài)轉(zhuǎn)移概率Pi/(t)
<formula>formula see original document page 5</formula>式(2)中,allowedk表示螞蟻k下一步允許選擇的城市,α為信息啟發(fā)因子,表示 軌跡的相對(duì)重要性,β為期望啟發(fā)式因子,表示能見度的相對(duì)重要性,為啟發(fā)函數(shù), 其表達(dá)式如下<formula>formula see original document page 6</formula>
式(3)中,Clij表示相鄰城市i,j之間的距離。從式中可以看出,Clij越小,η。α) 越大,即Pi/(t)越大。所以該啟發(fā)函數(shù)表示螞蟻從城市i到城市j的期望程度。經(jīng)過η個(gè)時(shí)刻螞蟻完成一次循環(huán),在進(jìn)行下一輪循環(huán)前調(diào)整各路徑上的信息量, 如下式τ Jj (t+n) = P t^· (t) + Δ τ (t) (4)
<formula>formula see original document page 6</formula>
上兩式中,P為信息殘留系數(shù),以前留下的信息逐漸消逝,δ τ i/為第k只螞蟻在 本次循環(huán)中留在到路徑i到j(luò)上的信息增量,Δ τ u為本次循環(huán)中所有可能經(jīng)過的螞 蟻留在該路徑上的信息素增量。根據(jù)信息素更新策略的不同,關(guān)于Δ τ J的計(jì)算,M. Dorigo曾給出三種不同的實(shí) 現(xiàn)方式分另Il為 ant-cycle system, ant-density system, ant-quantity system。在 ant-cycle system 模型中
t若第k只螞蟻在本次循環(huán)中經(jīng)過(i,j)彳、
Δ^(0= 4⑷
0, 否則在 ant-density system 模型中
若第k只螞蟻在本次循環(huán)中經(jīng)過(i, j)/γ7Λ
d,(7)
0, 否則在 ant—quantity system t莫型中
k \Q, 若第k只螞蟻在本次循環(huán)中經(jīng)過(i,j) Δ^(0 = 1ο,否則(8)上式中,Q為信息素強(qiáng)度常量,是螞蟻在一個(gè)循環(huán)過程中在經(jīng)過的路徑上釋放的信 息素總量,Clij表示第k只螞蟻在本次循環(huán)中所選路徑的長(zhǎng)度。這三種信息素更新策略的區(qū) 別在于Any-cycle system模型利用的是蟻群的整體信息,而后兩種模型中均是對(duì)信息素 的局部更新,基本蟻群算法中利用的是any-cyclesystem模型信息素更新策略。仿生智能 蟻群算法流程圖如圖2所示。仿生智能蟻群算法是通過螞蟻個(gè)體在候選解的空間中獨(dú)立地搜索解,并在搜尋的 解上留下一定的信息素;螞蟻間以信息素為介質(zhì)進(jìn)行間接、異步的信息傳遞。隨著算法的推 進(jìn),較優(yōu)解的信息素濃度會(huì)越來越濃,同時(shí)其他路徑上信息素濃度卻會(huì)隨著時(shí)間的消逝而 削減變?nèi)酢.?dāng)算法漸漸趨于收斂時(shí),在最優(yōu)解上的信息素濃度應(yīng)該是最大的。整個(gè)蟻群算 法的最優(yōu)解即最優(yōu)路徑將在螞蟻個(gè)體的共同協(xié)作下求出。蟻群優(yōu)化算法的主要特點(diǎn)是正反饋、分布式計(jì)算,正反饋過程能較快發(fā)現(xiàn)較好的解,分布式計(jì)算使得該方法易于并行實(shí)現(xiàn), 是一種基于種群的魯棒性較強(qiáng)的算法,為許多優(yōu)化問題提供了一種新思路。目前蟻群算法 已經(jīng)滲透多個(gè)應(yīng)用領(lǐng)域,由一維靜態(tài)優(yōu)化問題發(fā)展到多維動(dòng)態(tài)優(yōu)化問題,從離散域到連續(xù) 域范圍的研究,這種仿生智能優(yōu)化算法有著廣闊的發(fā)展前景。ACO本質(zhì)上只適合于解決離散問題,在組合優(yōu)化問題中,目標(biāo)問題的狀態(tài)是有限離 散的,其可行解也是有限的,螞蟻依據(jù)信息素相關(guān)的概率轉(zhuǎn)移規(guī)則在目標(biāo)問題的狀態(tài)點(diǎn)之 間移動(dòng),每移動(dòng)一步就構(gòu)造了問題可行解的一部分,直到滿足終止條件螞蟻就完成了一個(gè) 可行解的構(gòu)造;而對(duì)于連續(xù)空間的優(yōu)化問題,問題的可行解就是定義域中的一點(diǎn),無法適應(yīng) 螞蟻對(duì)解構(gòu)造過程的要求,另外連續(xù)優(yōu)化問題的可行解有無限多個(gè),這更是螞蟻的這種搜 索行為無能為力的。連續(xù)空間的優(yōu)化問題應(yīng)用ACO策略有以下幾個(gè)難點(diǎn)首先要重新定義 螞蟻的行為方式,其次螞蟻的存在方式和分布形式也要重新進(jìn)行定義,再次信息素的表示、 分布和存在方式都必須進(jìn)行調(diào)整。本發(fā)明中利用蟻群算法優(yōu)化連續(xù)空間中的基函數(shù)中心點(diǎn) 的最優(yōu)值。在搜索過程中,螞蟻利用前一代最優(yōu)解的位置及信息素的強(qiáng)度決定其向最優(yōu)解 轉(zhuǎn)移的步長(zhǎng)及概率,對(duì)于找到最優(yōu)解的螞蟻則在一個(gè)確定的鄰域范圍內(nèi)進(jìn)行局部搜索,如 果找到更好的最優(yōu)解則取代原來的最優(yōu)值,完成一次循環(huán)后更新信息素。RBF神經(jīng)網(wǎng)絡(luò)是含有單個(gè)隱層的前向神經(jīng)網(wǎng)絡(luò),其產(chǎn)生具有很強(qiáng)的生物學(xué)背景。在 人的大腦皮層區(qū)域中,局部調(diào)節(jié)及交疊的感受野是大腦反映的特點(diǎn),基于感受野這一特性, Moody和Darken提出了這種RBF神經(jīng)網(wǎng)絡(luò),RBF神經(jīng)網(wǎng)絡(luò)完成如下非線性映射<formula>formula see original document page 7</formula>(9)此處,χ為輸入向量,用作神經(jīng)網(wǎng)絡(luò)與外部環(huán)境的接口 ; Φ(.)為壙一R的非線性 基函數(shù);Il · Il表示歐幾里德范數(shù)-,Wi為輸出從權(quán)值,Ci e Rn為RBF網(wǎng)絡(luò)基函數(shù)中心點(diǎn), 1 ^ i ^ nr, nr為隱節(jié)點(diǎn)數(shù)。連續(xù)攪拌反應(yīng)釜過程本身具有嚴(yán)重的非線性特性,常規(guī)建模方法效果不佳,RBF神 經(jīng)網(wǎng)絡(luò)能較精確地逼近這種非線性關(guān)系,避免對(duì)連續(xù)反應(yīng)攪拌釜過程復(fù)雜的機(jī)理分析再建 模。通過RBF神經(jīng)網(wǎng)絡(luò)建模,對(duì)觀測(cè)數(shù)據(jù)的擬合精度高,泛化能力強(qiáng),求解簡(jiǎn)捷方便,但RBF 神經(jīng)網(wǎng)絡(luò)建模的不足是網(wǎng)絡(luò)參數(shù)難以確定。仿生智能蟻群算法能夠模擬生物進(jìn)化和生物群 體的智能進(jìn)化過程,同時(shí)其正反饋特性能使其較快地發(fā)現(xiàn)較好解,再根據(jù)連續(xù)反應(yīng)攪拌釜 工業(yè)過程的特點(diǎn)最優(yōu)化軟測(cè)量?jī)x表的參數(shù),快速優(yōu)化RBF神經(jīng)網(wǎng)絡(luò)模型參數(shù),從而有效解 決常規(guī)儀表參數(shù)難確定、適用性差和軟測(cè)量?jī)x表精度不高等問題。本發(fā)明解決其技術(shù)問題所采取的技術(shù)手段是該基于仿生智能蟻群算法的工業(yè)軟 測(cè)量方法主要包括如下步驟(1)根據(jù)具體軟測(cè)量對(duì)象的機(jī)理模型,確定該對(duì)象軟測(cè)量過程中所用的關(guān)鍵變量, 從關(guān)鍵變量的歷史數(shù)據(jù)庫(kù)中采集系統(tǒng)正常時(shí)的變量數(shù)據(jù)作為訓(xùn)練樣本;(2)在軟測(cè)量智能處理器中對(duì)訓(xùn)練樣本的變量數(shù)據(jù)進(jìn)行歸一化處理,以使處理后 的關(guān)鍵變量的均值為O、方差為1 ;(3)建立RBF神經(jīng)網(wǎng)絡(luò)函數(shù)得到軟測(cè)量模型,用歸一化后的變量數(shù)據(jù)對(duì)所述RBF神 經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,然后由仿生智能蟻群優(yōu)化算法確定RBF神經(jīng)網(wǎng)絡(luò)的隱層節(jié)點(diǎn)數(shù)和基函數(shù) 中心點(diǎn);
對(duì)于單輸入單輸出(SISO)系統(tǒng),RBF神經(jīng)網(wǎng)絡(luò)實(shí)際上實(shí)現(xiàn)了一種非線性自回歸模 型,如下式(10)所示<formula>formula see original document page 8</formula>式(10)中,<formula>formula see original document page 8</formula>確定了 RBF 神經(jīng)網(wǎng)絡(luò)的 輸入層單元。參數(shù)m和η表示當(dāng)前訓(xùn)練時(shí)刻之前的m個(gè)輸入和η個(gè)輸出通過網(wǎng)絡(luò)實(shí)現(xiàn)的對(duì) 系統(tǒng)當(dāng)前訓(xùn)練時(shí)刻之后輸出的映射,該映射一般根據(jù)先驗(yàn)知識(shí)事先確定。RBF網(wǎng)絡(luò)的隱層 節(jié)點(diǎn)數(shù)~和基函數(shù)中心點(diǎn)Ci由仿生智能蟻群優(yōu)化算法優(yōu)化模塊求解。由于誤差的存在,當(dāng) RBF網(wǎng)絡(luò)的輸出誤差達(dá)到一定上限值的時(shí)候,需要重新對(duì)隱層節(jié)點(diǎn)數(shù) 和基函數(shù)中心點(diǎn)Ci 進(jìn)行優(yōu)化,以滿足軟測(cè)量精度的需要,從而實(shí)現(xiàn)RBF神經(jīng)網(wǎng)絡(luò)軟測(cè)量模塊的校正。RBF神經(jīng)網(wǎng)絡(luò)在訓(xùn)練過程中完成如下式(9)所示的f, =Rn — R的非線性映射<formula>formula see original document page 8</formula>式(9)中,χ是輸入矢量,Φ ( ·)為Rn — R的非線性函數(shù),Wi為權(quán)值,w = [W1, W2,…wn]。Ci為基函數(shù)中心點(diǎn),~為隱層節(jié)點(diǎn)數(shù)。隱層單元將輸入樣本空間映射到高維的 徑向基函數(shù)空間內(nèi)。常用的徑向基函數(shù)有薄板樣條函數(shù)Φ (ν) =V2 In(V和高斯函數(shù)Φ (ν) = eXp(-V2/02),其中σ為高斯基函數(shù)寬度。采用這兩種基函數(shù)都可使RBF神經(jīng)網(wǎng)絡(luò)具有 很好的逼近能力。在本發(fā)明中,RBF神經(jīng)網(wǎng)絡(luò)的基函數(shù)采用薄板樣條函數(shù)。當(dāng)網(wǎng)絡(luò)輸入層 節(jié)點(diǎn)數(shù)、隱層節(jié)點(diǎn)數(shù)和基函數(shù)中心確定后,由于神經(jīng)網(wǎng)絡(luò)輸出對(duì)隱層權(quán)重是線性的,可采用 最小二乘算法進(jìn)行求解,避免了類似于BP神經(jīng)網(wǎng)絡(luò)那樣繁瑣的計(jì)算。(4)所述RBF神經(jīng)網(wǎng)絡(luò)的隱層節(jié)點(diǎn)數(shù)~和基函數(shù)中心點(diǎn)Ci按以下步驟得到a)根據(jù)RBF神經(jīng)網(wǎng)絡(luò)確定仿生智能蟻群優(yōu)化算法的最大循環(huán)次數(shù)Gmax和蟻群的螞 蟻數(shù)量M,先設(shè)定循環(huán)次數(shù)為1 ;b)根據(jù)下式(11)得到仿生智能蟻群優(yōu)化算法的適應(yīng)度函數(shù),
<formula>formula see original document page 8</formula>式(11)中,error表示網(wǎng)絡(luò)的訓(xùn)練誤差,使得目標(biāo)函數(shù)為f最小的RBF神經(jīng)網(wǎng)絡(luò) 為理想的軟測(cè)量網(wǎng)絡(luò);c)確定所述關(guān)鍵變量的歷史數(shù)據(jù)中隱層節(jié)點(diǎn)數(shù)~和基函數(shù)中心點(diǎn)Ci 的取值范圍[Start,End]2X2,在該取值范圍內(nèi)隨機(jī)放置M只螞蟻,以每只螞蟻所放置的初始 位置作為該螞蟻進(jìn)行搜索的起點(diǎn),隱層節(jié)點(diǎn)數(shù)K和基函數(shù)中心點(diǎn)Ci在取值范圍內(nèi)的移動(dòng)步 長(zhǎng)如式(12)所示
<formula>formula see original document page 8</formula>所述蟻群中的螞蟻的初始位置如式(13)分布<formula>formula see original document page 8</formula>式(13)中,rand(Start (k),End(k))為[Start (k), End(k)]區(qū)間上的一個(gè)隨機(jī) 數(shù),螞蟻在初始位置時(shí)產(chǎn)生的信息素量的大小如式(14)所示<formula>formula see original document page 8</formula>(14)式(14)中,a,k均為大于0的常數(shù);
d)根據(jù)式(14)確定得到仿生智能蟻群優(yōu)化算法中當(dāng)前循環(huán)中信息素量最多的螞 蟻所在位置;e)對(duì)每只螞蟻進(jìn)行全局搜索,更新螞蟻所在位置,完成一次循環(huán)后,各螞蟻向上一 次循環(huán)中信息素量最多的螞蟻所在位置進(jìn)行全局轉(zhuǎn)移,根據(jù)式(15)得到螞蟻向上一次循 環(huán)中信息素量最多的螞蟻位置轉(zhuǎn)移的概率
<formula>formula see original document page 9</formula>式(15)中,P表示螞蟻的轉(zhuǎn)移概率,TiJestlndex = τ (BestIndex)-T ⑴,τ ⑴ 為第i只螞蟻所在位置的信息素大小,BestIndex為信息素量最多的螞蟻所在的位置,且 i Φ Bestlndex ;第i只螞蟻向本次循環(huán)中信息素量最多的螞蟻位置轉(zhuǎn)移方式如式(16)所
示<formula>formula see original document page 9</formula>式(16)中,P0和 λ 為常數(shù),且 0 < P0 < 1,0 < λ < 1 ;f)在小鄰域范圍內(nèi)按式(17)所示的方法對(duì)當(dāng)前信息素量最多的螞蟻進(jìn)行隨機(jī)的 局部搜索,更新當(dāng)前信息素量最多螞蟻所在的位置,若搜索后該螞蟻所在位置的信息素量 比搜索之前多,則以搜索后該螞蟻所在位置取代搜索之前該螞蟻所在的位置;否則該螞蟻 停留在搜索之前所在的位置;<formula>formula see original document page 9</formula>g)在所有螞蟻完成全局搜索和局部搜索后,對(duì)每只螞蟻所在位置的信息素量的大 小按式(18)所示的規(guī)則進(jìn)行更新,τ (i) = ρ · τ ( ) + Δ τ (i) (18)式(18)中,P為信息素?fù)]發(fā)系數(shù),且0 < P < 1,Δ τ⑴的計(jì)算如式(14)所 示;h)仿生蟻群智能優(yōu)化算法的循環(huán)次數(shù)自加1 ;i)若仿生智能蟻群優(yōu)化算法的循環(huán)次數(shù)未達(dá)到最大循環(huán)次數(shù),則重復(fù)步驟C)至 h);若仿生智能蟻群優(yōu)化算法的循環(huán)次數(shù)到達(dá)最大循環(huán)次數(shù),則仿生智能蟻群優(yōu)化算法結(jié) 束,即得到所述RBF神經(jīng)網(wǎng)絡(luò)的隱層節(jié)點(diǎn)數(shù)~和基函數(shù)中心點(diǎn)Ci。進(jìn)一步地,本發(fā)明所述式(14)中,k = 1,a = e。與現(xiàn)有技術(shù)相比,本發(fā)明的優(yōu)點(diǎn)有該軟測(cè)量方法的控制參數(shù)確定方便,適用范圍 廣,可以推廣到各種工業(yè)過程中;采用RBF神經(jīng)網(wǎng)絡(luò)建模效果好,對(duì)數(shù)據(jù)的擬合精度高,避 免復(fù)雜的機(jī)理建模,操作簡(jiǎn)捷方便。
圖1本發(fā)明軟測(cè)量模型過程對(duì)象的輸入輸出關(guān)系結(jié)構(gòu)圖;圖2本發(fā)明仿生智能蟻群算法流程圖3本發(fā)明連續(xù)攪拌反應(yīng)釜簡(jiǎn)易結(jié)構(gòu)示意圖;圖4本發(fā)明RBF神經(jīng)網(wǎng)絡(luò)訓(xùn)練誤差仿真結(jié)果圖;圖5本發(fā)明RBF神經(jīng)網(wǎng)絡(luò)測(cè)試誤差仿真結(jié)果圖。
具體實(shí)施例方式本發(fā)明的基于仿生智能蟻群算法的工業(yè)軟測(cè)量方法,包括與現(xiàn)場(chǎng)工業(yè)對(duì)象連接的 現(xiàn)場(chǎng)智能儀表、現(xiàn)場(chǎng)數(shù)據(jù)采集和預(yù)處理模塊、RBF神經(jīng)網(wǎng)絡(luò)建模模塊、仿生智能蟻群算法優(yōu) 化模塊、數(shù)據(jù)存儲(chǔ)和更新模塊、軟測(cè)量模塊、高速工業(yè)處理器等,現(xiàn)場(chǎng)數(shù)據(jù)采集和預(yù)處理模 塊的主要功能有現(xiàn)場(chǎng)數(shù)據(jù)的采集是依照設(shè)定的每次采樣時(shí)間的間隔從系統(tǒng)正常時(shí)數(shù) 據(jù)庫(kù)中采集 數(shù)據(jù),采集的數(shù)據(jù)連續(xù)攪拌反應(yīng)釜軟測(cè)量中相應(yīng)的輔助變量,這些變量主要包括反應(yīng)轉(zhuǎn)化 率、反應(yīng)溫度、進(jìn)料流量和冷卻劑流量等。采集這些輔助變量之后對(duì)數(shù)據(jù)進(jìn)行歸一化處理, 使得經(jīng)過處理的各變量的均值為0,方差為1,得到輸入矩陣X,其計(jì)算公式如下(19)-(21) 所示。計(jì)算均值
冠丄fTX(19)計(jì)算方差
Cr2x=^t(TXl-TX)2(20)歸一化
χ JX-TX(21)其中,TX為采集的輔助變量樣本,N為采集輔助變量樣本數(shù),西為采集的輔助變量 樣本均值。RBF神經(jīng)網(wǎng)絡(luò)建模模塊,用于建立軟測(cè)量模型RBF,主要功能是用標(biāo)準(zhǔn)化后的數(shù) 據(jù)對(duì)RBF神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,并確定RBF網(wǎng)絡(luò)的相關(guān)參數(shù)。由于RBF神經(jīng)網(wǎng)絡(luò)參數(shù)的合適 與否決定其建模效果的好壞,因此用仿生智能蟻群算法確定RBF的中心矢量Ci和最佳隱含 層數(shù)目nr。對(duì)于單輸入單輸出(SISO)系統(tǒng),RBF神經(jīng)網(wǎng)絡(luò)實(shí)際上實(shí)現(xiàn)了一種非線性自回歸模 型,如下式所示y(k) = f (χ) (10)式(10)中,χ= [y(k-l), ... y (k_m),u (k_l),...u(k_n)]確定了 RBF 神經(jīng)網(wǎng)絡(luò)的 輸入層單元。參數(shù)m和η表示過去的m個(gè)輸入和η個(gè)輸出通過網(wǎng)絡(luò)實(shí)現(xiàn)的對(duì)系統(tǒng)將來輸出 的映射,該映射一般根據(jù)先驗(yàn)知識(shí)事先確定。RBF網(wǎng)絡(luò)的隱層節(jié)點(diǎn)數(shù)和基函數(shù)中心點(diǎn)Ci 由仿生智能蟻群優(yōu)化算法優(yōu)化模塊求解。由于誤差的存在,當(dāng)RBF網(wǎng)絡(luò)的輸出誤差達(dá)到一 定上限值的時(shí)候,需要重新對(duì)隱層節(jié)點(diǎn)數(shù)~和基函數(shù)中心點(diǎn)Ci進(jìn)行優(yōu)化,以滿足軟測(cè)量精 度的需要,從而實(shí)現(xiàn)RBF神經(jīng)網(wǎng)絡(luò)軟測(cè)量模塊的校正。RBF神經(jīng)網(wǎng)絡(luò)在訓(xùn)練過程中完成如下式(9)所示的f, =Rn — R的非線性映射
<formula>formula see original document page 11</formula>式(9)中,χ是輸入矢量,Φ ( ·)為Rn — R的非線性函數(shù),Wi為權(quán)值,w = [W1, W2,…wn]。Ci為基函數(shù)中心點(diǎn),~為隱層節(jié)點(diǎn)數(shù)。隱層單元將輸入樣本空間映射到高維的 徑向基函數(shù)空間內(nèi)。常用的徑向基函數(shù)有薄板樣條函數(shù)Φ (ν) =V2 In(V和高斯函數(shù)Φ (ν) = eXp(-V2/02),其中σ為高斯基函數(shù)寬度。采用這兩種基函數(shù)都可使RBF神經(jīng)網(wǎng)絡(luò)具有 很好的逼近能力。在本發(fā)明中,RBF神經(jīng)網(wǎng)絡(luò)的基函數(shù)采用薄板樣條函數(shù)。當(dāng)網(wǎng)絡(luò)輸入層 節(jié)點(diǎn)數(shù)、隱層節(jié)點(diǎn)數(shù)和基函數(shù)中心確定后,由于神經(jīng)網(wǎng)絡(luò)輸出對(duì)隱層權(quán)重是線性的,可采用 最小二乘算法進(jìn)行求解,避免了類似于BP神經(jīng)網(wǎng)絡(luò)那樣繁瑣的計(jì)算。仿生智能蟻群算法的模型參數(shù)優(yōu)化模塊,用于優(yōu)化RBF模型參數(shù)隱層節(jié)點(diǎn)數(shù)η,和 基函數(shù)中心點(diǎn)Ci,它的主要功能是神經(jīng)網(wǎng)絡(luò)的優(yōu)化設(shè)計(jì)包括參數(shù)學(xué)習(xí)和結(jié)構(gòu)設(shè)計(jì),并且結(jié) 構(gòu)設(shè)計(jì)遠(yuǎn)比參數(shù)學(xué)習(xí)困難的多,至今沒有確定的方法可循。在本發(fā)明中,根據(jù)輸入變量的數(shù) 量固定RBF神經(jīng)網(wǎng)絡(luò)的輸入層接點(diǎn)數(shù)然后利用仿生智能蟻群算法優(yōu)化模塊,確定網(wǎng)絡(luò)隱 層節(jié)點(diǎn)數(shù)~和基函數(shù)的中心點(diǎn)Ci。由于網(wǎng)絡(luò)輸出對(duì)隱層權(quán)重是線性的,為了避免繁瑣的計(jì) 算,本發(fā)明采用遞推最小二乘算法進(jìn)行求解。數(shù)據(jù)存儲(chǔ)和更新模塊的主要功能是在本發(fā)明的軟測(cè)量?jī)x表中,為了滿足工業(yè)現(xiàn) 場(chǎng)的海量數(shù)據(jù)存儲(chǔ)需要,采用高速工業(yè)存儲(chǔ)器,通過智能儀表采集的數(shù)據(jù),被直接存儲(chǔ)在數(shù) 據(jù)庫(kù)中,再通過現(xiàn)場(chǎng)總線,提供給RBF神經(jīng)網(wǎng)絡(luò)進(jìn)行反應(yīng)轉(zhuǎn)化率的軟測(cè)量。當(dāng)誤差達(dá)到一定 限度時(shí),RBF網(wǎng)絡(luò)通過處理器向數(shù)據(jù)庫(kù)發(fā)出更新數(shù)據(jù)請(qǐng)求信息,數(shù)據(jù)庫(kù)接收到該信號(hào),則把 最近某一段時(shí)間內(nèi)接收到的數(shù)據(jù)重新發(fā)送給RBF網(wǎng)絡(luò),用于網(wǎng)絡(luò)的參數(shù)校正。軟測(cè)量的輸 出數(shù)據(jù),即反應(yīng)轉(zhuǎn)化率的測(cè)量值除被送顯示器顯示外,也被存儲(chǔ)在該數(shù)據(jù)中,以供日后查詢 及出錯(cuò)報(bào)警。軟測(cè)量模塊的主要功能是用于對(duì)待檢測(cè)數(shù)據(jù)VX用訓(xùn)練時(shí)得到的權(quán)和δ χ2進(jìn)行 歸一處理,并將標(biāo)準(zhǔn)化處理后的數(shù)據(jù)作為徑向基函數(shù)神經(jīng)網(wǎng)絡(luò)建模模塊的輸入,將輸入代 入訓(xùn)練得到的RBF模型,得到軟測(cè)量函數(shù)值。高速工業(yè)處理器模塊的主要功能是由于工業(yè)現(xiàn)場(chǎng)對(duì)本軟測(cè)量?jī)x表的速度要求較 高,當(dāng)接受到一組訓(xùn)練數(shù)據(jù),RBF神經(jīng)網(wǎng)絡(luò)要在極短的時(shí)間內(nèi)完成學(xué)習(xí)和校正任務(wù),因此,在 要求仿生智能蟻群優(yōu)化算法要較快速度的同時(shí),更要有高速的工業(yè)處理器模塊加以配合。本發(fā)明基于仿生智能蟻群算法的工業(yè)軟測(cè)量方法主要包括以下步驟(1)根據(jù)具體軟測(cè)量對(duì)象的機(jī)理模型,確定該對(duì)象軟測(cè)量過程中所用的關(guān)鍵變量, 從關(guān)鍵變量的歷史數(shù)據(jù)庫(kù)中采集系統(tǒng)正常時(shí)所述變量的數(shù)據(jù)作為訓(xùn)練樣本TX ;(2)訓(xùn)練樣本TX在軟測(cè)量智能處理器中對(duì)數(shù)據(jù)進(jìn)行歸一化處理,處理后的關(guān)鍵變 量均值為0,方差為1,得到的輸入矩陣X用式(19)-(21)來完成處理計(jì)算均值玩=去(19)
N /=1計(jì)算方差:<formula>formula see original document page 11</formula>歸一化=<formula>formula see original document page 11</formula>(21)
式中,TX為采集的輔助變量樣本,N為采集輔助變量樣本數(shù),西為采集的輔助變量 樣本均值。(3)建立RBF神經(jīng)網(wǎng)絡(luò)函數(shù)得到軟測(cè)量模型,用歸一化后的數(shù)據(jù)對(duì)RBF神經(jīng)網(wǎng)絡(luò)進(jìn) 行訓(xùn)練,并確定RBF網(wǎng)絡(luò)的相關(guān)參數(shù)。由于RBF神經(jīng)網(wǎng)絡(luò)參數(shù)的合適與否決定其建模效果 的好壞,因此用仿生智能蟻群算法確定RBF的中心矢量Ci和最佳隱含層數(shù)目IV對(duì)于單輸入單輸出(SISO)系統(tǒng),RBF神經(jīng)網(wǎng)絡(luò)實(shí)際上實(shí)現(xiàn)了一種非線性自回歸模 型,如下式所示y(k) = f(x) (10)式(10)中,<formula>formula see original document page 12</formula>確定了 RBF 神經(jīng)網(wǎng)絡(luò)的 輸入層單元。參數(shù)m和η表示當(dāng)前訓(xùn)練時(shí)刻之前的m個(gè)輸入和η個(gè)輸出通過網(wǎng)絡(luò)實(shí)現(xiàn)的對(duì) 系統(tǒng)當(dāng)前訓(xùn)練時(shí)刻之后輸出的映射,該映射一般根據(jù)先驗(yàn)知識(shí)事先確定。RBF網(wǎng)絡(luò)的隱層 節(jié)點(diǎn)數(shù)~和基函數(shù)中心點(diǎn)Ci由仿生智能蟻群優(yōu)化算法優(yōu)化模塊求解。由于誤差的存在,當(dāng) RBF網(wǎng)絡(luò)的輸出誤差達(dá)到一定上限值的時(shí)候,需要重新對(duì)隱層節(jié)點(diǎn)數(shù) 和基函數(shù)中心點(diǎn)Ci 進(jìn)行優(yōu)化,以滿足軟測(cè)量精度的需要,從而實(shí)現(xiàn)RBF神經(jīng)網(wǎng)絡(luò)軟測(cè)量模塊的校正。RBF神經(jīng)網(wǎng)絡(luò)在訓(xùn)練過程中完成如下式(9)所示的f, =Rn — R的非線性映射=Z^dk- I)(9)
/=1式(9)中,χ是輸入矢量,Φ ( ·)為Rn — R的非線性函數(shù),Wi為權(quán)值,w = [W1, W2,…wn]。Ci為基函數(shù)中心點(diǎn),~為隱層節(jié)點(diǎn)數(shù)。隱層單元將輸入樣本空間映射到高維的 徑向基函數(shù)空間內(nèi)。常用的徑向基函數(shù)有薄板樣條函數(shù)Φ (ν) =V2 In(V和高斯函數(shù)Φ (ν) = eXp(-V2/02),其中σ為高斯基函數(shù)寬度。采用這兩種基函數(shù)都可使RBF神經(jīng)網(wǎng)絡(luò)具有 很好的逼近能力。在本發(fā)明中,RBF神經(jīng)網(wǎng)絡(luò)的基函數(shù)采用薄板樣條函數(shù)。當(dāng)網(wǎng)絡(luò)輸入層 節(jié)點(diǎn)數(shù)、隱層節(jié)點(diǎn)數(shù)和基函數(shù)中心確定后,由于神經(jīng)網(wǎng)絡(luò)輸出對(duì)隱層權(quán)重是線性的,可采用 最小二乘算法進(jìn)行求解,避免了類似于BP神經(jīng)網(wǎng)絡(luò)那樣繁瑣的計(jì)算。(4)所述RBF神經(jīng)網(wǎng)絡(luò)的隱層節(jié)點(diǎn)數(shù)η,和基函數(shù)中心點(diǎn)Ci用仿生智能蟻群算法 來優(yōu)化按以下具體步驟得到a)根據(jù)RBF神經(jīng)網(wǎng)絡(luò)確定仿生智能蟻群優(yōu)化算法的最大循環(huán)次數(shù)Gmax和蟻群的螞 蟻數(shù)量M,先設(shè)定循環(huán)次數(shù)為1 ;b)計(jì)算仿生智能蟻群優(yōu)化算法的適應(yīng)度函數(shù),如下式(11)所示,<formula>formula see original document page 12</formula>式(11)中,error表示網(wǎng)絡(luò)的訓(xùn)練誤差,使得目標(biāo)函數(shù)為f最小的RBF神經(jīng)網(wǎng)絡(luò) 為理想的軟測(cè)量網(wǎng)絡(luò);c)確定關(guān)鍵變量的歷史數(shù)據(jù)中隱層節(jié)點(diǎn)數(shù)~和基函數(shù)中心點(diǎn)Ci的取值范圍 [Start,End]2X2,在該取值范圍內(nèi)隨機(jī)放置M只螞蟻,以每只螞蟻所放置的初始位置作為該 螞蟻進(jìn)行搜索的起點(diǎn),隱層節(jié)點(diǎn)數(shù)~和基函數(shù)中心點(diǎn)(^在取值方位內(nèi)的移動(dòng)步長(zhǎng)如式(12)所示,<formula>formula see original document page 12</formula>所述蟻群中的螞蟻的初始位置如式(13)分布,<formula>formula see original document page 13</formula>式(13)中,rand(Start (k),End(k))是[Start (k), End(k)]區(qū)間上的一個(gè)隨機(jī) 數(shù),螞蟻在初始位置時(shí)產(chǎn)生的信息素量的大小如式(14)所示,<formula>formula see original document page 13</formula>(14)式(14)中,a,k為大于0的常數(shù),若為特定空間內(nèi)函數(shù)的最小值尋優(yōu),取a > 1, 本發(fā)明中優(yōu)選k = l,a = e,目標(biāo)函數(shù)值f (Xi)越小,則Xi所在的位置所留下的信息素就越 多;d)根據(jù)式(14)得到仿生智能蟻群優(yōu)化算法中當(dāng)前循環(huán)中信息素量最多的螞蟻所 在位置;e)對(duì)每只螞蟻進(jìn)行全局搜索,更新螞蟻所在位置,完成一次循環(huán)后,螞蟻X(i) (i =1,2,…,M,i ^BestIndex)將選擇向上一次循環(huán)中找到最優(yōu)解的螞蟻X(BestIndex)進(jìn) 行全局轉(zhuǎn)移,或選擇在原來的領(lǐng)域范圍內(nèi)進(jìn)行隨機(jī)搜索。螞蟻X(i)向信息素量最多的螞蟻 所在位置X(BestIndex)轉(zhuǎn)移的概率為
<formula>formula see original document page 13</formula>式(15)中,Ti^silmfa= τ (Bestlndex) - τ⑴,τ⑴為螞蟻處的信息素大小, 且i興Bestlndex, τ (Bestlndex)為信息素量最多的螞蟻所在位置的信息素大??;第i只 螞蟻向信息素量最多的螞蟻所在位置轉(zhuǎn)移的方式如式(16)
<formula>formula see original document page 13</formula>否則式(16)中,P。和λ 為常數(shù),且 0 < P。< 1,0 < λ < 1 ;f)在小鄰域范圍內(nèi)按式(17)對(duì)當(dāng)前信息素量最多的螞蟻進(jìn)行隨機(jī)的局部搜索, 更新信息素量最多的螞蟻所在位置X(BestInde),設(shè)新的最佳位置為X (tempBest),若新的 最佳位置處的信息素量比原來的多,則取代之,否則保留原來的最佳位置,X(BestIndex)取 值規(guī)則如式(22)所示,
<formula>formula see original document page 13</formula>式(17)中,
<formula>formula see original document page 13</formula>(22)
\X(BestIndex)-w-step 否則式(22)中,w為搜索步長(zhǎng),隨著迭代次數(shù)的增加而減少,以便在后期搜索中能夠得 到更精確的解;g)在所有螞蟻完成全局搜索和局部搜索后,對(duì)每只螞蟻所在位置處的信息素的大 小按式(18)所示的規(guī)則進(jìn)行更新,<formula>formula see original document page 13</formula>18)
式(18)中,P為信息素?fù)]發(fā)系數(shù),且0 < P < 1,Δ τ⑴的計(jì)算如式(14)所 示;h)仿生蟻群智能優(yōu)化算法的循環(huán)次數(shù)自加1 ;i)若仿生智能蟻群優(yōu)化算法的循環(huán)次數(shù)未達(dá)到最大循環(huán)次數(shù),則重復(fù)步驟C)至 h);否則仿生智能蟻群優(yōu)化算法結(jié)束,即得到所述RBF神經(jīng)網(wǎng)絡(luò)的隱層節(jié)點(diǎn)數(shù)~和基函數(shù) 中心點(diǎn)Ci的最佳值。(5)對(duì)數(shù)據(jù)進(jìn)行存儲(chǔ)并更新,將采集的數(shù)據(jù)傳送到DCS實(shí)時(shí)數(shù)據(jù)庫(kù)中,在每個(gè)定時(shí)周期從DCS的實(shí)時(shí)數(shù)據(jù)庫(kù)中得到最新的變量數(shù)據(jù)作為待測(cè)數(shù)據(jù)。(6)對(duì)待檢測(cè)數(shù)據(jù)VX用訓(xùn)練時(shí)得到的西和δ χ2進(jìn)行歸一化處理,并將歸一化處 理后的數(shù)據(jù)作為徑向基函數(shù)神經(jīng)網(wǎng)絡(luò)建模模塊的輸入,將輸入代入訓(xùn)練得到的RBF模型, 得到軟測(cè)量函數(shù)值。以下結(jié)合實(shí)際工業(yè)過程對(duì)本發(fā)明作進(jìn)一步說明。連續(xù)攪拌反應(yīng)釜簡(jiǎn)易結(jié)構(gòu)示意圖如圖3所示,一單級(jí)不可逆放熱反應(yīng)A — B在反
應(yīng)器中進(jìn)行。整個(gè)過程可用兩個(gè)非線性微分方程來描述
^ 為Caf-CJ-K0Ca exp(-^)( 23 )
dt VRt
竽=參(7>—+吾)+仏即—exp(_^_)](U)(24)
dt VpcpRT pcpQcPcGpc式中CA是反應(yīng)器組份A之濃度;T是反應(yīng)溫度;Tef是冷卻劑溫度;Q是反應(yīng)物進(jìn)料流量;Xaf是進(jìn)料濃度;Tf是進(jìn)料溫度;V是反應(yīng)體積;Qc是冷卻劑流量;K。是預(yù)指數(shù)因子;E是活化能;Δ H是反應(yīng)熱;Cp是熱容量。以醋酸酐水解過程為例,反應(yīng)過程的具體的非線性微分方程為= -X1Uf +Da(I-Xl)exp(x2 /(1 + ^))(25) dt γ年=-X1(UF +β) + α(1-X1)exp(x21(\ + ^)) + ηαβ(26) dt γy = X1(27)其中,X1是與濃度相關(guān)的反應(yīng)轉(zhuǎn)化率,被控制量,不可直接在線測(cè)量;狀態(tài)變量X2 是反應(yīng)溫度Ty的無因次化表示,可在線測(cè)量;ua和uF分別是夾套內(nèi)冷卻劑的溫度和物料的進(jìn)料流量。實(shí)際運(yùn)行時(shí),通常進(jìn)料流量固定,而使系統(tǒng)成為溫度控制系統(tǒng)。1.確定連續(xù)攪拌反應(yīng)釜工業(yè)過程中軟測(cè)量所用的關(guān)鍵變量反映轉(zhuǎn)化率、反應(yīng)溫 度、交流流量等,從連續(xù)反應(yīng)攪拌反應(yīng)釜正常工作的歷史數(shù)據(jù)庫(kù)中采集軟測(cè)量中相應(yīng)的輔 助變量如夾套內(nèi)冷卻劑溫度和物料的進(jìn)料流量數(shù)據(jù)作為訓(xùn)練樣本;2.對(duì)這些采集出來的數(shù)據(jù)進(jìn)行歸一化處理,使得各變量的均值為0,方差為1,得 到輸入矩陣X,其計(jì)算公式如下所示
<formula>formula see original document page 15</formula>其中,TX為采集的輔助變量夾套內(nèi)冷卻劑溫度、物料的進(jìn)料流量的樣本,N為采集 輔助變量樣本數(shù),TX為采集的輔助變量樣本夾套內(nèi)冷卻劑溫度、物料的進(jìn)料流量均值;3.建立RBF神經(jīng)網(wǎng)絡(luò)函數(shù)得到軟測(cè)量模型,用歸一化后的數(shù)據(jù)對(duì)RBF神經(jīng)網(wǎng)絡(luò)進(jìn) 行訓(xùn)練,并確定RBF網(wǎng)絡(luò)的相關(guān)參數(shù)。由于RBF神經(jīng)網(wǎng)絡(luò)參數(shù)的合適與否決定其建模效果 的好壞,因此用仿生智能蟻群算法確定RBF的基函數(shù)中心點(diǎn)Ci和最佳隱含層數(shù)目IV對(duì)于單輸入單輸出(SISO)系統(tǒng),RBF神經(jīng)網(wǎng)絡(luò)實(shí)際上實(shí)現(xiàn)了一種非線性自回歸模 型,如下式所示y(k) = f(x) (10)式(10)中,χ= [y(k-l), ... y (k_m),u(k_l),...u(k_n)]確定了 RBF 神經(jīng)網(wǎng)絡(luò)的 輸入層單元。參數(shù)m和η表示當(dāng)前訓(xùn)練時(shí)刻之前的m個(gè)輸入和η個(gè)輸出通過網(wǎng)絡(luò)實(shí)現(xiàn)的對(duì) 系統(tǒng)當(dāng)前訓(xùn)練時(shí)刻之后輸出的映射,該映射一般根據(jù)先驗(yàn)知識(shí)事先確定。RBF網(wǎng)絡(luò)的隱層 節(jié)點(diǎn)數(shù)~和基函數(shù)中心點(diǎn)Ci由仿生智能蟻群優(yōu)化算法優(yōu)化模塊求解。由于誤差的存在,當(dāng) RBF網(wǎng)絡(luò)的輸出誤差達(dá)到一定上限值的時(shí)候,需要重新對(duì)隱層節(jié)點(diǎn)數(shù) 和基函數(shù)中心點(diǎn)Ci 進(jìn)行優(yōu)化,以滿足軟測(cè)量精度的需要,從而實(shí)現(xiàn)RBF神經(jīng)網(wǎng)絡(luò)軟測(cè)量模塊的校正。RBF神經(jīng)網(wǎng)絡(luò)在訓(xùn)練過程中完成如下式(9)所示的f, =Rn — R的非線性映射
<formula>formula see original document page 15</formula>式(9)中,χ是輸入矢量,Φ ( ·)為Rn — R的非線性函數(shù),Wi為權(quán)值,w = [W1, W2,…wn]。Ci為基函數(shù)中心點(diǎn),~為隱層節(jié)點(diǎn)數(shù)。。參數(shù)m和η分別表示當(dāng)前訓(xùn)練時(shí)刻之 前m個(gè)輸入和η個(gè)輸出通過網(wǎng)絡(luò)實(shí)現(xiàn)的對(duì)系統(tǒng)當(dāng)前訓(xùn)練時(shí)刻之后輸出的映射,該映射一般 根據(jù)先驗(yàn)知識(shí)事先確定,在本實(shí)施例中,輸入變量為4,輸入變量為1,為了避免網(wǎng)絡(luò)過于復(fù)雜,m, η取值都 為2,則輸入節(jié)點(diǎn)數(shù)為10。RBF神經(jīng)網(wǎng)絡(luò)的隱層節(jié)點(diǎn)數(shù)η,和基函數(shù)中心點(diǎn)Ci由仿生智能蟻 群算法優(yōu)化模塊求解;4.所述RBF神經(jīng)網(wǎng)絡(luò)的隱層節(jié)點(diǎn)數(shù)η,和基函數(shù)中心點(diǎn)Ci用仿生智能蟻群算法來優(yōu)化按以下具體步驟得到a)根據(jù)RBF神經(jīng)網(wǎng)絡(luò)確定仿生智能蟻群優(yōu)化算法的最大循環(huán)次數(shù)Gmax和蟻群的螞 蟻數(shù)量M,先設(shè)定循環(huán)次數(shù)為1 ;b)計(jì)算仿生智能蟻群優(yōu)化算法的適應(yīng)度函數(shù),如下式(11)所示, <formula>formula see original document page 16</formula> <formula>formula see original document page 16</formula>式(11)中,error表示網(wǎng)絡(luò)的訓(xùn)練誤差,使得目標(biāo)函數(shù)為f最小的RBF神經(jīng)網(wǎng)絡(luò) 為理想的軟測(cè)量網(wǎng)絡(luò);c)確定關(guān)鍵變量的歷史數(shù)據(jù)中隱層節(jié)點(diǎn)數(shù)~和基函數(shù)中心點(diǎn)Ci的取值范圍 [Start,End]2X2,在該取值范圍內(nèi)隨機(jī)放置M只螞蟻,以每只螞蟻所放置的初始位置作為該 螞蟻進(jìn)行搜索的起點(diǎn),隱層節(jié)點(diǎn)數(shù)~和基函數(shù)中心點(diǎn)(^在取值方位內(nèi)的移動(dòng)步長(zhǎng)如式(12)所示,Len(i)^End(i)-Start(i\i = X,2(12)
M所述蟻群中的螞蟻的初始位置如式(13)分布,Xj = (rand (Start (1), End(I)), rand (Start (2), End (2)) ··· rand (Start (η), End(η))) (13)式(13)中,rand(Start (k),End(k))是[Start (k), End(k)]區(qū)間上的一個(gè)隨機(jī) 數(shù),螞蟻在初始位置時(shí)產(chǎn)生的信息素量的大小如式(14)所示,AT(i) = kaf{x')(14)式(14)中,a,k為大于0的常數(shù),若為特定空間內(nèi)函數(shù)的最小值尋優(yōu),取a > 1,本 發(fā)明中優(yōu)選k= 1,a = e;其中,e是(Ι+Ι/ηΓηΟι為自然數(shù))在η趨于無窮大時(shí)的極限, 是一個(gè)無理數(shù),e 2. 71828;目標(biāo)函數(shù)值f (Xi)越小,則Xi所在的位置所留下的信息素就 越多;d)根據(jù)式(14)得到仿生智能蟻群優(yōu)化算法中當(dāng)前循環(huán)中信息素量最多的螞蟻所 在位置;e)對(duì)每只螞蟻進(jìn)行全局搜索,更新螞蟻所在位置,完成一次循環(huán)后,螞蟻X(i) (i =1,2,…,M,i ^BestIndex)將選擇向上一次循環(huán)中找到最優(yōu)解的螞蟻X(BestIndex)進(jìn) 行全局轉(zhuǎn)移,或選擇在原來的領(lǐng)域范圍內(nèi)進(jìn)行隨機(jī)搜索。螞蟻X(i)向信息素量最多的螞蟻 所在位置X(BestIndex)轉(zhuǎn)移的概率為<formula>formula see original document page 16</formula>式(15)中,Ti^estlndex= τ (BestIndex) - τ⑴,τ⑴為螞蟻處的信息素大小, 且i興BestIndex, τ (BestIndex)為信息素量最多的螞蟻所在位置的信息素大?。坏趇只 螞蟻向信息素量最多的螞蟻所在位置轉(zhuǎn)移的方式如式(16)<formula>formula see original document page 16</formula>式(16)中,P0和 λ 為常數(shù),且 0 < P0 < 1,0 < λ < 1 ;f)在小鄰域范圍內(nèi)按式(17)對(duì)當(dāng)前信息素量最多的螞蟻進(jìn)行隨機(jī)的局部搜索,更新信息素量最多的螞蟻所在位置X (BestIndex),設(shè)新的最佳位置為X (tempBest),若新 的最佳位置處的信息素量比原來的多,則取代之,否則保留原來的最佳位置,X(BestIndex) 取值規(guī)則如式(22)所示,
<formula>formula see original document page 17</formula>式(17)中,
<formula>formula see original document page 17</formula>式(22)中,w為搜索步長(zhǎng),隨著迭代次數(shù)的增加而減少,以便在后期搜索中能夠得 到更精確的解;g)在所有螞蟻完成全局搜索和局部搜索后,對(duì)每只螞蟻所在位置處的信息素的大 小按式(18)所示的規(guī)則進(jìn)行更新,<formula>formula see original document page 17</formula>式(18)中,P為信息素?fù)]發(fā)系數(shù),且0 < P < 1,Δ τ⑴的計(jì)算如式(14)所 示;h)仿生蟻群智能優(yōu)化算法的循環(huán)次數(shù)自加1 ;i)若仿生智能蟻群優(yōu)化算法的循環(huán)次數(shù)未達(dá)到最大循環(huán)次數(shù),則重復(fù)步驟C)至 h);否則仿生智能蟻群優(yōu)化算法結(jié)束,即得到所述RBF神經(jīng)網(wǎng)絡(luò)的隱層節(jié)點(diǎn)數(shù)~和基函數(shù) 中心點(diǎn)Ci的最佳值。為了驗(yàn)證本發(fā)明方法的有效性,對(duì)本發(fā)明中的軟測(cè)量方法進(jìn)行仿真實(shí)驗(yàn)。仿生智 能蟻群優(yōu)化算法中,設(shè)算法的最大迭代次數(shù)為100,螞蟻數(shù)為30只。根據(jù)連續(xù)攪拌反應(yīng)釜 模型得到700組數(shù)據(jù),前250組數(shù)據(jù)用于計(jì)算RBF神經(jīng)網(wǎng)絡(luò)的輸出層權(quán)值向量,中間250組 數(shù)據(jù)用于評(píng)價(jià)所構(gòu)造的RBF神經(jīng)網(wǎng)絡(luò),最后200組數(shù)據(jù)用于測(cè)試最終得到的RBF神經(jīng)網(wǎng)絡(luò)。 圖5為RBF神經(jīng)網(wǎng)絡(luò)訓(xùn)練誤差仿真結(jié)果圖,圖6為RBF神經(jīng)網(wǎng)絡(luò)測(cè)試誤差仿真結(jié)果圖。結(jié) 果顯示,本發(fā)明在連續(xù)攪拌反應(yīng)釜轉(zhuǎn)化率的軟測(cè)量模型中,本方法有較高的測(cè)量精度,并且 將該方法應(yīng)用到其他工業(yè)過程的軟測(cè)量中,只需根據(jù)具體工業(yè)過程對(duì)象的輸入輸出來設(shè)定 RBF網(wǎng)絡(luò)的輸入層節(jié)點(diǎn)數(shù),而不需了解具體被控對(duì)象的工作機(jī)理,所以本發(fā)明中基于仿生智 能蟻群算法的工業(yè)軟測(cè)量方法具有廣泛的應(yīng)用領(lǐng)域和光明的發(fā)展前景。
權(quán)利要求
一種基于仿生智能蟻群算法的工業(yè)軟測(cè)量方法,其特征在于包括如下步驟(1)確定軟測(cè)量過程中所用的關(guān)鍵變量,從關(guān)鍵變量的歷史數(shù)據(jù)庫(kù)中采集系統(tǒng)正常時(shí)的變量數(shù)據(jù)作為訓(xùn)練樣本;(2)在軟測(cè)量智能處理器中對(duì)訓(xùn)練樣本的變量數(shù)據(jù)進(jìn)行歸一化處理,以使處理后的關(guān)鍵變量的均值為0、方差為1;(3)建立RBF神經(jīng)網(wǎng)絡(luò)函數(shù)得到軟測(cè)量模型,用歸一化后的變量數(shù)據(jù)對(duì)所述RBF神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,然后由仿生智能蟻群優(yōu)化算法確定RBF神經(jīng)網(wǎng)絡(luò)的隱層節(jié)點(diǎn)數(shù)和基函數(shù)中心點(diǎn);在得到所述軟測(cè)量模型的過程中,RBF神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)如式①所示的非線性自回歸模型,y(k)=f(x)①式①中,x確定了RBF神經(jīng)網(wǎng)絡(luò)的輸入層單元,且x=[y(k-1),…y(k-m),u(k-1),…u(k-n)],m和n分別表示過去m個(gè)輸入和n個(gè)輸出通過RBF神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)對(duì)建模系統(tǒng)將來輸出的映射;所述RBF神經(jīng)網(wǎng)絡(luò)在所述訓(xùn)練過程中完成如下式②所示的frRn→R的非線性映射 <mrow><msub> <mi>f</mi> <mi>r</mi></msub><mrow> <mo>(</mo> <mi>x</mi> <mo>)</mo></mrow><mo>=</mo><munderover> <mi>Σ</mi> <mrow><mi>i</mi><mo>=</mo><mn>1</mn> </mrow> <msub><mi>n</mi><mi>r</mi> </msub></munderover><msub> <mi>w</mi> <mi>i</mi></msub><mi>φ</mi><mrow> <mo>(</mo> <mo>|</mo> <mo>|</mo> <mi>x</mi> <mo>-</mo> <msub><mi>c</mi><mi>i</mi> </msub> <mo>|</mo> <mo>|</mo> <mo>)</mo></mrow> </mrow>②式②中,x是輸入矢量,φ(·)為Rn→R的非線性函數(shù),wi為權(quán)值,w=[w1,w2,…wn],ci為基函數(shù)中心點(diǎn),nr為隱層節(jié)點(diǎn)數(shù);在所述RBF神經(jīng)網(wǎng)絡(luò)訓(xùn)練過程中,RBF神經(jīng)網(wǎng)絡(luò)的隱層單元將歸一化后的變量數(shù)據(jù)空間映射到高維的徑向基函數(shù)空間內(nèi),選用薄板樣條函數(shù)φ(v)=v2ln(v)作為RBF神經(jīng)網(wǎng)絡(luò)的激活函數(shù);所述RBF神經(jīng)網(wǎng)絡(luò)的隱層節(jié)點(diǎn)數(shù)nr和基函數(shù)中心點(diǎn)ci按以下步驟得到a)根據(jù)RBF神經(jīng)網(wǎng)絡(luò)確定仿生智能蟻群優(yōu)化算法的最大循環(huán)次數(shù)Gmax和蟻群的螞蟻數(shù)量M,先設(shè)定循環(huán)次數(shù)為1;b)根據(jù)下式③得到仿生智能蟻群優(yōu)化算法的適應(yīng)度函數(shù), <mrow><mi>min</mi><mi>f</mi><mrow> <mo>(</mo> <mi>x</mi> <mo>)</mo></mrow><mo>=</mo><munderover> <mi>Σ</mi> <mrow><mi>i</mi><mo>=</mo><mn>1</mn> </mrow> <mi>N</mi></munderover><mo>|</mo><mi>error</mi><mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo></mrow><mo>|</mo> </mrow>③式③中,error表示網(wǎng)絡(luò)的訓(xùn)練誤差;c)確定所述關(guān)鍵變量的歷史數(shù)據(jù)中隱層節(jié)點(diǎn)數(shù)nr和基函數(shù)中心點(diǎn)ci的取值范圍[Start,End]2×2,在該取值范圍內(nèi)隨機(jī)放置M只螞蟻,以每只螞蟻所放置的初始位置作為該螞蟻進(jìn)行搜索的起點(diǎn),所述隱層節(jié)點(diǎn)數(shù)nr和基函數(shù)中心點(diǎn)ci在取值范圍內(nèi)的移動(dòng)步長(zhǎng)如式④所示 <mrow><mi>Len</mi><mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo></mrow><mo>=</mo><mfrac> <mrow><mi>End</mi><mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo></mrow><mo>-</mo><mi>Start</mi><mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo></mrow> </mrow> <mi>M</mi></mfrac><mo>,</mo><mi>i</mi><mo>=</mo><mn>1,2</mn> </mrow>④所述每只螞蟻的初始位置如式⑤分布Xj=(rand(Start(1),End(1)),rand(Start(2),End(2))...rand(Start(n),End(n)))⑤式⑤中,rand(Start(k),End(k))為[Start(k),End(k)]區(qū)間上的一個(gè)隨機(jī)數(shù),螞蟻在初始位置時(shí)產(chǎn)生的信息素量的大小如式⑥所示 <mrow><mi>Δτ</mi><mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo></mrow><mo>=</mo><msup> <mi>ka</mi> <mrow><mo>-</mo><mi>f</mi><mrow> <mo>(</mo> <msub><mi>X</mi><mi>i</mi> </msub> <mo>)</mo></mrow> </mrow></msup> </mrow>⑥式⑥中,a,k均為大于0的常數(shù);d)根據(jù)式⑥確定得到仿生智能蟻群優(yōu)化算法中當(dāng)前循環(huán)中信息素量最多的螞蟻所在位置;e)對(duì)每只螞蟻進(jìn)行全局搜索,更新螞蟻所在位置,完成一次循環(huán)后,由式(7)得到每只螞蟻向上一次循環(huán)中信息素量最多的螞蟻位置的轉(zhuǎn)移概率,各螞蟻根據(jù)各自的轉(zhuǎn)移概率向上一次循環(huán)中信息素量最多的螞蟻所在位置進(jìn)行全局轉(zhuǎn)移, <mrow><mi>P</mi><mrow> <mo>(</mo> <mi>i</mi> <mo>,</mo> <mi>BestIndex</mi> <mo>)</mo></mrow><mo>=</mo><mfrac> <msup><mi>e</mi><msub> <mtext>τ</mtext> <mrow><mi>i</mi><mo>,</mo><mi>BestIndex</mi> </mrow></msub> </msup> <msup><mi>e</mi><mi>Best</mi> </msup></mfrac> </mrow>⑦式⑦中,P表示螞蟻的轉(zhuǎn)移概率,τi,BestIndex=τ(BestIndex)-τ(i),τ(i)為第i只螞蟻所在位置的信息素大小,BestIndex為信息素量最多的螞蟻所在的位置,且i≠BestIndex;第i只螞蟻向本次循環(huán)中信息素量最多的螞蟻位置的轉(zhuǎn)移方式如式⑧所示⑧式⑧中,P0和λ為常數(shù),且0<P0<1,0<λ<1;f)在小鄰域范圍內(nèi)按式⑨所示的方法對(duì)當(dāng)前信息素量最多的螞蟻進(jìn)行隨機(jī)的局部搜索,更新當(dāng)前信息素量最多螞蟻所在的位置,若搜索后該螞蟻所在位置的信息素量比搜索之前多,則以搜索后該螞蟻所在位置取代搜索之前該螞蟻所在的位置;否則該螞蟻停留在搜索之前所在的位置;⑨式⑨中,w為搜索步長(zhǎng);g)在所有螞蟻完成全局搜索和局部搜索后,對(duì)每只螞蟻所在位置的信息素量的大小按式⑩所示的規(guī)則進(jìn)行更新,τ(i)=ρ·τ(i)+Δτ(i)⑩式⑩中,ρ為信息素?fù)]發(fā)系數(shù),且0<ρ<1;h)仿生蟻群智能優(yōu)化算法的循環(huán)次數(shù)自加1;i)若步驟h)得到的仿生智能蟻群優(yōu)化算法的循環(huán)次數(shù)未達(dá)到最大循環(huán)次數(shù),則重復(fù)步驟c)至h);若步驟h)得到的仿生智能蟻群優(yōu)化算法的循環(huán)次數(shù)到達(dá)最大循環(huán)次數(shù),則仿生智能蟻群優(yōu)化算法結(jié)束,即得到所述RBF神經(jīng)網(wǎng)絡(luò)的隱層節(jié)點(diǎn)數(shù)nr和基函數(shù)中心點(diǎn)ci。FSA00000014217700032.tif,FSA00000014217700033.tif
2.根據(jù)權(quán)利要求1所述的基于仿生智能蟻群算法的工業(yè)軟測(cè)量方法,其特征在于所 述式⑥中,k = 1,a = e。
全文摘要
本發(fā)明公開了一種基于仿生智能蟻群算法的工業(yè)軟測(cè)量方法,包括如下步驟(1)確定軟測(cè)量過程中所用的關(guān)鍵變量,從關(guān)鍵變量的歷史數(shù)據(jù)庫(kù)中采集系統(tǒng)正常時(shí)的變量數(shù)據(jù)作為訓(xùn)練樣本;(2)在軟測(cè)量智能處理器中對(duì)訓(xùn)練樣本的變量數(shù)據(jù)進(jìn)行歸一化處理,以使處理后的關(guān)鍵變量的均值為0、方差為1;(3)建立RBF神經(jīng)網(wǎng)絡(luò)函數(shù)得到軟測(cè)量模型,用歸一化后的變量數(shù)據(jù)對(duì)所述RBF神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,然后由仿生智能蟻群優(yōu)化算法確定RBF神經(jīng)網(wǎng)絡(luò)的隱層節(jié)點(diǎn)數(shù)和基函數(shù)中心點(diǎn)。本發(fā)明方法的控制參數(shù)確定方便,適用范圍廣,可推廣到各種工業(yè)過程中;采用RBF神經(jīng)網(wǎng)絡(luò)建模效果好,對(duì)數(shù)據(jù)的擬合精度高,避免復(fù)雜的機(jī)理建模,操作簡(jiǎn)捷方便。
文檔編號(hào)G06N3/00GK101799888SQ20101010116
公開日2010年8月11日 申請(qǐng)日期2010年1月22日 優(yōu)先權(quán)日2010年1月22日
發(fā)明者劉波, 王寧 申請(qǐng)人:浙江大學(xué)