朱熀秋, 王星宇, 王 博
(江蘇大學(xué) 電氣信息工程學(xué)院, 江蘇 鎮(zhèn)江 212013)
人類機(jī)體正常運(yùn)轉(zhuǎn)需要多種必備氨基酸,賴氨酸正是其中之一,但是人類必須通過(guò)消化食物來(lái)吸收賴氨酸.賴氨酸具有諸多積極的營(yíng)養(yǎng)意義,如促進(jìn)人類身體健康發(fā)育生長(zhǎng)、提高免疫力、提高抗病毒能力等.然而,賴氨酸營(yíng)養(yǎng)價(jià)值極高卻只少量存在于肉類和豆類中[1].目前,利用發(fā)酵法制取賴氨酸是獲取賴氨酸的主要途徑,但是,利用發(fā)酵法制取賴氨酸的過(guò)程中存在著耦合性極強(qiáng)、時(shí)變性極大、非線性極強(qiáng)等諸多弊端,而且缺少能夠?qū)崟r(shí)檢測(cè)發(fā)酵過(guò)程中關(guān)鍵變量(產(chǎn)物、基質(zhì)、菌體的質(zhì)量濃度)的儀器.針對(duì)上述問(wèn)題,軟測(cè)量技術(shù)應(yīng)運(yùn)而生,其基本思想是通過(guò)建立目標(biāo)變量與輔助變量之間的關(guān)系模型達(dá)到間接測(cè)量目標(biāo)變量的目的,不會(huì)對(duì)菌群造成任何污染,且軟測(cè)量方法功能強(qiáng)大、性價(jià)比高[2].因此,研究出能夠?qū)崟r(shí)在線檢測(cè)發(fā)酵過(guò)程中關(guān)鍵變量的軟測(cè)量模型對(duì)于實(shí)現(xiàn)復(fù)雜發(fā)酵過(guò)程參數(shù)的實(shí)時(shí)檢測(cè)具有重大現(xiàn)實(shí)意義.
從理論上而言,在全局樣本空間上建立軟測(cè)量模型確實(shí)能夠在任何數(shù)據(jù)集上以任意精度描述任何非線性函數(shù);但是,微生物發(fā)酵過(guò)程是滯后性強(qiáng)、耦合強(qiáng)度大且非線性程度高的復(fù)雜過(guò)程,若采用單一全局軟測(cè)量模型對(duì)非線性發(fā)酵過(guò)程進(jìn)行建模,會(huì)造成模型結(jié)構(gòu)過(guò)于復(fù)雜、模型精度不高、計(jì)算量偏大、難以充分挖掘樣本數(shù)據(jù)中的有效信息等弊端.因此,未來(lái)軟測(cè)量技術(shù)發(fā)展的必然趨勢(shì)是采用“分而治之”的建模策略,構(gòu)建基于微生物發(fā)酵過(guò)程的多局部軟測(cè)量模型.進(jìn)行多模型軟測(cè)量建模的首要工作就是對(duì)樣本數(shù)據(jù)先進(jìn)行聚類,但傳統(tǒng)的聚類算法如模糊c均值聚類算法(fuzzyc-means algorithm, FCM)本身存在著易收斂早熟的缺陷,因此文中提出一種改進(jìn)的滿意聚類算法(improved satisfactory clustering algorithm, ISCA).ISCA算法以模糊c均值聚類算法為基礎(chǔ),首先設(shè)定好1個(gè)評(píng)價(jià)每次聚類的優(yōu)劣標(biāo)準(zhǔn)和1個(gè)初始聚類數(shù)c,隨后按照標(biāo)準(zhǔn)不斷循環(huán)尋找最優(yōu)聚類數(shù),最終能夠快速且合理地計(jì)算出系統(tǒng)的最優(yōu)聚類數(shù)c[3].文中將使用最小二乘支持向量回歸機(jī)(least square support vector regression, LSSVR)建模算法在每個(gè)子集上分別建模,并將子模型輸出通過(guò)加權(quán)方式組合得到整體系統(tǒng)輸出.為了使LSSVR多模型擁有最佳預(yù)測(cè)性能,需要對(duì)模型中的各個(gè)參數(shù)進(jìn)行優(yōu)化.將粒子群優(yōu)化算法(particle swarm optimization, PSO)和模擬退火算法(simulated annealing,SA)結(jié)合起來(lái)使用,將PSO算法局搜索能力強(qiáng)和收斂速度快的優(yōu)點(diǎn)和SA算法有效跳出局部最優(yōu)的能力有機(jī)結(jié)合在一起,利用2者對(duì)LSSVR進(jìn)行協(xié)同優(yōu)化,力求模型預(yù)測(cè)性能達(dá)到最優(yōu)[4-5].
綜上所述,文中利用改進(jìn)的滿意聚類算法ISCA對(duì)樣本空間進(jìn)行聚類,并在每個(gè)子空間上分別建立LSSVR模型,再利用PSO與SA算法協(xié)同優(yōu)化各LSSVR子模型參數(shù),最終對(duì)子模型輸出加權(quán)組合得到系統(tǒng)輸出.采用試驗(yàn)仿真驗(yàn)證該方法的有效性.
多模型軟測(cè)量建模的第1步是利用聚類算法劃分?jǐn)?shù)據(jù)集,然后在聚類子集上構(gòu)建子模型,將所有子模型結(jié)合之后得到基于全局的軟測(cè)量多模型.文中采用ISCA聚類算法劃分樣本數(shù)據(jù)集,具體實(shí)現(xiàn)步驟如下.
ISCA聚類算法劃分?jǐn)?shù)據(jù)集的詳細(xì)步驟如下:
1) 令初始聚類數(shù)c=2,循環(huán)次數(shù)L=int(N/m).
2) 利用FCM算法計(jì)算隸屬度矩陣U=[ui,j]c×N.FCM的目標(biāo)函數(shù)為
(1)
式中:U=[ui,j]c×N;V=(v1,v2,…,vc);g>1為常數(shù),表征聚類模糊程度的可調(diào)參數(shù),g越大各參數(shù)之間的重疊越多,通常取g=2.
約束條件為
(2)
在約束式(2)下優(yōu)化式(1)得
(3)
(4)
即可得隸屬度矩陣U=[ui,j]c×N,再根據(jù)U分配每組樣本到各自隸屬度最大的子集當(dāng)中去,最終將T分為c個(gè)子集{T1,T2,…,Tc}.
3) 在聚類后生成的每個(gè)子集上分別建模,基于各聚類中心的子模型輸出由yi(i=1,2,…,c)表示.
4) 最終的系統(tǒng)輸出是由各子模型的輸出加權(quán)后得到的,因此將隸屬度矩陣U=[ui,j]c×N作為連接各子模型的權(quán)系數(shù),則系統(tǒng)輸出為
(5)
5) 計(jì)算聚類性能指標(biāo),計(jì)算式為
(6)
若c 6) 在樣本集中,根據(jù)隸屬度矩陣U找出1個(gè)與各子集最不相似的樣本xn(n=1,2,…,N)做新的聚類中心vc+1,不相似性可按下式給出: (7) 為避免產(chǎn)生誤差,可以通過(guò)選取幾個(gè)相似的樣本并取其平均值作為新的聚類中心vc+1. 7) 令c=c+1,以v1,v2,…,vc+1為新的聚類中心,根據(jù)式(3)重新計(jì)算新的隸屬度矩陣U,再重新劃分?jǐn)?shù)據(jù)集,轉(zhuǎn)步驟3). 8) 將聚類性能指標(biāo)最小時(shí)所對(duì)應(yīng)的c的值作為最優(yōu)聚類. 在前文中,已經(jīng)將樣本空間劃分成了c個(gè)局部空間,為了在每個(gè)局部空間上分別建立模型,需要選取合適的建模算法.而LSSVR算法是一種經(jīng)典建模算法,可以很好地處理樣本容量小、高維數(shù)據(jù)等問(wèn)題,且將標(biāo)準(zhǔn)SVR算法與最小二乘法結(jié)合起來(lái),加快了模型訓(xùn)練速度[6].因此,將LSSVR算法應(yīng)用于構(gòu)建各聚類子集的模型中. LSSVR的核心思想是假設(shè)某個(gè)局部訓(xùn)練樣本集{(x1,y1), (x2,y2),…,(xn,yn)},y∈R尋找最優(yōu)回歸超平面wTx+b=0,讓1個(gè)集合的所有數(shù)據(jù)到該平面的距離最近,即解決以下優(yōu)化問(wèn)題: s.t.yk=wTφ(xk)+b+ek,k=1,2,…,N, (8) 式中:φ(·):Rn→RnH是將輸入數(shù)據(jù)映射到高維特征空間的函數(shù);權(quán)值向量w∈RnH;誤差變量和偏置值滿足ek∈R及b∈R;γ>0為權(quán)重系數(shù),能夠使得偏差量最小的同時(shí)還能最快尋找到最優(yōu)超平面. 引入Lagrange函數(shù),式(8)轉(zhuǎn)變成 L(w,b,e;α)=J(w,e)- 式中:αk≥0為L(zhǎng)agrange乘子;xk為支持向量. 對(duì)上式中的w、b、ek、αk分別求導(dǎo),整理能夠得到以下關(guān)于α和b的線性方程組: (9) 式中:Ω被稱作核矩陣,其子項(xiàng)表達(dá)式為 Ωi,j=(φ(xi))Tφ(xj)=K(xi,xj),i,j=1,2,…,N. 求解上述方程組(9),可得LSSVR回歸函數(shù): (10) 采用核函數(shù)代替目標(biāo)函數(shù)中的點(diǎn)積進(jìn)行計(jì)算,K(·,·)必須滿足Mercer條件,文中采用高斯徑向基核函數(shù). 為增強(qiáng)ISCA-LSSVR多模型的預(yù)測(cè)精度,將一種典型現(xiàn)代集群優(yōu)化算法—PSO算法與一種隨機(jī)優(yōu)化算法—SA算法結(jié)合起來(lái)協(xié)同優(yōu)化ISCA-LSSVR多模型參數(shù).PSO優(yōu)化算法定義簡(jiǎn)單并且操作方便,易于實(shí)現(xiàn),其獨(dú)到之處在于全局搜索能力極強(qiáng)且計(jì)算速度極快,而SA算法具有局部最優(yōu)突跳能力、尋優(yōu)效率高等優(yōu)勢(shì).所以常用這2種優(yōu)化算法優(yōu)化規(guī)模較大的數(shù)學(xué)問(wèn)題.同時(shí),二者也廣泛應(yīng)用在模糊系統(tǒng)控制、神經(jīng)網(wǎng)絡(luò)訓(xùn)練、函數(shù)優(yōu)化等領(lǐng)域[7-8]. 在標(biāo)準(zhǔn)PSO算法中,集群里的任意1個(gè)個(gè)體都被看作1個(gè)在D維搜索空間中沒(méi)有體積的粒子,并用其當(dāng)前位置來(lái)表示.所有粒子在搜索空間里按照一定的速度飛行,相互配合進(jìn)行優(yōu)化,粒子的速度可以根據(jù)自身和同伴的飛行經(jīng)驗(yàn)動(dòng)態(tài)調(diào)整. 若第i個(gè)粒子的當(dāng)前速度和位置分別為 Vi=(vi,1,vi,2,…,vi,D),Pi=(pi,1,pi,2,…,pi,D), 該粒子自身以及全體粒子經(jīng)歷過(guò)的最好位置為 則對(duì)于第t+1代粒子,它的第j維(1≤j≤D)速度和位置按照以下公式變化,即 (11) pi,j(t+1)=pi,j(t)+vi,j(t+1), (12) 式中:w為慣性權(quán)重;c1和c2為加速常數(shù);r1,i和r2,i為2個(gè)在[0,1]范圍內(nèi)變化的隨機(jī)函數(shù). 為了避免出現(xiàn)收斂早熟的情況,保證優(yōu)化算法收斂到全局最優(yōu),文中引入具有突跳能力的SA算法對(duì)PSO進(jìn)一步處理,以此防止出現(xiàn)局部收斂、無(wú)法收斂到全局的現(xiàn)象.利用PSO得到粒子的適應(yīng)度函數(shù)值f(Pi)以及最優(yōu)粒子的適應(yīng)度為f(Pg),通過(guò)式(13)得到新的適應(yīng)度函數(shù),即 (13) 式中:f(·)為算法構(gòu)建的適應(yīng)度函數(shù);S(·)用于更新目前溫度t下粒子i的適應(yīng)度. 當(dāng)粒子的當(dāng)前適應(yīng)度比以前更差時(shí),更新將以一定的概率li被接受,如式(14)所示: (14) (15) 式中:Te0表示初始溫度.當(dāng)?shù)螖?shù)逐漸增加時(shí),退火溫度逐漸減小. 基于退火模擬更新位置步驟如下: 1) 根據(jù)式(13)計(jì)算粒子i的適應(yīng)值. 2) 若新適應(yīng)值優(yōu)于以往,那么粒子i的位置將被更新,否則跳到步驟3). 3) 生成1個(gè)介于0和1之間的隨機(jī)數(shù),記為r. 4) 用式(14)計(jì)算粒子i的概率li. 5) 如果li大于r,那么粒子i的位置將被更新.否則將被拒絕. 6) 重復(fù)步驟1)至5),直到所有粒子都被計(jì)算一次. 7) 通過(guò)式(15)更新退火溫度. 在每個(gè)子集上分別建立基于LSSVR算法的軟測(cè)量子模型之后,需要對(duì)子模型輸出進(jìn)行處理以得到最終的系統(tǒng)輸出.通過(guò)如圖1所示的權(quán)連接方式對(duì)各子模型進(jìn)行加權(quán)連接,即文中所建立的多模型軟測(cè)量模型是通過(guò)若干個(gè)各自獨(dú)立、相互協(xié)調(diào)的局部子模型共同組成的.最終的系統(tǒng)輸出則通過(guò)對(duì)每個(gè)子模型輸出加權(quán)得到. 圖1 基于改進(jìn)滿意聚類的多模型連接結(jié)構(gòu) 各子模型與多模型之間的權(quán)連接關(guān)系由下式給出: Y=uTyi=u1y1+u2y2+…+ucyc, (16) 式中:Y是多模型的輸出;yi是第i個(gè)子模型的輸出;u為權(quán)值向量,取為式(3)聚類時(shí)計(jì)算出的模糊聚類隸屬度矩陣. 總結(jié)上述各算法論述,ISCA-LSSVR多模型軟測(cè)量建模流程圖如圖2所示. 圖2 ISCA-LSSVR算法流程圖 發(fā)酵仿真試驗(yàn)使用WKT-30L型液態(tài)發(fā)酵設(shè)備.賴氨酸發(fā)酵過(guò)程變量如空氣流量q、CO2排放率 μ、pH、罐內(nèi)壓強(qiáng)p、發(fā)酵液溫度t、槳葉攪拌速率v 等實(shí)時(shí)采集.各批次發(fā)酵時(shí)間大約維持在72 h,分批投菌發(fā)酵.采樣周期為15 min.發(fā)酵罐的溫度控制在50±0.5 ℃,罐內(nèi)壓強(qiáng)需穩(wěn)定在0.25 MPa,pH需穩(wěn)定在6.5~7.5,攪拌速率穩(wěn)定在400 r·min-1.在開始發(fā)酵之前,校準(zhǔn)溶解氧電極參考讀數(shù). 菌體、基質(zhì)、產(chǎn)物的質(zhì)量濃度ρX、ρS和ρP為發(fā)酵過(guò)程中無(wú)法在線實(shí)時(shí)檢測(cè)的3個(gè)關(guān)鍵變量,而通過(guò)這3個(gè)變量能夠直接判斷最終發(fā)酵品質(zhì)的優(yōu)劣與否.針對(duì)這3個(gè)參數(shù),本次發(fā)酵試驗(yàn)分別采用細(xì)胞干重法、PAL-1型數(shù)字顯示糖度計(jì)離線測(cè)定法和茚三酮比色法對(duì)其進(jìn)行離線測(cè)量.發(fā)酵液的取樣周期為每2 h一次.在采樣過(guò)程中,需每15 min對(duì)在線檢測(cè)到的數(shù)據(jù)進(jìn)行多項(xiàng)式插值,不斷重復(fù)此操作,最終可構(gòu)建賴氨酸發(fā)酵數(shù)據(jù)庫(kù). 在完善發(fā)酵數(shù)據(jù)庫(kù)之后,共篩選出6批發(fā)酵數(shù)據(jù)作為構(gòu)建軟測(cè)量多模型的原始數(shù)據(jù)集.通過(guò)各批次初始條件的差異以及相應(yīng)投料策略的改變,可以得到差異較大的各批次數(shù)據(jù).首先選取前5批發(fā)酵數(shù)據(jù),以此來(lái)訓(xùn)練基于ISCA-LSSVR的軟測(cè)量多模型;而最后1批發(fā)酵數(shù)據(jù)被用于測(cè)試軟測(cè)量多模型的預(yù)測(cè)精度與泛化性能. 發(fā)酵過(guò)程中的直接可測(cè)參數(shù)p、t和v等與不可測(cè)參量的ρX、ρP、ρS之間存在著密不可分的關(guān)系,將這些直接可測(cè)參數(shù)稱為軟測(cè)量建模的輔助變量.然而這些輔助變量對(duì)關(guān)鍵參數(shù)的影響程度不一,若是將其全部應(yīng)用于軟測(cè)量模型的構(gòu)建中會(huì)造成模型結(jié)構(gòu)復(fù)雜、計(jì)算量巨大等問(wèn)題,因此需要篩選出影響因子較大的輔助變量.文中選用主元分析算法來(lái)篩選出關(guān)鍵的輔助變量[9].最終篩選得到發(fā)酵液溫度t、空氣流量q、溶解氧質(zhì)量濃度DO和pH的影響因子都在90%以上,故選取這4個(gè)變量作為輔助變量.關(guān)鍵參量與輔助變量之間的關(guān)系可用下式表述: Y=f(DO,t,pH,q), (17) 式中:Y是輸出變量(ρX,ρP,ρS);f(·)描述了關(guān)鍵參量與輔助變量之間的非線性關(guān)系. 將ISCA-LSSVR算法與傳統(tǒng)LSSVR算法進(jìn)行比較以驗(yàn)證ISCA-LSSVR算法的性能.試驗(yàn)仿真結(jié)果見(jiàn)圖3-5. 圖3 產(chǎn)物質(zhì)量濃度預(yù)測(cè)比較圖 由圖3-5可見(jiàn),在所有3個(gè)輸出變量的預(yù)測(cè)精度方面,所提出的ISCA-LSSVR方法均優(yōu)于傳統(tǒng)的單一LSSVR方法.尤其從圖3可見(jiàn),不管在發(fā)酵初期、中期還是后期,基于LSSVR算法的軟測(cè)量模型預(yù)測(cè)曲線波動(dòng)明顯較大,誤差明顯,預(yù)測(cè)精度明顯不如ISCA-LSSVR模型.同樣,從圖4-5明顯可見(jiàn),基于ISCA-LSSVR的軟測(cè)量模型性能更加優(yōu)越,它的穩(wěn)定性更強(qiáng)、模型預(yù)測(cè)精度更高且泛化性能更強(qiáng).表1給出了2種算法的均方差比較. 圖4 基質(zhì)質(zhì)量濃度預(yù)測(cè)比較圖 圖5 菌體質(zhì)量濃度預(yù)測(cè)比較圖 表1 均方差比較表 % 由表1可見(jiàn),在3批數(shù)據(jù)中,就預(yù)測(cè)均方差值大小而言,LSSVR軟測(cè)量模型明顯更加遜色于ISCA-LSSVR模型;而就穩(wěn)定性而言,LSSVR軟測(cè)量模型均方差值處于不斷波動(dòng)狀態(tài),且波動(dòng)范圍較大,與之相反,ISCA-LSSVR模型均方差值相對(duì)穩(wěn)定,波動(dòng)較小. 為了進(jìn)一步直觀地對(duì)比2個(gè)軟測(cè)量模型的性能,分別計(jì)算2個(gè)軟測(cè)量模型對(duì)產(chǎn)物、基質(zhì)、菌體的質(zhì)量濃度預(yù)測(cè)結(jié)果的平均絕對(duì)百分比誤差.對(duì)比結(jié)果如表2所示. 表2 平均絕對(duì)百分比誤差對(duì)比表 從表2可直觀看出ISCA-LSSVR軟測(cè)量模型的預(yù)測(cè)精度明顯高于LSSVR模型. 文中設(shè)計(jì)的賴氨酸在線監(jiān)控系統(tǒng)由上位機(jī)數(shù)據(jù)處理模塊和下位機(jī)數(shù)據(jù)采集模塊共同組成.先通過(guò)下位機(jī)即通過(guò)普通傳感器設(shè)備測(cè)量出可測(cè)參量,然后將獲得的樣本數(shù)據(jù)信息傳輸至上位機(jī),通過(guò)ISCA-LSSVR多模型軟測(cè)量方法獲得不可測(cè)的主導(dǎo)變量,并在上位機(jī)人機(jī)界面上顯示出來(lái),最終可實(shí)現(xiàn)在線監(jiān)控賴氨酸發(fā)酵過(guò)程[10]. 下位機(jī)系統(tǒng)主要通過(guò)各硬件傳感器設(shè)備完成發(fā)酵過(guò)程樣本數(shù)據(jù)的采集,根據(jù)上位機(jī)反饋的信息對(duì)發(fā)酵過(guò)程中的關(guān)鍵參數(shù)進(jìn)行控制,并將獲得的可測(cè)量參數(shù)傳輸至上位機(jī);用ISCA-LSSVR多模型軟測(cè)量算法模塊進(jìn)行預(yù)測(cè)并在人機(jī)交互界面進(jìn)行顯示,一方面可將實(shí)時(shí)數(shù)據(jù)通過(guò)LCD模塊顯示出來(lái),另一方面可以通過(guò)網(wǎng)絡(luò)通信模塊,將數(shù)據(jù)上傳到互聯(lián)網(wǎng),實(shí)現(xiàn)多發(fā)酵平臺(tái)的資源共享. 將S3C44B0X芯片作為數(shù)據(jù)處理單元,如圖6所示,同時(shí)利用通訊模塊,把通過(guò)各種傳感器獲得的過(guò)程變量在上位機(jī)監(jiān)控界面顯示出來(lái). 圖6 監(jiān)控系統(tǒng)的總體硬件結(jié)構(gòu)圖 功能較為完備的數(shù)字監(jiān)控系統(tǒng)主要由人機(jī)交互、輸出控制、信號(hào)采集模塊和數(shù)字控制模塊等部分組成. 將從下位機(jī)接收到的數(shù)據(jù)信息進(jìn)行預(yù)處理,同時(shí)通過(guò)基于ISCA-LSSVR的軟測(cè)量多模型實(shí)時(shí)在線預(yù)測(cè)發(fā)酵過(guò)程的關(guān)鍵變量是上位機(jī)軟件最主要的任務(wù). 該系統(tǒng)的主要設(shè)計(jì)步驟如下:① 初始化系統(tǒng)并具體配置一些必要的參數(shù);② 將ISCA-LSSVR模型制成COM組件,并將其嵌入到系統(tǒng)軟件中以在線預(yù)測(cè)賴氨酸發(fā)酵過(guò)程的關(guān)鍵變量;③ 通過(guò)遠(yuǎn)程人工處理對(duì)數(shù)據(jù)進(jìn)行采集與管理;④ 植入軟測(cè)量模塊,完成不可測(cè)測(cè)量參量在線估計(jì);⑤ 設(shè)計(jì)優(yōu)秀的人機(jī)交互界面滿足不同人群的需求,并通過(guò)人機(jī)交互界面將關(guān)鍵信息實(shí)時(shí)傳遞給操作人員. 7.3.1系統(tǒng)初始化 進(jìn)行賴氨酸發(fā)酵過(guò)程軟件設(shè)計(jì)時(shí),在使用前必須對(duì)所設(shè)計(jì)的監(jiān)測(cè)系統(tǒng)軟件進(jìn)行初始化,具體配置如下: 1) 注冊(cè)表配置.為合理配置注冊(cè)表信息,需要在進(jìn)行賴氨酸發(fā)酵工業(yè)生產(chǎn)之前根據(jù)發(fā)酵過(guò)程的相關(guān)信息合理配置.需要配置的關(guān)鍵參數(shù)主要有以下幾種:離線分析過(guò)程參量、算法參數(shù)、在線采樣過(guò)程參量、數(shù)據(jù)下載及存儲(chǔ)位置等. 2) 訓(xùn)練數(shù)據(jù)庫(kù)生成.在賴氨酸發(fā)酵過(guò)程投入運(yùn)行前,必須做好準(zhǔn)備工作,首先要解析好歷史發(fā)酵數(shù)據(jù)并備份好,作為構(gòu)建軟測(cè)量模型的備用數(shù)據(jù)庫(kù).在首次生產(chǎn)過(guò)程中需要調(diào)用訓(xùn)練集數(shù)據(jù).在生產(chǎn)過(guò)程中,為確保數(shù)據(jù)的穩(wěn)定性與真實(shí)性以及防止數(shù)據(jù)庫(kù)中的一些數(shù)據(jù)參數(shù)隨著生產(chǎn)過(guò)程的進(jìn)行而不斷發(fā)生變化,需要不斷調(diào)用數(shù)據(jù)庫(kù)更新模塊對(duì)數(shù)據(jù)進(jìn)行更新. 7.3.2COM組件構(gòu)建 通過(guò)MATLAB搭建功能組件的過(guò)程由以下幾個(gè)部分組成: 1) 創(chuàng)建工程.首先,打開MATLAB軟件,找到命令窗口并輸入“comtool”,點(diǎn)擊“文件”菜單并左擊“新建工程”按鈕,該系統(tǒng)會(huì)出現(xiàn)“新建工程設(shè)置”窗口,然后在“元件名稱”窗口給組件(DLL文件)命名,則生成器自動(dòng)在“類名”窗口鍵入同一名稱.“工程目錄”選項(xiàng)用于在編譯和集成模型時(shí)設(shè)置項(xiàng)目和相關(guān)文件的存儲(chǔ)路徑.當(dāng)前目錄和組件名稱會(huì)自動(dòng)組合以生成項(xiàng)目目錄.在“編譯”窗口,可以在C和C++之間切換.用C語(yǔ)言編寫的組件運(yùn)行更穩(wěn)定,而C++語(yǔ)言可以增強(qiáng)代碼的可讀性,更好地升級(jí)和維護(hù).MATLAB中的“使用手柄圖形庫(kù)”選項(xiàng)具有調(diào)用手柄圖形的功能.設(shè)置操作完成后,選擇“OK”按鈕,則新建項(xiàng)目即成為工程工作空間的一部分,并與新增到工程中的M文件等一起被保存至指定位置. 2) 管理M文件.將步驟1)生成的用來(lái)完成賴氨酸軟測(cè)量功能的M文件利用“新建工程設(shè)置”窗口中“添加文件”按鈕添加至工程,并通過(guò)系統(tǒng)的功能選項(xiàng)對(duì)其調(diào)試. 3) 生成組件.上述操作完成后,利用“COM對(duì)象”調(diào)用編譯器,將必要的輸出文件存儲(chǔ)至D:projectdistrib中,源文件存儲(chǔ)至D:projectsrc中,并利用“生成狀態(tài)”頁(yè)面瀏覽生成過(guò)程的輸出. 4) 打包和分發(fā)組件.上述操作完成后,經(jīng)調(diào)試及測(cè)試好即可打包分發(fā).在“元件”選項(xiàng)中單擊“封裝元件”,即得到1個(gè)可執(zhí)行程序,從而實(shí)現(xiàn)ISCA-LSSVR多模型軟測(cè)量方法的程序包的建立. 7.3.3人機(jī)交互界面 本系統(tǒng)使用帶有豐富顯示模塊的Measurement Studio軟件來(lái)對(duì)人機(jī)交互界面進(jìn)行設(shè)計(jì). 系統(tǒng)軟件主要界面是由用戶登錄界面、系統(tǒng)主窗體界面、系統(tǒng)輸入與軟測(cè)量界面、數(shù)據(jù)預(yù)處理界面等構(gòu)成,并且可以通過(guò)主界面來(lái)實(shí)現(xiàn)各界面之間來(lái)回切換. 通過(guò)用戶名及密碼等賬號(hào)信息可以在用戶登錄界面進(jìn)行登錄.且該系統(tǒng)設(shè)計(jì)了用戶信息登錄錯(cuò)誤次數(shù)限制,多次信息錯(cuò)誤后即鎖定一段時(shí)間. 登錄成功進(jìn)入系統(tǒng)后,主窗體界面包括系統(tǒng)設(shè)置、參數(shù)設(shè)置、遠(yuǎn)程監(jiān)控、實(shí)時(shí)預(yù)測(cè)、歷史曲線、報(bào)警顯示及幫助等菜單.且單擊每個(gè)菜單按鈕均可查看相關(guān)選項(xiàng). 在系統(tǒng)初始狀態(tài)信息輸入界面,需要由工作人員手動(dòng)設(shè)置種子罐以及罐批次編號(hào)、接種量、發(fā)酵時(shí)間、初始狀態(tài)下的X、P、S值等的初始值,以保證賴氨酸處于適宜的發(fā)酵環(huán)境. 在實(shí)時(shí)在線預(yù)測(cè)界面中,還需要根據(jù)發(fā)酵過(guò)程的環(huán)境參數(shù)及各營(yíng)養(yǎng)液的補(bǔ)料情況輸入當(dāng)前數(shù)據(jù).同時(shí)該系統(tǒng)還具有自糾錯(cuò)功能,系統(tǒng)若出現(xiàn)異常數(shù)據(jù),則立即將出錯(cuò)信息發(fā)送給工作人員,以確保輸入數(shù)據(jù)準(zhǔn)確無(wú)誤. 為避免數(shù)據(jù)噪聲和數(shù)據(jù)冗余等問(wèn)題,需要在數(shù)據(jù)預(yù)處理界面對(duì)數(shù)據(jù)進(jìn)行加工,從而使數(shù)據(jù)能被COM組件功能模塊所用.數(shù)據(jù)預(yù)處理的具體步驟如下: 1) 數(shù)據(jù)剔除.一些數(shù)據(jù)噪聲和明顯異常的數(shù)據(jù)在輸入模型時(shí)會(huì)出現(xiàn)壞點(diǎn)和偏差,該選項(xiàng)會(huì)采取MMD聚類分析法搜索數(shù)據(jù)中的壞點(diǎn)并將其舍棄. 2) 數(shù)據(jù)濾波.選擇滑動(dòng)時(shí)間平均濾波算法對(duì)數(shù)據(jù)進(jìn)行濾波,可以有效抑制周期性濾波干擾. 3) 階數(shù)求導(dǎo).通過(guò)數(shù)值微分五點(diǎn)法對(duì)所測(cè)量到的關(guān)鍵參量及流加補(bǔ)料量進(jìn)行求導(dǎo),并將各導(dǎo)數(shù)值作為COM組件模塊參量. 4) 數(shù)據(jù)量綱一化.由于輸入?yún)⒘恐g可能有著較大差異,數(shù)據(jù)的單位不同以及數(shù)量級(jí)不同會(huì)使系統(tǒng)難以利用這些數(shù)據(jù),該選型利用量綱一化操作能極大地消除這些問(wèn)題產(chǎn)生的影響,使數(shù)據(jù)之間的可比性更強(qiáng). 1) 提出了一種ISCA聚類算法,對(duì)賴氨酸發(fā)酵樣本數(shù)據(jù)進(jìn)行劃分,并利用LSSVR在各樣本子空間上分別建立LSSVR模型,隨后采用PSO與SA優(yōu)化算法協(xié)同優(yōu)化模型參數(shù),最終將子模型輸出加權(quán)組合成系統(tǒng)輸出.通過(guò)試驗(yàn)仿真,證明了基于賴氨酸發(fā)酵過(guò)程的ISCA-LSSVR不論在預(yù)測(cè)精度、穩(wěn)定性和泛化能力方面均優(yōu)于全局單一LSSVR模型. 2) 設(shè)計(jì)了賴氨酸發(fā)酵過(guò)程的在線監(jiān)控系統(tǒng).該系統(tǒng)以S3C44B0X芯片為核心,在其中嵌入了ISCA-LSSVR多模型軟測(cè)量模塊,將由下位機(jī)數(shù)據(jù)采集模塊采集到的發(fā)酵實(shí)時(shí)數(shù)據(jù),經(jīng)由多模型軟測(cè)量模塊處理后輸送到上位機(jī)數(shù)據(jù)處理模塊.數(shù)據(jù)處理完畢后,可以將數(shù)據(jù)傳給LCD模塊顯示實(shí)時(shí)狀態(tài),也可以通過(guò)網(wǎng)絡(luò)通信模塊將數(shù)據(jù)上傳到互聯(lián)網(wǎng),實(shí)現(xiàn)多發(fā)酵平臺(tái)的資源共享.2 最小二乘支持向量回歸機(jī)
3 基于PSO與SA的協(xié)同優(yōu)化算法
4 子模型的連接方法
5 算法流程圖
6 仿真試驗(yàn)與分析
6.1 數(shù)據(jù)采集
6.2 輔助變量的選擇
6.3 結(jié)果與分析
7 發(fā)酵過(guò)程監(jiān)控系統(tǒng)
7.1 總體方案
7.2 下位機(jī)硬件系統(tǒng)設(shè)計(jì)
7.3 上位機(jī)軟件系統(tǒng)開發(fā)
8 結(jié) 論